From 9a8ad258a0629b391d8239edf1a8e272039b5c93 Mon Sep 17 00:00:00 2001 From: Simon Rochester Date: Sun, 21 Oct 2012 23:08:16 -0700 Subject: Allow arbitrary B-field direction. --- mathemathica_fwm/RbXMDSSetup1.nb | 523 ++++++++++++++------------------------- 1 file changed, 183 insertions(+), 340 deletions(-) diff --git a/mathemathica_fwm/RbXMDSSetup1.nb b/mathemathica_fwm/RbXMDSSetup1.nb index 6733d40..9234a7b 100644 --- a/mathemathica_fwm/RbXMDSSetup1.nb +++ b/mathemathica_fwm/RbXMDSSetup1.nb @@ -162,26 +162,22 @@ Cell[TextData[{ ". Each field can have arbitrary ", Cell[BoxData[ FormBox[ - SuperscriptBox["\[Sigma]", "+"], TraditionalForm]], - FormatType->"TraditionalForm"], + SuperscriptBox["\[Sigma]", "+"], TraditionalForm]]], " and ", Cell[BoxData[ FormBox[ - SuperscriptBox["\[Sigma]", "-"], TraditionalForm]], - FormatType->"TraditionalForm"], + SuperscriptBox["\[Sigma]", "-"], TraditionalForm]]], " components, labeled ", Cell[BoxData[ FormBox[ SubscriptBox["\[CapitalOmega]", - RowBox[{"i", ",", "1"}]], TraditionalForm]], - FormatType->"TraditionalForm"], + RowBox[{"i", ",", "1"}]], TraditionalForm]]], "and ", Cell[BoxData[ FormBox[ SubscriptBox["\[CapitalOmega]", RowBox[{"i", ",", - RowBox[{"-", "1"}]}]], TraditionalForm]], - FormatType->"TraditionalForm"], + RowBox[{"-", "1"}]}]], TraditionalForm]]], "." }], "Text", CellID->133602844], @@ -242,8 +238,7 @@ Cell[BoxData[ RowBox[{"(", RowBox[{ RowBox[{"z", " ", - SubscriptBox["k", "i"]}], "+", - SubscriptBox["\[Phi]", "i"], "-", + SubscriptBox["k", "i"]}], "-", RowBox[{"t", " ", SubscriptBox["\[Omega]", "i"]}]}], ")"}]}]], RowBox[{"rmes", "\[LeftDoubleBracket]", "i", "\[RightDoubleBracket]"}]], @@ -251,13 +246,22 @@ Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", - SubscriptBox["\[CapitalOmega]", - RowBox[{"i", ",", "1"}]], "}"}], ",", + RowBox[{ + SuperscriptBox["\[ExponentialE]", + RowBox[{"\[ImaginaryI]", " ", + SubscriptBox["\[Phi]", + RowBox[{"i", ",", "p"}]]}]], + SubscriptBox["\[CapitalOmega]", + RowBox[{"i", ",", "p"}]]}], "}"}], ",", RowBox[{"{", "0", "}"}], ",", RowBox[{"{", - SubscriptBox["\[CapitalOmega]", - RowBox[{"i", ",", - RowBox[{"-", "1"}]}]], "}"}]}], "}"}]}], ",", + RowBox[{ + SuperscriptBox["\[ExponentialE]", + RowBox[{"\[ImaginaryI]", " ", + SubscriptBox["\[Phi]", + RowBox[{"i", ",", "m"}]]}]], + SubscriptBox["\[CapitalOmega]", + RowBox[{"i", ",", "m"}]]}], "}"}]}], "}"}]}], ",", RowBox[{"{", RowBox[{"i", ",", "4"}], "}"}]}], "]"}]}]], "Input"], @@ -284,10 +288,13 @@ Cell[BoxData[ RowBox[{"system", ",", RowBox[{"ElectricField", "\[Rule]", "field"}], ",", RowBox[{"MagneticField", "\[Rule]", - RowBox[{"{", - RowBox[{"0", ",", "0", ",", - RowBox[{"\[CapitalOmega]L", "/", "BohrMagneton"}]}], "}"}]}]}], - "]"}]}], "/.", " ", + RowBox[{ + RowBox[{"{", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x"], ",", + SubscriptBox["\[CapitalOmega]L", "y"], ",", + SubscriptBox["\[CapitalOmega]L", "z"]}], "}"}], "/", + "BohrMagneton"}]}]}], "]"}]}], "/.", " ", RowBox[{ RowBox[{ RowBox[{"(", @@ -324,7 +331,11 @@ Cell[BoxData[ RowBox[{"HyperfineA", "[", "_", "]"}], "\[Rule]", ".2"}], ",", RowBox[{ RowBox[{"HyperfineB", "[", "_", "]"}], "\[Rule]", ".1"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", ".1"}]}], "}"}]}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", ".1"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "_"], "\[Rule]", "0"}]}], "}"}]}], + ",", RowBox[{"ParityOffset", "\[Rule]", "False"}]}], "]"}]], "Input", CellID->167259034], @@ -509,15 +520,7 @@ equivalent to assuming that each field interacts with only the ", FormBox[ RowBox[{"F", "=", "2"}], TraditionalForm]]], " ground-state hyperfine sublevel. We also absorb the complex phases into \ -the \[CapitalOmega]\[CloseCurlyQuote]s. (There\[CloseCurlyQuote]s a little \ -bit of a cheat here, since the \[CapitalOmega]\[CloseCurlyQuote]s should have \ -already been distinguished from the ", - Cell[BoxData[ - FormBox[ - SuperscriptBox["\[CapitalOmega]", "*"], TraditionalForm]], - FormatType->"TraditionalForm"], - "\[CloseCurlyQuote]s, but the sign of the \[Phi] phase keeps track of the \ -distinction.)" +the \[CapitalOmega]\[CloseCurlyQuote]s." }], "Text"], Cell[BoxData[ @@ -544,7 +547,8 @@ Cell[BoxData[ RowBox[{ SuperscriptBox["\[ExponentialE]", RowBox[{"\[ImaginaryI]", " ", - SubscriptBox["\[Phi]", "i_"]}]], " ", + SubscriptBox["\[Phi]", + RowBox[{"i_", ",", "q_"}]]}]], " ", SubscriptBox["\[CapitalOmega]", RowBox[{"i_", ",", "q_"}]]}], "\[Rule]", SubscriptBox["\[CapitalOmega]", @@ -554,7 +558,8 @@ Cell[BoxData[ SuperscriptBox["\[ExponentialE]", RowBox[{ RowBox[{"-", "\[ImaginaryI]"}], " ", - SubscriptBox["\[Phi]", "i_"]}]], " ", + SubscriptBox["\[Phi]", + RowBox[{"i_", ",", "q_"}]]}]], " ", SubscriptBox["\[CapitalOmega]", RowBox[{"i_", ",", "q_"}]]}], "\[Rule]", RowBox[{"Conjugate", "[", @@ -728,7 +733,11 @@ Cell[BoxData[ RowBox[{"HyperfineA", "[", "_", "]"}], "\[Rule]", ".2"}], ",", RowBox[{ RowBox[{"HyperfineB", "[", "_", "]"}], "\[Rule]", ".1"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", ".1"}]}], "}"}]}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", ".1"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "_"], "\[Rule]", "0"}]}], "}"}]}], + ",", RowBox[{"ParityOffset", "\[Rule]", "False"}], ",", RowBox[{"Epilog", "\[Rule]", RowBox[{"{", @@ -953,12 +962,11 @@ Cell[BoxData[ RowBox[{"\[Delta]\[Omega]", "\[Rule]", "0"}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"_", ",", "1"}]], "\[Rule]", + RowBox[{"_", ",", "p"}]], "\[Rule]", SuperscriptBox["10", "11"]}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"_", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", + RowBox[{"_", ",", "m"}]], "\[Rule]", RowBox[{"3.", " ", SuperscriptBox["10", "11"]}]}], ",", RowBox[{ @@ -966,8 +974,13 @@ Cell[BoxData[ RowBox[{"1.", " ", SuperscriptBox["10", "7"]}]}], ",", RowBox[{"\[Gamma]t", "\[Rule]", "10."}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", ".1"}]}], "}"}]}], "/.", - "atomicdata"}], "/.", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x"], "\[Rule]", ".1"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "y"], "\[Rule]", ".2"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", ".3"}]}], + "}"}]}], "/.", "atomicdata"}], "/.", RowBox[{"Hertz", "\[Rule]", "1"}]}], "/.", RowBox[{"Mega", "\[Rule]", "1"}]}], "/.", RowBox[{ @@ -1048,8 +1061,8 @@ Cell[BoxData[ RowBox[{"InitialConditions", "[", RowBox[{"system", ",", RowBox[{"TransitRepopulation", "[", - RowBox[{"system", ",", "1"}], "]"}], ",", "0"}], "]"}], ",", "delpos"}] - , "]"}]}]], "Input"], + RowBox[{"system", ",", "1"}], "]"}], ",", "0"}], "]"}], ",", + "delpos"}], "]"}]}]], "Input"], Cell[TextData[{ "Find equations for the steady state by setting time derivatives to zero. We \ @@ -1065,11 +1078,7 @@ Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ - RowBox[{ - RowBox[{"eqs", "/.", - RowBox[{ - SubscriptBox["\[Phi]", "_"], "\[Rule]", "0"}]}], "/.", "atomicdata"}], - "/.", + RowBox[{"eqs", "/.", "atomicdata"}], "/.", RowBox[{"Hertz", "\[Rule]", "1"}]}], "/.", RowBox[{"Mega", "\[Rule]", "1"}]}], "/.", RowBox[{ @@ -1092,9 +1101,7 @@ with the D2 transition, we set DM elements involving the ", " state to zero. We also set the vanishing DM elements found above to zero." }], "Text"], -Cell["\<\ -Polarization components for the probe light.\ -\>", "Text"], +Cell["Polarization components for the probe light.", "Text"], Cell[BoxData[ RowBox[{"pc", "=", @@ -1112,9 +1119,7 @@ Cell[BoxData[ RowBox[{"F1", "\[Equal]", "2"}]}]}], "\[Rule]", "0"}]}], "/.", "delreps"}], "]"}]}]], "Input"], -Cell["\<\ -Differential change of the spherical components.\ -\>", "Text"], +Cell["Differential change of the spherical components.", "Text"], Cell[BoxData[{ RowBox[{ @@ -1206,7 +1211,7 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], "\[Rule]", ".000002"}], ",", + RowBox[{"2", ",", "p"}]], "\[Rule]", ".000002"}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", RowBox[{"_", ",", "_"}]], "\[Rule]", "0"}], ",", @@ -1217,7 +1222,8 @@ Cell[BoxData[{ RowBox[{ SubscriptBox["\[Delta]", "3"], "\[Rule]", "0"}], ",", RowBox[{"\[Gamma]t", "\[Rule]", ".0001"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "_"], "\[Rule]", "0"}], ",", RowBox[{ SubscriptBox["\[Epsilon]", "2"], "\[Rule]", "0"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", @@ -1230,7 +1236,7 @@ Cell[BoxData[{ RowBox[{"[", "1", "]"}], "]"}], RowBox[{"Abs", "[", SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], "]"}]], "/.", + RowBox[{"2", ",", "p"}]], "]"}]], "/.", RowBox[{"Chop", "@", RowBox[{ RowBox[{"NSolve", "[", @@ -1254,257 +1260,82 @@ Cell[BoxData[ Cell["\<\ Relate absorption and phase shift to changes in the real and imaginary parts \ -of the spherical field components\ +of the spherical field components.\ \>", "Text"], -Cell[BoxData[{ - RowBox[{"{", - RowBox[{ - RowBox[{"{", - RowBox[{"(", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"1", ",", "Re"}]], "+", - RowBox[{"\[ImaginaryI]", " ", - SubscriptBox["\[CapitalOmega]", - RowBox[{"1", ",", "Im"}]]}]}], ")"}], "}"}], ",", - RowBox[{"{", "0", "}"}], ",", - RowBox[{"{", - RowBox[{"(", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{ - RowBox[{"-", "1"}], ",", "Re"}]], "+", - RowBox[{"\[ImaginaryI]", " ", - SubscriptBox["\[CapitalOmega]", - RowBox[{ - RowBox[{"-", "1"}], ",", "Im"}]]}]}], ")"}], "}"}]}], - "}"}], "\[IndentingNewLine]", - RowBox[{"sri", "=", - RowBox[{"ExprToReIm", "[", "%", "]"}]}]}], "Input"], - -Cell[BoxData[{ - RowBox[{"ToContravariant", "[", - RowBox[{"OpticalField", "[", - RowBox[{ - RowBox[{"{", - RowBox[{"0", ",", "0"}], "}"}], ",", - RowBox[{"{", - RowBox[{"\[CapitalOmega]", ",", "\[Phi]"}], "}"}], ",", - RowBox[{"{", - RowBox[{"\[Alpha]", ",", "\[Epsilon]"}], "}"}]}], "]"}], - "]"}], "\[IndentingNewLine]", - RowBox[{"ae", "=", - RowBox[{ - RowBox[{"ExprToReIm", "[", "%", "]"}], "//", "FullSimplify"}]}]}], "Input"], - -Cell[BoxData[ - RowBox[{ - RowBox[{"Total", "[", - SuperscriptBox["ae", "2"], "]"}], "//", "FullSimplify"}]], "Input"], - -Cell[BoxData[ - RowBox[{ - RowBox[{"Total", "[", - SuperscriptBox["sri", "2"], "]"}], "//", "FullSimplify"}]], "Input"], - -Cell[BoxData[{ - RowBox[{"FullSimplify", "[", - RowBox[{ - RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"ae", "[", - RowBox[{"[", "2", "]"}], "]"}], "/", - RowBox[{"ae", "[", - RowBox[{"[", "1", "]"}], "]"}]}], "]"}], ",", - RowBox[{"Assumptions", "\[Rule]", - RowBox[{ - RowBox[{"\[Pi]", "/", "4"}], ">", - RowBox[{"\[Alpha]", "-", "\[Phi]"}], ">", "0"}]}]}], - "]"}], "\[IndentingNewLine]", - RowBox[{"FullSimplify", "[", - RowBox[{ - RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"ae", "[", - RowBox[{"[", "4", "]"}], "]"}], "/", - RowBox[{"ae", "[", - RowBox[{"[", "3", "]"}], "]"}]}], "]"}], ",", - RowBox[{"Assumptions", "\[Rule]", - RowBox[{ - RowBox[{"\[Pi]", "/", "4"}], ">", - RowBox[{"\[Alpha]", "+", "\[Phi]"}], ">", "0"}]}]}], - "]"}], "\[IndentingNewLine]", - RowBox[{"%", "+", "%%"}]}], "Input"], +Cell["\<\ +Fractional absorption of one spherical component of the field.\ +\>", "Text"], Cell[BoxData[ - RowBox[{ - RowBox[{"(", - RowBox[{ - RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"sri", "[", - RowBox[{"[", "2", "]"}], "]"}], "/", - RowBox[{"sri", "[", - RowBox[{"[", "1", "]"}], "]"}]}], "]"}], "+", - RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"sri", "[", - RowBox[{"[", "4", "]"}], "]"}], "/", - RowBox[{"sri", "[", - RowBox[{"[", "3", "]"}], "]"}]}], "]"}]}], ")"}], "/", "2"}]], "Input"], - -Cell[BoxData[{ - RowBox[{ - SqrtBox[ - RowBox[{"Total", "[", - SuperscriptBox["sri", "2"], "]"}]], "/.", - RowBox[{ - RowBox[{"a", ":", - SubscriptBox["\[CapitalOmega]", - RowBox[{"_", ",", "_"}]]}], "\[Rule]", - RowBox[{"a", "[", "z", "]"}]}]}], "\[IndentingNewLine]", - RowBox[{ - RowBox[{ - RowBox[{"D", "[", - RowBox[{"%", ",", "z"}], "]"}], "/", "%"}], "//", - "Simplify"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"dE", "[", - RowBox[{ - RowBox[{"{", - RowBox[{"\[CapitalOmega]p_", ",", "\[CapitalOmega]m_"}], "}"}], ",", - RowBox[{"{", - RowBox[{"d\[CapitalOmega]p_", ",", "d\[CapitalOmega]m_"}], "}"}]}], - "]"}], "=", + RowBox[{"\[CapitalOmega]_", ",", "d\[CapitalOmega]_"}], "]"}], "=", RowBox[{ - RowBox[{ + RowBox[{"FullSimplify", "[", RowBox[{ - RowBox[{"%", "//.", - RowBox[{ - RowBox[{ - SuperscriptBox[ - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "Im"}]], "[", "z", "]"}], "2"], "+", - SuperscriptBox[ - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "Re"}]], "[", "z", "]"}], "2"]}], "\[Rule]", - SuperscriptBox[ - RowBox[{"Abs", "[", - SubscriptBox["\[CapitalOmega]", "q"], "]"}], "2"]}]}], "/.", - RowBox[{ + RowBox[{"D", "[", RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "f_"}]], "[", "z", "]"}], "\[Rule]", - RowBox[{"f", "[", - SubscriptBox["\[CapitalOmega]", "q"], "]"}]}]}], "/.", - RowBox[{ - RowBox[{ + SqrtBox[ + RowBox[{ + SuperscriptBox[ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Im"], "[", "z", "]"}], "2"], "+", + SuperscriptBox[ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Re"], "[", "z", "]"}], "2"]}]], + ",", "z"}], "]"}], "/", + SqrtBox[ RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "f_"}]], "'"}], "[", "z", "]"}], "\[Rule]", - RowBox[{"f", "[", - SubscriptBox["d\[CapitalOmega]", "q"], "]"}]}]}], "/.", + SuperscriptBox[ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Im"], "[", "z", "]"}], "2"], "+", + SuperscriptBox[ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Re"], "[", "z", "]"}], "2"]}]]}], + "]"}], "/.", RowBox[{"{", RowBox[{ RowBox[{ - SubscriptBox["\[CapitalOmega]", "1"], "\[Rule]", " ", - "\[CapitalOmega]p"}], ",", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"-", "1"}]], "\[Rule]", " ", "\[CapitalOmega]m"}], ",", - RowBox[{ - SubscriptBox["d\[CapitalOmega]", "1"], "\[Rule]", " ", - "d\[CapitalOmega]p"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]", "i_"], "[", "z", "]"}], "\[Rule]", + RowBox[{"i", "[", "\[CapitalOmega]", "]"}]}], ",", RowBox[{ - SubscriptBox["d\[CapitalOmega]", - RowBox[{"-", "1"}]], "\[Rule]", " ", "d\[CapitalOmega]m"}]}], - "}"}]}]}]}], "Input"], + RowBox[{ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "i_"], "'"}], "[", "z", "]"}], + "\[Rule]", + RowBox[{"i", "[", "d\[CapitalOmega]", "]"}]}]}], "}"}]}]}]], "Input"], -Cell[BoxData[{ +Cell["Phase shift of one component of the field.", "Text"], + +Cell[BoxData[ RowBox[{ + RowBox[{"d\[Phi]", "[", + RowBox[{"\[CapitalOmega]_", ",", "d\[CapitalOmega]_"}], "]"}], "=", RowBox[{ - RowBox[{"-", - RowBox[{"(", + RowBox[{"FullSimplify", "[", + RowBox[{"D", "[", RowBox[{ RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"sri", "[", - RowBox[{"[", "2", "]"}], "]"}], "/", - RowBox[{"sri", "[", - RowBox[{"[", "1", "]"}], "]"}]}], "]"}], "+", - RowBox[{"ArcTan", "[", - RowBox[{ - RowBox[{"sri", "[", - RowBox[{"[", "4", "]"}], "]"}], "/", - RowBox[{"sri", "[", - RowBox[{"[", "3", "]"}], "]"}]}], "]"}]}], ")"}]}], "/", "2"}], "/.", - RowBox[{ - RowBox[{"a", ":", - SubscriptBox["\[CapitalOmega]", - RowBox[{"_", ",", "_"}]]}], "\[Rule]", - RowBox[{"a", "[", "z", "]"}]}]}], "\[IndentingNewLine]", - RowBox[{ - RowBox[{"D", "[", - RowBox[{"%", ",", "z"}], "]"}], "//", - "FullSimplify"}], "\[IndentingNewLine]", - RowBox[{ - RowBox[{"d\[Phi]", "[", - RowBox[{ - RowBox[{"{", - RowBox[{"\[CapitalOmega]p_", ",", "\[CapitalOmega]m_"}], "}"}], ",", - RowBox[{"{", - RowBox[{"d\[CapitalOmega]p_", ",", "d\[CapitalOmega]m_"}], "}"}]}], - "]"}], "=", - RowBox[{ - RowBox[{ + FractionBox[ + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Im"], "[", "z", "]"}], + RowBox[{ + SubscriptBox["\[CapitalOmega]", "Re"], "[", "z", "]"}]], "]"}], ",", + "z"}], "]"}], "]"}], "/.", + RowBox[{"{", RowBox[{ - RowBox[{"%", "//.", - RowBox[{ - RowBox[{ - SuperscriptBox[ - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "Im"}]], "[", "z", "]"}], "2"], "+", - SuperscriptBox[ - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "Re"}]], "[", "z", "]"}], "2"]}], "\[Rule]", - RowBox[{ - SuperscriptBox[ - RowBox[{"Abs", "[", - SubscriptBox["\[CapitalOmega]", "q"], "]"}], "2"], "+", - "$MachineEpsilon"}]}]}], "/.", RowBox[{ RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "f_"}]], "[", "z", "]"}], "\[Rule]", - RowBox[{"f", "[", - SubscriptBox["\[CapitalOmega]", "q"], "]"}]}]}], "/.", - RowBox[{ + SubscriptBox["\[CapitalOmega]", "i_"], "[", "z", "]"}], "\[Rule]", + RowBox[{"i", "[", "\[CapitalOmega]", "]"}]}], ",", RowBox[{ RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"q_", ",", "f_"}]], "'"}], "[", "z", "]"}], "\[Rule]", - RowBox[{"f", "[", - SubscriptBox["d\[CapitalOmega]", "q"], "]"}]}]}], "/.", - RowBox[{"{", - RowBox[{ - RowBox[{ - SubscriptBox["\[CapitalOmega]", "1"], "\[Rule]", " ", - "\[CapitalOmega]p"}], ",", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"-", "1"}]], "\[Rule]", " ", "\[CapitalOmega]m"}], ",", - RowBox[{ - SubscriptBox["d\[CapitalOmega]", "1"], "\[Rule]", " ", - "d\[CapitalOmega]p"}], ",", - RowBox[{ - SubscriptBox["d\[CapitalOmega]", - RowBox[{"-", "1"}]], "\[Rule]", " ", "d\[CapitalOmega]m"}]}], - "}"}]}]}]}], "Input"] + RowBox[{ + SubscriptBox["\[CapitalOmega]", "i_"], "'"}], "[", "z", "]"}], + "\[Rule]", + RowBox[{"i", "[", "d\[CapitalOmega]", "]"}]}]}], "}"}]}]}]], "Input"] }, Open ]], Cell[CellGroupData[{ @@ -1533,14 +1364,13 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"1", ",", "1"}]], "\[Rule]", "100."}], ",", + RowBox[{"1", ",", "p"}]], "\[Rule]", "100."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], "\[Rule]", ".01"}], ",", + RowBox[{"2", ",", "p"}]], "\[Rule]", ".01"}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"3", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", "10."}], ",", + RowBox[{"3", ",", "m"}]], "\[Rule]", "10."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", RowBox[{"_", ",", "_"}]], "\[Rule]", "0."}], ",", @@ -1551,7 +1381,12 @@ Cell[BoxData[{ RowBox[{ SubscriptBox["\[Delta]", "3"], "\[Rule]", "0"}], ",", RowBox[{"\[Gamma]t", "\[Rule]", ".1"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", "0."}]}], "}"}]}], + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "y"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", "0"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"steadyeqs1", "=", @@ -1585,17 +1420,12 @@ Cell[BoxData[{ RowBox[{"dE", "[", RowBox[{ RowBox[{ - RowBox[{"{", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], ",", - SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", - RowBox[{"-", "1"}]}]]}], "}"}], "/.", "params"}], ",", "#"}], - "]"}], "&"}], "/@", + SubscriptBox["\[CapitalOmega]", + RowBox[{"2", ",", "p"}]], "/.", "params"}], ",", "#"}], "]"}], + "&"}], "/@", RowBox[{"table", "[", RowBox[{"[", - RowBox[{"All", ",", "2"}], "]"}], "]"}]}]}], "}"}], "]"}], + RowBox[{"All", ",", "2", ",", "1"}], "]"}], "]"}]}]}], "}"}], "]"}], "]"}], "\[IndentingNewLine]", RowBox[{"ListLinePlot", "[", RowBox[{"Transpose", "[", @@ -1609,17 +1439,12 @@ Cell[BoxData[{ RowBox[{"d\[Phi]", "[", RowBox[{ RowBox[{ - RowBox[{"{", - RowBox[{ - SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], ",", - SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", - RowBox[{"-", "1"}]}]]}], "}"}], "/.", "params"}], ",", "#"}], - "]"}], "&"}], "/@", + SubscriptBox["\[CapitalOmega]", + RowBox[{"2", ",", "p"}]], "/.", "params"}], ",", "#"}], "]"}], + "&"}], "/@", RowBox[{"table", "[", RowBox[{"[", - RowBox[{"All", ",", "2"}], "]"}], "]"}]}]}], "}"}], "]"}], + RowBox[{"All", ",", "2", ",", "1"}], "]"}], "]"}]}]}], "}"}], "]"}], "]"}]}], "Input"], Cell["Plot atomic populations for a given set of parameters.", "Text"], @@ -1631,15 +1456,13 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"1", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", "100."}], ",", + RowBox[{"1", ",", "m"}]], "\[Rule]", "100."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], "\[Rule]", ".01"}], ",", + RowBox[{"2", ",", "p"}]], "\[Rule]", ".01"}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"3", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", "10."}], ",", + RowBox[{"3", ",", "m"}]], "\[Rule]", "10."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", RowBox[{"_", ",", "_"}]], "\[Rule]", "0."}], ",", @@ -1650,7 +1473,12 @@ Cell[BoxData[{ RowBox[{ SubscriptBox["\[Delta]", "3"], "\[Rule]", "0"}], ",", RowBox[{"\[Gamma]t", "\[Rule]", ".1"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", "0."}]}], "}"}]}], + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "y"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", "0"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"steadyeqs1", "=", @@ -1750,14 +1578,13 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"1", ",", "1"}]], "\[Rule]", "100."}], ",", + RowBox[{"1", ",", "p"}]], "\[Rule]", "100."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"2", ",", "1"}]], "\[Rule]", ".01"}], ",", + RowBox[{"2", ",", "p"}]], "\[Rule]", ".01"}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"3", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", "10."}], ",", + RowBox[{"3", ",", "m"}]], "\[Rule]", "10."}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", RowBox[{"_", ",", "_"}]], "\[Rule]", "0."}], ",", @@ -1768,7 +1595,12 @@ Cell[BoxData[{ RowBox[{ SubscriptBox["\[Delta]", "3"], "\[Rule]", "0"}], ",", RowBox[{"\[Gamma]t", "\[Rule]", ".1"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", "0."}]}], "}"}]}], + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "y"], "\[Rule]", "0"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "z"], "\[Rule]", "0"}]}], "}"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"steadyeqs1", "=", @@ -2114,7 +1946,9 @@ Cell[BoxData[{ RowBox[{"r", "[", RowBox[{"s1", ",", "s2"}], "]"}]}], ",", RowBox[{"\[Gamma]t", "\[Rule]", "gt"}], ",", - RowBox[{"\[CapitalOmega]L", "\[Rule]", "WL"}], ",", + RowBox[{ + SubscriptBox["\[CapitalOmega]L", "x_"], "\[Rule]", + RowBox[{"WL", "[", "x", "]"}]}], ",", RowBox[{ SubscriptBox["\[Delta]", "i_"], "\[Rule]", RowBox[{"d", "[", "i", "]"}]}], ",", @@ -2123,12 +1957,11 @@ Cell[BoxData[{ RowBox[{"k", "[", "i", "]"}]}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", "1"}]], "\[Rule]", + RowBox[{"j_", ",", "p"}]], "\[Rule]", RowBox[{"Ep", "[", "j", "]"}]}], ",", RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", - RowBox[{"-", "1"}]}]], "\[Rule]", + RowBox[{"j_", ",", "m"}]], "\[Rule]", RowBox[{"Em", "[", "j", "]"}]}]}], "}"}]}], "/.", "labelrep"}], "/.", RowBox[{ RowBox[{"Power", "[", @@ -2206,7 +2039,11 @@ Cell[BoxData[{ RowBox[{"\"\\"", "<>", "a"}]}], ",", RowBox[{ RowBox[{"\"\\"", "~~", "a_", "~~", "\"\<)\>\""}], "\[RuleDelayed]", - RowBox[{"\"\\"", "<>", "a"}]}]}], "}"}]}], "]"}]}], "Input"], + RowBox[{"\"\\"", "<>", "a"}]}], ",", + RowBox[{ + RowBox[{"\"\\"", "~~", "a_", "~~", "\"\<)\>\""}], + "\[RuleDelayed]", + RowBox[{"\"\\"", "<>", "a"}]}]}], "}"}]}], "]"}]}], "Input"], Cell[BoxData[ RowBox[{"Export", "[", @@ -2715,7 +2552,8 @@ Cell[BoxData[ SubscriptBox["k", "_"], "\[Rule]", "0"}], ",", RowBox[{"t", "\[Rule]", "0"}], ",", RowBox[{ - SubscriptBox["\[Phi]", "_"], "\[Rule]", "0"}], ",", + SubscriptBox["\[Phi]", + RowBox[{"_", ",", "_"}]], "\[Rule]", "0"}], ",", RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", @@ -2760,9 +2598,9 @@ Cell[BoxData[ RowBox[{"{", RowBox[{"i", ",", "4"}], "}"}], ",", RowBox[{"{", - RowBox[{"q", ",", "1", ",", - RowBox[{"-", "1"}], ",", - RowBox[{"-", "2"}]}], "}"}]}], "]"}]}]}]], "Input"], + RowBox[{"q", ",", + RowBox[{"{", + RowBox[{"p", ",", "m"}], "}"}]}], "}"}]}], "]"}]}]}]], "Input"], Cell[BoxData[{ RowBox[{ @@ -2770,9 +2608,19 @@ Cell[BoxData[{ RowBox[{"Solve", "[", RowBox[{ RowBox[{ - RowBox[{"D", "[", - RowBox[{"fieldcomponents2", ",", "z"}], "]"}], "==", - RowBox[{"Simplify", "@", "polarizationcomponents3"}]}], ",", + RowBox[{ + RowBox[{"D", "[", + RowBox[{"fieldcomponents2", ",", "z"}], "]"}], "[", + RowBox[{"[", + RowBox[{"All", ",", "All", ",", + RowBox[{"{", + RowBox[{"1", ",", "3"}], "}"}]}], "]"}], "]"}], "==", + RowBox[{"Simplify", "@", + RowBox[{"polarizationcomponents3", "[", + RowBox[{"[", + RowBox[{"All", ",", "All", ",", + RowBox[{"{", + RowBox[{"1", ",", "3"}], "}"}]}], "]"}], "]"}]}]}], ",", RowBox[{"D", "[", RowBox[{"fieldvars", ",", "z"}], "]"}]}], "]"}], "[", RowBox[{"[", "1", "]"}], "]"}], "/.", @@ -2804,9 +2652,7 @@ Cell[BoxData[{ FractionBox["2", "3"]], "\[Rule]", RowBox[{"rt", "/", "rt3"}]}]}], "}"}]}]}]}], "Input"], -Cell["\<\ -Convert propagation equations to C form.\ -\>", "Text"], +Cell["Convert propagation equations to C form.", "Text"], Cell[BoxData[{ RowBox[{ @@ -2831,25 +2677,23 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", "1"}]], "'"}], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "p"}]], "'"}], "[", "z", "]"}], "\[Rule]", RowBox[{"dEp", "[", "j", "]"}]}], ",", RowBox[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", - RowBox[{"-", "1"}]}]], "'"}], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "m"}]], "'"}], "[", "z", "]"}], "\[Rule]", RowBox[{"dEm", "[", "j", "]"}]}], ",", RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", "1"}]], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "p"}]], "[", "z", "]"}], "\[Rule]", RowBox[{"Ep", "[", "j", "]"}]}], ",", RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", - RowBox[{"-", "1"}]}]], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "m"}]], "[", "z", "]"}], "\[Rule]", RowBox[{"Em", "[", "j", "]"}]}]}], "}"}]}], "/.", "labelrep"}], "/.", RowBox[{ RowBox[{"Complex", "[", @@ -2886,13 +2730,12 @@ Cell[BoxData[{ RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", "1"}]], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "p"}]], "[", "z", "]"}], "\[Rule]", RowBox[{"Ep", "[", "j", "]"}]}], ",", RowBox[{ RowBox[{ SubscriptBox["\[CapitalOmega]", - RowBox[{"j_", ",", - RowBox[{"-", "1"}]}]], "[", "z", "]"}], "\[Rule]", + RowBox[{"j_", ",", "m"}]], "[", "z", "]"}], "\[Rule]", RowBox[{"Em", "[", "j", "]"}]}]}], "}"}]}]}], "}"}]}], "]"}], "]"}], "\[IndentingNewLine]", RowBox[{"\"\\""}], "]"}], ",", "%"}], "]"}]}], "Input"] }, Open ]] }, -WindowSize->{1503, 915}, -WindowMargins->{{5, Automatic}, {Automatic, -2}}, +WindowSize->{1370, 876}, +WindowMargins->{{55, Automatic}, {Automatic, 5}}, PrivateNotebookOptions->{"FileOutlineCache"->False}, ShowSelection->True, FrontEndVersion->"8.0 for Microsoft Windows (64-bit) (October 6, 2011)", -- cgit v1.2.3