The following example demonstrates the simulation of a simple DFG cross-correlation process between the THG of a Ti:Sa -> 266 nm and the fundamental at 800 nm pulse resulting in a 400 nm signal. A loop scans through different time delays between THG and fundamental pulse to compute the cross-correlation function.
% function [E_ftfxfy_o,E_ftfxfy_e,Results]=newFun()
% automaticly generated matlab script to simulate nonlinear propagation and interaction of ultrashort
% pulses using the 2 or 3 + 1 dimensional simulation tool chi3D (C) T.Lang (T.Lang@gmx.com)
% type chi3D help or visit www.chi23d.com for further information
%% create a new instance of class chi3D
clear all
close all
clc
obj = chi3D('tag','(chi2D->chi3D (C)T.Lang)');
%% computational parameters
obj('Nx',64,'xWindow',0.003,...
'Ny',1, 'yWindow',0.003,... %use Ny=1 for 2+1D, Ny=2^N for 3+1d
'Nt',1024, 'tWindow',8e-13,'shiftFreqWindow',3.33e+14,...
'Nz',100, 'propagationLength', 0.00025,...
'GPUOn',0, 'abortIntensity', inf,...
'showResultEach',100, 'showProgress',1);
%% material parameters
obj( 'material','BBO','theta',0.774577,'phi',0,'plane','XZ','temperature',20);
%% nonlinear effects
obj('deff1',2e-12,'eoo',1,'oeo',0,'ooo',0,...
'deff2',1.4e-12,'oee',0,'eeo',0,'eee',0,...
'n2',4e-20,'SPMOn',0,'selfFocusingOn',0);
%% other effects
obj('walkoffON',1,'noiseOn',0,'noiseFactor',1);
%% input pulse definition
obj({'pulse1','EorI',1e+14,'polarization','e','centerWavelength',2.66e-07,...
'pulseDuration',1.25e-13,'GD',0,'GDD',0,'TOD',0,'Phase',0,'beamShape_t','gauss',...
'beamRadius_x',0.0005,'beamRadius_y',0.0005,... %please choose a reasonable value in y
'shift_x',0,'shift_y',0,...
'alpha_x',0,'alpha_y',0,...
'slant_x',0,'slant_y',0,...
'radiusOfCurvature_x',0,'radiusOfCurvature_y',0,...
'beamShape_x',{'gauss'},'beamShape_y',{'gauss'}});
obj({'pulse2','EorI',5e+14,'polarization','o','centerWavelength',8e-07,...
'pulseDuration',5e-14,'GD',0,'GDD',0,'TOD',0,'Phase',0,'beamShape_t','gauss',...
'beamRadius_x',0.0005,'beamRadius_y',0.0005,... %please choose a reasonable values in y
'shift_x',0,'shift_y',0,...
'alpha_x',0,'alpha_y',0,...
'slant_x',0,'slant_y',0,...
'radiusOfCurvature_x',0,'radiusOfCurvature_y',0,...
'beamShape_x',{'gauss'},'beamShape_y',{'gauss'}});
%% detector properties
obj.removeDetectors('all'); %delete default detectors
obj.detectors.obs1.plotIntegratedProfiles=0;
obj.detectors.obs1.logScale=0;
obj.detectors.obs1.polarization='o';
obj.detectors.obs1.ftlim=[7e+14,8e+14];
obj.detectors.obs1.fxlim=[-10667,10300];
obj.detectors.obs1.fylim=[-inf,inf];
obj.detectors.obs1.spectralData=0;
obj.detectors.obs1.spacetimeData=0;
obj.detectors.obs1.peakpower=1;
%% run simulation
N=25
GD=linspace(-2e-13,3.5e-13,N);
for i=1:N
obj.showProgress(i,N);
[E_ftfxfy_o,E_ftfxfy_e]=run(obj,{'pulse1'},{'pulse2','GD',GD(i)});
end
figure
plot(GD,obj.simResults.obs1.PeakIntensity(2:2:end));
title('DFG cross correlation signal')
legend(['FWHM = ',num2str(obj.fwhm(GD,obj.simResults.obs1.PeakIntensity(2:2:end))*1e15,3),' fs']);
xlabel('Delay (s)');
ylabel('Intensity (arb.u.)');
Tino Lang