diff options
Diffstat (limited to 'fortran/navy_four_levels')
-rw-r--r-- | fortran/navy_four_levels/FourLevelPulseProp_Double.f95 | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 b/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 index 5ccbd80..2873180 100644 --- a/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 +++ b/fortran/navy_four_levels/FourLevelPulseProp_Double.f95 @@ -30,7 +30,7 @@ program FourLevelPulseProp_v3_Double parameter (nmat=3,npts=100) !matrix size, number of detuning points in dispersion curve !tpts is the number of temporal points in the cell !zpts is the number of z output slices - 1 - parameter (tpts=400,zpts=100) ! evrything fails with tpts = 100 + parameter (zpts=100) ! Number of slices in z direction parameter (Nframemax=2000000) parameter (NWrite=1) !number of frames to actually write integer i,j,k,m,n @@ -148,7 +148,6 @@ program FourLevelPulseProp_v3_Double ! Length of cell in m Lcell=100 Lcell=beta*Lcell/c !Now dimensionless - Lcell=6 t_start=secnds(0.E0) write (*,*)'t_start = ',t_start ! @@ -160,10 +159,11 @@ program FourLevelPulseProp_v3_Double tmax=130.0 write(*,*) 'tmax = ', tmax write(*,*) 'Lcell = ', Lcell - dt=tmax/(tpts-1) dz=Lcell/(zpts-1) !(no c because we're dimensionless) - !write (*,*)'tp = ',tp - Nframe=tpts !Change the number 4 to anything you want to see longer pulse evolution + ! It is crucial that dz = dt in unitless coordinates, there is built in + ! cancellation of some term on grid because of it. See Simon's note. + dt = dz + Nframe=tmax/dz+1 if (Nframe.ge.Nframemax) write (*,*)'Error!!!!Nframe>Nframemax' ! ! Initialize matrices |