diff options
Diffstat (limited to 'xmds2')
-rw-r--r-- | xmds2/Nlevels_no_dopler_no_z.example/Nlevels_no_dopler_no_z.xmds | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/xmds2/Nlevels_no_dopler_no_z.example/Nlevels_no_dopler_no_z.xmds b/xmds2/Nlevels_no_dopler_no_z.example/Nlevels_no_dopler_no_z.xmds index 863f68b..14a78ae 100644 --- a/xmds2/Nlevels_no_dopler_no_z.example/Nlevels_no_dopler_no_z.xmds +++ b/xmds2/Nlevels_no_dopler_no_z.example/Nlevels_no_dopler_no_z.xmds @@ -13,6 +13,9 @@ by T. Abi-Salloum, S. Meiselman, J.P. Davis and F.A. Narducci Journal of Modern Optics, 56: 18, 1926 -- 1932, (2009). + Present calculation matches Fig.3 (b) from the above paper. + Note that I need to double all Rabi frequencies to match the figure. + * -------- |4> * \ * \ Ec -------- |3> @@ -53,7 +56,7 @@ const double W31=2.7; // population decay rate in MHz const double W32=W31; // population decay rate in MHz const double W34=0.0; // population decay rate in MHz - const double W41=5.9; // population decay rate in MHz + const double W41=3.0; // population decay rate in MHz const double W42=W41; // population decay rate in MHz const double W43=0.0; // population decay rate in MHz @@ -64,13 +67,13 @@ const double g24=W21+W23+W24+W41+W42+W43; // coherence decay rate in MHz const double g34=W31+W32+W34+W41+W42+W43; // coherence decay rate in MHz - const double d1=0; // E2 detuning in MHz - // const double d2=0; // E2 detuning in MHz + // const double d1=0; // E2 detuning in MHz + const double d2=0; // E2 detuning in MHz const double dc=0; // Ec detuning in MHz - const complex E1=5; // Rabi frequency in MHz - const complex E2=0.005; // Rabi frequency in MHz - const complex Ec=5; // Rabi frequency in MHz + const complex E1=0.005; // Rabi frequency in MHz + const complex E2=10; // Rabi frequency in MHz + const complex Ec=12; // Rabi frequency in MHz complex E1c, E2c, Ecc; // Complex conjugated Rabi frequencies @@ -83,11 +86,11 @@ <geometry> <propagation_dimension> t </propagation_dimension> <transverse_dimensions> - <dimension name="d2" lattice="1280" domain="(-60, 60)" /> + <dimension name="d1" lattice="1280" domain="(-60, 60)" /> </transverse_dimensions> </geometry> - <vector name="density_matrix" type="complex" dimensions="d2"> + <vector name="density_matrix" type="complex" dimensions="d1"> <components>r22 r33 r44 r12 r13 r14 r23 r24 r34</components> <!-- note one of the level population is redundant since @@ -114,7 +117,7 @@ </vector> <sequence> - <integrate algorithm="ARK45" interval="1" tolerance="1e-7"> + <integrate algorithm="ARK45" interval="3" tolerance="1e-7"> <samples>128</samples> <operators> <integration_vectors>density_matrix</integration_vectors> @@ -132,12 +135,6 @@ // Equations of motions see page 1928 of the Frank's JMO paper r11=1-r22-r33-r44; // sum of all level populations is 1 - // printf("r33=%g\n",r33.Re()); - // printf("r13.re=%g\n",r13.Re()); - // printf("r13.im=%g\n",r13.Im()); - // printf("d2=%g\n",d2); - // printf("dt=%g\n",dt); - // printf("\n"); dr12_dt = -(g12+i*(d1-d2))*r12 - i/2.*(E2*r13+Ec*r14-E1c*r32); dr13_dt = -(g13+i*d1)*r13 - i/2.*(E1c*(r11-r33)+E2c*r12); dr14_dt = -(g14+i*(d1-d2+dc))*r14 - i/2.*(Ecc*r12-E1c*r34); @@ -156,9 +153,9 @@ <!-- The output to generate --> - <output format="ascii" filename="Nlevels_no_dopler_no_z.xsil"> + <output format="binary" filename="Nlevels_no_dopler_no_z.xsil"> <group> - <sampling basis="d2" initial_sample="yes"> + <sampling basis="d1" initial_sample="yes"> <dependencies>density_matrix</dependencies> <moments>>r13_rlOut r13_imOut >r23_rlOut r23_imOut r24_rlOut r24_imOut</moments> <![CDATA[ |