diff options
Diffstat (limited to 'fortran/navy_four_levels/FourLevelPulseProp_Double.f95')
-rw-r--r-- | fortran/navy_four_levels/FourLevelPulseProp_Double.f95 | 47 |
1 files changed, 25 insertions, 22 deletions
diff --git a/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 b/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 index ccd564f..8306b8a 100644 --- a/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 +++ b/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 @@ -80,8 +80,10 @@ program FourLevelPulseProp_v3_Double hbar=1.055e-34 epsil=8.85e-12 - ! Atomic numbers (based on Rubidium 85) - beta=2*pi*3e6 !in Hz + ! Atomic numbers (based on Rubidium 87) + Gamma_super=2*pi*6e6 ! Characteristic decay of upper level in [1/s] + lambda=794.7e-9 ! Wavelength in [m] + Ndensity=1e10*(1e6) ! Density in m^-1 W41=0 W42=1 W43=0 @@ -96,17 +98,15 @@ program FourLevelPulseProp_v3_Double ga23=0.5*(W32+W31+W21) ga24=0.5*(W21+W41+W42+W43) ga34=0.5*(W31+W41+W32+W42+W43) - lambda=780.24e-9 ! Atomic parameters write (*,*)'New version from moved folder' - eta=6.9e11 ! density in m^-1 - alpha1=3*eta*lambda*lambda/(2*pi) - alpha1tilde=alpha1*c/beta - alpha2=3*eta*lambda*lambda/(2*pi) - alpha2tilde=alpha2*c/beta - alphac=3*eta*lambda*lambda/(2*pi) - alphactilde=alphac*c/beta + alpha1=3*Ndensity*lambda*lambda/(2*pi) + alpha1tilde=alpha1*c/Gamma_super + alpha2=3*Ndensity*lambda*lambda/(2*pi) + alpha2tilde=alpha2*c/Gamma_super + alphac=3*Ndensity*lambda*lambda/(2*pi) + alphactilde=alphac*c/Gamma_super ! User defined numbers @@ -127,32 +127,35 @@ program FourLevelPulseProp_v3_Double ! Detuning of center frequency of the coupling pulse in MHz delc_prop=0 - delc_prop=2*pi*1e6*delc_prop/beta !Now dimensionless + delc_prop=2*pi*1e6*delc_prop/Gamma_super !Now dimensionless ! Detuning of center frequency of the pump pulse in MHz del2_prop=0. - del2_prop=2*pi*1e6*del2_prop/beta !Now dimensionless + del2_prop=2*pi*1e6*del2_prop/Gamma_super !Now dimensionless ! Detuning of center frequency of the probe pulse in MHz del1_prop=0. - del1_prop=2*pi*1e6*del1_prop/beta !Now dimensionless + del1_prop=2*pi*1e6*del1_prop/Gamma_super !Now dimensionless ! Pulse width in nsec tp=1e-6 - tp=beta*tp !Now dimensionless + tmax=tp*5 + tmin = -tmax + tshift=0 + tp=Gamma_super*tp !Now dimensionless + tmax=Gamma_super*tmax + tmin=Gamma_super*tmin + tshift=Gamma_super*tshift + ! Length of cell in m - Lcell=100 - Lcell=beta*Lcell/c !Now dimensionless + Lcell=0.07 + Lcell=Gamma_super*Lcell/c !Now dimensionless t_start=secnds(0.E0) write (*,*)'t_start = ',t_start ! ! Set up initial pulse. ! - tshift=0 write (*,*) 'peak center at the cell begining i.e. tshift = ', tshift - tmax=Lcell*20 !Length of time to pass cell (no c because we're dimensionless) - tmax=60.0 - tmin = -tmax write(*,*) 'tmax = ', tmax write(*,*) 'Lcell = ', Lcell dz=Lcell/(zpts-1) !(no c because we're dimensionless) @@ -160,7 +163,7 @@ program FourLevelPulseProp_v3_Double ! cancellation of some term on grid because of it. See Simon's note. dt = dz Nframe=(tmax-tmin)/dz+1 - if (Nframe.ge.Nframemax) write (*,*)'Error!!!!Nframe>Nframemax' + if (Nframe.ge.tpts_max) write (*,*)'Error!!!!Nframe>tpts_max' ! ! Initialize matrices ! @@ -294,7 +297,7 @@ program FourLevelPulseProp_v3_Double fname='MovieParameters4level.txt' ! File name to save parameters open(9,file=fname) - write (9,133)Nframe,zpts,beta,NSkip,dt + write (9,133)Nframe,zpts,Gamma_super,NSkip,dt 133 format(1x,i10,',',i5,',',f12.2,',',i5,',',f12.2) close (9) |