summaryrefslogtreecommitdiff
path: root/liouville.m
diff options
context:
space:
mode:
authorEugeniy Mikhailov <evgmik@gmail.com>2010-01-21 20:06:08 +0000
committerEugeniy Mikhailov <evgmik@gmail.com>2010-01-21 20:06:08 +0000
commit048813c8b319c77deb742c348645e9853fa706f5 (patch)
treee38cd2e5aaa54b27fe79ee4b8e05fd569a0140a7 /liouville.m
parent7ab837a5ba1edbd8d544e1bb6f5857ee0146d754 (diff)
downloadmulti_mode_eit-048813c8b319c77deb742c348645e9853fa706f5.tar.gz
multi_mode_eit-048813c8b319c77deb742c348645e9853fa706f5.zip
proper use of rotation transformation for light polarizations
Diffstat (limited to 'liouville.m')
-rw-r--r--liouville.m39
1 files changed, 19 insertions, 20 deletions
diff --git a/liouville.m b/liouville.m
index 10ccc95..53a84ef 100644
--- a/liouville.m
+++ b/liouville.m
@@ -12,10 +12,10 @@ useful_constants;
basis_transformation; % load subroutines
% load atom energy levels and decay description
-%rb87_D1_line;
+rb87_D1_line;
%four_levels_with_polarization;
%four_levels;
-three_levels;
+%three_levels;
%two_levels;
% load EM field description
@@ -27,7 +27,7 @@ field_description;
%tune probe frequency
detuning_p=0;
-N_detun_steps=200;
+N_detun_steps=100;
%detuning_p_min=-B_field*gmg*4; % span +/-4 Zeeman splitting
detuning_p_min=-0.1;
detuning_p_max=-detuning_p_min;
@@ -53,32 +53,28 @@ atom_properties.L0m=L0m;
atom_properties.polarizability_m=polarizability_m;
atom_properties.dipole_elements=dipole_elements;
-%modulation_freq=[0, wp, wd, -wp, -wd, wp-wd, wd-wp];
-E_field_drive =[0, 0 , Ed, 0 , Edc, 0, 0 ];
-E_field_probe =[0, Ep, 0 , Epc, 0 , 0, 0 ];
-E_field_zero =[0, 0 , 0 , 0 , 0 , 0, 0 ];
-E_field_lab.linear = E_field_zero + (1.00000+0.00000i)*E_field_probe + (1.00000+0.00000i)*E_field_drive;
-E_field_lab.right = E_field_zero + (0.00000+0.00000i)*E_field_probe + (0.00000+0.00000i)*E_field_drive;
-E_field_lab.left = E_field_zero + (0.00000+0.00000i)*E_field_probe + (0.00000+0.00000i)*E_field_drive;
+%light_positive_freq = [wp, wd, wp-wd];
+E_field_drive = [0 , Ed, 0 ];
+E_field_probe = [Ep, 0 , 0 ];
+E_field_zero = [0 , 0 , 0 ];
+E_field_lab_pos_freq.linear = E_field_zero + (1.00000+0.00000i)*E_field_probe + (1.00000+0.00000i)*E_field_drive;
+%E_field_lab_pos_freq.right = E_field_zero + (0.00000+0.00000i)*E_field_probe + (0.00000+0.00000i)*E_field_drive;
+%E_field_lab_pos_freq.left = E_field_zero + (0.00000+0.00000i)*E_field_probe + (0.00000+0.00000i)*E_field_drive;
% phi is angle between linear polarization and axis x
phi=pi*2/8;
% theta is angle between lab z axis (light propagation direction) and magnetic field axis (z')
-theta=0/2;
+theta=pi/2;
phi=pi/4;
% we define light as linearly polarized
% where phi is angle between light polarization and axis x
% only sign of modulation frequency is important now
% we define actual frequency later on
- modulation_freq=[0, 1, 1, -1, -1, 1, -1];
- [E_field_lab.x, E_field_lab.y] = rotXpolarization(phi, E_field_lab.linear, modulation_freq);
-E_field_lab.z=E_field_zero;
+ [E_field_lab_pos_freq.x, E_field_lab_pos_freq.y] = rotXpolarization(phi, E_field_lab_pos_freq.linear);
+ E_field_lab_pos_freq.z=E_field_zero;
-coord_transf_m = lin2circ * oldlin2newlin(theta);
-E_field.right = coord_transf_m(1,1)*E_field_lab.x + coord_transf_m(1,2)*E_field_lab.y + coord_transf_m(1,3)*E_field_lab.z;
-E_field.left = coord_transf_m(2,1)*E_field_lab.x + coord_transf_m(2,2)*E_field_lab.y + coord_transf_m(2,3)*E_field_lab.z;
-E_field.linear = coord_transf_m(3,1)*E_field_lab.x + coord_transf_m(3,2)*E_field_lab.y + coord_transf_m(3,3)*E_field_lab.z;
+ E_field_pos_freq=xyz_lin2atomic_axis_polarization(theta, E_field_lab_pos_freq);
fprintf (stderr, "tuning laser in forloop to set conditions vs detuning\n");
@@ -89,8 +85,11 @@ for detuning_p_cntr=1:N_detun_steps+1;
detuning_p=detuning_p_min+detun_step*(detuning_p_cntr-1);
wp=wp0+detuning_p;
wm=wd-(wp-wd);
- %modulation_freq=[0, wp, wd, wm, -wp, -wd, -wm, wp-wd, wd-wp];
- modulation_freq=[0, wp, wd, -wp, -wd, wp-wd, wd-wp];
+ light_positive_freq=[ wp, wd, wp-wd];
+ % we calculate dc and negative frequiencies as well as amplitudes
+ [modulation_freq, E_field] = ...
+ light_positive_frequencies_and_amplitudes2full_set_of_modulation_frequencies_and_amlitudes(...
+ light_positive_freq, E_field_pos_freq);
freq_index=freq2index(wp,modulation_freq);
atom_field_problem.E_field = E_field;