From 13f7d144ea868547b7f21000f1fddd836f8b38e9 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Thu, 15 Nov 2012 16:31:17 -0500 Subject: fields definitions are placed --- .../realistic_Rb_and_fields.xmds | 641 +++++++++++++++++++++ 1 file changed, 641 insertions(+) create mode 100644 xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds new file mode 100644 index 0000000..bfed139 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -0,0 +1,641 @@ + + + + --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --E1o=0 --E2o=1e2 --E3o=0 --E4o=0 + + + + + + realistic_Rb_and_fields + + Eugeniy Mikhailov + + License GPL. + + Solving simplified Rb atom model + with fields propagation along spatial axis Z + with Doppler broadening. + + + We assume four-wave mixing condition when w3-w4=w2-w1 i.e. fields E3 and E4 drive the same + resonance as fields E2 and E1. + + + * --------------- | F=1, 2P_3/2 > + * \ \ + * \ E3_r \ -------- | F=2, 2P_+1/2 > + * \ E4_r \ / \ + * \ \ / E2_l \ + * \ / \ E1_l + * | F=2, 2S_1/2 > -------------- \ + * \ \ + * \ \ + * ------------- | F=1, 2S_1/2 > + * + + + We are solving + dE/dz+(1/c)*dE/dt=i*eta*rho_ij, where j level is higher than i. + Note that E is actually a Rabi frequency of electromagnetic field not the EM field + in xmds terms it looks like + dE_dz = i*eta*rhoij - 1/c*L[E], here we moved t dependence to Fourier space + + VERY IMPORTANT: all Rabi frequency should be given in [1/s], if you want to + normalize it to something else look drho/dt equation. + No need to renormalizes eta as long as its express through + the upper level decay rate in the same units as Rabi frequency. + + + + + section + double v_thermal_averaged=0; + // Maxwell distribution velocities range to take in account in [m/s] + double V_maxwell_min = 0, V_maxwell_max = 0; + + // repopulation rate (atoms flying in/out the laser beam) in [1/s] + const double gt=0.01 *(2*M_PI*1e6); + + // Larmor frequency + double WL=0; + + + // inner use variables + double probability_v; // will be used as p(v) in Maxwell distribution + + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 to provide range for Maxwell velocity distribution\n"); + v_thermal_averaged=sqrt(k_boltzmann*Temperature/mass); + // Maxwell distribution velocities range to take in account in [m/s] + // there is almost zero probability for higher velocity p(4*v_av) = 3.3e-04 * p(0) + V_maxwell_min = -4*v_thermal_averaged; V_maxwell_max = -V_maxwell_min; + ]]> + + + + + + + + + + + + + + z + + + + + + + + + + + Ep1 Em1 Ep2 Em2 Ep3 Em3 Ep4 Em4 + + + + + + + + probability_v + + + + + + + + probability_v_norm + + Maxwell_distribution_probabilities + + + + + + + + Ep1a Em1a Ep2a Em2a Ep3a Em3a Ep4a Em4a + + E_field Maxwell_distribution_probabilities Maxwell_distribution_probabilities_norm + + + + + + + + +r0101 r0113 r0202 r0214 r0303 r0309 r0315 r0404 r0410 r0416 r0505 r0511 r0602 r0606 r0614 r0703 r0707 r0709 r0715 r0804 r0808 r0810 r0816 r0909 r0915 r1010 r1016 r1111 r1313 r1414 r1515 r1616 + + + + + + // this is because if r11=1, everything else is 0 and then every small increment + // seems to be huge and adaptive solver makes smaller and smaller steps. + // As quick and dirty fix I reshuffle initial population + // so some of the population sits at the second ground level |2> + // TODO: Fix above. Make the equation of motion for r11 + // and express other level, let's say r44 + // through population normalization + + //read from Mathematica generated RbInits.txt +//---------------- RbInits.txt starts ------------------ +r0101 = 0.125; +r0109 = 0; +r0110 = 0; +r0111 = 0; +r0112 = 0; +r0113 = 0; +r0114 = 0; +r0115 = 0; +r0116 = 0; +r0201 = 0; +r0202 = 0.125; +r0209 = 0; +r0210 = 0; +r0211 = 0; +r0212 = 0; +r0213 = 0; +r0214 = 0; +r0215 = 0; +r0216 = 0; +r0301 = 0; +r0302 = 0; +r0303 = 0.125; +r0309 = 0; +r0310 = 0; +r0311 = 0; +r0312 = 0; +r0313 = 0; +r0314 = 0; +r0315 = 0; +r0316 = 0; +r0401 = 0; +r0402 = 0; +r0403 = 0; +r0404 = 0.125; +r0409 = 0; +r0410 = 0; +r0411 = 0; +r0412 = 0; +r0413 = 0; +r0414 = 0; +r0415 = 0; +r0416 = 0; +r0501 = 0; +r0502 = 0; +r0503 = 0; +r0504 = 0; +r0505 = 0.125; +r0509 = 0; +r0510 = 0; +r0511 = 0; +r0512 = 0; +r0513 = 0; +r0514 = 0; +r0515 = 0; +r0516 = 0; +r0601 = 0; +r0602 = 0; +r0603 = 0; +r0604 = 0; +r0605 = 0; +r0606 = 0.125; +r0609 = 0; +r0610 = 0; +r0611 = 0; +r0612 = 0; +r0613 = 0; +r0614 = 0; +r0615 = 0; +r0616 = 0; +r0701 = 0; +r0702 = 0; +r0703 = 0; +r0704 = 0; +r0705 = 0; +r0706 = 0; +r0707 = 0.125; +r0709 = 0; +r0710 = 0; +r0711 = 0; +r0712 = 0; +r0713 = 0; +r0714 = 0; +r0715 = 0; +r0716 = 0; +r0801 = 0; +r0802 = 0; +r0803 = 0; +r0804 = 0; +r0805 = 0; +r0806 = 0; +r0807 = 0; +r0808 = 0.125; +r0809 = 0; +r0810 = 0; +r0811 = 0; +r0812 = 0; +r0813 = 0; +r0814 = 0; +r0815 = 0; +r0816 = 0; +r0909 = 0; +r0912 = 0; +r0913 = 0; +r0914 = 0; +r0915 = 0; +r0916 = 0; +r1009 = 0; +r1010 = 0; +r1012 = 0; +r1013 = 0; +r1014 = 0; +r1015 = 0; +r1016 = 0; +r1109 = 0; +r1110 = 0; +r1111 = 0; +r1112 = 0; +r1113 = 0; +r1114 = 0; +r1115 = 0; +r1116 = 0; +r1212 = 0; +r1312 = 0; +r1313 = 0; +r1412 = 0; +r1413 = 0; +r1414 = 0; +r1512 = 0; +r1513 = 0; +r1514 = 0; +r1515 = 0; +r1612 = 0; +r1613 = 0; +r1614 = 0; +r1615 = 0; +r1616 = 0; +//---------------- RbInits.txt ends ------------------ + ]]> + + + + + + + + + + + + + + + + + 100 + + + + + + density_matrix + E_field_avgd + + + + + + + + + Lt + + + E_field + density_matrix + + + + + + + + + + + + E_field_avgd + Ip1_out Im1_out Ip2_out Im2_out Ip3_out Im3_out Ip4_out Im4_out + + + + + + + + -- cgit v1.2.3 From 92ceaf3edca9d74015b4768224eda4c60da9918d Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Thu, 15 Nov 2012 20:25:17 -0500 Subject: added proper rho elements into the density matrix element --- xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index bfed139..11a98ad 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -246,7 +246,7 @@ const double rt2 = 1.4142135623730951; -r0101 r0113 r0202 r0214 r0303 r0309 r0315 r0404 r0410 r0416 r0505 r0511 r0602 r0606 r0614 r0703 r0707 r0709 r0715 r0804 r0808 r0810 r0816 r0909 r0915 r1010 r1016 r1111 r1313 r1414 r1515 r1616 +r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0211 r0212 r0213 r0214 r0215 r0216 r0301 r0302 r0303 r0309 r0310 r0311 r0312 r0313 r0314 r0315 r0316 r0401 r0402 r0403 r0404 r0409 r0410 r0411 r0412 r0413 r0414 r0415 r0416 r0501 r0502 r0503 r0504 r0505 r0509 r0510 r0511 r0512 r0513 r0514 r0515 r0516 r0601 r0602 r0603 r0604 r0605 r0606 r0609 r0610 r0611 r0612 r0613 r0614 r0615 r0616 r0701 r0702 r0703 r0704 r0705 r0706 r0707 r0709 r0710 r0711 r0712 r0713 r0714 r0715 r0716 r0801 r0802 r0803 r0804 r0805 r0806 r0807 r0808 r0809 r0810 r0811 r0812 r0813 r0814 r0815 r0816 r0909 r0912 r0913 r0914 r0915 r0916 r1009 r1010 r1012 r1013 r1014 r1015 r1016 r1109 r1110 r1111 r1112 r1113 r1114 r1115 r1116 r1212 r1312 r1313 r1412 r1413 r1414 r1512 r1513 r1514 r1515 r1612 r1613 r1614 r1615 r1616 -- cgit v1.2.3 From 97699d1057ae43cb6fdcdae34bb5a4e824134088 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Fri, 16 Nov 2012 09:44:32 -0500 Subject: Added arguments to give magnetic field projection in Larmor frequency units --- xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index 11a98ad..e85bb9f 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -93,10 +93,6 @@ const double rt2 = 1.4142135623730951; // repopulation rate (atoms flying in/out the laser beam) in [1/s] const double gt=0.01 *(2*M_PI*1e6); - // Larmor frequency - double WL=0; - - // inner use variables double probability_v; // will be used as p(v) in Maxwell distribution @@ -129,6 +125,10 @@ const double rt2 = 1.4142135623730951; + + + + -- cgit v1.2.3 From 9aa57a91f8144ee292d0d1cce1336eb1704ba19d Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Fri, 16 Nov 2012 09:55:05 -0500 Subject: xmds: insert proper equations from mathematica where rt --> rt2 --- xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index e85bb9f..0f4d50d 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -604,8 +604,8 @@ dEp2_dz = (i*Ndens*(conj(r0709) + conj(r0810))*eta1)/rt6 - Lt[Ep2]; dEm2_dz = -((i*Ndens*(conj(r0610) + conj(r0711))*eta1)/rt6) - Lt[Em2]; dEp3_dz = -((i*Ndens*(rt2*rt3*conj(r0612) + rt3*conj(r0713) + conj(r0814))*eta2)/rt3) - Lt[Ep3]; dEm3_dz = -((i*Ndens*(conj(r0614) + rt3*(conj(r0715) + rt2*conj(r0816)))*eta2)/rt3) - Lt[Em3]; -dEp4_dz = -((i*Ndens*(rt*conj(r0212) + rt3*conj(r0313) + rt3*conj(r0414) + rt*conj(r0515))*eta2)/rt3) - Lt[Ep4]; -dEm4_dz = (i*Ndens*(rt*conj(r0113) + rt3*conj(r0214) + rt3*conj(r0315) + rt*conj(r0416))*eta2)/rt3 - Lt[Em4]; +dEp4_dz = -((i*Ndens*(rt2*conj(r0212) + rt3*conj(r0313) + rt3*conj(r0414) + rt2*conj(r0515))*eta2)/rt3) - Lt[Ep4]; +dEm4_dz = (i*Ndens*(rt2*conj(r0113) + rt3*conj(r0214) + rt3*conj(r0315) + rt2*conj(r0416))*eta2)/rt3 - Lt[Em4]; //---------------- RbPropEquations.txt ends ------------------ ]]> -- cgit v1.2.3 From 4c3d740caf4f997d202f51b83cfbf8e90f494339 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Fri, 16 Nov 2012 11:02:58 -0500 Subject: xmds: compilation problem fix Sqrt --> sqrt as generated by mathematica --- .../realistic_Rb_and_fields.xmds | 162 ++++++++++----------- 1 file changed, 81 insertions(+), 81 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index 0f4d50d..d4e663e 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -447,74 +447,74 @@ dr0109_dt = (-(gt*r0109) - (gt + g1)*r0109)/2. - i*(-(conj(Ep1a)*conj(r0301))/(4 dr0110_dt = (-(gt*r0110) - (gt + g1)*r0110)/2. - i*(-(conj(Em1a)*conj(r0201))/(4.*rt2) - (conj(Ep1a)*conj(r0401))/(4.*rt2) - (conj(Em2a)*conj(r0601))/(4.*rt6) + (conj(Ep2a)*conj(r0801))/(4.*rt6) + (conj(Em1a)*conj(r1009))/4. - (conj(Em4a)*conj(r1013))/(4.*rt6) + (delta1 + v*Kvec1)*r0110 + r0210*(WLx/2. - (i*WLy)/2.) - r0111*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0109*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0110*WLz); dr0111_dt = (-(gt*r0111) - (gt + g1)*r0111)/2. - i*(-(conj(Em1a)*conj(r0301))/(4.*rt6) - (conj(Ep1a)*conj(r0501))/4. - (conj(Em2a)*conj(r0701))/(4.*rt6) + (conj(Em1a)*conj(r1109))/4. - (conj(Em4a)*conj(r1113))/(4.*rt6) + r0211*(WLx/2. - (i*WLy)/2.) - r0110*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0111*(-delta1 - v*Kvec1 + WLz/6.) + r0111*WLz); dr0112_dt = (-(gt*r0112) - (gt + g2)*r0112)/2. - i*(-(conj(Ep4a)*conj(r0201))/(4.*rt6) - (conj(Ep3a)*conj(r0601))/(4.*rt2) + (conj(Em1a)*r0912)/4. - (conj(Em4a)*r1312)/(4.*rt6) + r0212*(WLx/2. - (i*WLy)/2.) - r0113*((2*WLx)/3. + (2*i*WLy)/3.) + r0112*WLz - r0112*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0113_dt = (-(gt*r0113) - (gt + g2)*r0113)/2. - i*(-(conj(Ep4a)*conj(r0301))/8. - (conj(Ep3a)*conj(r0701))/8. + (conj(Em4a)*r0101)/(4.*rt6) + (conj(Em1a)*r0913)/4. - (conj(Em4a)*r1313)/(4.*rt6) - r0112*((2*WLx)/3. - (2*i*WLy)/3.) + r0213*(WLx/2. - (i*WLy)/2.) - r0114*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r0113*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) + r0113*WLz); -dr0114_dt = (-(gt*r0114) - (gt + g2)*r0114)/2. - i*((conj(Em4a)*conj(r0201))/8. - (conj(Ep4a)*conj(r0401))/8. - (conj(Em3a)*conj(r0601))/(8.*rt3) - (conj(Ep3a)*conj(r0801))/(8.*rt3) - (conj(Em4a)*conj(r1413))/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0114 + (conj(Em1a)*r0914)/4. + r0214*(WLx/2. - (i*WLy)/2.) - r0113*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0115*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0114*WLz); -dr0115_dt = (-(gt*r0115) - (gt + g2)*r0115)/2. - i*((conj(Em4a)*conj(r0301))/8. - (conj(Ep4a)*conj(r0501))/(4.*rt6) - (conj(Em3a)*conj(r0701))/8. - (conj(Em4a)*conj(r1513))/(4.*rt6) + (conj(Em1a)*r0915)/4. + r0215*(WLx/2. - (i*WLy)/2.) - r0116*((2*WLx)/3. + (2*i*WLy)/3.) - r0114*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0115*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0115*WLz); +dr0113_dt = (-(gt*r0113) - (gt + g2)*r0113)/2. - i*(-(conj(Ep4a)*conj(r0301))/8. - (conj(Ep3a)*conj(r0701))/8. + (conj(Em4a)*r0101)/(4.*rt6) + (conj(Em1a)*r0913)/4. - (conj(Em4a)*r1313)/(4.*rt6) - r0112*((2*WLx)/3. - (2*i*WLy)/3.) + r0213*(WLx/2. - (i*WLy)/2.) - r0114*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r0113*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) + r0113*WLz); +dr0114_dt = (-(gt*r0114) - (gt + g2)*r0114)/2. - i*((conj(Em4a)*conj(r0201))/8. - (conj(Ep4a)*conj(r0401))/8. - (conj(Em3a)*conj(r0601))/(8.*rt3) - (conj(Ep3a)*conj(r0801))/(8.*rt3) - (conj(Em4a)*conj(r1413))/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0114 + (conj(Em1a)*r0914)/4. + r0214*(WLx/2. - (i*WLy)/2.) - r0113*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0115*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0114*WLz); +dr0115_dt = (-(gt*r0115) - (gt + g2)*r0115)/2. - i*((conj(Em4a)*conj(r0301))/8. - (conj(Ep4a)*conj(r0501))/(4.*rt6) - (conj(Em3a)*conj(r0701))/8. - (conj(Em4a)*conj(r1513))/(4.*rt6) + (conj(Em1a)*r0915)/4. + r0215*(WLx/2. - (i*WLy)/2.) - r0116*((2*WLx)/3. + (2*i*WLy)/3.) - r0114*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0115*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0115*WLz); dr0116_dt = (-(gt*r0116) - (gt + g2)*r0116)/2. - i*((conj(Em4a)*conj(r0401))/(4.*rt6) - (conj(Em3a)*conj(r0801))/(4.*rt2) - (conj(Em4a)*conj(r1613))/(4.*rt6) + (conj(Em1a)*r0916)/4. - r0115*((2*WLx)/3. - (2*i*WLy)/3.) + r0216*(WLx/2. - (i*WLy)/2.) - r0116*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + r0116*WLz); -dr0201_dt = -(gt*r0201) + (g1*r1009)/(2.*rt2) + (g2*r1312)/6. + (g2*r1413)/(2.*rt6) - i*((conj(Em1a)*conj(r0110))/(4.*rt2) + (conj(Ep4a)*conj(r0112))/(4.*rt6) - (conj(Em4a)*conj(r0114))/8. - (Em1a*r0209)/4. + (Em4a*r0213)/(4.*rt6) + r0101*(WLx/2. + (i*WLy)/2.) - r0202*(WLx/2. + (i*WLy)/2.) + r0301*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - (r0201*WLz)/2.); -dr0202_dt = gt/8. - gt*r0202 + (g1*r0909)/4. + (g1*r1010)/4. + (g2*r1212)/6. + (g2*r1313)/12. + (g2*r1414)/4. - i*((conj(Em1a)*conj(r0210))/(4.*rt2) + (conj(Ep4a)*conj(r0212))/(4.*rt6) - (conj(Em4a)*conj(r0214))/8. - (Em1a*r0210)/(4.*rt2) - (Ep4a*r0212)/(4.*rt6) + (Em4a*r0214)/8. - r0201*(WLx/2. - (i*WLy)/2.) + conj(r0201)*(WLx/2. + (i*WLy)/2.) + r0302*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - conj(r0302)*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.)); -dr0209_dt = (-(gt*r0209) - (gt + g1)*r0209)/2. - i*(-(conj(Ep1a)*conj(r0302))/(4.*rt6) + (conj(Ep2a)*conj(r0702))/(4.*rt6) + (conj(Ep4a)*conj(r0912))/(4.*rt6) - (conj(Em4a)*conj(r0914))/8. - (conj(Em1a)*r0201)/4. + (conj(Em1a)*r1009)/(4.*rt2) + r0109*(WLx/2. + (i*WLy)/2.) + r0309*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0210*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0209*(-delta1 - v*Kvec1 - WLz/6.) + (r0209*WLz)/2.); -dr0210_dt = (-(gt*r0210) - (gt + g1)*r0210)/2. - i*(-(conj(Ep1a)*conj(r0402))/(4.*rt2) - (conj(Em2a)*conj(r0602))/(4.*rt6) + (conj(Ep2a)*conj(r0802))/(4.*rt6) + (conj(Ep4a)*conj(r1012))/(4.*rt6) - (conj(Em4a)*conj(r1014))/8. - (conj(Em1a)*r0202)/(4.*rt2) + (delta1 + v*Kvec1)*r0210 + (conj(Em1a)*r1010)/(4.*rt2) + r0110*(WLx/2. + (i*WLy)/2.) + r0310*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0211*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0209*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + (r0210*WLz)/2.); -dr0211_dt = (-(gt*r0211) - (gt + g1)*r0211)/2. - i*(-(conj(Em1a)*conj(r0302))/(4.*rt6) - (conj(Ep1a)*conj(r0502))/4. - (conj(Em2a)*conj(r0702))/(4.*rt6) + (conj(Em1a)*conj(r1110))/(4.*rt2) + (conj(Ep4a)*conj(r1112))/(4.*rt6) - (conj(Em4a)*conj(r1114))/8. + r0111*(WLx/2. + (i*WLy)/2.) + r0311*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0210*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0211*(-delta1 - v*Kvec1 + WLz/6.) + (r0211*WLz)/2.); -dr0212_dt = (-(gt*r0212) - (gt + g2)*r0212)/2. - i*(-(conj(Ep3a)*conj(r0602))/(4.*rt2) - (conj(Ep4a)*r0202)/(4.*rt6) + (conj(Em1a)*r1012)/(4.*rt2) + (conj(Ep4a)*r1212)/(4.*rt6) - (conj(Em4a)*r1412)/8. + r0112*(WLx/2. + (i*WLy)/2.) - r0213*((2*WLx)/3. + (2*i*WLy)/3.) + r0312*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + (r0212*WLz)/2. - r0212*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0213_dt = (-(gt*r0213) - (gt + g2)*r0213)/2. - i*(-(conj(Ep4a)*conj(r0302))/8. - (conj(Ep3a)*conj(r0702))/8. + (conj(Ep4a)*conj(r1312))/(4.*rt6) + (conj(Em4a)*r0201)/(4.*rt6) + (conj(Em1a)*r1013)/(4.*rt2) - (conj(Em4a)*r1413)/8. - r0212*((2*WLx)/3. - (2*i*WLy)/3.) + r0113*(WLx/2. + (i*WLy)/2.) - r0214*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0313*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0213*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) + (r0213*WLz)/2.); -dr0214_dt = (-(gt*r0214) - (gt + g2)*r0214)/2. - i*(-(conj(Ep4a)*conj(r0402))/8. - (conj(Em3a)*conj(r0602))/(8.*rt3) - (conj(Ep3a)*conj(r0802))/(8.*rt3) + (conj(Ep4a)*conj(r1412))/(4.*rt6) + (conj(Em4a)*r0202)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0214 + (conj(Em1a)*r1014)/(4.*rt2) - (conj(Em4a)*r1414)/8. + r0114*(WLx/2. + (i*WLy)/2.) - r0213*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0215*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0314*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + (r0214*WLz)/2.); -dr0215_dt = (-(gt*r0215) - (gt + g2)*r0215)/2. - i*((conj(Em4a)*conj(r0302))/8. - (conj(Ep4a)*conj(r0502))/(4.*rt6) - (conj(Em3a)*conj(r0702))/8. + (conj(Ep4a)*conj(r1512))/(4.*rt6) - (conj(Em4a)*conj(r1514))/8. + (conj(Em1a)*r1015)/(4.*rt2) + r0115*(WLx/2. + (i*WLy)/2.) - r0216*((2*WLx)/3. + (2*i*WLy)/3.) - r0214*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0315*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0215*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + (r0215*WLz)/2.); -dr0216_dt = (-(gt*r0216) - (gt + g2)*r0216)/2. - i*((conj(Em4a)*conj(r0402))/(4.*rt6) - (conj(Em3a)*conj(r0802))/(4.*rt2) + (conj(Ep4a)*conj(r1612))/(4.*rt6) - (conj(Em4a)*conj(r1614))/8. + (conj(Em1a)*r1016)/(4.*rt2) - r0215*((2*WLx)/3. - (2*i*WLy)/3.) + r0116*(WLx/2. + (i*WLy)/2.) + r0316*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0216*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + (r0216*WLz)/2.); -dr0301_dt = -(gt*r0301) + (g1*r1109)/(2.*rt6) + (g2*r1513)/(2.*rt6) - i*((conj(Ep1a)*conj(r0109))/(4.*rt6) + (conj(Em1a)*conj(r0111))/(4.*rt6) + (conj(Ep4a)*conj(r0113))/8. - (conj(Em4a)*conj(r0115))/8. - (Em1a*r0309)/4. + (Em4a*r0313)/(4.*rt6) - r0302*(WLx/2. + (i*WLy)/2.) + r0401*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0201*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0301*WLz); -dr0302_dt = -(gt*r0302) + (g1*r1009)/(2.*rt3) + (g1*r1110)/(4.*rt3) + (g2*r1312)/(2.*rt6) + (g2*r1514)/4. - i*((conj(Ep1a)*conj(r0209))/(4.*rt6) + (conj(Em1a)*conj(r0211))/(4.*rt6) + (conj(Ep4a)*conj(r0213))/8. - (conj(Em4a)*conj(r0215))/8. - (Em1a*r0310)/(4.*rt2) - (Ep4a*r0312)/(4.*rt6) + (Em4a*r0314)/8. - r0301*(WLx/2. - (i*WLy)/2.) + r0402*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0202*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0303*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (r0302*WLz)/2.); -dr0303_dt = gt/8. - gt*r0303 + (g1*r0909)/12. + (g1*r1010)/3. + (g1*r1111)/12. + (g2*r1313)/4. + (g2*r1515)/4. - i*((conj(Ep1a)*conj(r0309))/(4.*rt6) + (conj(Em1a)*conj(r0311))/(4.*rt6) + (conj(Ep4a)*conj(r0313))/8. - (conj(Em4a)*conj(r0315))/8. - (Ep1a*r0309)/(4.*rt6) - (Em1a*r0311)/(4.*rt6) - (Ep4a*r0313)/8. + (Em4a*r0315)/8. - r0302*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0403*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + conj(r0302)*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - conj(r0403)*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.)); -dr0309_dt = (-(gt*r0309) - (gt + g1)*r0309)/2. - i*((conj(Ep2a)*conj(r0703))/(4.*rt6) + (conj(Ep4a)*conj(r0913))/8. - (conj(Em4a)*conj(r0915))/8. - (conj(Em1a)*r0301)/4. - (conj(Ep1a)*r0303)/(4.*rt6) + (conj(Ep1a)*r0909)/(4.*rt6) + (conj(Em1a)*r1109)/(4.*rt6) + r0409*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0209*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0310*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0309*(-delta1 - v*Kvec1 - WLz/6.)); -dr0310_dt = (-(gt*r0310) - (gt + g1)*r0310)/2. - i*(-(conj(Ep1a)*conj(r0403))/(4.*rt2) - (conj(Em2a)*conj(r0603))/(4.*rt6) + (conj(Ep2a)*conj(r0803))/(4.*rt6) + (conj(Ep1a)*conj(r1009))/(4.*rt6) + (conj(Ep4a)*conj(r1013))/8. - (conj(Em4a)*conj(r1015))/8. - (conj(Em1a)*r0302)/(4.*rt2) + (delta1 + v*Kvec1)*r0310 + (conj(Em1a)*r1110)/(4.*rt6) + r0410*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0210*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0311*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0309*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); -dr0311_dt = (-(gt*r0311) - (gt + g1)*r0311)/2. - i*(-(conj(Ep1a)*conj(r0503))/4. - (conj(Em2a)*conj(r0703))/(4.*rt6) + (conj(Ep1a)*conj(r1109))/(4.*rt6) + (conj(Ep4a)*conj(r1113))/8. - (conj(Em4a)*conj(r1115))/8. - (conj(Em1a)*r0303)/(4.*rt6) + (conj(Em1a)*r1111)/(4.*rt6) + r0411*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0211*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0310*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0311*(-delta1 - v*Kvec1 + WLz/6.)); -dr0312_dt = (-(gt*r0312) - (gt + g2)*r0312)/2. - i*(-(conj(Ep3a)*conj(r0603))/(4.*rt2) - (conj(Ep4a)*r0302)/(4.*rt6) + (conj(Ep1a)*r0912)/(4.*rt6) + (conj(Em1a)*r1112)/(4.*rt6) + (conj(Ep4a)*r1312)/8. - (conj(Em4a)*r1512)/8. - r0313*((2*WLx)/3. + (2*i*WLy)/3.) + r0412*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0212*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0313_dt = (-(gt*r0313) - (gt + g2)*r0313)/2. - i*(-(conj(Ep3a)*conj(r0703))/8. + (conj(Em4a)*r0301)/(4.*rt6) - (conj(Ep4a)*r0303)/8. + (conj(Ep1a)*r0913)/(4.*rt6) + (conj(Em1a)*r1113)/(4.*rt6) + (conj(Ep4a)*r1313)/8. - (conj(Em4a)*r1513)/8. - r0312*((2*WLx)/3. - (2*i*WLy)/3.) - r0314*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0413*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0213*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0313*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr0314_dt = (-(gt*r0314) - (gt + g2)*r0314)/2. - i*(-(conj(Ep4a)*conj(r0403))/8. - (conj(Em3a)*conj(r0603))/(8.*rt3) - (conj(Ep3a)*conj(r0803))/(8.*rt3) + (conj(Ep4a)*conj(r1413))/8. + (conj(Em4a)*r0302)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0314 + (conj(Ep1a)*r0914)/(4.*rt6) + (conj(Em1a)*r1114)/(4.*rt6) - (conj(Em4a)*r1514)/8. - r0313*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0315*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0414*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0214*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.)); -dr0315_dt = (-(gt*r0315) - (gt + g2)*r0315)/2. - i*(-(conj(Ep4a)*conj(r0503))/(4.*rt6) - (conj(Em3a)*conj(r0703))/8. + (conj(Ep4a)*conj(r1513))/8. + (conj(Em4a)*r0303)/8. + (conj(Ep1a)*r0915)/(4.*rt6) + (conj(Em1a)*r1115)/(4.*rt6) - (conj(Em4a)*r1515)/8. - r0316*((2*WLx)/3. + (2*i*WLy)/3.) - r0314*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0415*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0215*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0315*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); -dr0316_dt = (-(gt*r0316) - (gt + g2)*r0316)/2. - i*((conj(Em4a)*conj(r0403))/(4.*rt6) - (conj(Em3a)*conj(r0803))/(4.*rt2) + (conj(Ep4a)*conj(r1613))/8. - (conj(Em4a)*conj(r1615))/8. + (conj(Ep1a)*r0916)/(4.*rt6) + (conj(Em1a)*r1116)/(4.*rt6) - r0315*((2*WLx)/3. - (2*i*WLy)/3.) + r0416*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0216*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0316*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); -dr0401_dt = -(gt*r0401) - (g2*r1512)/6. + (g2*r1613)/6. - i*((conj(Ep1a)*conj(r0110))/(4.*rt2) + (conj(Ep4a)*conj(r0114))/8. - (conj(Em4a)*conj(r0116))/(4.*rt6) - (Em1a*r0409)/4. + (Em4a*r0413)/(4.*rt6) + r0501*(WLx/2. - (i*WLy)/2.) - r0402*(WLx/2. + (i*WLy)/2.) + r0301*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (3*r0401*WLz)/2.); -dr0402_dt = -(gt*r0402) + (g1*r1109)/4. + (g2*r1412)/(2.*rt6) - (g2*r1513)/12. + (g2*r1614)/(2.*rt6) - i*((conj(Ep1a)*conj(r0210))/(4.*rt2) + (conj(Ep4a)*conj(r0214))/8. - (conj(Em4a)*conj(r0216))/(4.*rt6) - (Em1a*r0410)/(4.*rt2) - (Ep4a*r0412)/(4.*rt6) + (Em4a*r0414)/8. - r0401*(WLx/2. - (i*WLy)/2.) + r0502*(WLx/2. - (i*WLy)/2.) + r0302*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0403*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0402*WLz); -dr0403_dt = -(gt*r0403) + (g1*r1009)/(4.*rt3) + (g1*r1110)/(2.*rt3) + (g2*r1413)/4. + (g2*r1615)/(2.*rt6) - i*((conj(Ep1a)*conj(r0310))/(4.*rt2) + (conj(Ep4a)*conj(r0314))/8. - (conj(Em4a)*conj(r0316))/(4.*rt6) - (Ep1a*r0409)/(4.*rt6) - (Em1a*r0411)/(4.*rt6) - (Ep4a*r0413)/8. + (Em4a*r0415)/8. + r0503*(WLx/2. - (i*WLy)/2.) - r0402*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0303*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0404*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (r0403*WLz)/2.); -dr0404_dt = gt/8. - gt*r0404 + (g1*r1010)/4. + (g1*r1111)/4. + (g2*r1414)/4. + (g2*r1515)/12. + (g2*r1616)/6. - i*((conj(Ep1a)*conj(r0410))/(4.*rt2) + (conj(Ep4a)*conj(r0414))/8. - (conj(Em4a)*conj(r0416))/(4.*rt6) - (Ep1a*r0410)/(4.*rt2) - (Ep4a*r0414)/8. + (Em4a*r0416)/(4.*rt6) + r0504*(WLx/2. - (i*WLy)/2.) - conj(r0504)*(WLx/2. + (i*WLy)/2.) - r0403*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + conj(r0403)*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.)); -dr0409_dt = (-(gt*r0409) - (gt + g1)*r0409)/2. - i*((conj(Ep2a)*conj(r0704))/(4.*rt6) + (conj(Ep4a)*conj(r0914))/8. - (conj(Em4a)*conj(r0916))/(4.*rt6) - (conj(Em1a)*r0401)/4. - (conj(Ep1a)*r0403)/(4.*rt6) + (conj(Ep1a)*r1009)/(4.*rt2) + r0509*(WLx/2. - (i*WLy)/2.) + r0309*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0410*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0409*(-delta1 - v*Kvec1 - WLz/6.) - (r0409*WLz)/2.); -dr0410_dt = (-(gt*r0410) - (gt + g1)*r0410)/2. - i*(-(conj(Em2a)*conj(r0604))/(4.*rt6) + (conj(Ep2a)*conj(r0804))/(4.*rt6) + (conj(Ep4a)*conj(r1014))/8. - (conj(Em4a)*conj(r1016))/(4.*rt6) - (conj(Em1a)*r0402)/(4.*rt2) - (conj(Ep1a)*r0404)/(4.*rt2) + (delta1 + v*Kvec1)*r0410 + (conj(Ep1a)*r1010)/(4.*rt2) + r0510*(WLx/2. - (i*WLy)/2.) + r0310*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0411*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0409*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - (r0410*WLz)/2.); -dr0411_dt = (-(gt*r0411) - (gt + g1)*r0411)/2. - i*(-(conj(Ep1a)*conj(r0504))/4. - (conj(Em2a)*conj(r0704))/(4.*rt6) + (conj(Ep1a)*conj(r1110))/(4.*rt2) + (conj(Ep4a)*conj(r1114))/8. - (conj(Em4a)*conj(r1116))/(4.*rt6) - (conj(Em1a)*r0403)/(4.*rt6) + r0511*(WLx/2. - (i*WLy)/2.) + r0311*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0410*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0411*(-delta1 - v*Kvec1 + WLz/6.) - (r0411*WLz)/2.); -dr0412_dt = (-(gt*r0412) - (gt + g2)*r0412)/2. - i*(-(conj(Ep3a)*conj(r0604))/(4.*rt2) - (conj(Ep4a)*r0402)/(4.*rt6) + (conj(Ep1a)*r1012)/(4.*rt2) + (conj(Ep4a)*r1412)/8. - (conj(Em4a)*r1612)/(4.*rt6) + r0512*(WLx/2. - (i*WLy)/2.) - r0413*((2*WLx)/3. + (2*i*WLy)/3.) + r0312*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (r0412*WLz)/2. - r0412*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0413_dt = (-(gt*r0413) - (gt + g2)*r0413)/2. - i*(-(conj(Ep3a)*conj(r0704))/8. + (conj(Em4a)*r0401)/(4.*rt6) - (conj(Ep4a)*r0403)/8. + (conj(Ep1a)*r1013)/(4.*rt2) + (conj(Ep4a)*r1413)/8. - (conj(Em4a)*r1613)/(4.*rt6) - r0412*((2*WLx)/3. - (2*i*WLy)/3.) + r0513*(WLx/2. - (i*WLy)/2.) - r0414*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0313*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0413*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - (r0413*WLz)/2.); -dr0414_dt = (-(gt*r0414) - (gt + g2)*r0414)/2. - i*(-(conj(Em3a)*conj(r0604))/(8.*rt3) - (conj(Ep3a)*conj(r0804))/(8.*rt3) + (conj(Em4a)*r0402)/8. - (conj(Ep4a)*r0404)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0414 + (conj(Ep1a)*r1014)/(4.*rt2) + (conj(Ep4a)*r1414)/8. - (conj(Em4a)*r1614)/(4.*rt6) + r0514*(WLx/2. - (i*WLy)/2.) - r0413*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0415*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0314*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (r0414*WLz)/2.); -dr0415_dt = (-(gt*r0415) - (gt + g2)*r0415)/2. - i*(-(conj(Ep4a)*conj(r0504))/(4.*rt6) - (conj(Em3a)*conj(r0704))/8. + (conj(Ep4a)*conj(r1514))/8. + (conj(Em4a)*r0403)/8. + (conj(Ep1a)*r1015)/(4.*rt2) - (conj(Em4a)*r1615)/(4.*rt6) + r0515*(WLx/2. - (i*WLy)/2.) - r0416*((2*WLx)/3. + (2*i*WLy)/3.) - r0414*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0315*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0415*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - (r0415*WLz)/2.); -dr0416_dt = (-(gt*r0416) - (gt + g2)*r0416)/2. - i*(-(conj(Em3a)*conj(r0804))/(4.*rt2) + (conj(Ep4a)*conj(r1614))/8. + (conj(Em4a)*r0404)/(4.*rt6) + (conj(Ep1a)*r1016)/(4.*rt2) - (conj(Em4a)*r1616)/(4.*rt6) - r0415*((2*WLx)/3. - (2*i*WLy)/3.) + r0516*(WLx/2. - (i*WLy)/2.) + r0316*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0416*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - (r0416*WLz)/2.); +dr0201_dt = -(gt*r0201) + (g1*r1009)/(2.*rt2) + (g2*r1312)/6. + (g2*r1413)/(2.*rt6) - i*((conj(Em1a)*conj(r0110))/(4.*rt2) + (conj(Ep4a)*conj(r0112))/(4.*rt6) - (conj(Em4a)*conj(r0114))/8. - (Em1a*r0209)/4. + (Em4a*r0213)/(4.*rt6) + r0101*(WLx/2. + (i*WLy)/2.) - r0202*(WLx/2. + (i*WLy)/2.) + r0301*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - (r0201*WLz)/2.); +dr0202_dt = gt/8. - gt*r0202 + (g1*r0909)/4. + (g1*r1010)/4. + (g2*r1212)/6. + (g2*r1313)/12. + (g2*r1414)/4. - i*((conj(Em1a)*conj(r0210))/(4.*rt2) + (conj(Ep4a)*conj(r0212))/(4.*rt6) - (conj(Em4a)*conj(r0214))/8. - (Em1a*r0210)/(4.*rt2) - (Ep4a*r0212)/(4.*rt6) + (Em4a*r0214)/8. - r0201*(WLx/2. - (i*WLy)/2.) + conj(r0201)*(WLx/2. + (i*WLy)/2.) + r0302*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - conj(r0302)*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.)); +dr0209_dt = (-(gt*r0209) - (gt + g1)*r0209)/2. - i*(-(conj(Ep1a)*conj(r0302))/(4.*rt6) + (conj(Ep2a)*conj(r0702))/(4.*rt6) + (conj(Ep4a)*conj(r0912))/(4.*rt6) - (conj(Em4a)*conj(r0914))/8. - (conj(Em1a)*r0201)/4. + (conj(Em1a)*r1009)/(4.*rt2) + r0109*(WLx/2. + (i*WLy)/2.) + r0309*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0210*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0209*(-delta1 - v*Kvec1 - WLz/6.) + (r0209*WLz)/2.); +dr0210_dt = (-(gt*r0210) - (gt + g1)*r0210)/2. - i*(-(conj(Ep1a)*conj(r0402))/(4.*rt2) - (conj(Em2a)*conj(r0602))/(4.*rt6) + (conj(Ep2a)*conj(r0802))/(4.*rt6) + (conj(Ep4a)*conj(r1012))/(4.*rt6) - (conj(Em4a)*conj(r1014))/8. - (conj(Em1a)*r0202)/(4.*rt2) + (delta1 + v*Kvec1)*r0210 + (conj(Em1a)*r1010)/(4.*rt2) + r0110*(WLx/2. + (i*WLy)/2.) + r0310*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0211*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0209*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + (r0210*WLz)/2.); +dr0211_dt = (-(gt*r0211) - (gt + g1)*r0211)/2. - i*(-(conj(Em1a)*conj(r0302))/(4.*rt6) - (conj(Ep1a)*conj(r0502))/4. - (conj(Em2a)*conj(r0702))/(4.*rt6) + (conj(Em1a)*conj(r1110))/(4.*rt2) + (conj(Ep4a)*conj(r1112))/(4.*rt6) - (conj(Em4a)*conj(r1114))/8. + r0111*(WLx/2. + (i*WLy)/2.) + r0311*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0210*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0211*(-delta1 - v*Kvec1 + WLz/6.) + (r0211*WLz)/2.); +dr0212_dt = (-(gt*r0212) - (gt + g2)*r0212)/2. - i*(-(conj(Ep3a)*conj(r0602))/(4.*rt2) - (conj(Ep4a)*r0202)/(4.*rt6) + (conj(Em1a)*r1012)/(4.*rt2) + (conj(Ep4a)*r1212)/(4.*rt6) - (conj(Em4a)*r1412)/8. + r0112*(WLx/2. + (i*WLy)/2.) - r0213*((2*WLx)/3. + (2*i*WLy)/3.) + r0312*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + (r0212*WLz)/2. - r0212*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr0213_dt = (-(gt*r0213) - (gt + g2)*r0213)/2. - i*(-(conj(Ep4a)*conj(r0302))/8. - (conj(Ep3a)*conj(r0702))/8. + (conj(Ep4a)*conj(r1312))/(4.*rt6) + (conj(Em4a)*r0201)/(4.*rt6) + (conj(Em1a)*r1013)/(4.*rt2) - (conj(Em4a)*r1413)/8. - r0212*((2*WLx)/3. - (2*i*WLy)/3.) + r0113*(WLx/2. + (i*WLy)/2.) - r0214*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0313*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0213*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) + (r0213*WLz)/2.); +dr0214_dt = (-(gt*r0214) - (gt + g2)*r0214)/2. - i*(-(conj(Ep4a)*conj(r0402))/8. - (conj(Em3a)*conj(r0602))/(8.*rt3) - (conj(Ep3a)*conj(r0802))/(8.*rt3) + (conj(Ep4a)*conj(r1412))/(4.*rt6) + (conj(Em4a)*r0202)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0214 + (conj(Em1a)*r1014)/(4.*rt2) - (conj(Em4a)*r1414)/8. + r0114*(WLx/2. + (i*WLy)/2.) - r0213*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0215*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0314*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + (r0214*WLz)/2.); +dr0215_dt = (-(gt*r0215) - (gt + g2)*r0215)/2. - i*((conj(Em4a)*conj(r0302))/8. - (conj(Ep4a)*conj(r0502))/(4.*rt6) - (conj(Em3a)*conj(r0702))/8. + (conj(Ep4a)*conj(r1512))/(4.*rt6) - (conj(Em4a)*conj(r1514))/8. + (conj(Em1a)*r1015)/(4.*rt2) + r0115*(WLx/2. + (i*WLy)/2.) - r0216*((2*WLx)/3. + (2*i*WLy)/3.) - r0214*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0315*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0215*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + (r0215*WLz)/2.); +dr0216_dt = (-(gt*r0216) - (gt + g2)*r0216)/2. - i*((conj(Em4a)*conj(r0402))/(4.*rt6) - (conj(Em3a)*conj(r0802))/(4.*rt2) + (conj(Ep4a)*conj(r1612))/(4.*rt6) - (conj(Em4a)*conj(r1614))/8. + (conj(Em1a)*r1016)/(4.*rt2) - r0215*((2*WLx)/3. - (2*i*WLy)/3.) + r0116*(WLx/2. + (i*WLy)/2.) + r0316*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0216*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + (r0216*WLz)/2.); +dr0301_dt = -(gt*r0301) + (g1*r1109)/(2.*rt6) + (g2*r1513)/(2.*rt6) - i*((conj(Ep1a)*conj(r0109))/(4.*rt6) + (conj(Em1a)*conj(r0111))/(4.*rt6) + (conj(Ep4a)*conj(r0113))/8. - (conj(Em4a)*conj(r0115))/8. - (Em1a*r0309)/4. + (Em4a*r0313)/(4.*rt6) - r0302*(WLx/2. + (i*WLy)/2.) + r0401*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0201*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0301*WLz); +dr0302_dt = -(gt*r0302) + (g1*r1009)/(2.*rt3) + (g1*r1110)/(4.*rt3) + (g2*r1312)/(2.*rt6) + (g2*r1514)/4. - i*((conj(Ep1a)*conj(r0209))/(4.*rt6) + (conj(Em1a)*conj(r0211))/(4.*rt6) + (conj(Ep4a)*conj(r0213))/8. - (conj(Em4a)*conj(r0215))/8. - (Em1a*r0310)/(4.*rt2) - (Ep4a*r0312)/(4.*rt6) + (Em4a*r0314)/8. - r0301*(WLx/2. - (i*WLy)/2.) + r0402*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0202*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0303*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (r0302*WLz)/2.); +dr0303_dt = gt/8. - gt*r0303 + (g1*r0909)/12. + (g1*r1010)/3. + (g1*r1111)/12. + (g2*r1313)/4. + (g2*r1515)/4. - i*((conj(Ep1a)*conj(r0309))/(4.*rt6) + (conj(Em1a)*conj(r0311))/(4.*rt6) + (conj(Ep4a)*conj(r0313))/8. - (conj(Em4a)*conj(r0315))/8. - (Ep1a*r0309)/(4.*rt6) - (Em1a*r0311)/(4.*rt6) - (Ep4a*r0313)/8. + (Em4a*r0315)/8. - r0302*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0403*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + conj(r0302)*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - conj(r0403)*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.)); +dr0309_dt = (-(gt*r0309) - (gt + g1)*r0309)/2. - i*((conj(Ep2a)*conj(r0703))/(4.*rt6) + (conj(Ep4a)*conj(r0913))/8. - (conj(Em4a)*conj(r0915))/8. - (conj(Em1a)*r0301)/4. - (conj(Ep1a)*r0303)/(4.*rt6) + (conj(Ep1a)*r0909)/(4.*rt6) + (conj(Em1a)*r1109)/(4.*rt6) + r0409*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0209*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0310*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0309*(-delta1 - v*Kvec1 - WLz/6.)); +dr0310_dt = (-(gt*r0310) - (gt + g1)*r0310)/2. - i*(-(conj(Ep1a)*conj(r0403))/(4.*rt2) - (conj(Em2a)*conj(r0603))/(4.*rt6) + (conj(Ep2a)*conj(r0803))/(4.*rt6) + (conj(Ep1a)*conj(r1009))/(4.*rt6) + (conj(Ep4a)*conj(r1013))/8. - (conj(Em4a)*conj(r1015))/8. - (conj(Em1a)*r0302)/(4.*rt2) + (delta1 + v*Kvec1)*r0310 + (conj(Em1a)*r1110)/(4.*rt6) + r0410*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0210*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0311*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0309*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); +dr0311_dt = (-(gt*r0311) - (gt + g1)*r0311)/2. - i*(-(conj(Ep1a)*conj(r0503))/4. - (conj(Em2a)*conj(r0703))/(4.*rt6) + (conj(Ep1a)*conj(r1109))/(4.*rt6) + (conj(Ep4a)*conj(r1113))/8. - (conj(Em4a)*conj(r1115))/8. - (conj(Em1a)*r0303)/(4.*rt6) + (conj(Em1a)*r1111)/(4.*rt6) + r0411*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0211*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0310*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0311*(-delta1 - v*Kvec1 + WLz/6.)); +dr0312_dt = (-(gt*r0312) - (gt + g2)*r0312)/2. - i*(-(conj(Ep3a)*conj(r0603))/(4.*rt2) - (conj(Ep4a)*r0302)/(4.*rt6) + (conj(Ep1a)*r0912)/(4.*rt6) + (conj(Em1a)*r1112)/(4.*rt6) + (conj(Ep4a)*r1312)/8. - (conj(Em4a)*r1512)/8. - r0313*((2*WLx)/3. + (2*i*WLy)/3.) + r0412*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0212*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr0313_dt = (-(gt*r0313) - (gt + g2)*r0313)/2. - i*(-(conj(Ep3a)*conj(r0703))/8. + (conj(Em4a)*r0301)/(4.*rt6) - (conj(Ep4a)*r0303)/8. + (conj(Ep1a)*r0913)/(4.*rt6) + (conj(Em1a)*r1113)/(4.*rt6) + (conj(Ep4a)*r1313)/8. - (conj(Em4a)*r1513)/8. - r0312*((2*WLx)/3. - (2*i*WLy)/3.) - r0314*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0413*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0213*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0313*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr0314_dt = (-(gt*r0314) - (gt + g2)*r0314)/2. - i*(-(conj(Ep4a)*conj(r0403))/8. - (conj(Em3a)*conj(r0603))/(8.*rt3) - (conj(Ep3a)*conj(r0803))/(8.*rt3) + (conj(Ep4a)*conj(r1413))/8. + (conj(Em4a)*r0302)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0314 + (conj(Ep1a)*r0914)/(4.*rt6) + (conj(Em1a)*r1114)/(4.*rt6) - (conj(Em4a)*r1514)/8. - r0313*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0315*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0414*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0214*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.)); +dr0315_dt = (-(gt*r0315) - (gt + g2)*r0315)/2. - i*(-(conj(Ep4a)*conj(r0503))/(4.*rt6) - (conj(Em3a)*conj(r0703))/8. + (conj(Ep4a)*conj(r1513))/8. + (conj(Em4a)*r0303)/8. + (conj(Ep1a)*r0915)/(4.*rt6) + (conj(Em1a)*r1115)/(4.*rt6) - (conj(Em4a)*r1515)/8. - r0316*((2*WLx)/3. + (2*i*WLy)/3.) - r0314*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0415*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0215*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0315*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); +dr0316_dt = (-(gt*r0316) - (gt + g2)*r0316)/2. - i*((conj(Em4a)*conj(r0403))/(4.*rt6) - (conj(Em3a)*conj(r0803))/(4.*rt2) + (conj(Ep4a)*conj(r1613))/8. - (conj(Em4a)*conj(r1615))/8. + (conj(Ep1a)*r0916)/(4.*rt6) + (conj(Em1a)*r1116)/(4.*rt6) - r0315*((2*WLx)/3. - (2*i*WLy)/3.) + r0416*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0216*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0316*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); +dr0401_dt = -(gt*r0401) - (g2*r1512)/6. + (g2*r1613)/6. - i*((conj(Ep1a)*conj(r0110))/(4.*rt2) + (conj(Ep4a)*conj(r0114))/8. - (conj(Em4a)*conj(r0116))/(4.*rt6) - (Em1a*r0409)/4. + (Em4a*r0413)/(4.*rt6) + r0501*(WLx/2. - (i*WLy)/2.) - r0402*(WLx/2. + (i*WLy)/2.) + r0301*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (3*r0401*WLz)/2.); +dr0402_dt = -(gt*r0402) + (g1*r1109)/4. + (g2*r1412)/(2.*rt6) - (g2*r1513)/12. + (g2*r1614)/(2.*rt6) - i*((conj(Ep1a)*conj(r0210))/(4.*rt2) + (conj(Ep4a)*conj(r0214))/8. - (conj(Em4a)*conj(r0216))/(4.*rt6) - (Em1a*r0410)/(4.*rt2) - (Ep4a*r0412)/(4.*rt6) + (Em4a*r0414)/8. - r0401*(WLx/2. - (i*WLy)/2.) + r0502*(WLx/2. - (i*WLy)/2.) + r0302*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0403*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0402*WLz); +dr0403_dt = -(gt*r0403) + (g1*r1009)/(4.*rt3) + (g1*r1110)/(2.*rt3) + (g2*r1413)/4. + (g2*r1615)/(2.*rt6) - i*((conj(Ep1a)*conj(r0310))/(4.*rt2) + (conj(Ep4a)*conj(r0314))/8. - (conj(Em4a)*conj(r0316))/(4.*rt6) - (Ep1a*r0409)/(4.*rt6) - (Em1a*r0411)/(4.*rt6) - (Ep4a*r0413)/8. + (Em4a*r0415)/8. + r0503*(WLx/2. - (i*WLy)/2.) - r0402*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0303*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0404*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (r0403*WLz)/2.); +dr0404_dt = gt/8. - gt*r0404 + (g1*r1010)/4. + (g1*r1111)/4. + (g2*r1414)/4. + (g2*r1515)/12. + (g2*r1616)/6. - i*((conj(Ep1a)*conj(r0410))/(4.*rt2) + (conj(Ep4a)*conj(r0414))/8. - (conj(Em4a)*conj(r0416))/(4.*rt6) - (Ep1a*r0410)/(4.*rt2) - (Ep4a*r0414)/8. + (Em4a*r0416)/(4.*rt6) + r0504*(WLx/2. - (i*WLy)/2.) - conj(r0504)*(WLx/2. + (i*WLy)/2.) - r0403*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + conj(r0403)*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.)); +dr0409_dt = (-(gt*r0409) - (gt + g1)*r0409)/2. - i*((conj(Ep2a)*conj(r0704))/(4.*rt6) + (conj(Ep4a)*conj(r0914))/8. - (conj(Em4a)*conj(r0916))/(4.*rt6) - (conj(Em1a)*r0401)/4. - (conj(Ep1a)*r0403)/(4.*rt6) + (conj(Ep1a)*r1009)/(4.*rt2) + r0509*(WLx/2. - (i*WLy)/2.) + r0309*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0410*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0409*(-delta1 - v*Kvec1 - WLz/6.) - (r0409*WLz)/2.); +dr0410_dt = (-(gt*r0410) - (gt + g1)*r0410)/2. - i*(-(conj(Em2a)*conj(r0604))/(4.*rt6) + (conj(Ep2a)*conj(r0804))/(4.*rt6) + (conj(Ep4a)*conj(r1014))/8. - (conj(Em4a)*conj(r1016))/(4.*rt6) - (conj(Em1a)*r0402)/(4.*rt2) - (conj(Ep1a)*r0404)/(4.*rt2) + (delta1 + v*Kvec1)*r0410 + (conj(Ep1a)*r1010)/(4.*rt2) + r0510*(WLx/2. - (i*WLy)/2.) + r0310*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0411*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0409*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - (r0410*WLz)/2.); +dr0411_dt = (-(gt*r0411) - (gt + g1)*r0411)/2. - i*(-(conj(Ep1a)*conj(r0504))/4. - (conj(Em2a)*conj(r0704))/(4.*rt6) + (conj(Ep1a)*conj(r1110))/(4.*rt2) + (conj(Ep4a)*conj(r1114))/8. - (conj(Em4a)*conj(r1116))/(4.*rt6) - (conj(Em1a)*r0403)/(4.*rt6) + r0511*(WLx/2. - (i*WLy)/2.) + r0311*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0410*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0411*(-delta1 - v*Kvec1 + WLz/6.) - (r0411*WLz)/2.); +dr0412_dt = (-(gt*r0412) - (gt + g2)*r0412)/2. - i*(-(conj(Ep3a)*conj(r0604))/(4.*rt2) - (conj(Ep4a)*r0402)/(4.*rt6) + (conj(Ep1a)*r1012)/(4.*rt2) + (conj(Ep4a)*r1412)/8. - (conj(Em4a)*r1612)/(4.*rt6) + r0512*(WLx/2. - (i*WLy)/2.) - r0413*((2*WLx)/3. + (2*i*WLy)/3.) + r0312*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (r0412*WLz)/2. - r0412*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr0413_dt = (-(gt*r0413) - (gt + g2)*r0413)/2. - i*(-(conj(Ep3a)*conj(r0704))/8. + (conj(Em4a)*r0401)/(4.*rt6) - (conj(Ep4a)*r0403)/8. + (conj(Ep1a)*r1013)/(4.*rt2) + (conj(Ep4a)*r1413)/8. - (conj(Em4a)*r1613)/(4.*rt6) - r0412*((2*WLx)/3. - (2*i*WLy)/3.) + r0513*(WLx/2. - (i*WLy)/2.) - r0414*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0313*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0413*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - (r0413*WLz)/2.); +dr0414_dt = (-(gt*r0414) - (gt + g2)*r0414)/2. - i*(-(conj(Em3a)*conj(r0604))/(8.*rt3) - (conj(Ep3a)*conj(r0804))/(8.*rt3) + (conj(Em4a)*r0402)/8. - (conj(Ep4a)*r0404)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0414 + (conj(Ep1a)*r1014)/(4.*rt2) + (conj(Ep4a)*r1414)/8. - (conj(Em4a)*r1614)/(4.*rt6) + r0514*(WLx/2. - (i*WLy)/2.) - r0413*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0415*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0314*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (r0414*WLz)/2.); +dr0415_dt = (-(gt*r0415) - (gt + g2)*r0415)/2. - i*(-(conj(Ep4a)*conj(r0504))/(4.*rt6) - (conj(Em3a)*conj(r0704))/8. + (conj(Ep4a)*conj(r1514))/8. + (conj(Em4a)*r0403)/8. + (conj(Ep1a)*r1015)/(4.*rt2) - (conj(Em4a)*r1615)/(4.*rt6) + r0515*(WLx/2. - (i*WLy)/2.) - r0416*((2*WLx)/3. + (2*i*WLy)/3.) - r0414*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0315*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0415*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - (r0415*WLz)/2.); +dr0416_dt = (-(gt*r0416) - (gt + g2)*r0416)/2. - i*(-(conj(Em3a)*conj(r0804))/(4.*rt2) + (conj(Ep4a)*conj(r1614))/8. + (conj(Em4a)*r0404)/(4.*rt6) + (conj(Ep1a)*r1016)/(4.*rt2) - (conj(Em4a)*r1616)/(4.*rt6) - r0415*((2*WLx)/3. - (2*i*WLy)/3.) + r0516*(WLx/2. - (i*WLy)/2.) + r0316*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0416*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - (r0416*WLz)/2.); dr0501_dt = -(gt*r0501) - (g2*r1612)/3. - i*((conj(Ep1a)*conj(r0111))/4. + (conj(Ep4a)*conj(r0115))/(4.*rt6) - (Em1a*r0509)/4. + (Em4a*r0513)/(4.*rt6) + r0401*(WLx/2. + (i*WLy)/2.) - r0502*(WLx/2. + (i*WLy)/2.) - 2*r0501*WLz); -dr0502_dt = -(gt*r0502) + (g2*r1512)/6. - (g2*r1613)/6. - i*((conj(Ep1a)*conj(r0211))/4. + (conj(Ep4a)*conj(r0215))/(4.*rt6) - (Em1a*r0510)/(4.*rt2) - (Ep4a*r0512)/(4.*rt6) + (Em4a*r0514)/8. - r0501*(WLx/2. - (i*WLy)/2.) + r0402*(WLx/2. + (i*WLy)/2.) - r0503*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - (3*r0502*WLz)/2.); -dr0503_dt = -(gt*r0503) + (g1*r1109)/(2.*rt6) + (g2*r1513)/(2.*rt6) - i*((conj(Ep1a)*conj(r0311))/4. + (conj(Ep4a)*conj(r0315))/(4.*rt6) - (Ep1a*r0509)/(4.*rt6) - (Em1a*r0511)/(4.*rt6) - (Ep4a*r0513)/8. + (Em4a*r0515)/8. + r0403*(WLx/2. + (i*WLy)/2.) - r0502*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0504*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) - r0503*WLz); -dr0504_dt = -(gt*r0504) + (g1*r1110)/(2.*rt2) + (g2*r1514)/(2.*rt6) + (g2*r1615)/6. - i*((conj(Ep1a)*conj(r0411))/4. + (conj(Ep4a)*conj(r0415))/(4.*rt6) - (Ep1a*r0510)/(4.*rt2) - (Ep4a*r0514)/8. + (Em4a*r0516)/(4.*rt6) + r0404*(WLx/2. + (i*WLy)/2.) - r0505*(WLx/2. + (i*WLy)/2.) - r0503*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - (r0504*WLz)/2.); +dr0502_dt = -(gt*r0502) + (g2*r1512)/6. - (g2*r1613)/6. - i*((conj(Ep1a)*conj(r0211))/4. + (conj(Ep4a)*conj(r0215))/(4.*rt6) - (Em1a*r0510)/(4.*rt2) - (Ep4a*r0512)/(4.*rt6) + (Em4a*r0514)/8. - r0501*(WLx/2. - (i*WLy)/2.) + r0402*(WLx/2. + (i*WLy)/2.) - r0503*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - (3*r0502*WLz)/2.); +dr0503_dt = -(gt*r0503) + (g1*r1109)/(2.*rt6) + (g2*r1513)/(2.*rt6) - i*((conj(Ep1a)*conj(r0311))/4. + (conj(Ep4a)*conj(r0315))/(4.*rt6) - (Ep1a*r0509)/(4.*rt6) - (Em1a*r0511)/(4.*rt6) - (Ep4a*r0513)/8. + (Em4a*r0515)/8. + r0403*(WLx/2. + (i*WLy)/2.) - r0502*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0504*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) - r0503*WLz); +dr0504_dt = -(gt*r0504) + (g1*r1110)/(2.*rt2) + (g2*r1514)/(2.*rt6) + (g2*r1615)/6. - i*((conj(Ep1a)*conj(r0411))/4. + (conj(Ep4a)*conj(r0415))/(4.*rt6) - (Ep1a*r0510)/(4.*rt2) - (Ep4a*r0514)/8. + (Em4a*r0516)/(4.*rt6) + r0404*(WLx/2. + (i*WLy)/2.) - r0505*(WLx/2. + (i*WLy)/2.) - r0503*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - (r0504*WLz)/2.); dr0505_dt = gt/8. - gt*r0505 + (g1*r1111)/2. + (g2*r1515)/6. + (g2*r1616)/3. - i*((conj(Ep1a)*conj(r0511))/4. + (conj(Ep4a)*conj(r0515))/(4.*rt6) - (Ep1a*r0511)/4. - (Ep4a*r0515)/(4.*rt6) - r0504*(WLx/2. - (i*WLy)/2.) + conj(r0504)*(WLx/2. + (i*WLy)/2.)); dr0509_dt = (-(gt*r0509) - (gt + g1)*r0509)/2. - i*((conj(Ep2a)*conj(r0705))/(4.*rt6) + (conj(Ep4a)*conj(r0915))/(4.*rt6) - (conj(Em1a)*r0501)/4. - (conj(Ep1a)*r0503)/(4.*rt6) + (conj(Ep1a)*r1109)/4. + r0409*(WLx/2. + (i*WLy)/2.) - r0510*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0509*(-delta1 - v*Kvec1 - WLz/6.) - r0509*WLz); dr0510_dt = (-(gt*r0510) - (gt + g1)*r0510)/2. - i*(-(conj(Em2a)*conj(r0605))/(4.*rt6) + (conj(Ep2a)*conj(r0805))/(4.*rt6) + (conj(Ep4a)*conj(r1015))/(4.*rt6) - (conj(Em1a)*r0502)/(4.*rt2) - (conj(Ep1a)*r0504)/(4.*rt2) + (delta1 + v*Kvec1)*r0510 + (conj(Ep1a)*r1110)/4. + r0410*(WLx/2. + (i*WLy)/2.) - r0511*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0509*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0510*WLz); dr0511_dt = (-(gt*r0511) - (gt + g1)*r0511)/2. - i*(-(conj(Em2a)*conj(r0705))/(4.*rt6) + (conj(Ep4a)*conj(r1115))/(4.*rt6) - (conj(Em1a)*r0503)/(4.*rt6) - (conj(Ep1a)*r0505)/4. + (conj(Ep1a)*r1111)/4. + r0411*(WLx/2. + (i*WLy)/2.) - r0510*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0511*(-delta1 - v*Kvec1 + WLz/6.) - r0511*WLz); dr0512_dt = (-(gt*r0512) - (gt + g2)*r0512)/2. - i*(-(conj(Ep3a)*conj(r0605))/(4.*rt2) - (conj(Ep4a)*r0502)/(4.*rt6) + (conj(Ep1a)*r1112)/4. + (conj(Ep4a)*r1512)/(4.*rt6) + r0412*(WLx/2. + (i*WLy)/2.) - r0513*((2*WLx)/3. + (2*i*WLy)/3.) - r0512*WLz - r0512*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0513_dt = (-(gt*r0513) - (gt + g2)*r0513)/2. - i*(-(conj(Ep3a)*conj(r0705))/8. + (conj(Em4a)*r0501)/(4.*rt6) - (conj(Ep4a)*r0503)/8. + (conj(Ep1a)*r1113)/4. + (conj(Ep4a)*r1513)/(4.*rt6) - r0512*((2*WLx)/3. - (2*i*WLy)/3.) + r0413*(WLx/2. + (i*WLy)/2.) - r0514*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r0513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - r0513*WLz); -dr0514_dt = (-(gt*r0514) - (gt + g2)*r0514)/2. - i*(-(conj(Em3a)*conj(r0605))/(8.*rt3) - (conj(Ep3a)*conj(r0805))/(8.*rt3) + (conj(Em4a)*r0502)/8. - (conj(Ep4a)*r0504)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0514 + (conj(Ep1a)*r1114)/4. + (conj(Ep4a)*r1514)/(4.*rt6) + r0414*(WLx/2. + (i*WLy)/2.) - r0513*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0515*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r0514*WLz); -dr0515_dt = (-(gt*r0515) - (gt + g2)*r0515)/2. - i*(-(conj(Em3a)*conj(r0705))/8. + (conj(Em4a)*r0503)/8. - (conj(Ep4a)*r0505)/(4.*rt6) + (conj(Ep1a)*r1115)/4. + (conj(Ep4a)*r1515)/(4.*rt6) + r0415*(WLx/2. + (i*WLy)/2.) - r0516*((2*WLx)/3. + (2*i*WLy)/3.) - r0514*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0515*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r0515*WLz); +dr0513_dt = (-(gt*r0513) - (gt + g2)*r0513)/2. - i*(-(conj(Ep3a)*conj(r0705))/8. + (conj(Em4a)*r0501)/(4.*rt6) - (conj(Ep4a)*r0503)/8. + (conj(Ep1a)*r1113)/4. + (conj(Ep4a)*r1513)/(4.*rt6) - r0512*((2*WLx)/3. - (2*i*WLy)/3.) + r0413*(WLx/2. + (i*WLy)/2.) - r0514*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r0513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - r0513*WLz); +dr0514_dt = (-(gt*r0514) - (gt + g2)*r0514)/2. - i*(-(conj(Em3a)*conj(r0605))/(8.*rt3) - (conj(Ep3a)*conj(r0805))/(8.*rt3) + (conj(Em4a)*r0502)/8. - (conj(Ep4a)*r0504)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0514 + (conj(Ep1a)*r1114)/4. + (conj(Ep4a)*r1514)/(4.*rt6) + r0414*(WLx/2. + (i*WLy)/2.) - r0513*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0515*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r0514*WLz); +dr0515_dt = (-(gt*r0515) - (gt + g2)*r0515)/2. - i*(-(conj(Em3a)*conj(r0705))/8. + (conj(Em4a)*r0503)/8. - (conj(Ep4a)*r0505)/(4.*rt6) + (conj(Ep1a)*r1115)/4. + (conj(Ep4a)*r1515)/(4.*rt6) + r0415*(WLx/2. + (i*WLy)/2.) - r0516*((2*WLx)/3. + (2*i*WLy)/3.) - r0514*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0515*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r0515*WLz); dr0516_dt = (-(gt*r0516) - (gt + g2)*r0516)/2. - i*(-(conj(Em3a)*conj(r0805))/(4.*rt2) + (conj(Ep4a)*conj(r1615))/(4.*rt6) + (conj(Em4a)*r0504)/(4.*rt6) + (conj(Ep1a)*r1116)/4. - r0515*((2*WLx)/3. - (2*i*WLy)/3.) + r0416*(WLx/2. + (i*WLy)/2.) - r0516*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r0516*WLz); dr0601_dt = -(gt*r0601) - i*((conj(Em2a)*conj(r0110))/(4.*rt6) + (conj(Ep3a)*conj(r0112))/(4.*rt2) + (conj(Em3a)*conj(r0114))/(8.*rt3) - (Em1a*r0609)/4. + (Em4a*r0613)/(4.*rt6) - r0602*(WLx/2. + (i*WLy)/2.) + r0701*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0601*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0601*WLz); -dr0602_dt = -(gt*r0602) - i*((conj(Em2a)*conj(r0210))/(4.*rt6) + (conj(Ep3a)*conj(r0212))/(4.*rt2) + (conj(Em3a)*conj(r0214))/(8.*rt3) - (Em1a*r0610)/(4.*rt2) - (Ep4a*r0612)/(4.*rt6) + (Em4a*r0614)/8. - r0601*(WLx/2. - (i*WLy)/2.) - r0603*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0702*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0602*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - (r0602*WLz)/2.); -dr0603_dt = -(gt*r0603) - i*((conj(Em2a)*conj(r0310))/(4.*rt6) + (conj(Ep3a)*conj(r0312))/(4.*rt2) + (conj(Em3a)*conj(r0314))/(8.*rt3) - (Ep1a*r0609)/(4.*rt6) - (Em1a*r0611)/(4.*rt6) - (Ep4a*r0613)/8. + (Em4a*r0615)/8. - r0602*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0604*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0703*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0603*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); -dr0604_dt = -(gt*r0604) - i*((conj(Em2a)*conj(r0410))/(4.*rt6) + (conj(Ep3a)*conj(r0412))/(4.*rt2) + (conj(Em3a)*conj(r0414))/(8.*rt3) - (Ep1a*r0610)/(4.*rt2) - (Ep4a*r0614)/8. + (Em4a*r0616)/(4.*rt6) - r0605*(WLx/2. + (i*WLy)/2.) - r0603*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0704*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0604*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) + (r0604*WLz)/2.); +dr0602_dt = -(gt*r0602) - i*((conj(Em2a)*conj(r0210))/(4.*rt6) + (conj(Ep3a)*conj(r0212))/(4.*rt2) + (conj(Em3a)*conj(r0214))/(8.*rt3) - (Em1a*r0610)/(4.*rt2) - (Ep4a*r0612)/(4.*rt6) + (Em4a*r0614)/8. - r0601*(WLx/2. - (i*WLy)/2.) - r0603*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0702*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0602*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - (r0602*WLz)/2.); +dr0603_dt = -(gt*r0603) - i*((conj(Em2a)*conj(r0310))/(4.*rt6) + (conj(Ep3a)*conj(r0312))/(4.*rt2) + (conj(Em3a)*conj(r0314))/(8.*rt3) - (Ep1a*r0609)/(4.*rt6) - (Em1a*r0611)/(4.*rt6) - (Ep4a*r0613)/8. + (Em4a*r0615)/8. - r0602*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0604*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0703*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0603*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); +dr0604_dt = -(gt*r0604) - i*((conj(Em2a)*conj(r0410))/(4.*rt6) + (conj(Ep3a)*conj(r0412))/(4.*rt2) + (conj(Em3a)*conj(r0414))/(8.*rt3) - (Ep1a*r0610)/(4.*rt2) - (Ep4a*r0614)/8. + (Em4a*r0616)/(4.*rt6) - r0605*(WLx/2. + (i*WLy)/2.) - r0603*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0704*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0604*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) + (r0604*WLz)/2.); dr0605_dt = -(gt*r0605) - i*((conj(Em2a)*conj(r0510))/(4.*rt6) + (conj(Ep3a)*conj(r0512))/(4.*rt2) + (conj(Em3a)*conj(r0514))/(8.*rt3) - (Ep1a*r0611)/4. - (Ep4a*r0615)/(4.*rt6) - r0604*(WLx/2. - (i*WLy)/2.) + r0705*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0605*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) + r0605*WLz); dr0606_dt = gt/8. - gt*r0606 + (g1*r0909)/12. + (g1*r1010)/12. + (g2*r1212)/2. + (g2*r1313)/4. + (g2*r1414)/12. - i*((conj(Em2a)*conj(r0610))/(4.*rt6) + (conj(Ep3a)*conj(r0612))/(4.*rt2) + (conj(Em3a)*conj(r0614))/(8.*rt3) - (Em2a*r0610)/(4.*rt6) - (Ep3a*r0612)/(4.*rt2) - (Em3a*r0614)/(8.*rt3) - conj(r0706)*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0706*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); dr0609_dt = (-(gt*r0609) - (gt + g1)*r0609)/2. - i*((conj(Ep2a)*conj(r0706))/(4.*rt6) + (conj(Ep3a)*conj(r0912))/(4.*rt2) + (conj(Em3a)*conj(r0914))/(8.*rt3) - (conj(Em1a)*r0601)/4. - (conj(Ep1a)*r0603)/(4.*rt6) + (conj(Em2a)*r1009)/(4.*rt6) - r0610*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r0709*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0609*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0609*(-delta1 - v*Kvec1 - WLz/6.)); dr0610_dt = (-(gt*r0610) - (gt + g1)*r0610)/2. - i*((conj(Ep2a)*conj(r0806))/(4.*rt6) + (conj(Ep3a)*conj(r1012))/(4.*rt2) + (conj(Em3a)*conj(r1014))/(8.*rt3) - (conj(Em1a)*r0602)/(4.*rt2) - (conj(Ep1a)*r0604)/(4.*rt2) - (conj(Em2a)*r0606)/(4.*rt6) + (delta1 + v*Kvec1)*r0610 + (conj(Em2a)*r1010)/(4.*rt6) - r0611*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0609*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0710*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0610*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); dr0611_dt = (-(gt*r0611) - (gt + g1)*r0611)/2. - i*(-(conj(Em2a)*conj(r0706))/(4.*rt6) + (conj(Em2a)*conj(r1110))/(4.*rt6) + (conj(Ep3a)*conj(r1112))/(4.*rt2) + (conj(Em3a)*conj(r1114))/(8.*rt3) - (conj(Em1a)*r0603)/(4.*rt6) - (conj(Ep1a)*r0605)/4. - r0610*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0711*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0611*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0611*(-delta1 - v*Kvec1 + WLz/6.)); dr0612_dt = (-(gt*r0612) - (gt + g2)*r0612)/2. - i*(-(conj(Ep4a)*r0602)/(4.*rt6) - (conj(Ep3a)*r0606)/(4.*rt2) + (conj(Em2a)*r1012)/(4.*rt6) + (conj(Ep3a)*r1212)/(4.*rt2) + (conj(Em3a)*r1412)/(8.*rt3) - r0613*((2*WLx)/3. + (2*i*WLy)/3.) + r0712*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0612*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0612*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0613_dt = (-(gt*r0613) - (gt + g2)*r0613)/2. - i*(-(conj(Ep3a)*conj(r0706))/8. + (conj(Ep3a)*conj(r1312))/(4.*rt2) + (conj(Em4a)*r0601)/(4.*rt6) - (conj(Ep4a)*r0603)/8. + (conj(Em2a)*r1013)/(4.*rt6) + (conj(Em3a)*r1413)/(8.*rt3) - r0612*((2*WLx)/3. - (2*i*WLy)/3.) - r0614*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0713*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0613*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr0614_dt = (-(gt*r0614) - (gt + g2)*r0614)/2. - i*(-(conj(Ep3a)*conj(r0806))/(8.*rt3) + (conj(Ep3a)*conj(r1412))/(4.*rt2) + (conj(Em4a)*r0602)/8. - (conj(Ep4a)*r0604)/8. - (conj(Em3a)*r0606)/(8.*rt3) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0614 + (conj(Em2a)*r1014)/(4.*rt6) + (conj(Em3a)*r1414)/(8.*rt3) - r0613*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0615*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0714*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0614*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); -dr0615_dt = (-(gt*r0615) - (gt + g2)*r0615)/2. - i*(-(conj(Em3a)*conj(r0706))/8. + (conj(Ep3a)*conj(r1512))/(4.*rt2) + (conj(Em3a)*conj(r1514))/(8.*rt3) + (conj(Em4a)*r0603)/8. - (conj(Ep4a)*r0605)/(4.*rt6) + (conj(Em2a)*r1015)/(4.*rt6) - r0616*((2*WLx)/3. + (2*i*WLy)/3.) - r0614*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0715*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0615*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); +dr0613_dt = (-(gt*r0613) - (gt + g2)*r0613)/2. - i*(-(conj(Ep3a)*conj(r0706))/8. + (conj(Ep3a)*conj(r1312))/(4.*rt2) + (conj(Em4a)*r0601)/(4.*rt6) - (conj(Ep4a)*r0603)/8. + (conj(Em2a)*r1013)/(4.*rt6) + (conj(Em3a)*r1413)/(8.*rt3) - r0612*((2*WLx)/3. - (2*i*WLy)/3.) - r0614*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0713*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0613*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) - r0613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr0614_dt = (-(gt*r0614) - (gt + g2)*r0614)/2. - i*(-(conj(Ep3a)*conj(r0806))/(8.*rt3) + (conj(Ep3a)*conj(r1412))/(4.*rt2) + (conj(Em4a)*r0602)/8. - (conj(Ep4a)*r0604)/8. - (conj(Em3a)*r0606)/(8.*rt3) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0614 + (conj(Em2a)*r1014)/(4.*rt6) + (conj(Em3a)*r1414)/(8.*rt3) - r0613*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0615*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0714*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0614*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); +dr0615_dt = (-(gt*r0615) - (gt + g2)*r0615)/2. - i*(-(conj(Em3a)*conj(r0706))/8. + (conj(Ep3a)*conj(r1512))/(4.*rt2) + (conj(Em3a)*conj(r1514))/(8.*rt3) + (conj(Em4a)*r0603)/8. - (conj(Ep4a)*r0605)/(4.*rt6) + (conj(Em2a)*r1015)/(4.*rt6) - r0616*((2*WLx)/3. + (2*i*WLy)/3.) - r0614*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0715*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0615*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); dr0616_dt = (-(gt*r0616) - (gt + g2)*r0616)/2. - i*(-(conj(Em3a)*conj(r0806))/(4.*rt2) + (conj(Ep3a)*conj(r1612))/(4.*rt2) + (conj(Em3a)*conj(r1614))/(8.*rt3) + (conj(Em4a)*r0604)/(4.*rt6) + (conj(Em2a)*r1016)/(4.*rt6) - r0615*((2*WLx)/3. - (2*i*WLy)/3.) + r0716*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0616*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + r0616*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); dr0701_dt = -(gt*r0701) - i*(-(conj(Ep2a)*conj(r0109))/(4.*rt6) + (conj(Em2a)*conj(r0111))/(4.*rt6) + (conj(Ep3a)*conj(r0113))/8. + (conj(Em3a)*conj(r0115))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0701 - (Em1a*r0709)/4. + (Em4a*r0713)/(4.*rt6) - r0702*(WLx/2. + (i*WLy)/2.) + r0601*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0801*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0701*WLz); -dr0702_dt = -(gt*r0702) - i*(-(conj(Ep2a)*conj(r0209))/(4.*rt6) + (conj(Em2a)*conj(r0211))/(4.*rt6) + (conj(Ep3a)*conj(r0213))/8. + (conj(Em3a)*conj(r0215))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0702 - (Em1a*r0710)/(4.*rt2) - (Ep4a*r0712)/(4.*rt6) + (Em4a*r0714)/8. - r0701*(WLx/2. - (i*WLy)/2.) - r0703*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0602*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0802*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - (r0702*WLz)/2.); -dr0703_dt = -(gt*r0703) - i*(-(conj(Ep2a)*conj(r0309))/(4.*rt6) + (conj(Em2a)*conj(r0311))/(4.*rt6) + (conj(Ep3a)*conj(r0313))/8. + (conj(Em3a)*conj(r0315))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0703 - (Ep1a*r0709)/(4.*rt6) - (Em1a*r0711)/(4.*rt6) - (Ep4a*r0713)/8. + (Em4a*r0715)/8. - r0702*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0704*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0603*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0803*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); -dr0704_dt = -(gt*r0704) - i*(-(conj(Ep2a)*conj(r0409))/(4.*rt6) + (conj(Em2a)*conj(r0411))/(4.*rt6) + (conj(Ep3a)*conj(r0413))/8. + (conj(Em3a)*conj(r0415))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0704 - (Ep1a*r0710)/(4.*rt2) - (Ep4a*r0714)/8. + (Em4a*r0716)/(4.*rt6) - r0705*(WLx/2. + (i*WLy)/2.) - r0703*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0604*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0804*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + (r0704*WLz)/2.); +dr0702_dt = -(gt*r0702) - i*(-(conj(Ep2a)*conj(r0209))/(4.*rt6) + (conj(Em2a)*conj(r0211))/(4.*rt6) + (conj(Ep3a)*conj(r0213))/8. + (conj(Em3a)*conj(r0215))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0702 - (Em1a*r0710)/(4.*rt2) - (Ep4a*r0712)/(4.*rt6) + (Em4a*r0714)/8. - r0701*(WLx/2. - (i*WLy)/2.) - r0703*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0602*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0802*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - (r0702*WLz)/2.); +dr0703_dt = -(gt*r0703) - i*(-(conj(Ep2a)*conj(r0309))/(4.*rt6) + (conj(Em2a)*conj(r0311))/(4.*rt6) + (conj(Ep3a)*conj(r0313))/8. + (conj(Em3a)*conj(r0315))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0703 - (Ep1a*r0709)/(4.*rt6) - (Em1a*r0711)/(4.*rt6) - (Ep4a*r0713)/8. + (Em4a*r0715)/8. - r0702*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0704*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0603*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0803*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); +dr0704_dt = -(gt*r0704) - i*(-(conj(Ep2a)*conj(r0409))/(4.*rt6) + (conj(Em2a)*conj(r0411))/(4.*rt6) + (conj(Ep3a)*conj(r0413))/8. + (conj(Em3a)*conj(r0415))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0704 - (Ep1a*r0710)/(4.*rt2) - (Ep4a*r0714)/8. + (Em4a*r0716)/(4.*rt6) - r0705*(WLx/2. + (i*WLy)/2.) - r0703*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0604*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0804*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + (r0704*WLz)/2.); dr0705_dt = -(gt*r0705) - i*(-(conj(Ep2a)*conj(r0509))/(4.*rt6) + (conj(Em2a)*conj(r0511))/(4.*rt6) + (conj(Ep3a)*conj(r0513))/8. + (conj(Em3a)*conj(r0515))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0705 - (Ep1a*r0711)/4. - (Ep4a*r0715)/(4.*rt6) - r0704*(WLx/2. - (i*WLy)/2.) + r0605*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0805*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0705*WLz); dr0706_dt = -(gt*r0706) + (g1*r1110)/12. + (g2*r1312)/(2.*rt2) + (g2*r1413)/(2.*rt3) + (g2*r1514)/(4.*rt3) - i*(-(conj(Ep2a)*conj(r0609))/(4.*rt6) + (conj(Em2a)*conj(r0611))/(4.*rt6) + (conj(Ep3a)*conj(r0613))/8. + (conj(Em3a)*conj(r0615))/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0706 - (Em2a*r0710)/(4.*rt6) - (Ep3a*r0712)/(4.*rt2) - (Em3a*r0714)/(8.*rt3) + r0606*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0707*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0806*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0706*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.)); dr0707_dt = gt/8. - gt*r0707 + (g1*r0909)/12. + (g1*r1111)/12. + (g2*r1313)/4. + (g2*r1414)/3. + (g2*r1515)/4. - i*(-(conj(Ep2a)*conj(r0709))/(4.*rt6) + (conj(Em2a)*conj(r0711))/(4.*rt6) + (conj(Ep3a)*conj(r0713))/8. + (conj(Em3a)*conj(r0715))/8. + (Ep2a*r0709)/(4.*rt6) - (Em2a*r0711)/(4.*rt6) - (Ep3a*r0713)/8. - (Em3a*r0715)/8. + conj(r0706)*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - conj(r0807)*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0706*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0807*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); @@ -522,14 +522,14 @@ dr0709_dt = (-(gt*r0709) - (gt + g1)*r0709)/2. - i*((conj(Ep3a)*conj(r0913))/8. dr0710_dt = (-(gt*r0710) - (gt + g1)*r0710)/2. - i*((conj(Ep2a)*conj(r0807))/(4.*rt6) - (conj(Ep2a)*conj(r1009))/(4.*rt6) + (conj(Ep3a)*conj(r1013))/8. + (conj(Em3a)*conj(r1015))/8. - (conj(Em1a)*r0702)/(4.*rt2) - (conj(Ep1a)*r0704)/(4.*rt2) - (conj(Em2a)*r0706)/(4.*rt6) + (delta1 + v*Kvec1)*r0710 + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0710 + (conj(Em2a)*r1110)/(4.*rt6) + r0610*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0711*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0709*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0810*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); dr0711_dt = (-(gt*r0711) - (gt + g1)*r0711)/2. - i*(-(conj(Ep2a)*conj(r1109))/(4.*rt6) + (conj(Ep3a)*conj(r1113))/8. + (conj(Em3a)*conj(r1115))/8. - (conj(Em1a)*r0703)/(4.*rt6) - (conj(Ep1a)*r0705)/4. - (conj(Em2a)*r0707)/(4.*rt6) + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0711 + (conj(Em2a)*r1111)/(4.*rt6) + r0611*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0710*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0811*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0711*(-delta1 - v*Kvec1 + WLz/6.)); dr0712_dt = (-(gt*r0712) - (gt + g2)*r0712)/2. - i*(-(conj(Ep4a)*r0702)/(4.*rt6) - (conj(Ep3a)*r0706)/(4.*rt2) + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0712 - (conj(Ep2a)*r0912)/(4.*rt6) + (conj(Em2a)*r1112)/(4.*rt6) + (conj(Ep3a)*r1312)/8. + (conj(Em3a)*r1512)/8. - r0713*((2*WLx)/3. + (2*i*WLy)/3.) + r0612*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0812*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0712*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0713_dt = (-(gt*r0713) - (gt + g2)*r0713)/2. - i*((conj(Em4a)*r0701)/(4.*rt6) - (conj(Ep4a)*r0703)/8. - (conj(Ep3a)*r0707)/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0713 - (conj(Ep2a)*r0913)/(4.*rt6) + (conj(Em2a)*r1113)/(4.*rt6) + (conj(Ep3a)*r1313)/8. + (conj(Em3a)*r1513)/8. - r0712*((2*WLx)/3. - (2*i*WLy)/3.) - r0714*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0613*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0813*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0713*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr0714_dt = (-(gt*r0714) - (gt + g2)*r0714)/2. - i*(-(conj(Ep3a)*conj(r0807))/(8.*rt3) + (conj(Ep3a)*conj(r1413))/8. + (conj(Em4a)*r0702)/8. - (conj(Ep4a)*r0704)/8. - (conj(Em3a)*r0706)/(8.*rt3) + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0714 - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0714 - (conj(Ep2a)*r0914)/(4.*rt6) + (conj(Em2a)*r1114)/(4.*rt6) + (conj(Em3a)*r1514)/8. - r0713*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0715*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0614*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0814*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); -dr0715_dt = (-(gt*r0715) - (gt + g2)*r0715)/2. - i*((conj(Ep3a)*conj(r1513))/8. + (conj(Em4a)*r0703)/8. - (conj(Ep4a)*r0705)/(4.*rt6) - (conj(Em3a)*r0707)/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0715 - (conj(Ep2a)*r0915)/(4.*rt6) + (conj(Em2a)*r1115)/(4.*rt6) + (conj(Em3a)*r1515)/8. - r0716*((2*WLx)/3. + (2*i*WLy)/3.) - r0714*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0615*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0815*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0715*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); +dr0713_dt = (-(gt*r0713) - (gt + g2)*r0713)/2. - i*((conj(Em4a)*r0701)/(4.*rt6) - (conj(Ep4a)*r0703)/8. - (conj(Ep3a)*r0707)/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0713 - (conj(Ep2a)*r0913)/(4.*rt6) + (conj(Em2a)*r1113)/(4.*rt6) + (conj(Ep3a)*r1313)/8. + (conj(Em3a)*r1513)/8. - r0712*((2*WLx)/3. - (2*i*WLy)/3.) - r0714*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0613*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0813*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0713*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr0714_dt = (-(gt*r0714) - (gt + g2)*r0714)/2. - i*(-(conj(Ep3a)*conj(r0807))/(8.*rt3) + (conj(Ep3a)*conj(r1413))/8. + (conj(Em4a)*r0702)/8. - (conj(Ep4a)*r0704)/8. - (conj(Em3a)*r0706)/(8.*rt3) + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0714 - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0714 - (conj(Ep2a)*r0914)/(4.*rt6) + (conj(Em2a)*r1114)/(4.*rt6) + (conj(Em3a)*r1514)/8. - r0713*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0715*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0614*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0814*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2))); +dr0715_dt = (-(gt*r0715) - (gt + g2)*r0715)/2. - i*((conj(Ep3a)*conj(r1513))/8. + (conj(Em4a)*r0703)/8. - (conj(Ep4a)*r0705)/(4.*rt6) - (conj(Em3a)*r0707)/8. + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0715 - (conj(Ep2a)*r0915)/(4.*rt6) + (conj(Em2a)*r1115)/(4.*rt6) + (conj(Em3a)*r1515)/8. - r0716*((2*WLx)/3. + (2*i*WLy)/3.) - r0714*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0615*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0815*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0715*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); dr0716_dt = (-(gt*r0716) - (gt + g2)*r0716)/2. - i*(-(conj(Em3a)*conj(r0807))/(4.*rt2) + (conj(Ep3a)*conj(r1613))/8. + (conj(Em3a)*conj(r1615))/8. + (conj(Em4a)*r0704)/(4.*rt6) + (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0716 - (conj(Ep2a)*r0916)/(4.*rt6) + (conj(Em2a)*r1116)/(4.*rt6) - r0715*((2*WLx)/3. - (2*i*WLy)/3.) + r0616*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0816*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) - r0716*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); dr0801_dt = -(gt*r0801) - i*(-(conj(Ep2a)*conj(r0110))/(4.*rt6) + (conj(Ep3a)*conj(r0114))/(8.*rt3) + (conj(Em3a)*conj(r0116))/(4.*rt2) - (Em1a*r0809)/4. + (Em4a*r0813)/(4.*rt6) - r0802*(WLx/2. + (i*WLy)/2.) + r0701*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0801*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - r0801*WLz); -dr0802_dt = -(gt*r0802) - i*(-(conj(Ep2a)*conj(r0210))/(4.*rt6) + (conj(Ep3a)*conj(r0214))/(8.*rt3) + (conj(Em3a)*conj(r0216))/(4.*rt2) - (Em1a*r0810)/(4.*rt2) - (Ep4a*r0812)/(4.*rt6) + (Em4a*r0814)/8. - r0801*(WLx/2. - (i*WLy)/2.) - r0803*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0702*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0802*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - (r0802*WLz)/2.); -dr0803_dt = -(gt*r0803) - i*(-(conj(Ep2a)*conj(r0310))/(4.*rt6) + (conj(Ep3a)*conj(r0314))/(8.*rt3) + (conj(Em3a)*conj(r0316))/(4.*rt2) - (Ep1a*r0809)/(4.*rt6) - (Em1a*r0811)/(4.*rt6) - (Ep4a*r0813)/8. + (Em4a*r0815)/8. - r0802*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) - r0804*((Sqrt(1.5)*WLx)/2. + (Sqrt(1.5)*i*WLy)/2.) + r0703*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0803*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); -dr0804_dt = -(gt*r0804) - i*(-(conj(Ep2a)*conj(r0410))/(4.*rt6) + (conj(Ep3a)*conj(r0414))/(8.*rt3) + (conj(Em3a)*conj(r0416))/(4.*rt2) - (Ep1a*r0810)/(4.*rt2) - (Ep4a*r0814)/8. + (Em4a*r0816)/(4.*rt6) - r0805*(WLx/2. + (i*WLy)/2.) - r0803*((Sqrt(1.5)*WLx)/2. - (Sqrt(1.5)*i*WLy)/2.) + r0704*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0804*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) + (r0804*WLz)/2.); +dr0802_dt = -(gt*r0802) - i*(-(conj(Ep2a)*conj(r0210))/(4.*rt6) + (conj(Ep3a)*conj(r0214))/(8.*rt3) + (conj(Em3a)*conj(r0216))/(4.*rt2) - (Em1a*r0810)/(4.*rt2) - (Ep4a*r0812)/(4.*rt6) + (Em4a*r0814)/8. - r0801*(WLx/2. - (i*WLy)/2.) - r0803*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0702*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0802*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - (r0802*WLz)/2.); +dr0803_dt = -(gt*r0803) - i*(-(conj(Ep2a)*conj(r0310))/(4.*rt6) + (conj(Ep3a)*conj(r0314))/(8.*rt3) + (conj(Em3a)*conj(r0316))/(4.*rt2) - (Ep1a*r0809)/(4.*rt6) - (Em1a*r0811)/(4.*rt6) - (Ep4a*r0813)/8. + (Em4a*r0815)/8. - r0802*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) - r0804*((sqrt(1.5)*WLx)/2. + (sqrt(1.5)*i*WLy)/2.) + r0703*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0803*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); +dr0804_dt = -(gt*r0804) - i*(-(conj(Ep2a)*conj(r0410))/(4.*rt6) + (conj(Ep3a)*conj(r0414))/(8.*rt3) + (conj(Em3a)*conj(r0416))/(4.*rt2) - (Ep1a*r0810)/(4.*rt2) - (Ep4a*r0814)/8. + (Em4a*r0816)/(4.*rt6) - r0805*(WLx/2. + (i*WLy)/2.) - r0803*((sqrt(1.5)*WLx)/2. - (sqrt(1.5)*i*WLy)/2.) + r0704*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0804*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) + (r0804*WLz)/2.); dr0805_dt = -(gt*r0805) - i*(-(conj(Ep2a)*conj(r0510))/(4.*rt6) + (conj(Ep3a)*conj(r0514))/(8.*rt3) + (conj(Em3a)*conj(r0516))/(4.*rt2) - (Ep1a*r0811)/4. - (Ep4a*r0815)/(4.*rt6) - r0804*(WLx/2. - (i*WLy)/2.) + r0705*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0805*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) + r0805*WLz); dr0806_dt = -(gt*r0806) - (g1*r1109)/12. + (g2*r1412)/(2.*rt6) + (g2*r1513)/4. + (g2*r1614)/(2.*rt6) - i*(-(conj(Ep2a)*conj(r0610))/(4.*rt6) + (conj(Ep3a)*conj(r0614))/(8.*rt3) + (conj(Em3a)*conj(r0616))/(4.*rt2) - (Em2a*r0810)/(4.*rt6) - (Ep3a*r0812)/(4.*rt2) - (Em3a*r0814)/(8.*rt3) + r0706*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0807*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0806*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 - WLz/2.) + r0806*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); dr0807_dt = -(gt*r0807) + (g1*r1009)/12. + (g2*r1413)/(4.*rt3) + (g2*r1514)/(2.*rt3) + (g2*r1615)/(2.*rt2) - i*(-(conj(Ep2a)*conj(r0710))/(4.*rt6) + (conj(Ep3a)*conj(r0714))/(8.*rt3) + (conj(Em3a)*conj(r0716))/(4.*rt2) - (-delta1 + delta2 - v*Kvec1 + v*Kvec2)*r0807 + (Ep2a*r0809)/(4.*rt6) - (Em2a*r0811)/(4.*rt6) - (Ep3a*r0813)/8. - (Em3a*r0815)/8. + r0707*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0808*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0806*(-WLx/(2.*rt2) + (i*WLy)/(2.*rt2)) + r0807*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); @@ -538,45 +538,45 @@ dr0809_dt = (-(gt*r0809) - (gt + g1)*r0809)/2. - i*((conj(Ep3a)*conj(r0914))/(8. dr0810_dt = (-(gt*r0810) - (gt + g1)*r0810)/2. - i*((conj(Ep3a)*conj(r1014))/(8.*rt3) + (conj(Em3a)*conj(r1016))/(4.*rt2) - (conj(Em1a)*r0802)/(4.*rt2) - (conj(Ep1a)*r0804)/(4.*rt2) - (conj(Em2a)*r0806)/(4.*rt6) + (conj(Ep2a)*r0808)/(4.*rt6) + (delta1 + v*Kvec1)*r0810 - (conj(Ep2a)*r1010)/(4.*rt6) + r0710*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0811*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r0809*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0810*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); dr0811_dt = (-(gt*r0811) - (gt + g1)*r0811)/2. - i*(-(conj(Ep2a)*conj(r1110))/(4.*rt6) + (conj(Ep3a)*conj(r1114))/(8.*rt3) + (conj(Em3a)*conj(r1116))/(4.*rt2) - (conj(Em1a)*r0803)/(4.*rt6) - (conj(Ep1a)*r0805)/4. - (conj(Em2a)*r0807)/(4.*rt6) + r0711*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0810*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0811*(-delta1 - v*Kvec1 + WLz/6.) + r0811*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); dr0812_dt = (-(gt*r0812) - (gt + g2)*r0812)/2. - i*(-(conj(Ep4a)*r0802)/(4.*rt6) - (conj(Ep3a)*r0806)/(4.*rt2) - (conj(Ep2a)*r1012)/(4.*rt6) + (conj(Ep3a)*r1412)/(8.*rt3) + (conj(Em3a)*r1612)/(4.*rt2) - r0813*((2*WLx)/3. + (2*i*WLy)/3.) + r0712*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0812*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - r0812*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0813_dt = (-(gt*r0813) - (gt + g2)*r0813)/2. - i*((conj(Em4a)*r0801)/(4.*rt6) - (conj(Ep4a)*r0803)/8. - (conj(Ep3a)*r0807)/8. - (conj(Ep2a)*r1013)/(4.*rt6) + (conj(Ep3a)*r1413)/(8.*rt3) + (conj(Em3a)*r1613)/(4.*rt2) - r0812*((2*WLx)/3. - (2*i*WLy)/3.) - r0814*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0713*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0813*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - r0813*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr0814_dt = (-(gt*r0814) - (gt + g2)*r0814)/2. - i*((conj(Em4a)*r0802)/8. - (conj(Ep4a)*r0804)/8. - (conj(Em3a)*r0806)/(8.*rt3) - (conj(Ep3a)*r0808)/(8.*rt3) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0814 - (conj(Ep2a)*r1014)/(4.*rt6) + (conj(Ep3a)*r1414)/(8.*rt3) + (conj(Em3a)*r1614)/(4.*rt2) - r0813*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0815*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0714*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0814*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); -dr0815_dt = (-(gt*r0815) - (gt + g2)*r0815)/2. - i*((conj(Ep3a)*conj(r1514))/(8.*rt3) + (conj(Em4a)*r0803)/8. - (conj(Ep4a)*r0805)/(4.*rt6) - (conj(Em3a)*r0807)/8. - (conj(Ep2a)*r1015)/(4.*rt6) + (conj(Em3a)*r1615)/(4.*rt2) - r0816*((2*WLx)/3. + (2*i*WLy)/3.) - r0814*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0715*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0815*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0815*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); +dr0813_dt = (-(gt*r0813) - (gt + g2)*r0813)/2. - i*((conj(Em4a)*r0801)/(4.*rt6) - (conj(Ep4a)*r0803)/8. - (conj(Ep3a)*r0807)/8. - (conj(Ep2a)*r1013)/(4.*rt6) + (conj(Ep3a)*r1413)/(8.*rt3) + (conj(Em3a)*r1613)/(4.*rt2) - r0812*((2*WLx)/3. - (2*i*WLy)/3.) - r0814*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0713*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0813*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.) - r0813*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr0814_dt = (-(gt*r0814) - (gt + g2)*r0814)/2. - i*((conj(Em4a)*r0802)/8. - (conj(Ep4a)*r0804)/8. - (conj(Em3a)*r0806)/(8.*rt3) - (conj(Ep3a)*r0808)/(8.*rt3) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0814 - (conj(Ep2a)*r1014)/(4.*rt6) + (conj(Ep3a)*r1414)/(8.*rt3) + (conj(Em3a)*r1614)/(4.*rt2) - r0813*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0815*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0714*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) + r0814*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); +dr0815_dt = (-(gt*r0815) - (gt + g2)*r0815)/2. - i*((conj(Ep3a)*conj(r1514))/(8.*rt3) + (conj(Em4a)*r0803)/8. - (conj(Ep4a)*r0805)/(4.*rt6) - (conj(Em3a)*r0807)/8. - (conj(Ep2a)*r1015)/(4.*rt6) + (conj(Em3a)*r1615)/(4.*rt2) - r0816*((2*WLx)/3. + (2*i*WLy)/3.) - r0814*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0715*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0815*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0815*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); dr0816_dt = (-(gt*r0816) - (gt + g2)*r0816)/2. - i*((conj(Ep3a)*conj(r1614))/(8.*rt3) + (conj(Em4a)*r0804)/(4.*rt6) - (conj(Em3a)*r0808)/(4.*rt2) - (conj(Ep2a)*r1016)/(4.*rt6) + (conj(Em3a)*r1616)/(4.*rt2) - r0815*((2*WLx)/3. - (2*i*WLy)/3.) + r0716*(-WLx/(2.*rt2) - (i*WLy)/(2.*rt2)) - r0816*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + r0816*(-delta1 + delta2 - v*Kvec1 + v*Kvec2 + WLz/2.)); dr0909_dt = -((gt + g1)*r0909) - i*(-(conj(Em1a)*conj(r0109))/4. - (conj(Ep1a)*conj(r0309))/(4.*rt6) + (conj(Ep2a)*conj(r0709))/(4.*rt6) + (Em1a*r0109)/4. + (Ep1a*r0309)/(4.*rt6) - (Ep2a*r0709)/(4.*rt6) - conj(r1009)*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1009*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); dr0912_dt = (-((gt + g1)*r0912) - (gt + g2)*r0912)/2. - i*(-(conj(Ep4a)*conj(r0209))/(4.*rt6) - (conj(Ep3a)*conj(r0609))/(4.*rt2) + (Em1a*r0112)/4. + (Ep1a*r0312)/(4.*rt6) - (Ep2a*r0712)/(4.*rt6) - r0913*((2*WLx)/3. + (2*i*WLy)/3.) + r1012*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0912*(-delta1 - v*Kvec1 - WLz/6.) - r0912*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr0913_dt = (-((gt + g1)*r0913) - (gt + g2)*r0913)/2. - i*((conj(Em4a)*conj(r0109))/(4.*rt6) - (conj(Ep4a)*conj(r0309))/8. - (conj(Ep3a)*conj(r0709))/8. + (Em1a*r0113)/4. + (Ep1a*r0313)/(4.*rt6) - (Ep2a*r0713)/(4.*rt6) - r0912*((2*WLx)/3. - (2*i*WLy)/3.) - r0914*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1013*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0913*(-delta1 - v*Kvec1 - WLz/6.) - r0913*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr0914_dt = (-((gt + g1)*r0914) - (gt + g2)*r0914)/2. - i*((conj(Em4a)*conj(r0209))/8. - (conj(Ep4a)*conj(r0409))/8. - (conj(Em3a)*conj(r0609))/(8.*rt3) - (conj(Ep3a)*conj(r0809))/(8.*rt3) + (Em1a*r0114)/4. + (Ep1a*r0314)/(4.*rt6) - (Ep2a*r0714)/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0914 - r0913*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r0915*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1014*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0914*(-delta1 - v*Kvec1 - WLz/6.)); -dr0915_dt = (-((gt + g1)*r0915) - (gt + g2)*r0915)/2. - i*((conj(Em4a)*conj(r0309))/8. - (conj(Ep4a)*conj(r0509))/(4.*rt6) - (conj(Em3a)*conj(r0709))/8. + (Em1a*r0115)/4. + (Ep1a*r0315)/(4.*rt6) - (Ep2a*r0715)/(4.*rt6) - r0916*((2*WLx)/3. + (2*i*WLy)/3.) - r0914*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1015*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0915*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0915*(-delta1 - v*Kvec1 - WLz/6.)); +dr0913_dt = (-((gt + g1)*r0913) - (gt + g2)*r0913)/2. - i*((conj(Em4a)*conj(r0109))/(4.*rt6) - (conj(Ep4a)*conj(r0309))/8. - (conj(Ep3a)*conj(r0709))/8. + (Em1a*r0113)/4. + (Ep1a*r0313)/(4.*rt6) - (Ep2a*r0713)/(4.*rt6) - r0912*((2*WLx)/3. - (2*i*WLy)/3.) - r0914*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1013*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0913*(-delta1 - v*Kvec1 - WLz/6.) - r0913*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr0914_dt = (-((gt + g1)*r0914) - (gt + g2)*r0914)/2. - i*((conj(Em4a)*conj(r0209))/8. - (conj(Ep4a)*conj(r0409))/8. - (conj(Em3a)*conj(r0609))/(8.*rt3) - (conj(Ep3a)*conj(r0809))/(8.*rt3) + (Em1a*r0114)/4. + (Ep1a*r0314)/(4.*rt6) - (Ep2a*r0714)/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r0914 - r0913*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r0915*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1014*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r0914*(-delta1 - v*Kvec1 - WLz/6.)); +dr0915_dt = (-((gt + g1)*r0915) - (gt + g2)*r0915)/2. - i*((conj(Em4a)*conj(r0309))/8. - (conj(Ep4a)*conj(r0509))/(4.*rt6) - (conj(Em3a)*conj(r0709))/8. + (Em1a*r0115)/4. + (Ep1a*r0315)/(4.*rt6) - (Ep2a*r0715)/(4.*rt6) - r0916*((2*WLx)/3. + (2*i*WLy)/3.) - r0914*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1015*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0915*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r0915*(-delta1 - v*Kvec1 - WLz/6.)); dr0916_dt = (-((gt + g1)*r0916) - (gt + g2)*r0916)/2. - i*((conj(Em4a)*conj(r0409))/(4.*rt6) - (conj(Em3a)*conj(r0809))/(4.*rt2) + (Em1a*r0116)/4. + (Ep1a*r0316)/(4.*rt6) - (Ep2a*r0716)/(4.*rt6) - r0915*((2*WLx)/3. - (2*i*WLy)/3.) + r1016*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r0916*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + r0916*(-delta1 - v*Kvec1 - WLz/6.)); dr1009_dt = -((gt + g1)*r1009) - i*(-(conj(Em1a)*conj(r0110))/4. - (conj(Ep1a)*conj(r0310))/(4.*rt6) + (conj(Ep2a)*conj(r0710))/(4.*rt6) + (Em1a*r0209)/(4.*rt2) + (Ep1a*r0409)/(4.*rt2) + (Em2a*r0609)/(4.*rt6) - (Ep2a*r0809)/(4.*rt6) - (delta1 + v*Kvec1)*r1009 + r0909*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1010*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1109*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1009*(-delta1 - v*Kvec1 - WLz/6.)); dr1010_dt = -((gt + g1)*r1010) - i*(-(conj(Em1a)*conj(r0210))/(4.*rt2) - (conj(Ep1a)*conj(r0410))/(4.*rt2) - (conj(Em2a)*conj(r0610))/(4.*rt6) + (conj(Ep2a)*conj(r0810))/(4.*rt6) + (Em1a*r0210)/(4.*rt2) + (Ep1a*r0410)/(4.*rt2) + (Em2a*r0610)/(4.*rt6) - (Ep2a*r0810)/(4.*rt6) + conj(r1009)*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - conj(r1110)*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1009*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r1110*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); dr1012_dt = (-((gt + g1)*r1012) - (gt + g2)*r1012)/2. - i*(-(conj(Ep4a)*conj(r0210))/(4.*rt6) - (conj(Ep3a)*conj(r0610))/(4.*rt2) + (Em1a*r0212)/(4.*rt2) + (Ep1a*r0412)/(4.*rt2) + (Em2a*r0612)/(4.*rt6) - (Ep2a*r0812)/(4.*rt6) - (delta1 + v*Kvec1)*r1012 - r1013*((2*WLx)/3. + (2*i*WLy)/3.) + r0912*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1112*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1012*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1013_dt = (-((gt + g1)*r1013) - (gt + g2)*r1013)/2. - i*((conj(Em4a)*conj(r0110))/(4.*rt6) - (conj(Ep4a)*conj(r0310))/8. - (conj(Ep3a)*conj(r0710))/8. + (Em1a*r0213)/(4.*rt2) + (Ep1a*r0413)/(4.*rt2) + (Em2a*r0613)/(4.*rt6) - (Ep2a*r0813)/(4.*rt6) - (delta1 + v*Kvec1)*r1013 - r1012*((2*WLx)/3. - (2*i*WLy)/3.) - r1014*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0913*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1113*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1013*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr1014_dt = (-((gt + g1)*r1014) - (gt + g2)*r1014)/2. - i*((conj(Em4a)*conj(r0210))/8. - (conj(Ep4a)*conj(r0410))/8. - (conj(Em3a)*conj(r0610))/(8.*rt3) - (conj(Ep3a)*conj(r0810))/(8.*rt3) + (Em1a*r0214)/(4.*rt2) + (Ep1a*r0414)/(4.*rt2) + (Em2a*r0614)/(4.*rt6) - (Ep2a*r0814)/(4.*rt6) - (delta1 + v*Kvec1)*r1014 - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1014 - r1013*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r1015*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r0914*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1114*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); -dr1015_dt = (-((gt + g1)*r1015) - (gt + g2)*r1015)/2. - i*((conj(Em4a)*conj(r0310))/8. - (conj(Ep4a)*conj(r0510))/(4.*rt6) - (conj(Em3a)*conj(r0710))/8. + (Em1a*r0215)/(4.*rt2) + (Ep1a*r0415)/(4.*rt2) + (Em2a*r0615)/(4.*rt6) - (Ep2a*r0815)/(4.*rt6) - (delta1 + v*Kvec1)*r1015 - r1016*((2*WLx)/3. + (2*i*WLy)/3.) - r1014*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r0915*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1115*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1015*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); +dr1013_dt = (-((gt + g1)*r1013) - (gt + g2)*r1013)/2. - i*((conj(Em4a)*conj(r0110))/(4.*rt6) - (conj(Ep4a)*conj(r0310))/8. - (conj(Ep3a)*conj(r0710))/8. + (Em1a*r0213)/(4.*rt2) + (Ep1a*r0413)/(4.*rt2) + (Em2a*r0613)/(4.*rt6) - (Ep2a*r0813)/(4.*rt6) - (delta1 + v*Kvec1)*r1013 - r1012*((2*WLx)/3. - (2*i*WLy)/3.) - r1014*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0913*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1113*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1013*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr1014_dt = (-((gt + g1)*r1014) - (gt + g2)*r1014)/2. - i*((conj(Em4a)*conj(r0210))/8. - (conj(Ep4a)*conj(r0410))/8. - (conj(Em3a)*conj(r0610))/(8.*rt3) - (conj(Ep3a)*conj(r0810))/(8.*rt3) + (Em1a*r0214)/(4.*rt2) + (Ep1a*r0414)/(4.*rt2) + (Em2a*r0614)/(4.*rt6) - (Ep2a*r0814)/(4.*rt6) - (delta1 + v*Kvec1)*r1014 - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1014 - r1013*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r1015*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r0914*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1114*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); +dr1015_dt = (-((gt + g1)*r1015) - (gt + g2)*r1015)/2. - i*((conj(Em4a)*conj(r0310))/8. - (conj(Ep4a)*conj(r0510))/(4.*rt6) - (conj(Em3a)*conj(r0710))/8. + (Em1a*r0215)/(4.*rt2) + (Ep1a*r0415)/(4.*rt2) + (Em2a*r0615)/(4.*rt6) - (Ep2a*r0815)/(4.*rt6) - (delta1 + v*Kvec1)*r1015 - r1016*((2*WLx)/3. + (2*i*WLy)/3.) - r1014*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r0915*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1115*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1015*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); dr1016_dt = (-((gt + g1)*r1016) - (gt + g2)*r1016)/2. - i*((conj(Em4a)*conj(r0410))/(4.*rt6) - (conj(Em3a)*conj(r0810))/(4.*rt2) + (Em1a*r0216)/(4.*rt2) + (Ep1a*r0416)/(4.*rt2) + (Em2a*r0616)/(4.*rt6) - (Ep2a*r0816)/(4.*rt6) - (delta1 + v*Kvec1)*r1016 - r1015*((2*WLx)/3. - (2*i*WLy)/3.) + r0916*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1116*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) - r1016*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); dr1109_dt = -((gt + g1)*r1109) - i*(-(conj(Em1a)*conj(r0111))/4. - (conj(Ep1a)*conj(r0311))/(4.*rt6) + (conj(Ep2a)*conj(r0711))/(4.*rt6) + (Em1a*r0309)/(4.*rt6) + (Ep1a*r0509)/4. + (Em2a*r0709)/(4.*rt6) + r1009*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1110*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1109*(-delta1 - v*Kvec1 - WLz/6.) + r1109*(-delta1 - v*Kvec1 + WLz/6.)); dr1110_dt = -((gt + g1)*r1110) - i*(-(conj(Em1a)*conj(r0211))/(4.*rt2) - (conj(Ep1a)*conj(r0411))/(4.*rt2) - (conj(Em2a)*conj(r0611))/(4.*rt6) + (conj(Ep2a)*conj(r0811))/(4.*rt6) + (Em1a*r0310)/(4.*rt6) + (Ep1a*r0510)/4. + (Em2a*r0710)/(4.*rt6) + (delta1 + v*Kvec1)*r1110 + r1010*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1111*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1109*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2)) + r1110*(-delta1 - v*Kvec1 + WLz/6.)); dr1111_dt = -((gt + g1)*r1111) - i*(-(conj(Em1a)*conj(r0311))/(4.*rt6) - (conj(Ep1a)*conj(r0511))/4. - (conj(Em2a)*conj(r0711))/(4.*rt6) + (Em1a*r0311)/(4.*rt6) + (Ep1a*r0511)/4. + (Em2a*r0711)/(4.*rt6) + conj(r1110)*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1110*(-WLx/(6.*rt2) + (i*WLy)/(6.*rt2))); dr1112_dt = (-((gt + g1)*r1112) - (gt + g2)*r1112)/2. - i*(-(conj(Ep4a)*conj(r0211))/(4.*rt6) - (conj(Ep3a)*conj(r0611))/(4.*rt2) + (Em1a*r0312)/(4.*rt6) + (Ep1a*r0512)/4. + (Em2a*r0712)/(4.*rt6) - r1113*((2*WLx)/3. + (2*i*WLy)/3.) + r1012*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1112*(-delta1 - v*Kvec1 + WLz/6.) - r1112*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1113_dt = (-((gt + g1)*r1113) - (gt + g2)*r1113)/2. - i*((conj(Em4a)*conj(r0111))/(4.*rt6) - (conj(Ep4a)*conj(r0311))/8. - (conj(Ep3a)*conj(r0711))/8. + (Em1a*r0313)/(4.*rt6) + (Ep1a*r0513)/4. + (Em2a*r0713)/(4.*rt6) - r1112*((2*WLx)/3. - (2*i*WLy)/3.) - r1114*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1013*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1113*(-delta1 - v*Kvec1 + WLz/6.) - r1113*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr1114_dt = (-((gt + g1)*r1114) - (gt + g2)*r1114)/2. - i*((conj(Em4a)*conj(r0211))/8. - (conj(Ep4a)*conj(r0411))/8. - (conj(Em3a)*conj(r0611))/(8.*rt3) - (conj(Ep3a)*conj(r0811))/(8.*rt3) + (Em1a*r0314)/(4.*rt6) + (Ep1a*r0514)/4. + (Em2a*r0714)/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1114 - r1113*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r1115*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1014*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1114*(-delta1 - v*Kvec1 + WLz/6.)); -dr1115_dt = (-((gt + g1)*r1115) - (gt + g2)*r1115)/2. - i*((conj(Em4a)*conj(r0311))/8. - (conj(Ep4a)*conj(r0511))/(4.*rt6) - (conj(Em3a)*conj(r0711))/8. + (Em1a*r0315)/(4.*rt6) + (Ep1a*r0515)/4. + (Em2a*r0715)/(4.*rt6) - r1116*((2*WLx)/3. + (2*i*WLy)/3.) - r1114*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1015*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1115*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r1115*(-delta1 - v*Kvec1 + WLz/6.)); +dr1113_dt = (-((gt + g1)*r1113) - (gt + g2)*r1113)/2. - i*((conj(Em4a)*conj(r0111))/(4.*rt6) - (conj(Ep4a)*conj(r0311))/8. - (conj(Ep3a)*conj(r0711))/8. + (Em1a*r0313)/(4.*rt6) + (Ep1a*r0513)/4. + (Em2a*r0713)/(4.*rt6) - r1112*((2*WLx)/3. - (2*i*WLy)/3.) - r1114*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1013*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1113*(-delta1 - v*Kvec1 + WLz/6.) - r1113*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr1114_dt = (-((gt + g1)*r1114) - (gt + g2)*r1114)/2. - i*((conj(Em4a)*conj(r0211))/8. - (conj(Ep4a)*conj(r0411))/8. - (conj(Em3a)*conj(r0611))/(8.*rt3) - (conj(Ep3a)*conj(r0811))/(8.*rt3) + (Em1a*r0314)/(4.*rt6) + (Ep1a*r0514)/4. + (Em2a*r0714)/(4.*rt6) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1114 - r1113*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r1115*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1014*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) + r1114*(-delta1 - v*Kvec1 + WLz/6.)); +dr1115_dt = (-((gt + g1)*r1115) - (gt + g2)*r1115)/2. - i*((conj(Em4a)*conj(r0311))/8. - (conj(Ep4a)*conj(r0511))/(4.*rt6) - (conj(Em3a)*conj(r0711))/8. + (Em1a*r0315)/(4.*rt6) + (Ep1a*r0515)/4. + (Em2a*r0715)/(4.*rt6) - r1116*((2*WLx)/3. + (2*i*WLy)/3.) - r1114*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1015*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1115*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) + r1115*(-delta1 - v*Kvec1 + WLz/6.)); dr1116_dt = (-((gt + g1)*r1116) - (gt + g2)*r1116)/2. - i*((conj(Em4a)*conj(r0411))/(4.*rt6) - (conj(Em3a)*conj(r0811))/(4.*rt2) + (Em1a*r0316)/(4.*rt6) + (Ep1a*r0516)/4. + (Em2a*r0716)/(4.*rt6) - r1115*((2*WLx)/3. - (2*i*WLy)/3.) + r1016*(-WLx/(6.*rt2) - (i*WLy)/(6.*rt2)) - r1116*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) + r1116*(-delta1 - v*Kvec1 + WLz/6.)); dr1212_dt = -((gt + g2)*r1212) - i*(-(conj(Ep4a)*conj(r0212))/(4.*rt6) - (conj(Ep3a)*conj(r0612))/(4.*rt2) + (Ep4a*r0212)/(4.*rt6) + (Ep3a*r0612)/(4.*rt2) + r1312*((2*WLx)/3. - (2*i*WLy)/3.) - conj(r1312)*((2*WLx)/3. + (2*i*WLy)/3.)); -dr1312_dt = -((gt + g2)*r1312) - i*(-(conj(Ep4a)*conj(r0213))/(4.*rt6) - (conj(Ep3a)*conj(r0613))/(4.*rt2) - (Em4a*r0112)/(4.*rt6) + (Ep4a*r0312)/8. + (Ep3a*r0712)/8. + r1212*((2*WLx)/3. + (2*i*WLy)/3.) - r1313*((2*WLx)/3. + (2*i*WLy)/3.) + r1412*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - r1312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1313_dt = -((gt + g2)*r1313) - i*((conj(Em4a)*conj(r0113))/(4.*rt6) - (conj(Ep4a)*conj(r0313))/8. - (conj(Ep3a)*conj(r0713))/8. - (Em4a*r0113)/(4.*rt6) + (Ep4a*r0313)/8. + (Ep3a*r0713)/8. - r1312*((2*WLx)/3. - (2*i*WLy)/3.) + conj(r1312)*((2*WLx)/3. + (2*i*WLy)/3.) + r1413*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - conj(r1413)*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy)); -dr1412_dt = -((gt + g2)*r1412) - i*(-(conj(Ep4a)*conj(r0214))/(4.*rt6) - (conj(Ep3a)*conj(r0614))/(4.*rt2) - (Em4a*r0212)/8. + (Ep4a*r0412)/8. + (Em3a*r0612)/(8.*rt3) + (Ep3a*r0812)/(8.*rt3) + (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1412 - r1413*((2*WLx)/3. + (2*i*WLy)/3.) + r1512*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1312*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r1412*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1413_dt = -((gt + g2)*r1413) - i*((conj(Em4a)*conj(r0114))/(4.*rt6) - (conj(Ep4a)*conj(r0314))/8. - (conj(Ep3a)*conj(r0714))/8. - (Em4a*r0213)/8. + (Ep4a*r0413)/8. + (Em3a*r0613)/(8.*rt3) + (Ep3a*r0813)/(8.*rt3) + (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1413 - r1412*((2*WLx)/3. - (2*i*WLy)/3.) + r1513*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1313*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r1414*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r1413*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr1414_dt = -((gt + g2)*r1414) - i*((conj(Em4a)*conj(r0214))/8. - (conj(Ep4a)*conj(r0414))/8. - (conj(Em3a)*conj(r0614))/(8.*rt3) - (conj(Ep3a)*conj(r0814))/(8.*rt3) - (Em4a*r0214)/8. + (Ep4a*r0414)/8. + (Em3a*r0614)/(8.*rt3) + (Ep3a*r0814)/(8.*rt3) - r1413*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1514*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + conj(r1413)*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - conj(r1514)*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy)); -dr1512_dt = -((gt + g2)*r1512) - i*(-(conj(Ep4a)*conj(r0215))/(4.*rt6) - (conj(Ep3a)*conj(r0615))/(4.*rt2) - (Em4a*r0312)/8. + (Ep4a*r0512)/(4.*rt6) + (Em3a*r0712)/8. + r1612*((2*WLx)/3. - (2*i*WLy)/3.) - r1513*((2*WLx)/3. + (2*i*WLy)/3.) + r1412*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1512*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r1512*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1513_dt = -((gt + g2)*r1513) - i*((conj(Em4a)*conj(r0115))/(4.*rt6) - (conj(Ep4a)*conj(r0315))/8. - (conj(Ep3a)*conj(r0715))/8. - (Em4a*r0313)/8. + (Ep4a*r0513)/(4.*rt6) + (Em3a*r0713)/8. - r1512*((2*WLx)/3. - (2*i*WLy)/3.) + r1613*((2*WLx)/3. - (2*i*WLy)/3.) + r1413*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r1514*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r1513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr1514_dt = -((gt + g2)*r1514) - i*((conj(Em4a)*conj(r0215))/8. - (conj(Ep4a)*conj(r0415))/8. - (conj(Em3a)*conj(r0615))/(8.*rt3) - (conj(Ep3a)*conj(r0815))/(8.*rt3) - (Em4a*r0314)/8. + (Ep4a*r0514)/(4.*rt6) + (Em3a*r0714)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1514 + r1614*((2*WLx)/3. - (2*i*WLy)/3.) - r1513*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1414*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) - r1515*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1514*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); -dr1515_dt = -((gt + g2)*r1515) - i*((conj(Em4a)*conj(r0315))/8. - (conj(Ep4a)*conj(r0515))/(4.*rt6) - (conj(Em3a)*conj(r0715))/8. - (Em4a*r0315)/8. + (Ep4a*r0515)/(4.*rt6) + (Em3a*r0715)/8. + r1615*((2*WLx)/3. - (2*i*WLy)/3.) - conj(r1615)*((2*WLx)/3. + (2*i*WLy)/3.) - r1514*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + conj(r1514)*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy)); +dr1312_dt = -((gt + g2)*r1312) - i*(-(conj(Ep4a)*conj(r0213))/(4.*rt6) - (conj(Ep3a)*conj(r0613))/(4.*rt2) - (Em4a*r0112)/(4.*rt6) + (Ep4a*r0312)/8. + (Ep3a*r0712)/8. + r1212*((2*WLx)/3. + (2*i*WLy)/3.) - r1313*((2*WLx)/3. + (2*i*WLy)/3.) + r1412*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.) - r1312*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr1313_dt = -((gt + g2)*r1313) - i*((conj(Em4a)*conj(r0113))/(4.*rt6) - (conj(Ep4a)*conj(r0313))/8. - (conj(Ep3a)*conj(r0713))/8. - (Em4a*r0113)/(4.*rt6) + (Ep4a*r0313)/8. + (Ep3a*r0713)/8. - r1312*((2*WLx)/3. - (2*i*WLy)/3.) + conj(r1312)*((2*WLx)/3. + (2*i*WLy)/3.) + r1413*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - conj(r1413)*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy)); +dr1412_dt = -((gt + g2)*r1412) - i*(-(conj(Ep4a)*conj(r0214))/(4.*rt6) - (conj(Ep3a)*conj(r0614))/(4.*rt2) - (Em4a*r0212)/8. + (Ep4a*r0412)/8. + (Em3a*r0612)/(8.*rt3) + (Ep3a*r0812)/(8.*rt3) + (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1412 - r1413*((2*WLx)/3. + (2*i*WLy)/3.) + r1512*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1312*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r1412*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr1413_dt = -((gt + g2)*r1413) - i*((conj(Em4a)*conj(r0114))/(4.*rt6) - (conj(Ep4a)*conj(r0314))/8. - (conj(Ep3a)*conj(r0714))/8. - (Em4a*r0213)/8. + (Ep4a*r0413)/8. + (Em3a*r0613)/(8.*rt3) + (Ep3a*r0813)/(8.*rt3) + (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1413 - r1412*((2*WLx)/3. - (2*i*WLy)/3.) + r1513*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1313*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r1414*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r1413*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr1414_dt = -((gt + g2)*r1414) - i*((conj(Em4a)*conj(r0214))/8. - (conj(Ep4a)*conj(r0414))/8. - (conj(Em3a)*conj(r0614))/(8.*rt3) - (conj(Ep3a)*conj(r0814))/(8.*rt3) - (Em4a*r0214)/8. + (Ep4a*r0414)/8. + (Em3a*r0614)/(8.*rt3) + (Ep3a*r0814)/(8.*rt3) - r1413*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1514*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + conj(r1413)*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - conj(r1514)*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy)); +dr1512_dt = -((gt + g2)*r1512) - i*(-(conj(Ep4a)*conj(r0215))/(4.*rt6) - (conj(Ep3a)*conj(r0615))/(4.*rt2) - (Em4a*r0312)/8. + (Ep4a*r0512)/(4.*rt6) + (Em3a*r0712)/8. + r1612*((2*WLx)/3. - (2*i*WLy)/3.) - r1513*((2*WLx)/3. + (2*i*WLy)/3.) + r1412*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1512*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r1512*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); +dr1513_dt = -((gt + g2)*r1513) - i*((conj(Em4a)*conj(r0115))/(4.*rt6) - (conj(Ep4a)*conj(r0315))/8. - (conj(Ep3a)*conj(r0715))/8. - (Em4a*r0313)/8. + (Ep4a*r0513)/(4.*rt6) + (Em3a*r0713)/8. - r1512*((2*WLx)/3. - (2*i*WLy)/3.) + r1613*((2*WLx)/3. - (2*i*WLy)/3.) + r1413*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r1514*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.) - r1513*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr1514_dt = -((gt + g2)*r1514) - i*((conj(Em4a)*conj(r0215))/8. - (conj(Ep4a)*conj(r0415))/8. - (conj(Em3a)*conj(r0615))/(8.*rt3) - (conj(Ep3a)*conj(r0815))/(8.*rt3) - (Em4a*r0314)/8. + (Ep4a*r0514)/(4.*rt6) + (Em3a*r0714)/8. - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1514 + r1614*((2*WLx)/3. - (2*i*WLy)/3.) - r1513*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1414*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) - r1515*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1514*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); +dr1515_dt = -((gt + g2)*r1515) - i*((conj(Em4a)*conj(r0315))/8. - (conj(Ep4a)*conj(r0515))/(4.*rt6) - (conj(Em3a)*conj(r0715))/8. - (Em4a*r0315)/8. + (Ep4a*r0515)/(4.*rt6) + (Em3a*r0715)/8. + r1615*((2*WLx)/3. - (2*i*WLy)/3.) - conj(r1615)*((2*WLx)/3. + (2*i*WLy)/3.) - r1514*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + conj(r1514)*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy)); dr1612_dt = -((gt + g2)*r1612) - i*(-(conj(Ep4a)*conj(r0216))/(4.*rt6) - (conj(Ep3a)*conj(r0616))/(4.*rt2) - (Em4a*r0412)/(4.*rt6) + (Em3a*r0812)/(4.*rt2) + r1512*((2*WLx)/3. + (2*i*WLy)/3.) - r1613*((2*WLx)/3. + (2*i*WLy)/3.) + r1612*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r1612*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (4*WLz)/3.)); -dr1613_dt = -((gt + g2)*r1613) - i*((conj(Em4a)*conj(r0116))/(4.*rt6) - (conj(Ep4a)*conj(r0316))/8. - (conj(Ep3a)*conj(r0716))/8. - (Em4a*r0413)/(4.*rt6) + (Em3a*r0813)/(4.*rt2) - r1612*((2*WLx)/3. - (2*i*WLy)/3.) + r1513*((2*WLx)/3. + (2*i*WLy)/3.) - r1614*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r1613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); -dr1614_dt = -((gt + g2)*r1614) - i*((conj(Em4a)*conj(r0216))/8. - (conj(Ep4a)*conj(r0416))/8. - (conj(Em3a)*conj(r0616))/(8.*rt3) - (conj(Ep3a)*conj(r0816))/(8.*rt3) - (Em4a*r0414)/(4.*rt6) + (Em3a*r0814)/(4.*rt2) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1614 + r1514*((2*WLx)/3. + (2*i*WLy)/3.) - r1613*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) - r1615*(Sqrt(0.6666666666666666)*WLx + Sqrt(0.6666666666666666)*i*WLy) + r1614*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); -dr1615_dt = -((gt + g2)*r1615) - i*((conj(Em4a)*conj(r0316))/8. - (conj(Ep4a)*conj(r0516))/(4.*rt6) - (conj(Em3a)*conj(r0716))/8. - (Em4a*r0415)/(4.*rt6) + (Em3a*r0815)/(4.*rt2) + r1515*((2*WLx)/3. + (2*i*WLy)/3.) - r1616*((2*WLx)/3. + (2*i*WLy)/3.) - r1614*(Sqrt(0.6666666666666666)*WLx - Sqrt(0.6666666666666666)*i*WLy) + r1615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r1615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); +dr1613_dt = -((gt + g2)*r1613) - i*((conj(Em4a)*conj(r0116))/(4.*rt6) - (conj(Ep4a)*conj(r0316))/8. - (conj(Ep3a)*conj(r0716))/8. - (Em4a*r0413)/(4.*rt6) + (Em3a*r0813)/(4.*rt2) - r1612*((2*WLx)/3. - (2*i*WLy)/3.) + r1513*((2*WLx)/3. + (2*i*WLy)/3.) - r1614*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r1613*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 + (2*WLz)/3.)); +dr1614_dt = -((gt + g2)*r1614) - i*((conj(Em4a)*conj(r0216))/8. - (conj(Ep4a)*conj(r0416))/8. - (conj(Em3a)*conj(r0616))/(8.*rt3) - (conj(Ep3a)*conj(r0816))/(8.*rt3) - (Em4a*r0414)/(4.*rt6) + (Em3a*r0814)/(4.*rt2) - (-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3)*r1614 + r1514*((2*WLx)/3. + (2*i*WLy)/3.) - r1613*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) - r1615*(sqrt(0.6666666666666666)*WLx + sqrt(0.6666666666666666)*i*WLy) + r1614*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.)); +dr1615_dt = -((gt + g2)*r1615) - i*((conj(Em4a)*conj(r0316))/8. - (conj(Ep4a)*conj(r0516))/(4.*rt6) - (conj(Em3a)*conj(r0716))/8. - (Em4a*r0415)/(4.*rt6) + (Em3a*r0815)/(4.*rt2) + r1515*((2*WLx)/3. + (2*i*WLy)/3.) - r1616*((2*WLx)/3. + (2*i*WLy)/3.) - r1614*(sqrt(0.6666666666666666)*WLx - sqrt(0.6666666666666666)*i*WLy) + r1615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (4*WLz)/3.) - r1615*(-delta1 + delta2 - delta3 - v*Kvec1 + v*Kvec2 - v*Kvec3 - (2*WLz)/3.)); dr1616_dt = -((gt + g2)*r1616) - i*((conj(Em4a)*conj(r0416))/(4.*rt6) - (conj(Em3a)*conj(r0816))/(4.*rt2) - (Em4a*r0416)/(4.*rt6) + (Em3a*r0816)/(4.*rt2) - r1615*((2*WLx)/3. - (2*i*WLy)/3.) + conj(r1615)*((2*WLx)/3. + (2*i*WLy)/3.)); //---------------- RbEquations.txt ends ------------------ ]]> -- cgit v1.2.3 From f5f65bcf043f58a071ff6f39de9b897107fccf30 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Tue, 27 Nov 2012 18:11:39 -0500 Subject: Added proper output xsil file name --- xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index d4e663e..ea6252a 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -2,7 +2,7 @@ --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --E1o=0 --E2o=1e2 --E3o=0 --E4o=0 - + -- cgit v1.2.3 From b8ff606ca81bd2bffbf1fccce8d8460cfce64e88 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Tue, 27 Nov 2012 21:45:57 -0500 Subject: git ci tests are added --- .../realistic_Rb_and_fields_expected.xsil | 676 +++++++++++++++++++++ .../realistic_Rb_and_fields_expected_mg0.dat | Bin 0 -> 6472848 bytes 2 files changed, 676 insertions(+) create mode 100644 xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected.xsil create mode 100644 xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected_mg0.dat (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected.xsil b/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected.xsil new file mode 100644 index 0000000..c09460c --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected.xsil @@ -0,0 +1,676 @@ + + + + --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --Ep1o=1e4 --Ep2o=1e2 --Ep3o=1e1 --Ep4o=1e1 --Em1o=1e4 --Em2o=1e2 --Em3o=1e1 --Em4o=1e1 --WLx=0 --WLy=0 --WLz=0 + + + + + + realistic_Rb_and_fields + + Eugeniy Mikhailov + + License GPL. + + Solving simplified Rb atom model + with fields propagation along spatial axis Z + with Doppler broadening. + + + We assume four-wave mixing condition when w3-w4=w2-w1 i.e. fields E3 and E4 drive the same + resonance as fields E2 and E1. + + + * --------------- | F=1, 2P_3/2 > + * \ \ + * \ E3_r \ -------- | F=2, 2P_+1/2 > + * \ E4_r \ / \ + * \ \ / E2_l \ + * \ / \ E1_l + * | F=2, 2S_1/2 > -------------- \ + * \ \ + * \ \ + * ------------- | F=1, 2S_1/2 > + * + + + We are solving + dE/dz+(1/c)*dE/dt=i*eta*rho_ij, where j level is higher than i. + Note that E is actually a Rabi frequency of electromagnetic field not the EM field + in xmds terms it looks like + dE_dz = i*eta*rhoij - 1/c*L[E], here we moved t dependence to Fourier space + + VERY IMPORTANT: all Rabi frequency should be given in [1/s], if you want to + normalize it to something else look drho/dt equation. + No need to renormalizes eta as long as its express through + the upper level decay rate in the same units as Rabi frequency. + + + + + section + double v_thermal_averaged=0; + // Maxwell distribution velocities range to take in account in [m/s] + double V_maxwell_min = 0, V_maxwell_max = 0; + + // repopulation rate (atoms flying in/out the laser beam) in [1/s] + const double gt=0.01 *(2*M_PI*1e6); + + // inner use variables + double probability_v; // will be used as p(v) in Maxwell distribution + + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 to provide range for Maxwell velocity distribution\n"); + v_thermal_averaged=sqrt(k_boltzmann*Temperature/mass); + // Maxwell distribution velocities range to take in account in [m/s] + // there is almost zero probability for higher velocity p(4*v_av) = 3.3e-04 * p(0) + V_maxwell_min = -4*v_thermal_averaged; V_maxwell_max = -V_maxwell_min; + ]]> + + + + + + + + + + + + + + z + + + + + + + + + + + Ep1 Em1 Ep2 Em2 Ep3 Em3 Ep4 Em4 + + + + + + + + probability_v + + + + + + + + probability_v_norm + + Maxwell_distribution_probabilities + + + + + + + + Ep1a Em1a Ep2a Em2a Ep3a Em3a Ep4a Em4a + + E_field Maxwell_distribution_probabilities Maxwell_distribution_probabilities_norm + + + + + + + + +r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0211 r0212 r0213 r0214 r0215 r0216 r0301 r0302 r0303 r0309 r0310 r0311 r0312 r0313 r0314 r0315 r0316 r0401 r0402 r0403 r0404 r0409 r0410 r0411 r0412 r0413 r0414 r0415 r0416 r0501 r0502 r0503 r0504 r0505 r0509 r0510 r0511 r0512 r0513 r0514 r0515 r0516 r0601 r0602 r0603 r0604 r0605 r0606 r0609 r0610 r0611 r0612 r0613 r0614 r0615 r0616 r0701 r0702 r0703 r0704 r0705 r0706 r0707 r0709 r0710 r0711 r0712 r0713 r0714 r0715 r0716 r0801 r0802 r0803 r0804 r0805 r0806 r0807 r0808 r0809 r0810 r0811 r0812 r0813 r0814 r0815 r0816 r0909 r0912 r0913 r0914 r0915 r0916 r1009 r1010 r1012 r1013 r1014 r1015 r1016 r1109 r1110 r1111 r1112 r1113 r1114 r1115 r1116 r1212 r1312 r1313 r1412 r1413 r1414 r1512 r1513 r1514 r1515 r1612 r1613 r1614 r1615 r1616 + + + + + + // this is because if r11=1, everything else is 0 and then every small increment + // seems to be huge and adaptive solver makes smaller and smaller steps. + // As quick and dirty fix I reshuffle initial population + // so some of the population sits at the second ground level |2> + // TODO: Fix above. Make the equation of motion for r11 + // and express other level, let's say r44 + // through population normalization + + //read from Mathematica generated RbInits.txt +//---------------- RbInits.txt starts ------------------ +r0101 = 0.125; +r0109 = 0; +r0110 = 0; +r0111 = 0; +r0112 = 0; +r0113 = 0; +r0114 = 0; +r0115 = 0; +r0116 = 0; +r0201 = 0; +r0202 = 0.125; +r0209 = 0; +r0210 = 0; +r0211 = 0; +r0212 = 0; +r0213 = 0; +r0214 = 0; +r0215 = 0; +r0216 = 0; +r0301 = 0; +r0302 = 0; +r0303 = 0.125; +r0309 = 0; +r0310 = 0; +r0311 = 0; +r0312 = 0; +r0313 = 0; +r0314 = 0; +r0315 = 0; +r0316 = 0; +r0401 = 0; +r0402 = 0; +r0403 = 0; +r0404 = 0.125; +r0409 = 0; +r0410 = 0; +r0411 = 0; +r0412 = 0; +r0413 = 0; +r0414 = 0; +r0415 = 0; +r0416 = 0; +r0501 = 0; +r0502 = 0; +r0503 = 0; +r0504 = 0; +r0505 = 0.125; +r0509 = 0; +r0510 = 0; +r0511 = 0; +r0512 = 0; +r0513 = 0; +r0514 = 0; +r0515 = 0; +r0516 = 0; +r0601 = 0; +r0602 = 0; +r0603 = 0; +r0604 = 0; +r0605 = 0; +r0606 = 0.125; +r0609 = 0; +r0610 = 0; +r0611 = 0; +r0612 = 0; +r0613 = 0; +r0614 = 0; +r0615 = 0; +r0616 = 0; +r0701 = 0; +r0702 = 0; +r0703 = 0; +r0704 = 0; +r0705 = 0; +r0706 = 0; +r0707 = 0.125; +r0709 = 0; +r0710 = 0; +r0711 = 0; +r0712 = 0; +r0713 = 0; +r0714 = 0; +r0715 = 0; +r0716 = 0; +r0801 = 0; +r0802 = 0; +r0803 = 0; +r0804 = 0; +r0805 = 0; +r0806 = 0; +r0807 = 0; +r0808 = 0.125; +r0809 = 0; +r0810 = 0; +r0811 = 0; +r0812 = 0; +r0813 = 0; +r0814 = 0; +r0815 = 0; +r0816 = 0; +r0909 = 0; +r0912 = 0; +r0913 = 0; +r0914 = 0; +r0915 = 0; +r0916 = 0; +r1009 = 0; +r1010 = 0; +r1012 = 0; +r1013 = 0; +r1014 = 0; +r1015 = 0; +r1016 = 0; +r1109 = 0; +r1110 = 0; +r1111 = 0; +r1112 = 0; +r1113 = 0; +r1114 = 0; +r1115 = 0; +r1116 = 0; +r1212 = 0; +r1312 = 0; +r1313 = 0; +r1412 = 0; +r1413 = 0; +r1414 = 0; +r1512 = 0; +r1513 = 0; +r1514 = 0; +r1515 = 0; +r1612 = 0; +r1613 = 0; +r1614 = 0; +r1615 = 0; +r1616 = 0; +//---------------- RbInits.txt ends ------------------ + ]]> + + + + + + + + + + + + + + + + + 100 + + + + + + density_matrix + E_field_avgd + + + + + + + + + Lt + + + E_field + density_matrix + + + + + + + + + + + + E_field_avgd + Ip1_out Im1_out Ip2_out Im2_out Ip3_out Im3_out Ip4_out Im4_out + + + + + + + +Script compiled with XMDS2 version VERSION_PLACEHOLDER (SUBVERSION_REVISION_PLACEHOLDER) +See http://www.xmds.org for more information. + +Variables that can be specified on the command line: + Command line argument Ep1o = 1.000000e+04 + Command line argument Em1o = 1.000000e+04 + Command line argument Ep2o = 1.000000e+02 + Command line argument Em2o = 1.000000e+02 + Command line argument Ep3o = 1.000000e+01 + Command line argument Em3o = 1.000000e+01 + Command line argument Ep4o = 1.000000e+01 + Command line argument Em4o = 1.000000e+01 + Command line argument delta1 = 0.000000e+00 + Command line argument delta2 = 0.000000e+00 + Command line argument delta3 = 0.000000e+00 + Command line argument Pwidth = 4.000000e-07 + Command line argument Lcell = 1.000000e-01 + Command line argument Ndens = 1.000000e+15 + Command line argument WLx = 0.000000e+00 + Command line argument WLy = 0.000000e+00 + Command line argument WLz = 0.000000e+00 + Command line argument Temperature = 1.000000e-03 + + + + 2 + + 10 + +z t Ip1_out Im1_out Ip2_out Im2_out Ip3_out Im3_out Ip4_out Im4_out + + + + 101 + 1000 + 10 + +realistic_Rb_and_fields_expected_mg0.dat + + + + diff --git a/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected_mg0.dat b/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected_mg0.dat new file mode 100644 index 0000000..c301bc7 Binary files /dev/null and b/xmds2/realistic_Rb_and_fields/tests/testsuite/realistic_Rb_and_fields_expected_mg0.dat differ -- cgit v1.2.3 From c9c327cc7ed2ce8f7438d64961696ca631979987 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Tue, 27 Nov 2012 22:26:36 -0500 Subject: changed argument and variables name to a shorter version thanks to my bugreport and patch xmds can now handle multiple similar sounding arguments --- .../realistic_Rb_and_fields.xmds | 38 ++++++++++------------ 1 file changed, 17 insertions(+), 21 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index ea6252a..7e310ae 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -1,7 +1,7 @@ - --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --E1o=0 --E2o=1e2 --E3o=0 --E4o=0 + --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --Ep1o=1e4 --Ep2o=1e2 --Ep3o=1e1 --Ep4o=1e1 --Em1o=1e4 --Em2o=1e2 --Em3o=1e1 --Em4o=1e1 --WLx=0 --WLy=0 --WLz=0 @@ -102,18 +102,14 @@ const double rt2 = 1.4142135623730951; - - - - - - - - - + + + + + + + + @@ -185,14 +181,14 @@ const double rt2 = 1.4142135623730951; -- cgit v1.2.3 From df1ce8081df7a44e108bb290d06bbdf0dd574e38 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Tue, 27 Nov 2012 23:21:05 -0500 Subject: change Maxwell probability related vectors to static one --- .../realistic_Rb_and_fields/realistic_Rb_and_fields.xmds | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index 7e310ae..5b00664 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -194,29 +194,29 @@ const double rt2 = 1.4142135623730951; - + probability_v - + - - + + - + probability_v_norm - + Maxwell_distribution_probabilities - - + + -- cgit v1.2.3 From 94f7490fc5155e4f319c0872690f91748acdc28f Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 28 Nov 2012 00:30:41 -0500 Subject: some mathematica generated files are now inserted via c++ #include --- xmds2/realistic_Rb_and_fields/RbAtomConstants.h | 15 ++ xmds2/realistic_Rb_and_fields/RbInits.h | 138 +++++++++++++++++ .../realistic_Rb_and_fields.xmds | 165 ++------------------- 3 files changed, 163 insertions(+), 155 deletions(-) create mode 100644 xmds2/realistic_Rb_and_fields/RbAtomConstants.h create mode 100644 xmds2/realistic_Rb_and_fields/RbInits.h (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/RbAtomConstants.h b/xmds2/realistic_Rb_and_fields/RbAtomConstants.h new file mode 100644 index 0000000..5be3a6e --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/RbAtomConstants.h @@ -0,0 +1,15 @@ +//---------------- Constants.txt starts ------------------ +const double ha0 = 2.1471788680034824e10; +const double ha1 = 2.558764384495815e9; +const double g1 = 3.612847284945266e7; +const double ha2 = 5.323020344462938e8; +const double hb2 = 7.85178251911697e7; +const double g2 = 3.8117309832741246e7; +const double lambda1 = 7.949788511562656e-7; +const double lambda2 = 7.802412096860509e-7; +const double eta1 = 5.450949336831401e-6; +const double eta2 = 5.5397657647874e-6; +const double rt6 = 2.449489742783178; +const double rt3 = 1.7320508075688772; +const double rt2 = 1.4142135623730951; +//---------------- Constants.txt ends ------------------ diff --git a/xmds2/realistic_Rb_and_fields/RbInits.h b/xmds2/realistic_Rb_and_fields/RbInits.h new file mode 100644 index 0000000..e4926b2 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/RbInits.h @@ -0,0 +1,138 @@ +//---------------- RbInits.txt starts ------------------ +r0101 = 0.125; +r0109 = 0; +r0110 = 0; +r0111 = 0; +r0112 = 0; +r0113 = 0; +r0114 = 0; +r0115 = 0; +r0116 = 0; +r0201 = 0; +r0202 = 0.125; +r0209 = 0; +r0210 = 0; +r0211 = 0; +r0212 = 0; +r0213 = 0; +r0214 = 0; +r0215 = 0; +r0216 = 0; +r0301 = 0; +r0302 = 0; +r0303 = 0.125; +r0309 = 0; +r0310 = 0; +r0311 = 0; +r0312 = 0; +r0313 = 0; +r0314 = 0; +r0315 = 0; +r0316 = 0; +r0401 = 0; +r0402 = 0; +r0403 = 0; +r0404 = 0.125; +r0409 = 0; +r0410 = 0; +r0411 = 0; +r0412 = 0; +r0413 = 0; +r0414 = 0; +r0415 = 0; +r0416 = 0; +r0501 = 0; +r0502 = 0; +r0503 = 0; +r0504 = 0; +r0505 = 0.125; +r0509 = 0; +r0510 = 0; +r0511 = 0; +r0512 = 0; +r0513 = 0; +r0514 = 0; +r0515 = 0; +r0516 = 0; +r0601 = 0; +r0602 = 0; +r0603 = 0; +r0604 = 0; +r0605 = 0; +r0606 = 0.125; +r0609 = 0; +r0610 = 0; +r0611 = 0; +r0612 = 0; +r0613 = 0; +r0614 = 0; +r0615 = 0; +r0616 = 0; +r0701 = 0; +r0702 = 0; +r0703 = 0; +r0704 = 0; +r0705 = 0; +r0706 = 0; +r0707 = 0.125; +r0709 = 0; +r0710 = 0; +r0711 = 0; +r0712 = 0; +r0713 = 0; +r0714 = 0; +r0715 = 0; +r0716 = 0; +r0801 = 0; +r0802 = 0; +r0803 = 0; +r0804 = 0; +r0805 = 0; +r0806 = 0; +r0807 = 0; +r0808 = 0.125; +r0809 = 0; +r0810 = 0; +r0811 = 0; +r0812 = 0; +r0813 = 0; +r0814 = 0; +r0815 = 0; +r0816 = 0; +r0909 = 0; +r0912 = 0; +r0913 = 0; +r0914 = 0; +r0915 = 0; +r0916 = 0; +r1009 = 0; +r1010 = 0; +r1012 = 0; +r1013 = 0; +r1014 = 0; +r1015 = 0; +r1016 = 0; +r1109 = 0; +r1110 = 0; +r1111 = 0; +r1112 = 0; +r1113 = 0; +r1114 = 0; +r1115 = 0; +r1116 = 0; +r1212 = 0; +r1312 = 0; +r1313 = 0; +r1412 = 0; +r1413 = 0; +r1414 = 0; +r1512 = 0; +r1513 = 0; +r1514 = 0; +r1515 = 0; +r1612 = 0; +r1613 = 0; +r1614 = 0; +r1615 = 0; +r1616 = 0; +//---------------- RbInits.txt ends ------------------ diff --git a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds index 5b00664..d10dbad 100644 --- a/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds +++ b/xmds2/realistic_Rb_and_fields/realistic_Rb_and_fields.xmds @@ -1,4 +1,9 @@ + + + +]> --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --Ep1o=1e4 --Ep2o=1e2 --Ep3o=1e1 --Ep4o=1e1 --Em1o=1e4 --Em2o=1e2 --Em3o=1e1 --Em4o=1e1 --WLx=0 --WLy=0 --WLz=0 @@ -54,22 +59,8 @@ const double pi = M_PI; // atom related constants - //read from Mathematica generated Constants.txt -//---------------- Constants.txt starts ------------------ -const double ha0 = 2.1471788680034824e10; -const double ha1 = 2.558764384495815e9; -const double g1 = 3.612847284945266e7; -const double ha2 = 5.323020344462938e8; -const double hb2 = 7.85178251911697e7; -const double g2 = 3.8117309832741246e7; -const double lambda1 = 7.949788511562656e-7; -const double lambda2 = 7.802412096860509e-7; -const double eta1 = 5.450949336831401e-6; -const double eta2 = 5.5397657647874e-6; -const double rt6 = 2.449489742783178; -const double rt3 = 1.7320508075688772; -const double rt2 = 1.4142135623730951; -//---------------- Constants.txt ends ------------------ + //read from Mathematica generated RbAtomConstants.h + #include "RbAtomConstants.h" const double c=3.e8; const double k_boltzmann= 1.3806505e-23; // Boltzmann knostant in [J/K] @@ -258,145 +249,8 @@ r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0 // and express other level, let's say r44 // through population normalization - //read from Mathematica generated RbInits.txt -//---------------- RbInits.txt starts ------------------ -r0101 = 0.125; -r0109 = 0; -r0110 = 0; -r0111 = 0; -r0112 = 0; -r0113 = 0; -r0114 = 0; -r0115 = 0; -r0116 = 0; -r0201 = 0; -r0202 = 0.125; -r0209 = 0; -r0210 = 0; -r0211 = 0; -r0212 = 0; -r0213 = 0; -r0214 = 0; -r0215 = 0; -r0216 = 0; -r0301 = 0; -r0302 = 0; -r0303 = 0.125; -r0309 = 0; -r0310 = 0; -r0311 = 0; -r0312 = 0; -r0313 = 0; -r0314 = 0; -r0315 = 0; -r0316 = 0; -r0401 = 0; -r0402 = 0; -r0403 = 0; -r0404 = 0.125; -r0409 = 0; -r0410 = 0; -r0411 = 0; -r0412 = 0; -r0413 = 0; -r0414 = 0; -r0415 = 0; -r0416 = 0; -r0501 = 0; -r0502 = 0; -r0503 = 0; -r0504 = 0; -r0505 = 0.125; -r0509 = 0; -r0510 = 0; -r0511 = 0; -r0512 = 0; -r0513 = 0; -r0514 = 0; -r0515 = 0; -r0516 = 0; -r0601 = 0; -r0602 = 0; -r0603 = 0; -r0604 = 0; -r0605 = 0; -r0606 = 0.125; -r0609 = 0; -r0610 = 0; -r0611 = 0; -r0612 = 0; -r0613 = 0; -r0614 = 0; -r0615 = 0; -r0616 = 0; -r0701 = 0; -r0702 = 0; -r0703 = 0; -r0704 = 0; -r0705 = 0; -r0706 = 0; -r0707 = 0.125; -r0709 = 0; -r0710 = 0; -r0711 = 0; -r0712 = 0; -r0713 = 0; -r0714 = 0; -r0715 = 0; -r0716 = 0; -r0801 = 0; -r0802 = 0; -r0803 = 0; -r0804 = 0; -r0805 = 0; -r0806 = 0; -r0807 = 0; -r0808 = 0.125; -r0809 = 0; -r0810 = 0; -r0811 = 0; -r0812 = 0; -r0813 = 0; -r0814 = 0; -r0815 = 0; -r0816 = 0; -r0909 = 0; -r0912 = 0; -r0913 = 0; -r0914 = 0; -r0915 = 0; -r0916 = 0; -r1009 = 0; -r1010 = 0; -r1012 = 0; -r1013 = 0; -r1014 = 0; -r1015 = 0; -r1016 = 0; -r1109 = 0; -r1110 = 0; -r1111 = 0; -r1112 = 0; -r1113 = 0; -r1114 = 0; -r1115 = 0; -r1116 = 0; -r1212 = 0; -r1312 = 0; -r1313 = 0; -r1412 = 0; -r1413 = 0; -r1414 = 0; -r1512 = 0; -r1513 = 0; -r1514 = 0; -r1515 = 0; -r1612 = 0; -r1613 = 0; -r1614 = 0; -r1615 = 0; -r1616 = 0; -//---------------- RbInits.txt ends ------------------ + //read from Mathematica generated RbInits.h + #include "RbInits.h" ]]> @@ -576,6 +430,7 @@ dr1615_dt = -((gt + g2)*r1615) - i*((conj(Em4a)*conj(r0316))/8. - (conj(Ep4a)*co dr1616_dt = -((gt + g2)*r1616) - i*((conj(Em4a)*conj(r0416))/(4.*rt6) - (conj(Em3a)*conj(r0816))/(4.*rt2) - (Em4a*r0416)/(4.*rt6) + (Em3a*r0816)/(4.*rt2) - r1615*((2*WLx)/3. - (2*i*WLy)/3.) + conj(r1615)*((2*WLx)/3. + (2*i*WLy)/3.)); //---------------- RbEquations.txt ends ------------------ ]]> + + + + + +]> --Ndens=1e15 --Lcell=10.0e-2 --Temperature=1e-3 --Pwidth=0.4e-6 --delta1=0 --delta2=0 --delta3=0 --E1o=0 --E2o=1e2 --E3o=0 --E4o=0 @@ -49,28 +56,12 @@ + + &RbAtomConstansFile; - -r0101 r0113 r0202 r0214 r0303 r0309 r0315 r0404 r0410 r0416 r0505 r0511 r0602 r0606 r0614 r0703 r0707 r0709 r0715 r0804 r0808 r0810 r0816 r0909 r0915 r1010 r1016 r1111 r1313 r1414 r1515 r1616 - + &RbChosenRhoFile; @@ -245,42 +234,9 @@ r0101 r0113 r0202 r0214 r0303 r0309 r0315 r0404 r0410 r0416 r0505 r0511 r0602 r0 // and express other level, let's say r44 // through population normalization - //read from Mathematica generated RbInits.txt -//---------------- RbInits.txt starts ------------------ -r0101 = 0.125; -r0113 = 0; -r0202 = 0.125; -r0214 = 0; -r0303 = 0.125; -r0309 = 0; -r0315 = 0; -r0404 = 0.125; -r0410 = 0; -r0416 = 0; -r0505 = 0.125; -r0511 = 0; -r0602 = 0; -r0606 = 0.125; -r0614 = 0; -r0703 = 0; -r0707 = 0.125; -r0709 = 0; -r0715 = 0; -r0804 = 0; -r0808 = 0.125; -r0810 = 0; -r0816 = 0; -r0909 = 0; -r0915 = 0; -r1010 = 0; -r1016 = 0; -r1111 = 0; -r1313 = 0; -r1414 = 0; -r1515 = 0; -r1616 = 0; -//---------------- RbInits.txt ends ------------------ ]]> + + &RbInitsFile; @@ -317,44 +273,9 @@ r1616 = 0; ]]> --> - + + + &RbEquationsFile; + - + + + ]> @@ -54,14 +58,14 @@ + + + &RbAtomConstantsFile; + @@ -232,9 +235,7 @@ - -r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0211 r0212 r0213 r0214 r0215 r0216 r0301 r0302 r0303 r0309 r0310 r0311 r0312 r0313 r0314 r0315 r0316 r0401 r0402 r0403 r0404 r0409 r0410 r0411 r0412 r0413 r0414 r0415 r0416 r0501 r0502 r0503 r0504 r0505 r0509 r0510 r0511 r0512 r0513 r0514 r0515 r0516 r0601 r0602 r0603 r0604 r0605 r0606 r0609 r0610 r0611 r0612 r0613 r0614 r0615 r0616 r0701 r0702 r0703 r0704 r0705 r0706 r0707 r0709 r0710 r0711 r0712 r0713 r0714 r0715 r0716 r0801 r0802 r0803 r0804 r0805 r0806 r0807 r0808 r0809 r0810 r0811 r0812 r0813 r0814 r0815 r0816 r0909 r0912 r0913 r0914 r0915 r0916 r1009 r1010 r1012 r1013 r1014 r1015 r1016 r1109 r1110 r1111 r1112 r1113 r1114 r1115 r1116 r1212 r1312 r1313 r1412 r1413 r1414 r1512 r1513 r1514 r1515 r1612 r1613 r1614 r1615 r1616 - + &RbChosenRhoFile; @@ -248,10 +249,9 @@ r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0 // TODO: Fix above. Make the equation of motion for r11 // and express other level, let's say r44 // through population normalization - - //read from Mathematica generated RbInits.h - #include "RbInits.h" ]]> + + &RbInitsFile; @@ -288,149 +288,9 @@ r0101 r0109 r0110 r0111 r0112 r0113 r0114 r0115 r0116 r0201 r0202 r0209 r0210 r0 ]]> --> - - + + + &RbEquationsFile; + &RbPropEquationsFile; -- cgit v1.2.3 From f2891fa6f6ea67b9fd6a3fbec4cc6344debfba64 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 28 Nov 2012 23:28:39 -0500 Subject: typo in makefile --- xmds2/realistic_Rb/Makefile | 3 ++- xmds2/realistic_Rb_and_fields/Makefile | 25 ++++++++++++++++++------- 2 files changed, 20 insertions(+), 8 deletions(-) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb/Makefile b/xmds2/realistic_Rb/Makefile index 583bc6a..1f5c4fd 100644 --- a/xmds2/realistic_Rb/Makefile +++ b/xmds2/realistic_Rb/Makefile @@ -16,7 +16,8 @@ M_FILES = $(patsubst %.xmds,%.m,$(XMDS_FILES)) test_dir = tests test_result_dir = $(test_dir)/testsuite_results -XMDS_INCLUDES_misc = RbChosenRho.txt RbInits.cdata RbEquations.cdata RbAtomConstans.cdata +XMDS_INCLUDES_misc = RbChosenRho.txt RbInits.cdata RbEquations.cdata \ + RbAtomConstants.cdata RbPropEquations.cdata XMDS_INCLUDES_xmds_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_dir)/%) XMDS_INCLUDES_cdata_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_result_dir)/%) diff --git a/xmds2/realistic_Rb_and_fields/Makefile b/xmds2/realistic_Rb_and_fields/Makefile index d485891..1f5c4fd 100644 --- a/xmds2/realistic_Rb_and_fields/Makefile +++ b/xmds2/realistic_Rb_and_fields/Makefile @@ -1,9 +1,11 @@ ### -*- make -*- ### This file is part of the Debian xmds package ### Copyright (C) 2006 Rafael Laboissiere -### This file is relased under the GNU General Public License +### This file is released under the GNU General Public License ### NO WARRANTIES! +INSTALL = install --mode=664 -D + ### This makefile can be used to build and run the XMDS examples XMDS_FILES = $(shell ls *.xmds) @@ -12,14 +14,19 @@ CC_FILES = $(patsubst %.xmds,%.cc,$(XMDS_FILES)) XSIL_FILES = $(patsubst %.xmds,%.xsil,$(XMDS_FILES)) M_FILES = $(patsubst %.xmds,%.m,$(XMDS_FILES)) -XMDS_INCLUDES = RbAtomConstants.h RbInits.h +test_dir = tests +test_result_dir = $(test_dir)/testsuite_results +XMDS_INCLUDES_misc = RbChosenRho.txt RbInits.cdata RbEquations.cdata \ + RbAtomConstants.cdata RbPropEquations.cdata +XMDS_INCLUDES_xmds_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_dir)/%) +XMDS_INCLUDES_cdata_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_result_dir)/%) XMDS = xmds2 XSIL2GRAPHICS = xsil2graphics all: $(RUN_FILES) -%.run: %.xmds $(XMDS_INCLUDES) +%.run: %.xmds $(XMDS) $< mv $(patsubst %.xmds,%,$<) $@ @@ -48,10 +55,14 @@ $(png_targets): %.png : %.pdf pdf: $(pdf_targets) -test: - cp $(XMDS_FILES) tests/testsuite/ - mkdir -p tests/testsuite_results - cp $(XMDS_INCLUDES) tests/testsuite_results/ +$(XMDS_INCLUDES_cdata_in_target_dir): $(test_result_dir)/% : % + $(INSTALL) $< $@ + +$(XMDS_INCLUDES_xmds_in_target_dir): $(test_dir)/% : % + $(INSTALL) $< $@ + +test: $(XMDS_INCLUDES_cdata_in_target_dir) $(XMDS_INCLUDES_xmds_in_target_dir) + $(INSTALL) $(XMDS_FILES) tests/testsuite/ cd tests; ./run_tests.py test_from_scratch: -- cgit v1.2.3 From aeeeb3a41ba3df163dede45c37efe74c6ce71ca3 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 28 Nov 2012 23:36:08 -0500 Subject: completed move of mathematica generated files to includes --- xmds2/realistic_Rb/RbAtomConstans.cdata | 18 ------------------ xmds2/realistic_Rb/RbAtomConstants.cdata | 18 ++++++++++++++++++ xmds2/realistic_Rb/RbPropEquations.cdata | 8 ++++++++ xmds2/realistic_Rb/realistic_Rb.xmds | 16 +++++----------- 4 files changed, 31 insertions(+), 29 deletions(-) delete mode 100644 xmds2/realistic_Rb/RbAtomConstans.cdata create mode 100644 xmds2/realistic_Rb/RbAtomConstants.cdata create mode 100644 xmds2/realistic_Rb/RbPropEquations.cdata (limited to 'xmds2') diff --git a/xmds2/realistic_Rb/RbAtomConstans.cdata b/xmds2/realistic_Rb/RbAtomConstans.cdata deleted file mode 100644 index 040d3c9..0000000 --- a/xmds2/realistic_Rb/RbAtomConstans.cdata +++ /dev/null @@ -1,18 +0,0 @@ - - diff --git a/xmds2/realistic_Rb/RbAtomConstants.cdata b/xmds2/realistic_Rb/RbAtomConstants.cdata new file mode 100644 index 0000000..040d3c9 --- /dev/null +++ b/xmds2/realistic_Rb/RbAtomConstants.cdata @@ -0,0 +1,18 @@ + + diff --git a/xmds2/realistic_Rb/RbPropEquations.cdata b/xmds2/realistic_Rb/RbPropEquations.cdata new file mode 100644 index 0000000..2a30be4 --- /dev/null +++ b/xmds2/realistic_Rb/RbPropEquations.cdata @@ -0,0 +1,8 @@ + diff --git a/xmds2/realistic_Rb/realistic_Rb.xmds b/xmds2/realistic_Rb/realistic_Rb.xmds index 7744dd8..e3a5367 100644 --- a/xmds2/realistic_Rb/realistic_Rb.xmds +++ b/xmds2/realistic_Rb/realistic_Rb.xmds @@ -1,10 +1,11 @@ + + ]> @@ -57,7 +58,7 @@ - &RbAtomConstansFile; + &RbAtomConstantsFile; E_field density_matrix - + + &RbPropEquationsFile; -- cgit v1.2.3 From dd093133de2a1328dcdaaf03765b5d15835ed0f9 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 28 Nov 2012 23:37:56 -0500 Subject: added auxiliary makefiles --- xmds2/realistic_Rb_and_fields/Makefile.fig | 39 +++++++++++++++++++++++++ xmds2/realistic_Rb_and_fields/Makefile.par | 41 ++++++++++++++++++++++++++ xmds2/realistic_Rb_and_fields/Makefile.pp | 47 ++++++++++++++++++++++++++++++ 3 files changed, 127 insertions(+) create mode 100644 xmds2/realistic_Rb_and_fields/Makefile.fig create mode 100644 xmds2/realistic_Rb_and_fields/Makefile.par create mode 100644 xmds2/realistic_Rb_and_fields/Makefile.pp (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/Makefile.fig b/xmds2/realistic_Rb_and_fields/Makefile.fig new file mode 100644 index 0000000..71fba31 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/Makefile.fig @@ -0,0 +1,39 @@ +### -*- make -*- +### This makefile can be used to build and run the XMDS examples + +GNUPLOT_FILES = $(wildcard *.gp) + +SCRIPTS_DIR = . + + +eps_targets = $(wildcard *.eps) +eps_bb_targets = $(eps_targets:%.eps=%.bb) +pdf_targets = $(eps_targets:%.eps=%.pdf) +png_targets = $(pdf_targets:%.pdf=%.png) + +fig: png + +pdf: $(pdf_targets) + +# fix bounding box +$(eps_bb_targets): %.bb : %.eps + @cat $< | ps2eps -q -B > $@ + +$(pdf_targets): %.pdf : %.bb + epspdf $< $@ + +png: $(png_targets) + +$(png_targets): %.png : %.pdf + convert -density 300 $< $@ + +clean: + rm -f *.pdf + rm -f *.eps + rm -f *.bb + +real_clean: clean + rm -f *.png + +.PRECIOUS: %.run %.xsil %.m +.PHONY: all clean diff --git a/xmds2/realistic_Rb_and_fields/Makefile.par b/xmds2/realistic_Rb_and_fields/Makefile.par new file mode 100644 index 0000000..5fddce1 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/Makefile.par @@ -0,0 +1,41 @@ +### -*- make -*- +### This file is part of the Debian xmds package +### Copyright (C) 2006 Rafael Laboissiere +### This file is relased under the GNU General Public License +### NO WARRANTIES! + +### This makefile can be used to build and run the XMDS examples + + +XMDS_FILES = $(wildcard *.xmds) +BASE_NAME = $(patsubst %.xmds,%,$(XMDS_FILES)) +RUN_FILES = $(patsubst %.xmds,%.run,$(XMDS_FILES)) +XSIL_FILES = $(patsubst %.xmds,%.xsil,$(XMDS_FILES)) +PARAMS_FILES = $(wildcard *.params) +PP_DIR = $(PARAMS_FILES:%.params=%) +CALC_XSIL_FILES = $(PARAMS_FILES:%.params=%/$(BASE_NAME).xsil) + +default: $(CALC_XSIL_FILES) + +$(CALC_XSIL_FILES): %/$(BASE_NAME).xsil : % %.params + echo processing $$(dirname $(@)) dir + $(MAKE) -C $$(dirname $(@)) \ + -f ../Makefile.pp \ + SCRIPTS_DIR=../ \ + PARAMS_FILE=../$<.params \ + XSIL_FILES=$(XSIL_FILES) \ + RUN_FILES=$(RUN_FILES) + +$(PP_DIR): % : %.params + echo need to make dir + [ -d $@ ] || mkdir -p $@ + +clean: + for d in $(PP_DIR); \ + do $(MAKE) -C $$d SCRIPTS_DIR=../ -f ../Makefile.pp $@; done + +real_clean: + for d in $(PP_DIR); \ + do $(MAKE) -C $$d SCRIPTS_DIR=../ -f ../Makefile.pp $@; done + +.PHONY: all clean diff --git a/xmds2/realistic_Rb_and_fields/Makefile.pp b/xmds2/realistic_Rb_and_fields/Makefile.pp new file mode 100644 index 0000000..e24107e --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/Makefile.pp @@ -0,0 +1,47 @@ +### -*- make -*- +### This makefile can be used to build and run the XMDS examples + + +GNUPLOT_FILES = $(wildcard *.gp) +XSIL_FILES = $(wildcard *.xsil) +RUN_FILES = $(patsubst %.xsil,%.run,$(XSIL_FILES)) +M_FILES = $(patsubst %.xsil,%.m,$(XSIL_FILES)) + +SCRIPTS_DIR = .. + +XSIL2GRAPHICS = xsil2graphics + +include $(PARAMS_FILE) + +all: $(XSIL_FILES) $(M_FILES) plot fig + +$(XSIL_FILES): ../$(RUN_FILES) $(PARAMS_FILE) + $< $(PARAMS) | grep "Time elapsed for simulation is:" > exact_analysis_execution_time.txt + +%.m: %.xsil + $(XSIL2GRAPHICS) $< + +fig: pp_I2.stamp + $(MAKE) -f $(SCRIPTS_DIR)/Makefile.fig $@ + + +pretty_plots: pp_I2.stamp $(GNUPLOT_FILES) + gnuplot $(SCRIPTS_DIR)/plot_fields_propagation_I2.gp + gnuplot $(SCRIPTS_DIR)/plot_fields_propagation_I4.gp + +plot: pp_I2.stamp + +pp_I2.stamp: $(XSIL_FILES) $(M_FILES) + octave -q $(SCRIPTS_DIR)/pp_I2.m + +clean: + rm -f pp_I2.stamp + $(MAKE) -f $(SCRIPTS_DIR)/Makefile.fig $@ + +real_clean: clean + rm -f $(M_FILES) $(XSIL_FILES) *.dat octave-core + $(MAKE) -f $(SCRIPTS_DIR)/Makefile.fig $@ + rm -f exact_analysis_execution_time.txt + +.PRECIOUS: %.run %.xsil %.m +.PHONY: all clean -- cgit v1.2.3 From 48d6b0e778ddcb822298b963f81024211a8a7069 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 28 Nov 2012 23:39:42 -0500 Subject: added needed run_tests.py to the test dir --- xmds2/realistic_Rb_and_fields/tests/run_tests.py | 350 +++++++++++++++++++++++ 1 file changed, 350 insertions(+) create mode 100755 xmds2/realistic_Rb_and_fields/tests/run_tests.py (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/tests/run_tests.py b/xmds2/realistic_Rb_and_fields/tests/run_tests.py new file mode 100755 index 0000000..61f4eea --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/tests/run_tests.py @@ -0,0 +1,350 @@ +#!/usr/bin/env python +# encoding: utf-8 +""" +run_tests.py + +Created by Graham Dennis on 2008-06-15. + +Copyright (c) 2008-2012, Graham Dennis + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . + +""" + +import xpdeint.Python24Support + +import os +import re +import sys +import getopt +import shutil +import hashlib +import unittest +import subprocess + +from xml.dom import minidom +import xpdeint.minidom_extras +from xpdeint import CodeParser + +from xpdeint.XSILFile import XSILFile + +import numpy + +help_message = ''' +The help message goes here. +''' + + +class Usage(Exception): + def __init__(self, msg): + self.msg = msg + +def pass_nan_test(array1, array2): + """Return `True` if isNaN(`array1`) == isNaN(`array2`)""" + # NaN test. array2 is allowed to be NaN at an index if array1 is also NaN there. + nanTestPassed = numpy.equal(numpy.isnan(array1), numpy.isnan(array2)).all() + return nanTestPassed + +def array_approx_equal(array1, array2, absTol, relTol): + """Return `True` if all of (`array1` - `array2`) <= `absTol` or (`array1` - `array2`) <= `relTol` * `array2`""" + diff = array1-array2 + # NaN values would fail this test. So we have to exclude them. But only exclude them if array2 (the expected results) + # have a NaN + return numpy.logical_or(numpy.logical_or(numpy.abs(diff) <= 0.5 * relTol * (numpy.abs(array2) + numpy.abs(array1)), numpy.abs(diff) <= absTol), numpy.isnan(array2)).all() + +def scriptTestingFunction(root, scriptName, testDir, absPath, self): + if not os.path.exists(testDir): + os.makedirs(testDir) + + proc = subprocess.Popen('xmds2 --no-version ' + absPath, + shell=True, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + cwd=testDir) + (stdout, stderr) = proc.communicate() + returnCode = proc.wait() + + message = ''.join(["\n%(handleName)s:\n%(content)s" % locals() for handleName, content in [('stdout', stdout), ('stderr', stderr)] if content]) + + # A few tests require XMDS1. If XMDS1 isn't present we should just + # skip that test rather than failing. + # The skip functionality for the unittest class is only available + # in python 2.7 and later, so check for that too. + if returnCode != 0 and sys.version_info[:2] >= (2, 7): + if re.search(r'^The missing \w+ feature\(s\) were: .*xmds.*', message, re.MULTILINE): + self.skipTest("Skipping test as XMDS1 is required and not installed") + + # A few tests require specific features. If it isn't available, skip the test + # rather than failing. + # The skip functionality for the unittest class is only available + # in python 2.7 and later, so check for that too. + if returnCode != 0 and sys.version_info[:2] >= (2, 7): + if re.search(r'^The missing \w+ feature\(s\) were:', message, re.MULTILINE): + self.skipTest("Skipping test as feature required is not installed") + + self.assert_(returnCode == 0, ("Failed to compile." % locals()) + message) + + xmlDocument = minidom.parse(absPath) + simulationElement = xmlDocument.getChildElementByTagName('simulation') + nameElement = simulationElement.getChildElementByTagName('name') + testingElement = simulationElement.getChildElementByTagName('testing') + + simulationName = nameElement.innerText() + + # If the source is the same as the last known good, then we don't need to compile or execute the simulation. + sourceFilePath = os.path.join(testDir, simulationName + '.cc') + checksumFilePath = os.path.join(testDir, simulationName + '_last_known_good.checksum') + sourceContents = file(sourceFilePath).read() + h = hashlib.sha1() + h.update(sourceContents) + currentChecksum = h.hexdigest() + + if os.path.exists(checksumFilePath): + lastKnownGoodChecksum = file(checksumFilePath).read() + + if lastKnownGoodChecksum == currentChecksum: + # The checksums check out, so we don't need to go any further + return + + # Now we have compiled, we need to copy any input data needed and then run the simulation + inputXSILElements = testingElement.getChildElementsByTagName('input_xsil_file', optional=True) + + filesToCopy = [] + + for inputXSILElement in inputXSILElements: + name = inputXSILElement.getAttribute('name').strip() + filesToCopy.append(name) + inputXSILFile = XSILFile(os.path.join(os.path.split(absPath)[0], name), loadData=False) + filesToCopy.extend([os.path.join(os.path.split(name)[0], xsil.data.filename) for xsil in inputXSILFile.xsilObjects if hasattr(xsil.data, 'filename')]) + + for fileToCopy in filesToCopy: + sourceFile = os.path.join(os.path.split(absPath)[0], fileToCopy) + shutil.copy(sourceFile, testDir) + + # Allow command-line arguments to be specified for the simulation + commandLineElement = testingElement.getChildElementByTagName('command_line', optional=True) + argumentsElement = testingElement.getChildElementByTagName('arguments', optional=True) + commandLineString = './' + simulationName + if commandLineElement: + # The command line element overrides the prefix + commandLineString = commandLineElement.innerText().strip() + if argumentsElement: + commandLineString += ' ' + argumentsElement.innerText().strip() + + simulationProc = subprocess.Popen(commandLineString, + shell=True, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + cwd=testDir) + (stdout, stderr) = simulationProc.communicate() + returnCode = simulationProc.wait() + + self.assert_(returnCode == 0, "Failed to execute compiled simulation correctly." % locals()) + + # The next thing to check is that the generated data agrees with the expected data to within the set error margins. + xsilFileElements = testingElement.getChildElementsByTagName('xsil_file', optional=True) + for xsilFileElement in xsilFileElements: + sourceFile = xsilFileElement.getAttribute('name').strip() + expectedResultsFile = xsilFileElement.getAttribute('expected').strip() + # Defaults + absoluteTolerance = 0 + relativeTolerance = 1e-9 + + if xsilFileElement.hasAttribute('absolute_tolerance'): + absoluteTolerance = float(xsilFileElement.getAttribute('absolute_tolerance')) + if xsilFileElement.hasAttribute('relative_tolerance'): + relativeTolerance = float(xsilFileElement.getAttribute('relative_tolerance')) + + resultsFullPath = os.path.join(testDir, sourceFile) + results = XSILFile(resultsFullPath) + expectedResultsFullPath = os.path.join(os.path.split(absPath)[0], expectedResultsFile) + if not os.path.exists(expectedResultsFullPath): + print >> sys.stderr, "Expected results file '%(expectedResultsFile)s' missing. Using current. " % locals() + + # If there are any NaN's in the results, issue a warning. + for mgNum, o in enumerate(results.xsilObjects): + for v in o.independentVariables: + if numpy.isnan(v['array']).any(): + print >> sys.stderr, "Warning: Coordinate '%s' in moment group %i of file '%s' contains a NaN." % (v['name'], mgNum+1, sourceFile) + for v in o.dependentVariables: + if numpy.isnan(v['array']).any(): + print >> sys.stderr, "Warning: Dependent variable '%s' in moment group %i of file '%s' contains a NaN." % (v['name'], mgNum+1, sourceFile) + + resultsFileContents = file(resultsFullPath).read() + + for xsilObject in results.xsilObjects: + if hasattr(xsilObject.data, 'filename'): + # If the moment group has a data file name, then we need to copy it to the expected results file + newDataFilename = xsilObject.data.filename.replace(os.path.splitext(sourceFile)[0], os.path.splitext(expectedResultsFile)[0], 1) + + resultsFileContents = resultsFileContents.replace(xsilObject.data.filename, newDataFilename) + + shutil.copyfile(os.path.join(testDir, xsilObject.data.filename), + os.path.join(os.path.split(absPath)[0], newDataFilename)) + + file(expectedResultsFullPath, 'w').write(resultsFileContents) + else: + expectedResults = XSILFile(expectedResultsFullPath) + + self.assert_(len(results.xsilObjects) == len(expectedResults.xsilObjects)) + + momentGroupElements = xsilFileElement.getChildElementsByTagName('moment_group', optional=True) + if momentGroupElements: + self.assert_(len(momentGroupElements) == len(results.xsilObjects)) + else: + momentGroupElements = [None]*len(results.xsilObjects) + + for mgNum, (o1, o2, mgElem) in enumerate(zip(results.xsilObjects, expectedResults.xsilObjects, momentGroupElements)): + currentAbsoluteTolerance = absoluteTolerance + currentRelativeTolerance = relativeTolerance + self.assert_(len(o1.independentVariables) == len(o2.independentVariables), + "The number of independent variables in moment group %(mgNum)i doesn't match." % locals()) + self.assert_(len(o1.dependentVariables) == len(o2.dependentVariables), + "The number of dependent variables in moment group %(mgNum)i doesn't match." % locals()) + + if mgElem: + if mgElem.hasAttribute('absolute_tolerance'): + currentAbsoluteTolerance = float(mgElem.getAttribute('absolute_tolerance')) + if mgElem.hasAttribute('relative_tolerance'): + currentRelativeTolerance = float(mgElem.getAttribute('relative_tolerance')) + + self.assert_(currentAbsoluteTolerance != None and currentRelativeTolerance != None, "An absolute and a relative tolerance must be specified.") + + for v1, v2 in zip(o1.independentVariables, o2.independentVariables): + self.assert_(v1['name'] == v2['name']) + self.assert_(v1['length'] == v2['length']) + # These are the coordinates, we just specify a constant absolute and relative tolerance. + # No-one should need to change these + self.assert_(array_approx_equal(v1['array'], v2['array'], 1e-7, 1e-6), + "Coordinate '%s' in moment group %i of file '%s' didn't pass tolerance criteria." % (v1['name'], mgNum+1, sourceFile)) + + for v1, v2 in zip(o1.dependentVariables, o2.dependentVariables): + self.assert_(v1['name'] == v2['name']) + self.assert_(pass_nan_test(v1['array'], v2['array']), + "Dependent variable '%s' in moment group %i of file '%s' had a NaN where the expected results didn't (or vice-versa)." % (v1['name'], mgNum+1, sourceFile)) + self.assert_(array_approx_equal(v1['array'], v2['array'], currentAbsoluteTolerance, currentRelativeTolerance), + "Dependent variable '%s' in moment group %i of file '%s' failed to pass tolerance criteria." % (v1['name'], mgNum+1, sourceFile)) + + # Test has succeeded, so save our checksum for the source file and copy the source file + file(checksumFilePath, 'w').write(currentChecksum) + + lastKnownGoodSourcePath = os.path.join(testDir, simulationName + '_last_known_good.cc') + file(lastKnownGoodSourcePath, 'w').write(sourceContents) + +def partial(func, *args, **keywords): + def newfunc(*fargs, **fkeywords): + newkeywords = keywords.copy() + newkeywords.update(fkeywords) + return func(*(args + fargs), **newkeywords) + return newfunc + + +def main(argv=None): + if argv is None: + argv = sys.argv + try: + try: + opts, args = getopt.getopt(argv[1:], "ho:v", ["help", "output="]) + except getopt.error, msg: + raise Usage(msg) + + # option processing + for option, value in opts: + if option == "-v": + verbose = True + if option in ("-h", "--help"): + raise Usage(help_message) + if option in ("-o", "--output"): + output = value + + except Usage, err: + print >> sys.stderr, sys.argv[0].split("/")[-1] + ": " + str(err.msg) + print >> sys.stderr, "\t for help use --help" + return 2 + + basePath = os.path.dirname(__file__) + + resultsPath = os.path.join(basePath, 'testsuite_results') + if not os.path.exists(resultsPath): + os.mkdir(resultsPath) + resultsPath = os.path.abspath(resultsPath) + + print "Saving test results in %(resultsPath)s" % locals() + + testsuites = {} + baseSuiteName = 'testsuite' + baseSuitePath = os.path.join(basePath, baseSuiteName) + + for root, dirs, files in os.walk(baseSuitePath): + # First remove directories we don't want to traverse + for dirName in ['.svn']: + if dirName in dirs: + dirs.remove(dirName) + # Remove the 'testsuite/' part of the path + dirRelativeToBase = root[(len(baseSuitePath)+1):] + if dirRelativeToBase: + testSuiteName = os.path.join(baseSuiteName, dirRelativeToBase) + else: + testSuiteName = baseSuiteName + + # If we have .xmds files in this path, then create a TestCase subclass + xmdsTestScripts = [filename for filename in files if os.path.splitext(filename)[1].lower() == '.xmds'] + + if xmdsTestScripts: + class ScriptTestCase(unittest.TestCase): + # Create test functions for each test script using 'scriptTestingFunction' + # These test function names are of the form 'test_ScriptName' + for scriptName in xmdsTestScripts: + prefix = os.path.splitext(scriptName)[0] + absPath = os.path.abspath(os.path.join(root, scriptName)) + testDir = os.path.join(resultsPath, dirRelativeToBase) + locals()['test_' + prefix] = partial(scriptTestingFunction, root, scriptName, testDir, absPath) + locals()['test_' + prefix].__doc__ = os.path.join(dirRelativeToBase, scriptName) + + # Create a TestSuite from that class + suite = unittest.defaultTestLoader.loadTestsFromTestCase(ScriptTestCase) + testsuites[testSuiteName] = suite + + if not testSuiteName in testsuites: + testsuites[testSuiteName] = unittest.TestSuite() + + suite = testsuites[testSuiteName] + # Add our TestSuite as a sub-suite of all parent suites + head = testSuiteName + while True: + head, tail = os.path.split(head) + if not head or not tail: + break + testsuites[head].addTest(suite) + + + suitesToRun = list() + if len(args): + for suiteName in args: + fullSuiteName = os.path.join(baseSuiteName, suiteName) + if fullSuiteName in testsuites: + suitesToRun.append(testsuites[fullSuiteName]) + else: + print >> sys.stderr, "Unable to find test '%(suiteName)s'" % locals() + else: + suitesToRun.append(testsuites[baseSuiteName]) + suitesToRun.append(unittest.defaultTestLoader.loadTestsFromModule(CodeParser)) + + fullSuite = unittest.TestSuite(tests=suitesToRun) + + return not unittest.TextTestRunner().run(fullSuite).wasSuccessful() + + +if __name__ == "__main__": + sys.exit(main()) -- cgit v1.2.3 From f53644c51b5bb8b6bff66ac327d65111077a2544 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Thu, 29 Nov 2012 13:24:03 -0500 Subject: added target to copy mathematica files --- xmds2/realistic_Rb_and_fields/Makefile | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/Makefile b/xmds2/realistic_Rb_and_fields/Makefile index 1f5c4fd..bc7cf13 100644 --- a/xmds2/realistic_Rb_and_fields/Makefile +++ b/xmds2/realistic_Rb_and_fields/Makefile @@ -21,6 +21,8 @@ XMDS_INCLUDES_misc = RbChosenRho.txt RbInits.cdata RbEquations.cdata \ XMDS_INCLUDES_xmds_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_dir)/%) XMDS_INCLUDES_cdata_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_result_dir)/%) +MATHEMATICA_DIR = ../../mathemathica_fwm + XMDS = xmds2 XSIL2GRAPHICS = xsil2graphics @@ -68,6 +70,10 @@ test: $(XMDS_INCLUDES_cdata_in_target_dir) $(XMDS_INCLUDES_xmds_in_target_dir) test_from_scratch: rm -r tests/testsuite_results +$(XMDS_INCLUDES_misc): %: $(MATHEMATICA_DIR)/% + cp $< $@ + +copy_mathematica_generated_files: $(XMDS_INCLUDES_misc) $(pdf_targets): %.pdf : %.eps cat $< | ps2eps -B > __tt.eps -- cgit v1.2.3 From 30d082e4ea50244839fd5537483822e559db8a18 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Fri, 30 Nov 2012 17:17:09 -0500 Subject: added post processing script and sample case parameters --- xmds2/realistic_Rb_and_fields/pp_I2.m | 82 ++++++++++++++++++++++ .../two_field_circular_eit_cold.params | 10 +++ 2 files changed, 92 insertions(+) create mode 100644 xmds2/realistic_Rb_and_fields/pp_I2.m create mode 100644 xmds2/realistic_Rb_and_fields/two_field_circular_eit_cold.params (limited to 'xmds2') diff --git a/xmds2/realistic_Rb_and_fields/pp_I2.m b/xmds2/realistic_Rb_and_fields/pp_I2.m new file mode 100644 index 0000000..c3c6932 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/pp_I2.m @@ -0,0 +1,82 @@ +% suppress output of plots on display +set (0, "defaultfigurevisible", "off") + +realistic_Rb_and_fields + +%% field I2 propagation +z_1=z_1*100; % z in cm +t_1=t_1*1e6; % time now measured in uS +figure(1) +%set(gca,'fontsize',20); +imagesc(z_1, t_1, Ip2_out_1); colorbar +tmin=-0.4; +tmax= 0.4; +ylim([tmin,tmax],'manual'); +xlabel('z (cm)') +ylabel('t (uS)') +zlabel('I_p2') +title('I_p2') +print('-color','-depsc2', '-tight', '-S200,120', 'fields_propagation_Ip2.eps') + +figure(1) +%set(gca,'fontsize',20); +imagesc(z_1, t_1, Im2_out_1); colorbar +tmin=-0.4; +tmax= 0.4; +ylim([tmin,tmax],'manual'); +xlabel('z (cm)') +ylabel('t (uS)') +zlabel('I_m2') +title('I_m2') +print('-color','-depsc2', '-tight', '-S200,120', 'fields_propagation_Im2.eps') + + +%% field I4 propagation +figure(3) + +imagesc(z_1, t_1, Ip4_out_1); colorbar +tmin=-0.4; +tmax= 0.4; +ylim([tmin,tmax],'manual'); +xlabel('z (cm)') +ylabel('t (uS)') +zlabel('I_p4') +title('I_p4') +print('-color','-depsc2', '-tight', '-S200,120', 'fields_propagation_Ip4.eps') + +figure(4) + +imagesc(z_1, t_1, Im4_out_1); colorbar +tmin=-0.4; +tmax= 0.4; +ylim([tmin,tmax],'manual'); +xlabel('z (cm)') +ylabel('t (uS)') +zlabel('I_m4') +title('I_m4') +print('-color','-depsc2', '-tight', '-S200,120', 'fields_propagation_Im4.eps') + + + + + +%% fields before and after the cell +figure(5) +%set(gca,'fontsize',30); +plot( ... + t_1,Ip2_out_1(:,1),'.-;I_p2 before;', "linewidth", 4 ... + ,t_1,Im2_out_1(:,1),'.-;I_m2 before;', "linewidth", 4 ... + ,t_1,Ip2_out_1(:,end), '-;I_p2 after;', "linewidth", 4 ... + ,t_1,Im2_out_1(:,end), '-;I_m2 after;', "linewidth", 4 ... + ,t_1,Ip4_out_1(:,end), '-;I_p4 after;', "linewidth", 4 ... + ,t_1,Im4_out_1(:,end), '-;I_m after;', "linewidth", 4 ... + ) +xlabel('t (uS)') +ylabel('I (1/s)^2') +title('Fields before and after cell') +legend('location', 'northeast'); +print('-color','-depsc2', 'fields_before_after_cell.eps') + + +fid_stamp=fopen ("pp_I2.stamp", "a+"); +fclose (fid_stamp); diff --git a/xmds2/realistic_Rb_and_fields/two_field_circular_eit_cold.params b/xmds2/realistic_Rb_and_fields/two_field_circular_eit_cold.params new file mode 100644 index 0000000..325be02 --- /dev/null +++ b/xmds2/realistic_Rb_and_fields/two_field_circular_eit_cold.params @@ -0,0 +1,10 @@ + +PARAMS = \ + --Ndens=1e15 \ + --Lcell=10.0e-2 \ + --Temperature=1e-3 \ + --WLx=0 --WLy=0 --WLz=0 \ + --Pwidth=0.4e-6 \ + --delta1=0 --delta2=0 --delta3=0 \ + --Ep1o=5e7 --Ep2o=1e2 --Ep3o=0 --Ep4o=0 --Em1o=0 --Em2o=0 --Em3o=0 --Em4o=0 + -- cgit v1.2.3