(************** Content-type: application/mathematica ************** CreatedBy='Mathematica 5.0' Mathematica-Compatible Notebook This notebook can be used with any Mathematica-compatible application, such as Mathematica, MathReader or Publicon. The data for the notebook starts with the line containing stars above. To get the notebook into a Mathematica-compatible application, do one of the following: * Save the data starting with the line of stars above into a file with a name ending in .nb, then open the file inside the application; * Copy the data starting with the line of stars above to the clipboard, then use the Paste menu command inside the application. Data for notebooks contains only printable 7-bit ASCII and can be sent directly in email or through ftp in text mode. Newlines can be CR, LF or CRLF (Unix, Macintosh or MS-DOS style). NOTE: If you modify the data for this notebook not in a Mathematica- compatible application, you must delete the line below containing the word CacheID, otherwise Mathematica-compatible applications may try to use invalid cache data. For more information on notebooks and Mathematica-compatible applications, contact Wolfram Research: web: http://www.wolfram.com email: info@wolfram.com phone: +1-217-398-0700 (U.S.) Notebook reader applications are available free of charge from Wolfram Research. *******************************************************************) (*CacheID: 232*) (*NotebookFileLineBreakTest NotebookFileLineBreakTest*) (*NotebookOptionsPosition[ 205260, 6281]*) (*NotebookOutlinePosition[ 264721, 7979]*) (* CellTagsIndexPosition[ 264631, 7973]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["Quantum Algebra", "Title"], Cell[TextData[{ ButtonBox["http://library.wolfram.com/infocenter/MathSource/4898/", ButtonData:>{ URL[ "http://library.wolfram.com/infocenter/MathSource/4898/"], None}, ButtonStyle->"Hyperlink"], StyleBox["\n", FontFamily->"Times New Roman"], "\n", StyleBox["C\[EAcute]sar Augusto Guerra Guti\[EAcute]rrez\nguerra_cesar@ \ yahoo.com\n\n", FontColor->RGBColor[0.25098, 0.501961, 0.501961]], StyleBox["Departamento de Ciencias \[Dash] Secci\[OAcute]n F\[IAcute]sica \ \nPotificia Universidad Cat\[OAcute]lica del Per\[UAcute]\nAv. Universitaria \ cdra. 18, San Miguel\nLima-32 PERU. Telf. (511) 4602870", FontSize->10, FontColor->RGBColor[0.25098, 0.501961, 0.501961]] }], "Author", TextAlignment->Center, TextJustification->0, FontSize->12], Cell[CellGroupData[{ Cell["1 Installation", "Section 1", ShowGroupOpenCloseIcon->True, TextAlignment->Left, TextJustification->0], Cell[CellGroupData[{ Cell["Installation", "Subsection"], Cell[TextData[{ "After unzip the file ", StyleBox["QAFiles.zip", FontFamily->"Courier New", FontWeight->"Bold"], " you will find a directory named ", StyleBox["QuantumAlgebra", FontFamily->"Courier New", FontWeight->"Bold"], " that you should place in one of the following standard directories" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(ToFileName[\ {$TopDirectory, \ "AddOns", \ "Applications"}]\)], "Input"], Cell[BoxData[ \("C:\\Archivos de programa\\Wolfram \ Research\\Mathematica\\4.2\\AddOns\\Applications\\"\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(ToFileName[\ {$PreferencesDirectory, \ "AddOns", \ "Applications"}]\)], "Input"], Cell[BoxData[ \("C:\\Documents and Settings\\Propietario\\Datos de \ programa\\Mathematica\\AddOns\\Applications\\"\)], "Output"] }, Open ]], Cell[TextData[{ StyleBox["QuantumAlgebra", FontFamily->"Courier New", FontWeight->"Bold"], " directory contains three files named ", StyleBox["QuantumAlgebra.m,", FontFamily->"Courier", FontWeight->"Bold"], " ", StyleBox["QANotations.nb ", FontFamily->"Courier", FontWeight->"Bold"], "and ", StyleBox["QAPalette.nb.", FontFamily->"Courier New", FontWeight->"Bold"], " The last two files are inside ", StyleBox["FrontEnd/Palettes", FontFamily->"Courier New", FontWeight->"Bold"], " directory. ", StyleBox["QANotations.nb", FontFamily->"Courier New", FontWeight->"Bold"], " is not really a palette but a notebook which contains notations. If you \ want, you can change it to other place where ", StyleBox["Mathematica", FontSlant->"Italic"], " can find it. Together with those files it is included the file you are \ reading: ", StyleBox["QuantumAlgebra.nb.", FontFamily->"Courier New", FontWeight->"Bold"], " This file is a tutorial about how to use Quantum Algebra package. You \ can place it any where." }], "Text"] }, Closed]], Cell[CellGroupData[{ Cell["Loading the Package", "Subsection"], Cell[TextData[{ "The command to load the package must be put lonely in a single cell. Also, \ ", StyleBox["no more", FontSlant->"Italic"], " than this single cell must be selected for evaluation. The reason for \ this restriction is that the package ", StyleBox["QuantumAlgebra.m", FontFamily->"Courier New", FontWeight->"Bold"], StyleBox[" ", FontWeight->"Bold"], " evaluates the notebook ", StyleBox["QANotations.nb", FontFamily->"Courier New", FontWeight->"Bold"], StyleBox[" ", FontWeight->"Bold"], "containing notations,", StyleBox[" ", FontWeight->"Bold"], "using functions that send this evaluation to the tail of all evaluations \ the kernel have to do. ", StyleBox["Thus, you should wait while notations are being loaded.", FontSlant->"Italic"], " A little window will alert you while notations are being loaded" }], "Text"], Cell["Don't select more that this cell to load the package", "Commentary"], Cell[BoxData[ \(Needs["\"]\)], "InputOnly"], Cell[TextData[{ "Notations are defined using the ", StyleBox["Utilities`Notation.m", FontFamily->"Courier New", FontWeight->"Bold"], " package that comes with ", StyleBox["Mathematica", FontSlant->"Italic"], ". The internal boxes of this notations reference some styles which are \ added to the notebook when the package is loaded. If there is not a ", StyleBox["notebook\[Dash]based", FontSlant->"Italic"], " front end available the step of calling notations is avoided. " }], "Text"], Cell[TextData[{ "The reason why I didn't put notations inside the package ", StyleBox["QuantumAlgebra.m", FontFamily->"Courier New", FontWeight->"Bold"], " is that they contain large box structures or definitions made by ", StyleBox["Utilities`Notation.m", FontFamily->"Courier New", FontWeight->"Bold"], ". If we leave it in a notebook the box structures are hidden, and the file \ is easy to read and modify if desired. I should said that I changed some of \ the options of the notebook ", StyleBox["QANotations.nb", FontFamily->"Courier New", FontWeight->"Bold"], " so that it can be editable. You can change this behavior using the Option \ Inspector." }], "Text"], Cell["Two see the symbols defined in the package just type", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Names["QuantumAlgebra`QuantumAlgebra`*"]\)], "Input"], Cell[BoxData[ \({"BCHRelation", "Bra", "BraArgs", "Braket", "BraKetArgs", "BraQ", "Commutator", "ConstantQ", "Hermitian", "Ket", "KetArgs", "KetQ", "Operator", "OperatorQ", "QAClear", "QACommutatorContract", "QACommutatorExpand", "QAExpandAll", "QAOrdering", "QAPowerContract", "QAPowerExpand", "QAProductExpand", "QASeries", "QASet", "SuperDagger", "SuperStar", "UDScript"}\)], "Output"] }, Open ]], Cell[TextData[{ "As usual, you can request information of any of the symbols defined in \ the package by typing ", StyleBox["?command. ", FontSlant->"Italic"], "Usefull information about notation is included for objects that use them. \ For instance," }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(?Operator\)\)], "Input"], Cell[BoxData[ \("Operator is the head for an operator object. Some \nfull forms that \ can be interpreted are: \n - Operator[A_], \n - Operator[A_,{x__},{}], \n - \ Operator[A_,{},{y__}], \n - Operator[A_,{x__},{y__}] \nwhere A labels the \ operator and x are subscripts \nand y superscripts of the operator. \nIf y \ is an integer this is interpreted as a power. \nOther combinations include \n\ - Operator[__][t__] \n - Operator[A_,\"H\",__] \nwhere t are aditional \ variables and H is a label for \nthe associated hermitian operator of \ Operator[A]. \nOperator[1] and Operator[0] are interpreted as the \n\ identity and cero operators respectively. \nALIASES: \n[ESC] op [ESC] : \ operator. \n[ESC] hop [ESC] : hermitian operator."\)], "Print", CellTags->"Info3284432791-7644650"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["2 Notation: Operators, Bras and Kets ", "Section 1", ShowGroupOpenCloseIcon->True, TextAlignment->Left, TextJustification->0], Cell[CellGroupData[{ Cell["Operators", "Subsection", ShowGroupOpenCloseIcon->True], Cell[TextData[{ "Operators can be introduced with the usual notation using aliases or by \ typing them with the keybord. Typing using the keyboard is described, for \ example in the ", StyleBox["Mathematica Book.", FontSlant->"Italic"], " Information about aliases for a given object can be requested with ", StyleBox["?object", FontSlant->"Italic"], ". \nFor example to type an operator ", Cell[BoxData[ \(TraditionalForm\`A\)]], " we type \[EscapeKey] op \[EscapeKey] and the fill in the placeholder with \ ", Cell[BoxData[ \(TraditionalForm\`A\)]], ", finally we type \[ControlKey] \[SpaceIndicator] (control\[Dash]space) to \ leave the out of the operator. The following operators had been typed using \ aliases for the first two, and the keyboard the for last two" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({A\&^, B\&^\^\[Dagger], C\&^, D\&^\^\[Dagger]}\)], "Input"], Cell[BoxData[ \({\(A\&^\), \(B\&^\)\^\[Dagger], \(C\&^\), \(D\&^\)\^\[Dagger]}\)], \ "Output"] }, Open ]], Cell["\<\ There are no aliases to type superscripts and subscripts for operators, so \ the keyboard is the only way to introduce them. The following operators were \ constructed by first creating the operators using aliases, and then written \ the scripts with the keyboard\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({A\&^\^3, \(B\&^\)\_i\%j, \(C\&^\)\_2\%\[Dagger], \(D\&^\)\_y\%\(w, \ \[Dagger]\), \((J\&^)\)\^\[Dagger]}\)], "Input"], Cell[BoxData[ \({\(A\&^\)\^3, \(B\&^\)\_i\%j, \(C\&^\)\_2\%\[Dagger], \(D\&^\)\_y\%\(w, \ \[Dagger]\), \(J\&^\)\^\[Dagger]}\)], "Output"] }, Open ]], Cell[TextData[{ "Note that a dagger as a superscript of an operator ", Cell[BoxData[ \(TraditionalForm\`A\)]], " represents a new operator. This new operator is the associated hermitian \ operator to ", Cell[BoxData[ \(TraditionalForm\`A\)]], ". " }], "Text"], Cell[TextData[{ "Internally, for evaluation with the kernel, operators are treated as \ objects with head ", StyleBox["Operator", FontFamily->"Courier New", FontWeight->"Bold"], ". We can see this by requesting the full form representation" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(FullForm /@ {A\&^, A\&^\^\[Dagger], A\&^\_\(i, j, k\), \(A\&^\)\_\(i, j, k\)\%\[Dagger], A\&^\^\(m, n, p\), \((A\&^\^\(m, n, p\))\)\^\[Dagger], \ \[IndentingNewLine]\(A\&^\)\_\(i, j, k\)\%\(p, m, n\), \((\(A\&^\)\_\(i, j, k\ \)\%\(m, n, p\))\)\^\[Dagger]} // TableForm\)], "Input"], Cell[BoxData[ InterpretationBox[GridBox[{ { TagBox[ StyleBox[\(Operator[A]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, "\"]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, List[i, j, k], List[]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, "\", List[i, j, k], List[]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, List[], List[m, n, p]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, "\", List[], List[m, n, p]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, List[i, j, k], List[p, m, n]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[A, "\", List[i, j, k], List[m, n, p]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]} }, RowSpacings->1, ColumnSpacings->3, RowAlignments->Baseline, ColumnAlignments->{Left}], TableForm[ { FullForm[ Operator[ A]], FullForm[ Operator[ A, "H"]], FullForm[ Operator[ A, {i, j, k}, {}]], FullForm[ Operator[ A, "H", {i, j, k}, {}]], FullForm[ Operator[ A, {}, {m, n, p}]], FullForm[ Operator[ A, "H", {}, {m, n, p}]], FullForm[ Operator[ A, {i, j, k}, {p, m, n}]], FullForm[ Operator[ A, "H", {i, j, k}, {m, n, p}]]}]]], "Output"] }, Open ]], Cell["\<\ As can be seen above the hermitian operation on an operator is defined as a \ new operator which is labeled in the full representation with an \"H\" string \ constant. \ \>", "Text"], Cell[TextData[{ "Becuse of the full form representation for an operator object, troubles \ can appear if we use the label of an operator for other purposes. For example \ if we want to set the variable ", Cell[BoxData[ \(TraditionalForm\`a\)]], " as " }], "Text"], Cell[BoxData[ \(a = \((a\&^ + b\&^)\)\)], "InputOnly", Evaluatable->False], Cell[TextData[{ StyleBox["Mathematica", FontSlant->"Italic"], " will enter on an infinite loop beacause ", Cell[BoxData[ \(TraditionalForm\`a\&^\)]], " uses ", Cell[BoxData[ \(TraditionalForm\`a\)]], " in its internal form. " }], "Text"] }, Closed]], Cell[CellGroupData[{ Cell["Bras and Kets", "Subsection", ShowGroupOpenCloseIcon->True], Cell[TextData[{ "Standard bras and kets from Dirac notation can be introduced only using \ aliases, this time we can not use the keyboard. The reason is that these \ objects have rather long internal boxes for properly display. These boxes are \ what the kernel can convert to the full form represenatation. \nYou should \ take a look to the information supplied for the ", StyleBox["Bra", FontFamily->"Courier", FontWeight->"Bold"], ", ", StyleBox["Ket", FontFamily->"Courier", FontWeight->"Bold"], ", and ", StyleBox["Braket", FontFamily->"Courier", FontWeight->"Bold"], " objets, to see which aliases are provided for this objects. For example a \ simple ket can be entered with \[EscapeKey] ket \[EscapeKey]. The following \ objects were introduced using only aliases" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"{", RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["j", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["\[Psi]", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["\[Phi]", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], ",", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], ",", TagBox[ SubsuperscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"], TagBox[ AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Tau]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], ",", TagBox[ SubsuperscriptBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["\[Phi]", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["\[Psi]", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["t", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"], TagBox[ AdjustmentBox[ TagBox["q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Braket, TagStyle->"BraKetWrapper"]}], "}"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["j", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["\[Psi]", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["\[Phi]", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], ",", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], ",", TagBox[ SubsuperscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"], TagBox[ AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Tau]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], ",", TagBox[ SubsuperscriptBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["\[Phi]", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["\[Psi]", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["t", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"], TagBox[ AdjustmentBox[ TagBox["q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Braket, TagStyle->"BraKetWrapper"]}], "}"}]], "Output"] }, Open ]], Cell["\<\ If for reason you want to erase one of these objects, you have to select all \ the object and erase it or just erase the arguments and relplace them with \ others. You can not, for example, erase only a left braket.\ \>", "Text"], Cell[TextData[{ "Internally, Bras, Kets and Brakets are treated by the kernel as objects \ with heads ", StyleBox["Bra", FontFamily->"Courier New", FontWeight->"Bold"], ", ", StyleBox["Ket", FontFamily->"Courier New", FontWeight->"Bold"], ", and ", StyleBox["Braket", FontFamily->"Courier New", FontWeight->"Bold"], " respectively. Look at the special forms when superscripts and subscripts \ are used" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"FullForm", "/@", RowBox[{"{", RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Psi]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["q", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["p", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], ",", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Eta], \[Mu], \[Nu]\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], ",", TagBox[ RowBox[{ SubsuperscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"], TagBox[ AdjustmentBox[ TagBox["p", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], SubsuperscriptBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["\[Psi]", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["\[CurlyPhi]", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"], TagBox[ AdjustmentBox[ TagBox["p", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]]}], Braket, TagStyle->"BraKetWrapper"]}], "}"}]}], "//", "TableForm"}]], "Input"], Cell[BoxData[ InterpretationBox[GridBox[{ { TagBox[ StyleBox[\(Ket[n]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Bra[\[Psi]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Braket[List[q], List[p]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Ket[\[Eta], \[Mu], \[Nu], List[x], List[]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Braket[List[\[Psi], List[q], List[p]], List[\[CurlyPhi], List[q], List[p]]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]} }, RowSpacings->1, ColumnSpacings->3, RowAlignments->Baseline, ColumnAlignments->{Left}], TableForm[ { FullForm[ Ket[ n]], FullForm[ Bra[ \[Psi]]], FullForm[ Braket[ {q}, {p}]], FullForm[ Ket[ \[Eta], \[Mu], \[Nu], {x}, {}]], FullForm[ Braket[ {\[Psi], {q}, {p}}, {\[CurlyPhi], {q}, {p}}]]}]]], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["\"Products\" between quantum objects", "Subsection", ShowGroupOpenCloseIcon->True], Cell[TextData[{ "We can represent the action of an operator on bras and kets, or any other \ usefull action of one of them to another one, with a non commutative \ operation. The package uses an already defined operator with this property: \ ", StyleBox["NonCommutativeMultiply. ", FontFamily->"Courier", FontWeight->"Bold"], "Notations that can be used for this operation are ", Cell[BoxData[ \(TraditionalForm\` ** \)]], " or center dot: \[EscapeKey]", StyleBox[" . ", FontWeight->"Bold"], "\[EscapeKey] " }], "Text"], Cell["Here are some examples", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"{", RowBox[{\(a\&^ ** s\&^\), ",", \(f\&^\[CenterDot]q\&^\), ",", RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["a", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["e", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(t\&^\)}], ",", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["t", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], "}"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{\(\(a\&^\)\[CenterDot]\(s\&^\)\), ",", \(\(f\&^\)\[CenterDot]\(q\&^\)\), ",", RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["a", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["e", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(t\&^\)}], ",", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["t", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["w", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"]}], "}"}]], "Output"] }, Open ]], Cell["\<\ Note that the non commutative product between a bra and a ket represents the \ inner product and parse with usual notation.\ \>", "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["3 Algebra", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["QAProductExpand", "Subsection"], Cell[TextData[{ "Every thing that is not a ", StyleBox["bra", FontWeight->"Bold"], ", ", StyleBox["ket", FontWeight->"Bold"], " or ", StyleBox["operator", FontWeight->"Bold"], " object are treated as simple complex numbers. However care must be taken \ to form products. " }], "Text"], Cell["\<\ Here \[Xi], \[ImaginaryI], \[HBar] are treated as simple numbers. \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{" ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \((\[ImaginaryI]\ \[HBar]\ H\&^)\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \((\(-\[Xi]\)\ T\&^)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Input"], Cell[BoxData[ RowBox[{\(-\[ImaginaryI]\), " ", "\[Xi]", " ", "\[HBar]", " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(H\&^\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \(T\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell["\<\ The non\[Dash]commutative product between complex numbers and quantum objects \ is not defined. So in the next case \[ImaginaryI], \[HBar] seem to be treated \ as operators \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", "\[ImaginaryI]", "\[CenterDot]", " ", "\[HBar]", "\[CenterDot]", " ", \(H\&^\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \((\(-\[Xi]\)\ T\&^)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]], "Input"], Cell[BoxData[ RowBox[{\(-\[Xi]\), " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", "\[ImaginaryI]", "\[CenterDot]", "\[HBar]", "\[CenterDot]", \(H\&^\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \(T\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell[TextData[{ "The function ", StyleBox["QAProductExpand", FontFamily->"Courier", FontWeight->"Bold"], " transform products in which constants (not quantum objects) are involved" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", "\[ImaginaryI]", "\[CenterDot]", " ", "\[HBar]", "\[CenterDot]", " ", \(H\&^\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \((\(-\[Xi]\)\ T\&^)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "//", "QAProductExpand"}]], "Input"], Cell[BoxData[ RowBox[{\(-\[ImaginaryI]\), " ", "\[Xi]", " ", "\[HBar]", " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(H\&^\), "\[CenterDot]", \(f\&^\), "\[CenterDot]", \(T\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell["\<\ This behaivor is not set up automatically because of speed reasons. Here is \ an example in which this kind of products subtlely appears\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\((\[Alpha] a\&^ + \[Beta] b\&^)\)\[CenterDot]\((\[Gamma] c\&^ + \[Delta] d\&^ + 1)\)\)], "Input"], Cell[BoxData[ \(\[Alpha]\ \(a\&^\)\[CenterDot]1 + \[Alpha]\ \[Gamma]\ \(a\&^\)\ \[CenterDot]\(c\&^\) + \[Alpha]\ \[Delta]\ \(a\&^\)\[CenterDot]\(d\&^\) + \ \[Beta]\ \(b\&^\)\[CenterDot]1 + \[Beta]\ \[Gamma]\ \ \(b\&^\)\[CenterDot]\(c\&^\) + \[Beta]\ \[Delta]\ \ \(b\&^\)\[CenterDot]\(d\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QAProductExpand\)], "Input"], Cell[BoxData[ \(\[Alpha]\ \[Gamma]\ \(a\&^\)\[CenterDot]\(c\&^\) + \[Alpha]\ \[Delta]\ \ \(a\&^\)\[CenterDot]\(d\&^\) + \[Beta]\ \[Gamma]\ \ \(b\&^\)\[CenterDot]\(c\&^\) + \[Beta]\ \[Delta]\ \ \(b\&^\)\[CenterDot]\(d\&^\) + \[Alpha]\ \(a\&^\) + \[Beta]\ \(b\&^\)\)], \ "Output"] }, Open ]], Cell["\<\ The best way to go around this problem is to use the identity operator as \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\((\[Alpha] a\&^ + \[Beta] b\&^)\)\[CenterDot]\((\[Gamma] c\&^ + \[Delta] d\&^ + 1\&^)\)\)], "Input"], Cell[BoxData[ \(\[Alpha]\ \[Gamma]\ \(a\&^\)\[CenterDot]\(c\&^\) + \[Alpha]\ \[Delta]\ \ \(a\&^\)\[CenterDot]\(d\&^\) + \[Beta]\ \[Gamma]\ \ \(b\&^\)\[CenterDot]\(c\&^\) + \[Beta]\ \[Delta]\ \ \(b\&^\)\[CenterDot]\(d\&^\) + \[Alpha]\ \(a\&^\) + \[Beta]\ \(b\&^\)\)], \ "Output"] }, Open ]], Cell["However in some special cases there is not major problem", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({1\&^\[CenterDot]a, a\[CenterDot]1\&^, a\&^\[CenterDot]0, 0\[CenterDot]1, 0\&^\[CenterDot]q, 0\&^\[CenterDot]a\&^}\)], "Input"], Cell[BoxData[ \({a, a, 0, 0, 0, 0}\)], "Output"] }, Open ]], Cell["\<\ The cero operator can be treated as the cero number. Here are some examples \ with bras and kets\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(1\&^\), "\[CenterDot]", \(a\&^\)}], ",", RowBox[{\(a\&^\), "\[CenterDot]", \(0\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["e", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \((\[HBar]\ 1\&^)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["f", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], "}"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(a\&^\)}], ",", "0", ",", RowBox[{"\[HBar]", " ", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["e", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["f", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"]}]}], "}"}]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(1\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "\[CenterDot]", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", "\[HBar]", " ", "\[CenterDot]", \(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]], "Input"], Cell[BoxData[ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["q", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["q", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], "\[CenterDot]", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", "\[HBar]", "\[CenterDot]", \(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QAProductExpand\)], "Input"], Cell[BoxData[ RowBox[{"\[HBar]", " ", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["q", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["q", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["QAPowerExpand", "Subsection"], Cell[TextData[{ "As can be seen above, products of sums are expanded automatically. \ However, this is not true for powers. The ", StyleBox["QAPowerExpand", FontFamily->"Courier", FontWeight->"Bold"], " function does the job" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(a\&^\^3 // QAPowerExpand\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(a\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(\((a\&^ + b\&^ + c\&^)\)\^3\)\(//\)\(QAPowerExpand\)\(\ \)\)\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(a\&^\) + \(a\&^\)\[CenterDot]\ \(a\&^\)\[CenterDot]\(b\&^\) + \(a\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(c\&^\ \) + \(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\) + \ \(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(a\&^\)\[CenterDot]\(b\&^\ \)\[CenterDot]\(c\&^\) + \(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(a\&^\) + \ \(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(b\&^\) + \(a\&^\)\[CenterDot]\(c\&^\ \)\[CenterDot]\(c\&^\) + \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(a\&^\) + \ \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + \(b\&^\)\[CenterDot]\(a\&^\ \)\[CenterDot]\(c\&^\) + \(b\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\) + \ \(b\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(b\&^\)\[CenterDot]\(b\&^\ \)\[CenterDot]\(c\&^\) + \(b\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(a\&^\) + \ \(b\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(b\&^\) + \(b\&^\)\[CenterDot]\(c\&^\ \)\[CenterDot]\(c\&^\) + \(c\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(a\&^\) + \ \(c\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + \(c\&^\)\[CenterDot]\(a\&^\ \)\[CenterDot]\(c\&^\) + \(c\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\) + \ \(c\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(c\&^\)\[CenterDot]\(b\&^\ \)\[CenterDot]\(c\&^\) + \(c\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(a\&^\) + \ \(c\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(b\&^\) + \(c\&^\)\[CenterDot]\(c\&^\ \)\[CenterDot]\(c\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\((a\&^\^\[Dagger])\)\^5 // QAPowerExpand\)], "Input"], Cell[BoxData[ \(\(a\&^\)\^\[Dagger]\[CenterDot]\(a\&^\)\^\[Dagger]\[CenterDot]\(a\&^\)\^\ \[Dagger]\[CenterDot]\(a\&^\)\^\[Dagger]\[CenterDot]\(a\&^\)\^\[Dagger]\)], \ "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\((\[HBar]\ \[Omega] w\&^ + \[HBar]\ \[CapitalOmega] t\&^\^\[Dagger] \ + \[Eta] u\&^ + \[Tau] 1\&^ + 0\&^)\)\^2 // QAPowerExpand\)], "Input"], Cell[BoxData[ \(\[Eta]\^2\ \(u\&^\)\[CenterDot]\(u\&^\) + \[Eta]\ \[Omega]\ \[HBar]\ \ \(u\&^\)\[CenterDot]\(w\&^\) + \[Eta]\ \[CapitalOmega]\ \[HBar]\ \(u\&^\)\ \[CenterDot]\(t\&^\)\^\[Dagger] + \[Eta]\ \[Omega]\ \[HBar]\ \(w\&^\)\ \[CenterDot]\(u\&^\) + \[Omega]\^2\ \[HBar]\^2\ \(w\&^\)\[CenterDot]\(w\&^\) \ + \[Omega]\ \[CapitalOmega]\ \[HBar]\^2\ \(w\&^\)\[CenterDot]\(t\&^\)\^\ \[Dagger] + \[Eta]\ \[CapitalOmega]\ \[HBar]\ \(t\&^\)\^\[Dagger]\[CenterDot]\ \(u\&^\) + \[Omega]\ \[CapitalOmega]\ \[HBar]\^2\ \(t\&^\)\^\[Dagger]\ \[CenterDot]\(w\&^\) + \[CapitalOmega]\^2\ \[HBar]\^2\ \(t\&^\)\^\[Dagger]\ \[CenterDot]\(t\&^\)\^\[Dagger] + \[Tau]\^2\ \(1\&^\) + 2\ \[Eta]\ \[Tau]\ \(u\&^\) + 2\ \[Tau]\ \[Omega]\ \[HBar]\ \(w\&^\) + 2\ \[Tau]\ \[CapitalOmega]\ \[HBar]\ \(t\&^\)\^\[Dagger]\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Testing Linear Properties", "Subsection"], Cell["\<\ Usual linear properties in quantum mechanics are implemented. For example, \ lets check it for the inner product \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", RowBox[{"(", RowBox[{ RowBox[{\(\[Alpha]\/\@2\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["s", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "+", RowBox[{\(\[Beta]\/\@2\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["p", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], ")"}]}]], "Input"], Cell[BoxData[ RowBox[{ FractionBox[ RowBox[{"\[Beta]", " ", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["q", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["p", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"]}], \(\@2\)], "+", FractionBox[ RowBox[{"\[Alpha]", " ", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["q", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["s", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"]}], \(\@2\)]}]], "Output"] }, Open ]], Cell["\<\ Here we show the action of operators on superposition of bras and kets\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(A\&^\), "\[CenterDot]", RowBox[{"(", RowBox[{ RowBox[{\(\[Alpha]\/\@2\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["r", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "+", RowBox[{\(\[Beta]\/\@2\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["s", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], ")"}]}]], "Input"], Cell[BoxData[ RowBox[{ FractionBox[ RowBox[{"\[Alpha]", " ", RowBox[{\(A\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["r", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], \(\@2\)], "+", FractionBox[ RowBox[{"\[Beta]", " ", RowBox[{\(A\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["s", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], \(\@2\)]}]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"(", RowBox[{ RowBox[{\(\[Lambda]1\/\@2\), TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"]}], "+", RowBox[{\(\[Lambda]2\/\@2\), TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["b", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"]}]}], " ", ")"}], "\[CenterDot]", \(A\&^\)}]], "Input"], Cell[BoxData[ RowBox[{ FractionBox[ RowBox[{"\[Lambda]1", " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(A\&^\)}]}], \(\@2\)], "+", FractionBox[ RowBox[{"\[Lambda]2", " ", RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["b", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(A\&^\)}]}], \(\@2\)]}]], "Output"] }, Open ]], Cell["\<\ Here is a product that could represent a hamiltonian matrix element\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \((\ H\&^\_1\ + \(\(\ \)\(H\)\)\&^\_2 + V\&^\_12)\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["b", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\(H\&^\)\_1\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["b", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "+", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\(H\&^\)\_2\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["b", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "+", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["a", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\(V\&^\)\_12\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["b", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["x", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Setting New Definitions", "Subsection"], Cell["\<\ To go further in a calculation we have to attach rules to operators, bras or \ kets using its heads. This rules, of course, depend on the problem at hand. \ \ \>", "Text"], Cell["\<\ Suppose for example, that we want to define the action of the mometum \ operator on a wave function in the coordinate representation. Then we could \ enter something like\ \>", "Text"], Cell[BoxData[ \(Operator /: P\&^\_x\ @\[Psi]_ := \[ImaginaryI]\ \[HBar]\ \[PartialD]\_x \[Psi]\)], \ "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \(P\&^\_x\ @\((\[Psi][x] + \[CurlyPhi][x])\)\)], "Input"], Cell[BoxData[ RowBox[{"\[ImaginaryI]", " ", "\[HBar]", " ", RowBox[{"(", RowBox[{ RowBox[{ SuperscriptBox["\[CurlyPhi]", "\[Prime]", MultilineFunction->None], "[", "x", "]"}], "+", RowBox[{ SuperscriptBox["\[Psi]", "\[Prime]", MultilineFunction->None], "[", "x", "]"}]}], ")"}]}]], "Output"] }, Open ]], Cell["we clean this definition with", "Text"], Cell[BoxData[ \(P\&^\_x\ @\[Psi]_ =. \)], "InputOnly"], Cell[TextData[{ "Because a wave function is really a projection (a constant for ", StyleBox["QuantumAlgebra.m", FontFamily->"Courier New", FontWeight->"Bold"], "), we can not use ", StyleBox["center dot ", FontSlant->"Italic"], "to form products as we did before. That is the reason why I used ", Cell[BoxData[ \(TraditionalForm\`@\)]], " to represent the \"product\" in the above definition. A more elaborated \ definition would be " }], "Text"], Cell[BoxData[ RowBox[{"Operator", "/:", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["xo_", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(P\&^\_x\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ":=", \(\[ImaginaryI]\ \[HBar]\ \[PartialD]\_x \[Psi][ xo]\)}]], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(x - x0\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(P\&^\_x\), "\[CenterDot]", RowBox[{ StyleBox["(", SpanMinSize->2], RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "+", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[CurlyPhi]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], StyleBox[")", SpanMinSize->2]}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"\[ImaginaryI]", " ", "\[HBar]", " ", RowBox[{ SuperscriptBox["\[CurlyPhi]", "\[Prime]", MultilineFunction->None], "[", \(x - x0\), "]"}]}], "+", RowBox[{"\[ImaginaryI]", " ", "\[HBar]", " ", RowBox[{ SuperscriptBox["\[Psi]", "\[Prime]", MultilineFunction->None], "[", \(x - x0\), "]"}]}]}]], "Output"] }, Open ]], Cell["We clean or definition with", "Text"], Cell[BoxData[ RowBox[{"Operator", "/:", RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["xo_", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(P\&^\_x\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Psi]_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "=."}]}]], "InputOnly"], Cell["\<\ To end this section, let's define the action of creation operator on \ eigenstates of the harmonic oscillator hamiltonian \ \>", "Text"], Cell[BoxData[ RowBox[{"Operator", "/:", RowBox[{\(a\&^\^\[Dagger]\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ":=", RowBox[{\(\@\(n + 1\)\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(n + 1\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{\(1\/\@\(5!\)\), RowBox[{\(\((a\&^\^\[Dagger])\)\^5\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], "//", "QAPowerExpand"}]], "Input"], Cell[BoxData[ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["5", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]], "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["4 Hermitian Operation", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["Hermitian acting on Operators", "Subsection"], Cell[TextData[{ "To take the hermitian operation we have two alternative commands ", StyleBox["SuperDagger", FontFamily->"Courier", FontWeight->"Bold"], " or ", StyleBox["Hermitian. ", FontFamily->"Courier", FontWeight->"Bold"], "Also, the superdagger notationis available" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({Hermitian[h\&^], SuperDagger[t\&^], f\&^\^\[Dagger]}\)], "Input"], Cell[BoxData[ \({h\&^\^\[Dagger], t\&^\^\[Dagger], f\&^\^\[Dagger]}\)], "Output"] }, Open ]], Cell[TextData[{ "When the hermitian operation acts on simple operators we get new operators \ which are labeled with the ", Cell[BoxData[ \(TraditionalForm\`"H"\)]], " character in the full form representation" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(\ \)\(FullForm /@ {a\&^\^\[Dagger], \(a\&^\)\_i\%\[Dagger], a\&^\^\(i, \[Dagger]\), \((\(a\&^\)\_i\%j)\)\^\[Dagger]} // TableForm\)\)\)], "Input"], Cell[BoxData[ InterpretationBox[GridBox[{ { TagBox[ StyleBox[\(Operator[a, "\"]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[a, "\", List[i], List[]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[a, "\", List[], List[i]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]}, { TagBox[ StyleBox[\(Operator[a, "\", List[i], List[j]]\), ShowStringCharacters->True, NumberMarks->True], FullForm]} }, RowSpacings->1, ColumnSpacings->3, RowAlignments->Baseline, ColumnAlignments->{Left}], TableForm[ { FullForm[ Operator[ a, "H"]], FullForm[ Operator[ a, "H", {i}, {}]], FullForm[ Operator[ a, "H", {}, {i}]], FullForm[ Operator[ a, "H", {i}, {j}]]}]]], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Hermitian acting on Expressions", "Subsection"], Cell["\<\ When the hermitian operation acts on other structures usual rules of quantum \ mechanics are applied. Note that the complex conjuagtion parse with the \ standard notation\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\((c b\&^\[CenterDot]a\&^\^6)\)\^\[Dagger]\)], "Input"], Cell[BoxData[ \(\(c\^*\)\ \ \((\(a\&^\)\^\[Dagger])\)\^6\[CenterDot]\(b\&^\)\^\[Dagger]\)], "Output"] }, Open ]], Cell["\<\ Here first we expand the power, then we perform the hermitian operation\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Hermitian[\((\ \[Xi] c\&^\^\[Dagger] + 3 \[ImaginaryI] q\&^)\)^3 // QAPowerExpand]\)], "Input"], Cell[BoxData[ \(\((\(\[Xi]\^*\))\)\^3\ \(c\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(c\&^\) \ - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \(c\&^\)\[CenterDot]\(c\&^\)\ \[CenterDot]\(q\&^\)\^\[Dagger] - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \(c\&^\)\[CenterDot]\(q\&^\)\^\ \[Dagger]\[CenterDot]\(c\&^\) - 9\ \(\[Xi]\^*\)\ \(c\&^\)\[CenterDot]\(q\&^\)\^\[Dagger]\[CenterDot]\(q\ \&^\)\^\[Dagger] - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \ \(q\&^\)\^\[Dagger]\[CenterDot]\(c\&^\)\[CenterDot]\(c\&^\) - 9\ \(\[Xi]\^*\)\ \(q\&^\)\^\[Dagger]\[CenterDot]\(c\&^\)\[CenterDot]\(q\ \&^\)\^\[Dagger] - 9\ \(\[Xi]\^*\)\ \(q\&^\)\^\[Dagger]\[CenterDot]\(q\&^\)\^\[Dagger]\ \[CenterDot]\(c\&^\) + 27\ \[ImaginaryI]\ \(q\&^\)\^\[Dagger]\[CenterDot]\(q\&^\)\^\[Dagger]\ \[CenterDot]\(q\&^\)\^\[Dagger]\)], "Output"] }, Open ]], Cell["\<\ in this case we first perform the hermitian operation and then expand the \ power\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Hermitian[\((\ \[Xi] c\&^\^\[Dagger] + 3 \[ImaginaryI] q\&^)\)^3] // QAPowerExpand\)], "Input"], Cell[BoxData[ \(\((\(\[Xi]\^*\))\)\^3\ \(c\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(c\&^\) \ - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \(c\&^\)\[CenterDot]\(c\&^\)\ \[CenterDot]\(q\&^\)\^\[Dagger] - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \(c\&^\)\[CenterDot]\(q\&^\)\^\ \[Dagger]\[CenterDot]\(c\&^\) - 9\ \(\[Xi]\^*\)\ \(c\&^\)\[CenterDot]\(q\&^\)\^\[Dagger]\[CenterDot]\(q\ \&^\)\^\[Dagger] - 3\ \[ImaginaryI]\ \((\(\[Xi]\^*\))\)\^2\ \ \(q\&^\)\^\[Dagger]\[CenterDot]\(c\&^\)\[CenterDot]\(c\&^\) - 9\ \(\[Xi]\^*\)\ \(q\&^\)\^\[Dagger]\[CenterDot]\(c\&^\)\[CenterDot]\(q\ \&^\)\^\[Dagger] - 9\ \(\[Xi]\^*\)\ \(q\&^\)\^\[Dagger]\[CenterDot]\(q\&^\)\^\[Dagger]\ \[CenterDot]\(c\&^\) + 27\ \[ImaginaryI]\ \(q\&^\)\^\[Dagger]\[CenterDot]\(q\&^\)\^\[Dagger]\ \[CenterDot]\(q\&^\)\^\[Dagger]\)], "Output"] }, Open ]], Cell["the results are the same", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(% \[Equal] %%\)], "Input"], Cell[BoxData[ \(True\)], "Output"] }, Open ]], Cell["\<\ The hermitian operation can be applied to expressions containing several \ quantum objects. The rule is simple. Kets transform to bras, bras transform \ to kets, operators transform to the associated hermitian operators, complex \ numbers to its complex conjugate number and finally the order is reversed\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ SuperscriptBox[ RowBox[{"(", " ", RowBox[{"\[Lambda]", RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "\[CenterDot]", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["w", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(h\&^\^\[Dagger]\)}]}], " ", ")"}], "\[Dagger]"]], "Input"], Cell[BoxData[ RowBox[{\(\[Lambda]\^*\), " ", RowBox[{\(h\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["w", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "\[CenterDot]", TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\(a\&^\)\^\[Dagger]\)}]}]], "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["5 Commutators ", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["Commutator", "Subsection"], Cell[TextData[{ "We can enter commutators using the head ", StyleBox["Commutator", FontFamily->"Courier", FontWeight->"Bold"], " or using standard notation that can be enterd with the alias \[EscapeKey] \ com \[EscapeKey] or with the keyboard. Rules are defined to simplify \ commutators automatically" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Commutator[3\ a\&^, 10 b\&^]\)], "Input"], Cell[BoxData[ \(30\ \(\(\([\)\(\(a\&^\), \(b\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^ + b\&^, a\&^ - b\&^]\)\_-\)\)], "Input"], Cell[BoxData[ \(\(-\(\(\([\)\(\(a\&^\), \(b\&^\)\)\(]\)\)\_-\)\) + \(\(\([\)\(\(b\&^\), \ \(a\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell["Common properties for commutators are defined", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([a\&^, a\&^]\)\_-\), \(\([a\&^, b\&^]\)\_-\)\^\[Dagger]}\)], "Input"], Cell[BoxData[ \({0, \(\([b\&^\^\[Dagger], a\&^\^\[Dagger]]\)\_-\)}\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([a\&^, f[a\&^]]\)\_-\), \(\([f[a\&^, b\&^], a\&^]\)\_-\)}\)], "Input"], Cell[BoxData[ \({0, \(\([f[a\&^, b\&^], a\&^]\)\_-\)}\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Expand And Contract", "Subsection"], Cell[TextData[{ "Note that commutators are not expanded in terms of the product of \ operators. If needed ", StyleBox["QACommutatorExpand", FontFamily->"Courier", FontWeight->"Bold"], " does this job" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(\([a\&^ + c\&^\[CenterDot]d\&^, 3 a\&^ + b\&^]\)\_-\) // QACommutatorExpand\) // Expand\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(b\&^\) - \(b\&^\)\[CenterDot]\(a\&^\) - 3\ \(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(d\&^\) - \(b\&^\)\ \[CenterDot]\(c\&^\)\[CenterDot]\(d\&^\) + 3\ \(c\&^\)\[CenterDot]\(d\&^\)\[CenterDot]\(a\&^\) + \(c\&^\)\ \[CenterDot]\(d\&^\)\[CenterDot]\(b\&^\)\)], "Output"] }, Open ]], Cell[TextData[{ "In contrast, the command ", StyleBox["QACommutatorContract", FontFamily->"Courier", FontWeight->"Bold"], " attemps to convert sum of products to a expression containing \ commutators. Let's try it with a simple expression " }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^, b\&^]\)\_-\) // QACommutatorExpand\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(b\&^\) - \(b\&^\)\[CenterDot]\(a\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\), \(b\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell["Now suppose we have a more complex expression", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(expr = \(\([a\&^ + w\&^, \(\([c\&^, \(\([q\&^, w\&^]\)\_-\)]\)\_-\)]\)\_-\) // QACommutatorExpand\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\) - \ \(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\) - \(a\&^\ \)\[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\) + \(a\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(c\&^\) - \(c\&^\)\ \[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(a\&^\) - \(c\&^\)\ \[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(w\&^\) + \(c\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(a\&^\) + \(c\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\) + \(q\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(a\&^\) + \(q\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(w\&^\) + \(w\&^\)\ \[CenterDot]\(c\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\) - \(w\&^\)\ \[CenterDot]\(c\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\) - \(w\&^\)\ \[CenterDot]\(q\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(a\&^\) - \(w\&^\)\ \[CenterDot]\(q\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(w\&^\) - \(w\&^\)\ \[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\) + \(w\&^\)\ \[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(c\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(expr // QACommutatorContract\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\), \(c\&^\)\)\(]\)\)\_-\)\[CenterDot]\(q\&^\)\ \[CenterDot]\(w\&^\) + \(\(\([\)\(\(a\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(q\&^\)\[CenterDot]\(c\&^\) + \ \(\(\([\)\(\(c\&^\), \ \(a\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\) + \ \(\(\([\)\(\(c\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\)\[CenterDot]\(q\&^\) + \ \(\(\([\)\(\(q\&^\), \ \(a\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\) + \ \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\)\[CenterDot]\(c\&^\) + \ \(\(\([\)\(\(w\&^\), \ \(c\&^\)\)\(]\)\)\_-\)\[CenterDot]\(q\&^\)\[CenterDot]\(w\&^\) + \(c\&^\)\ \[CenterDot]\(\(\([\)\(\(a\&^\), \(q\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\) + \ \(c\&^\)\[CenterDot]\(\(\([\)\(\(w\&^\), \ \(a\&^\)\)\(]\)\)\_-\)\[CenterDot]\(q\&^\) + \ \(c\&^\)\[CenterDot]\(\(\([\)\(\(w\&^\), \ \(q\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\) + \(c\&^\)\[CenterDot]\(q\&^\)\ \[CenterDot]\(\(\([\)\(\(a\&^\), \(w\&^\)\)\(]\)\)\_-\) + \ \(c\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(a\&^\)\)\(]\)\)\_-\) + \ \(c\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\) + \(q\&^\)\[CenterDot]\(\(\([\)\(\(w\&^\), \ \(a\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\) + \(q\&^\)\[CenterDot]\(w\&^\)\ \[CenterDot]\(\(\([\)\(\(c\&^\), \(a\&^\)\)\(]\)\)\_-\) + \ \(q\&^\)\[CenterDot]\(w\&^\)\[CenterDot]\(\(\([\)\(\(c\&^\), \ \(w\&^\)\)\(]\)\)\_-\) + \(w\&^\)\[CenterDot]\(\(\([\)\(\(a\&^\), \ \(q\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\) + \ \(w\&^\)\[CenterDot]\(\(\([\)\(\(w\&^\), \ \(q\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\) + \(w\&^\)\[CenterDot]\(q\&^\)\ \[CenterDot]\(\(\([\)\(\(a\&^\), \(c\&^\)\)\(]\)\)\_-\) + \ \(w\&^\)\[CenterDot]\(q\&^\)\[CenterDot]\(\(\([\)\(\(w\&^\), \ \(c\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[TextData[{ "in this case we don't get our original expression. This is because the \ program chooses the operators and the order to group them into commutators. \ We can change this behavior by giving to ", StyleBox["QAPowerContract", FontFamily->"Courier", FontWeight->"Bold"], " a second argument. This could be a list containing two operators whose \ commutator should appear in the final expression, or a list of lists of pairs \ of operators whose commutators should appear in the final expression" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(expr // QACommutatorContract[#, {q\&^, w\&^}] &\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(q\&^\), \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\)\ \[CenterDot]\(a\&^\) + \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\)\[CenterDot]\(w\&^\) - \(a\&^\)\ \[CenterDot]\(\(\([\)\(\(q\&^\), \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\) + \ \(a\&^\)\[CenterDot]\(c\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\) - \(c\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(a\&^\) - \ \(c\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\) - \ \(w\&^\)\[CenterDot]\(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\[CenterDot]\(c\&^\) + \(w\&^\)\[CenterDot]\(c\&^\)\ \[CenterDot]\(\(\([\)\(\(q\&^\), \(w\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract[#, {c\&^, \(\([q\&^, w\&^]\)\_-\)}] &\)], "Input"], Cell[BoxData[ \(\(-\((\(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\[CenterDot]\(a\&^\))\)\) - \ \(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\) + \(a\&^\)\ \[CenterDot]\(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + \ \(w\&^\)\[CenterDot]\(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \(w\&^\)\)\(]\)\ \)\_-\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract[#, {a\&^, \(\([c\&^, \(\([q\&^, w\&^]\)\_-\)]\)\_-\)}] &\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\), \(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \(w\&^\)\ \)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) - \(\(\([\)\(\(c\&^\), \(\(\([\)\(\ \(q\&^\), \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\[CenterDot]\(w\&^\) + \(w\&^\)\ \[CenterDot]\(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract[#, {w\&^, \(\([c\&^, \(\([q\&^, w\&^]\)\_-\)]\)\_-\)}] &\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\), \(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \(w\&^\)\ \)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + \(\(\([\)\(\(w\&^\), \(\(\([\)\(\ \(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell["all this transformations can be done at once", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(expr // QACommutatorContract[#, {{q\&^, w\&^}, {c\&^, \(\([q\&^, w\&^]\)\_-\)}, {a\&^, \(\([c\&^, \(\([q\&^, w\&^]\)\_-\)]\)\_-\)}, {w\&^, \(\([c\&^, \(\([q\&^, w\&^]\)\_-\)]\)\_-\)}}] &\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\), \(\(\([\)\(\(c\&^\), \(\(\([\)\(\(q\&^\), \(w\&^\)\ \)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + \(\(\([\)\(\(w\&^\), \(\(\([\)\(\ \(c\&^\), \(\(\([\)\(\(q\&^\), \ \(w\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[TextData[{ "Several operations on quantum objects (operators, bras and kets) can be \ performed with the ", StyleBox["QAExpandAll", FontFamily->"Courier", FontWeight->"Bold"], " command which applies to its argument three commands, ", StyleBox["QAPowerExpand, QAProductExpand", FontFamily->"Courier", FontWeight->"Bold"], " and", StyleBox[" QACommutatorExpand", FontFamily->"Courier", FontWeight->"Bold"], " in this order." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\((\(\([a\&^, b\&^]\)\_-\)\[CenterDot]b\&^ + 2\[CenterDot]b\&^)\)\^2 // QAExpandAll\) // QAPowerContract\)], "Input"], Cell[BoxData[ \(2\ \(a\&^\)\[CenterDot]\(b\&^\)\^3 - 2\ \(b\&^\)\^2\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + \(a\&^\)\ \[CenterDot]\(b\&^\)\^2\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\^2 - \(a\&^\)\ \[CenterDot]\(b\&^\)\^3\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) - \(b\&^\)\ \[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\ \)\^2 + \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\^2\[CenterDot]\(a\&^\ \)\[CenterDot]\(b\&^\) + 4\ \(b\&^\)\^2\)], "Output"] }, Open ]], Cell["As an example let's check a well known identity", "Text"], Cell[BoxData[ \(\(\([x\&^, \(\([y\&^, z\&^]\)\_-\)]\)\_-\) + \(\([y\&^, \(\([z\&^, x\&^]\)\_-\)]\)\_-\) + \(\([z\&^, \(\([x\&^, y\&^]\)\_-\)]\)\_-\) // QACommutatorExpand\)], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Defining Commutators", "Subsection"], Cell["\<\ An important thing to remember in working with commutators is that the \ commutator between operators must be an operator. For example if we try to \ simplify the expression\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^\[CenterDot]b\&^, a\&^\[CenterDot]b\&^\[CenterDot]b\&^]\)\_-\)\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(\(\([\)\(\(a\&^\), \(b\&^\)\)\(]\)\)\_-\)\ \[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(a\&^\)\[CenterDot]\(\(\([\)\(\(b\ \&^\), \(a\&^\)\)\(]\)\)\_-\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \ \(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(\(\([\)\(\(a\&^\), \ \(b\&^\)\)\(]\)\)\_-\)\[CenterDot]\(b\&^\)\)], "Output"] }, Open ]], Cell[TextData[{ "using commutation rules for the operators ", Cell[BoxData[ \(TraditionalForm\`a\)]], " and ", Cell[BoxData[ \(TraditionalForm\`b\)]], " (two definitions for each pair of operators) defined as" }], "Text"], Cell[BoxData[{ \(\(\(\([a\&^, b\&^]\)\_-\) = \[Xi];\)\), "\[IndentingNewLine]", \(\(\(\([b\&^, a\&^]\)\_-\) = \(-\[Xi]\);\)\)}], "InputOnly"], Cell["\<\ then, not well defined products appear (remember that \[Xi] is treated as a \ simple number)\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^\[CenterDot]a\&^, b\&^\[CenterDot]b\&^\[CenterDot]b\&^]\)\_-\)\)], "Input"], Cell[BoxData[ \(\[Xi]\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(a\ \&^\)\[CenterDot]\[Xi]\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \(b\&^\)\ \[CenterDot]\[Xi]\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + \(b\&^\)\ \[CenterDot]\(a\&^\)\[CenterDot]\[Xi]\[CenterDot]\(b\&^\) + \(b\&^\)\ \[CenterDot]\(b\&^\)\[CenterDot]\[Xi]\[CenterDot]\(a\&^\) + \(b\&^\)\ \[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\[Xi]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QAProductExpand\)], "Input"], Cell[BoxData[ \(2\ \[Xi]\ \(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + 2\ \[Xi]\ \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + 2\ \[Xi]\ \(b\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\)\)], "Output"] }, Open ]], Cell["\<\ Instead we redefine the commutators, so each one of them equals to an \ operator. We use the identity operator for this matter\ \>", "Text"], Cell[BoxData[{ \(\(\(\([a\&^, b\&^]\)\_-\) = \[Xi]\ 1\&^;\)\), "\[IndentingNewLine]", \(\(\(\([b\&^, a\&^]\)\_-\) = \(-\[Xi]\)\ 1\&^;\)\)}], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^\[CenterDot]a\&^, b\&^\[CenterDot]b\&^\[CenterDot]b\&^]\)\_-\)\)], "Input"], Cell[BoxData[ \(2\ \[Xi]\ \(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + 2\ \[Xi]\ \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\) + 2\ \[Xi]\ \(b\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\)\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["QAOrdering", "Subsection"], Cell[TextData[{ "Sometimes what we want to manipulate are sums of products of operators \ using commutation rules so they can have a defined order, for example normal \ ordering in quantum field theory. In this case, the form, the commutators are \ defined above are not usefull. In the following example we want all ", Cell[BoxData[ \(TraditionalForm\`a\)]], " operators to appear before ", Cell[BoxData[ \(TraditionalForm\`b\)]], " ones" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(expr = b\&^\[CenterDot]b\&^\[CenterDot]a\&^\[CenterDot]a\&^ + b\&^\[CenterDot]a\&^\[CenterDot]b\&^\[CenterDot]a\&^ + a\&^\[CenterDot]a\&^\[CenterDot]b\&^\[CenterDot]b\&^\)], "Input"], Cell[BoxData[ \(\(a\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) + \ \(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\) + \(b\&^\ \)\[CenterDot]\(b\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(a\&^\)\)], "Output"] }, Open ]], Cell[TextData[{ "The command ", StyleBox["QAOrdering", FontFamily->"Courier", FontWeight->"Bold"], " recives two arguments. The first is the expression we want to transform. \ The second is a list of operators in the order we want they appear in the \ transformed expression." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QAOrdering[expr, {a\&^, b\&^}] // Expand\)], "Input"], Cell[BoxData[ \(\(-7\)\ \[Xi]\ \(a\&^\)\[CenterDot]\(b\&^\) + 3\ \(a\&^\)\[CenterDot]\(a\&^\)\[CenterDot]\(b\&^\)\[CenterDot]\(b\&^\) \ + 3\ \[Xi]\^2\ \(1\&^\)\)], "Output"] }, Open ]], Cell[TextData[{ "note that the commutator between ", Cell[BoxData[ \(TraditionalForm\`a\)]], " and ", Cell[BoxData[ \(TraditionalForm\`b\)]], " had been used internally. In the next example we want the expression to \ be in normal order, it means creation operators before annihilation \ operators" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(expr = a\&^\_1\[CenterDot] a\&^\_2\[CenterDot]\(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_2\%\ \[Dagger] + \(a\&^\)\_1\%\[Dagger]\[CenterDot] a\&^\_1\[CenterDot]\(a\&^\)\_2\%\[Dagger]\[CenterDot]a\&^\_2 + a\&^\_2\[CenterDot]\(a\&^\)\_1\%\[Dagger]\[CenterDot] a\&^\_1\[CenterDot]\(a\&^\)\_2\%\[Dagger]\)], "Input"], Cell[BoxData[ \(\(a\&^\)\_1\[CenterDot]\(a\&^\)\_2\[CenterDot]\(a\&^\)\_1\%\[Dagger]\ \[CenterDot]\(a\&^\)\_2\%\[Dagger] + \(a\&^\)\_2\[CenterDot]\(a\&^\)\_1\%\ \[Dagger]\[CenterDot]\(a\&^\)\_1\[CenterDot]\(a\&^\)\_2\%\[Dagger] + \(a\&^\)\ \_1\%\[Dagger]\[CenterDot]\(a\&^\)\_1\[CenterDot]\(a\&^\)\_2\%\[Dagger]\ \[CenterDot]\(a\&^\)\_2\)], "Output"] }, Open ]], Cell["so we simple enter", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QAOrdering[ expr, {\(a\&^\)\_1\%\[Dagger], \(a\&^\)\_2\%\[Dagger], a\&^\_1, a\&^\_2}]\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(a\&^\)\_1, \ \(a\&^\)\_1\%\[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(\(\([\)\(\(a\&^\)\_2, \ \(a\&^\)\_2\%\[Dagger]\)\(]\)\)\_-\) + \(\(\([\)\(\(a\&^\)\_2, \(a\&^\)\_1\%\ \[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(\(\([\)\(\(a\&^\)\_1, \(a\&^\)\_2\%\ \[Dagger]\)\(]\)\)\_-\) + \(\(\([\)\(\(a\&^\)\_1, \(a\&^\)\_1\%\[Dagger]\)\(]\ \)\)\_-\)\[CenterDot]\(a\&^\)\_2\%\[Dagger]\[CenterDot]\(a\&^\)\_2 + \ \(\(\([\)\(\(a\&^\)\_2, \ \(a\&^\)\_1\%\[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(a\&^\)\_2\%\[Dagger]\ \[CenterDot]\(a\&^\)\_1 + \(a\&^\)\_1\[CenterDot]\(\(\([\)\(\(a\&^\)\_2, \ \(a\&^\)\_1\%\[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(a\&^\)\_2\%\[Dagger] + 2\ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(\(\([\)\(\(a\&^\)\_1, \ \(a\&^\)\_2\%\[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(a\&^\)\_2 + \(a\&^\)\_1\%\ \[Dagger]\[CenterDot]\(\(\([\)\(\(a\&^\)\_2, \ \(a\&^\)\_2\%\[Dagger]\)\(]\)\)\_-\)\[CenterDot]\(a\&^\)\_1 + \(a\&^\)\_1\%\ \[Dagger]\[CenterDot]\(a\&^\)\_1\[CenterDot]\(\(\([\)\(\(a\&^\)\_2, \ \(a\&^\)\_2\%\[Dagger]\)\(]\)\)\_-\) + \ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_2\[CenterDot]\(\(\([\)\(\(a\&^\)\_\ 1, \(a\&^\)\_2\%\[Dagger]\)\(]\)\)\_-\) + \ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_2\%\[Dagger]\[CenterDot]\(\(\([\)\ \(\(a\&^\)\_2, \(a\&^\)\_1\)\(]\)\)\_-\) + 3\ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_2\%\[Dagger]\[CenterDot]\ \(a\&^\)\_1\[CenterDot]\(a\&^\)\_2\)], "Output"] }, Open ]], Cell["\<\ Almost all products in the last expression are normal order products \ excepting terms like \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(a\&^\_1\[CenterDot]\(\([a\&^\_2, \(a\&^\)\_1\%\[Dagger]]\)\_-\)\ \[CenterDot]\(a\&^\)\_2\%\[Dagger]\)], "Input"], Cell[BoxData[ \(\(a\&^\)\_1\[CenterDot]\(\(\([\)\(\(a\&^\)\_2, \(a\&^\)\_1\%\[Dagger]\)\ \(]\)\)\_-\)\[CenterDot]\(a\&^\)\_2\%\[Dagger]\)], "Output"] }, Open ]], Cell["\<\ wich can't be ordered because the commutator is not known, and not rules were \ defined for these products. Let's define the commutators and check it again\ \>", "Text"], Cell[BoxData[{ \(\(\([a\&^\_i_, \(a\&^\)\_j_\%\[Dagger]]\)\_-\) := \ KroneckerDelta[i, j] 1\&^\), "\[IndentingNewLine]", \(\(\([\(a\&^\)\_i_\%\[Dagger], a\&^\_\(j\__\)]\)\_-\) := \(-KroneckerDelta[i, j]\) 1\&^\), "\[IndentingNewLine]", \(\(\([a\&^\_i_, a\&^\_j_]\)\_-\) := 0\), "\[IndentingNewLine]", \(\(\([\(a\&^\)\_i_\%\[Dagger], \(a\&^\)\_j_\%\[Dagger]]\)\_-\) := 0\)}], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \(QAOrdering[ expr, {\(a\&^\)\_1\%\[Dagger], \(a\&^\)\_2\%\[Dagger], a\&^\_1, a\&^\_2}]\)], "Input"], Cell[BoxData[ \(2\ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_1 + \(a\&^\)\_2\%\ \[Dagger]\[CenterDot]\(a\&^\)\_2 + 3\ \(a\&^\)\_1\%\[Dagger]\[CenterDot]\(a\&^\)\_2\%\[Dagger]\[CenterDot]\ \(a\&^\)\_1\[CenterDot]\(a\&^\)\_2 + \(1\&^\)\)], "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["6 Exponential Operators", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["Exp Operator", "Subsection"], Cell[TextData[{ "Exponential operators are implemented with the defined ", StyleBox["Exp", FontFamily->"Courier New", FontWeight->"Bold"], " function. No special internal form is defined" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Exp[T\&^]\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(T\&^\)\)], "Output"] }, Open ]], Cell["\<\ However this is treated as a operator. In general every expression that \ contains operators is considered to be an operator. All commands defined \ above apply to them\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([\(-U\&^\), Exp[T\&^]\^\[Dagger]]\)\_-\) // QACommutatorExpand\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(\(T\&^\)\^\[Dagger]\)\[CenterDot]\(U\&^\) - \(U\&^\)\ \[CenterDot]\[ExponentialE]\^\(\(T\&^\)\^\[Dagger]\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\[ExponentialE]\^\(\(T\&^\)\^\[Dagger]\), \ \(U\&^\)\)\(]\)\)\_-\)\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["BCHRelation", "Subsection"], Cell["\<\ A well known formula to expand an exponential of a sum of operators in terms \ of products of exponential is the Baker\[Dash]Campbell\[Dash]Hausdorff \ relation:\ \>", "Text"], Cell[BoxData[ \(TraditionalForm\`\(\(If\ \ \ \ \ [ A\&^, \(\([A\&^, B\&^]\)\_-\)]\)\_-\) = \ \(\(\([B\&^, \(\([A\&^, B\&^]\)\_-\)]\)\_-\) = 0\ \ \ \ \ then\)\)], "DisplayFormula"], Cell[BoxData[ \(TraditionalForm\`\[ExponentialE]\^\(A\&^\ + \ B\&^\) = \(\ \[ExponentialE]\^A\&^\) \(\[ExponentialE]\^B\&^\) \[ExponentialE]\^\(-\(\(\(1\ \/2\)[A\&^, B\&^]\)\_-\)\)\)], "DisplayFormula", FontSize->14], Cell[TextData[{ "This relation is implemented with the command ", StyleBox["BCHRelation", FontFamily->"Courier", FontWeight->"Bold"] }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Exp[\[Alpha] a\&^\^\[Dagger] - \(\[Alpha]\^*\) a\&^] // BCHRelation\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(\(-\(\[Alpha]\^*\)\)\ \(a\&^\) + \[Alpha]\ \ \(a\&^\)\^\[Dagger]\)\)], "Output"] }, Open ]], Cell[TextData[{ "As we see, if the commutator is not defined ", StyleBox["BCHRelation", FontFamily->"Courier", FontWeight->"Bold"], " don't know how to check the neccesary conditions to expand the \ expression, so let's define the commutators" }], "Text"], Cell[BoxData[{ \(\(\(\([a\&^, a\&^\^\[Dagger]]\)\_-\) = 1\&^;\)\), "\[IndentingNewLine]", \(\(\(\([a\&^\^\[Dagger], a\&^]\)\_-\) = \(-1\&^\);\)\)}], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \(Exp[\[Alpha] a\&^\^\[Dagger] - \(\[Alpha]\^*\) a\&^] // BCHRelation\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(-\(\(\[Alpha]\ \(\[Alpha]\^*\)\)\/2\)\)\ \ \[ExponentialE]\^\(\[Alpha]\ \(a\&^\)\^\[Dagger]\)\[CenterDot]\[ExponentialE]\ \^\(\(-\(\[Alpha]\^*\)\)\ \(a\&^\)\)\)], "Output"] }, Open ]], Cell["\<\ The condition apply and we get the expanded product of exponentials. Note the \ the order in which the arguments enter to the algorithm is important to get \ what we want.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Exp[\(-\(\[Alpha]\^*\)\) a\&^ + \[Alpha] a\&^\^\[Dagger]] // BCHRelation\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(\(\[Alpha]\ \(\[Alpha]\^*\)\)\/2\)\ \ \[ExponentialE]\^\(\(-\(\[Alpha]\^*\)\)\ \ \(a\&^\)\)\[CenterDot]\[ExponentialE]\^\(\[Alpha]\ \(a\&^\)\^\[Dagger]\)\)], \ "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["7 Series expansion for functions of operators", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["First Form", "Subsection"], Cell["\<\ Series power expansion of a function that depends only on one operator, \ around a certain multiple of the identity operator or cero point, up to any \ desired term can be entered as follows\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[f[a\&^], {a\&^, 0\&^, 4}]\)], "Input"], Cell[BoxData[ RowBox[{\(f[0]\ 1\&^\), "+", FractionBox[ RowBox[{\(a\&^\), " ", RowBox[{ SuperscriptBox["f", "\[Prime]", MultilineFunction->None], "[", "0", "]"}]}], TagBox[\(1!\), HoldForm]], "+", FractionBox[ RowBox[{\(a\&^\^2\), " ", RowBox[{ SuperscriptBox["f", "\[Prime]\[Prime]", MultilineFunction->None], "[", "0", "]"}]}], TagBox[\(2!\), HoldForm]], "+", FractionBox[ RowBox[{\(a\&^\^3\), " ", RowBox[{ SuperscriptBox["f", TagBox[\((3)\), Derivative], MultilineFunction->None], "[", "0", "]"}]}], TagBox[\(3!\), HoldForm]], "+", FractionBox[ RowBox[{\(a\&^\^4\), " ", RowBox[{ SuperscriptBox["f", TagBox[\((4)\), Derivative], MultilineFunction->None], "[", "0", "]"}]}], TagBox[\(4!\), HoldForm]]}]], "Output"] }, Open ]], Cell["\<\ we should note that by default evaluation of factorials is holded\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(% // ReleaseHold\)], "Input"], Cell[BoxData[ RowBox[{\(f[0]\ 1\&^\), "+", RowBox[{\(a\&^\), " ", RowBox[{ SuperscriptBox["f", "\[Prime]", MultilineFunction->None], "[", "0", "]"}]}], "+", RowBox[{\(1\/2\), " ", \(a\&^\^2\), " ", RowBox[{ SuperscriptBox["f", "\[Prime]\[Prime]", MultilineFunction->None], "[", "0", "]"}]}], "+", RowBox[{\(1\/6\), " ", \(a\&^\^3\), " ", RowBox[{ SuperscriptBox["f", TagBox[\((3)\), Derivative], MultilineFunction->None], "[", "0", "]"}]}], "+", RowBox[{\(1\/24\), " ", \(a\&^\^4\), " ", RowBox[{ SuperscriptBox["f", TagBox[\((4)\), Derivative], MultilineFunction->None], "[", "0", "]"}]}]}]], "Output"] }, Open ]], Cell[TextData[{ StyleBox["QASeries", FontFamily->"Courier New", FontWeight->"Bold"], " doesn't return a series object, but a polynomial expression on the \ operator variable. A very common expansion is that for exponential operator" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[Exp[\[Alpha] a\&^], {a\&^, 0, 4}]\)], "Input"], Cell[BoxData[ RowBox[{\(1\&^\), "+", FractionBox[\(\[Alpha]\ a\&^\), TagBox[\(1!\), HoldForm]], "+", FractionBox[\(\[Alpha]\^2\ a\&^\^2\), TagBox[\(2!\), HoldForm]], "+", FractionBox[\(\[Alpha]\^3\ a\&^\^3\), TagBox[\(3!\), HoldForm]], "+", FractionBox[\(\[Alpha]\^4\ a\&^\^4\), TagBox[\(4!\), HoldForm]]}]], "Output"] }, Open ]], Cell["\<\ We can find the expansion around a value diferent of cero point using the \ identity operator\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[Sin[a\&^ + \[Phi] 1\&^], {a\&^, s 1\&^, 3}]\)], "Input"], Cell[BoxData[ RowBox[{ FractionBox[\(Cos[s + \[Phi]]\ \((\(-s\)\ 1\&^ + a\&^)\)\), TagBox[\(1!\), HoldForm]], "-", FractionBox[\(Cos[s + \[Phi]]\ \((\(-s\)\ 1\&^ + a\&^)\)\^3\), TagBox[\(3!\), HoldForm]], "+", \(1\&^\ Sin[s + \[Phi]]\), "-", FractionBox[\(\((\(-s\)\ 1\&^ + a\&^)\)\^2\ Sin[s + \[Phi]]\), TagBox[\(2!\), HoldForm]]}]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(\(% // ReleaseHold\) // QAPowerExpand\) // Expand\) // QAPowerContract\)], "Input"], Cell[BoxData[ \(\(-s\)\ Cos[s + \[Phi]]\ 1\&^ + 1\/6\ s\^3\ Cos[s + \[Phi]]\ 1\&^ + Cos[s + \[Phi]]\ a\&^ - 1\/2\ s\^2\ Cos[s + \[Phi]]\ a\&^ + 1\/2\ s\ Cos[s + \[Phi]]\ a\&^\^2 - 1\/6\ Cos[s + \[Phi]]\ a\&^\^3 + 1\&^\ Sin[s + \[Phi]] - 1\/2\ s\^2\ 1\&^\ Sin[s + \[Phi]] + s\ a\&^\ Sin[s + \[Phi]] - 1\/2\ a\&^\^2\ Sin[s + \[Phi]]\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Second Form", "Subsection"], Cell[TextData[{ StyleBox["QASeries", FontFamily->"Courier", FontWeight->"Bold"], " can expand an expression like ", Cell[BoxData[ \(TraditionalForm\`\(\[ExponentialE]\^A\&^\) \(B\&^\) \[ExponentialE]\^\ \(-A\&^\)\)]], " using the following identity" }], "Text"], Cell[BoxData[ \(TraditionalForm\`\(\(If\ \ \ [A\&^, B\&^]\)\_-\) \[NotEqual] 0\ \ then\)], "DisplayFormula"], Cell[BoxData[ \(TraditionalForm\`\(\[ExponentialE]\^A\&^\) \(B\&^\) \ \[ExponentialE]\^\(-A\&^\) = \(\(B\&^\)\(+\)\(\([A\&^, B\&^]\)\_-\)\(+\)\(\(\(1\/\(2!\)\)[ A\&^, \(\([A\&^, B\&^]\)\_-\)]\)\_-\)\(+\)\(\[Ellipsis]\)\(\ \ \ \ \ \ \ \ \ \ \ \)\)\)], "DisplayFormula"], Cell[TextData[{ "In this case a special sintax is used, for instance in the example the \ number ", Cell[BoxData[ \(TraditionalForm\`5\)]], " above represents the number of terms to be included in the expansion" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[\ Exp[T\&^]\[CenterDot]U\&^\[CenterDot]Exp[\(-T\&^\)]\ , 5]\)], "Input"], Cell[BoxData[ RowBox[{ FractionBox[\(\(\([\)\(\(T\&^\), \(U\&^\)\)\(]\)\)\_-\), TagBox[\(1!\), HoldForm]], "+", FractionBox[\(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \(U\&^\)\)\(]\)\)\ \_-\)\)\(]\)\)\_-\), TagBox[\(2!\), HoldForm]], "+", FractionBox[\(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\ \), \(U\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\), TagBox[\(3!\), HoldForm]], "+", FractionBox[\(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\ \), \(\(\([\)\(\(T\&^\), \(U\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\ \(]\)\)\_-\), TagBox[\(4!\), HoldForm]], "+", FractionBox[\(U\&^\), TagBox[\(0!\), HoldForm]]}]], "Output"] }, Open ]], Cell["As before evaluation of factorials is holded.", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(% // ReleaseHold\)], "Input"], Cell[BoxData[ \(1\/24\ \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \ \(\(\([\)\(\(T\&^\), \ \(U\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + 1\/6\ \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \ \(U\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + 1\/2\ \(\(\([\)\(\(T\&^\), \(\(\([\)\(\(T\&^\), \ \(U\&^\)\)\(]\)\)\_-\)\)\(]\)\)\_-\) + \(\(\([\)\(\(T\&^\), \(U\&^\)\)\(]\)\)\ \_-\) + \(U\&^\)\)], "Output"] }, Open ]], Cell["\<\ Holding factorials is a good visual form to check the resulting series \ expansion as shown in the next example\ \>", "Text"], Cell[BoxData[{ \(\(T\&^ = \(1\/2\) \((\(-\[Rho]\)\ \(\[ExponentialE]\^\(\(-\ \ \[ImaginaryI]\)\ \[Xi]\)\) a\&^\[CenterDot] a\&^ + \[Rho]\ \(\[ExponentialE]\^\(\(\ \)\(\[ImaginaryI]\ \ \[Xi]\)\)\) a\&^\^\[Dagger]\[CenterDot] a\&^\^\[Dagger])\);\)\), "\[IndentingNewLine]", \(\(U\&^ = a\&^\ ;\)\)}], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \(\(Exp[T\&^]\[CenterDot]U\&^\[CenterDot]Exp[\(-T\&^\)] // QASeries[#, 10] &\) // Collect[#, {a\&^, \(-\[ExponentialE]\^\(\[ImaginaryI]\ \[Xi]\)\) a\&^\^\[Dagger]}] &\)], "Input"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"(", RowBox[{ FractionBox["1", TagBox[\(0!\), HoldForm]], "+", FractionBox[\(\[Rho]\^2\), TagBox[\(2!\), HoldForm]], "+", FractionBox[\(\[Rho]\^4\), TagBox[\(4!\), HoldForm]], "+", FractionBox[\(\[Rho]\^6\), TagBox[\(6!\), HoldForm]], "+", FractionBox[\(\[Rho]\^8\), TagBox[\(8!\), HoldForm]]}], ")"}], " ", \(a\&^\)}], "-", RowBox[{\(\[ExponentialE]\^\(\[ImaginaryI]\ \[Xi]\)\), " ", RowBox[{"(", RowBox[{ FractionBox["\[Rho]", TagBox[\(1!\), HoldForm]], "+", FractionBox[\(\[Rho]\^3\), TagBox[\(3!\), HoldForm]], "+", FractionBox[\(\[Rho]\^5\), TagBox[\(5!\), HoldForm]], "+", FractionBox[\(\[Rho]\^7\), TagBox[\(7!\), HoldForm]], "+", FractionBox[\(\[Rho]\^9\), TagBox[\(9!\), HoldForm]]}], ")"}], " ", \(\(a\&^\)\^\[Dagger]\)}]}]], "Output"] }, Open ]], Cell["We have shown that ", "Text"], Cell[BoxData[ \(TraditionalForm\`\(exp( T\&^)\) \(U\&^\) \(exp(\(-T\&^\))\) = \(cosh(\[Rho])\)\ \ a\&^ - \ \[ImaginaryI]\ \[ExponentialE]\^\(\(\ \)\(\[ImaginaryI]\ \[Xi]\)\)\ \(sinh(\ \[Rho])\)\ a\&^\^\[Dagger]\)], "DisplayFormula", TextAlignment->Left, TextJustification->0] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["8 Setting Several Definitions", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["QASet and QAClear", "Subsection"], Cell[TextData[{ StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " is designed to make several definitions with quantum objects at the same \ time. We will see the variety of definitions that this command can set up in \ the following examples. One thing to remember about this command is that it \ can't handle definitions with restrictions, or with complex patterns, such \ as, use of opcional patterns. If the definition you want to state is \ complicated, you should do it by your means, attaching rules to quantum \ objects. The syntax is easy: write a definition using ", StyleBox["Set", FontFamily->"Courier New", FontWeight->"Bold"], " or ", StyleBox["SetDelayed", FontFamily->"Courier New", FontWeight->"Bold"], " and then wrapper it with ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], StyleBox[".", FontWeight->"Bold"] }], "Text"], Cell[TextData[{ StyleBox["QAClear", FontFamily->"Courier New", FontWeight->"Bold"], " clears definitions made by ", StyleBox["QASet. ", FontFamily->"Courier New", FontWeight->"Bold"], StyleBox["To use it unset the definition as you would do anyone and then \ wrapper it with", FontFamily->"Times New Roman"], StyleBox[" QAClear.", FontFamily->"Courier New", FontWeight->"Bold"] }], "Text"] }, Closed]], Cell[CellGroupData[{ Cell["Definition type 1", "Subsection"], Cell["Let's define the commutator of two operators as", "Text"], Cell[BoxData[ \(QASet[\ \(\([u\&^, v\&^]\)\_-\) = w\&^\ ]\)], "InputOnly"], Cell["and test some commutators in which these operators appear", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([u\&^, v\&^]\)\_-\), \(\([v\&^, u\&^]\)\_-\), \(\([u\&^, v\&^\^2]\)\_-\), \(\([v\&^, Exp[u\&^]]\)\_-\)}\)], "Input"], Cell[BoxData[ \({\(w\&^\), \(-\(w\&^\)\), \(\(\([\)\(\(u\&^\), \ \(v\&^\)\^2\)\(]\)\)\_-\), \(\(\([\)\(\(v\&^\), \ \[ExponentialE]\^\(u\&^\)\)\(]\)\)\_-\)}\)], "Output"] }, Open ]], Cell["\<\ We see that the last term can't be evaluated. This is because the defined \ commutator between the two operators is very general. For instance, nothing \ can be said about the commutator between the operators and their commutator. \ Let's clear all definitions\ \>", "Text"], Cell[BoxData[ \(QAClear[\ \(\([u\&^, v\&^]\)\_-\)\ =. \ ]\)], "InputOnly"], Cell["\<\ Let's see what happens if we try with a more specific commutator \ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([u\&^, v\&^]\)\_-\) = \(-\[ImaginaryI]\)\ \[HBar] 1\&^\ \ ]\)], "InputOnly"], Cell["\<\ Then more rules can be defined because in this case the operators involved \ commutes with their commutator\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([u\&^, v\&^]\)\_-\), \(\([u\&^, v\&^\^3]\)\_-\), \(\([v\&^, u\&^\^2]\)\_-\), \(\([u\&^, Exp[\[Omega] v\&^\^3]]\)\_-\)}\)], "Input"], Cell[BoxData[ \({\(-\[ImaginaryI]\)\ \[HBar]\ \(1\&^\), \(-3\)\ \[ImaginaryI]\ \[HBar]\ \ \(v\&^\)\^2, 2\ \[ImaginaryI]\ \[HBar]\ \(u\&^\), \(-3\)\ \[ImaginaryI]\ \[Omega]\ \ \[HBar]\ \[ExponentialE]\^\(\[Omega]\ \ \(v\&^\)\^3\)\[CenterDot]\(v\&^\)\^2}\)], "Output"] }, Open ]], Cell[BoxData[ \(QAClear[\ \(\([u\&^, v\&^]\)\_-\) =. \ \ ]\)], "InputOnly"], Cell["\<\ Suppose we have a more complex definition in which patterns are involved\ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([X\&^\_i_, P\&^\_j_]\)\_-\) = 1\&^\ KroneckerDelta[i, j]\ \ ]\)], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([X\&^\_2, P\&^\_2]\)\_-\), \(\([P\&^\_1, X\&^\_3]\)\_-\), \(\([\(P\&^\)\_1\%3, \(X\&^\)\_1\%2]\)\_-\), \ \(\([X\&^\_1, Exp[\[CapitalOmega] P\&^\_2]]\)\_-\)}\)], "Input"], Cell[BoxData[ \({\(1\&^\), 0, \(\(\([\)\(\(P\&^\)\_1\%3, \(X\&^\)\_1\%2\)\(]\)\)\_-\), \(\(\([\)\(\ \(X\&^\)\_1, \[ExponentialE]\^\(\[CapitalOmega]\ \(P\&^\)\_2\)\)\(]\)\)\_-\)}\ \)], "Output"] }, Open ]], Cell["\<\ we see that even if we use a commutator, which commutes with both operators, \ extra definitions are not setup. In those cases you should define them by \ your own. For example\ \>", "Text"], Cell[BoxData[ \(\(\([X\&^\_i_, \((P\&^\_j_)\)\^n_. ]\)\_-\) := \(\(n[X\&^\_i, P\&^\_j]\)\_-\)\[CenterDot]\(P\&^\)\_j\%\(n - 1\)\)], \ "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([X\&^\_2, \(P\&^\)\_3\%2]\)\_-\), \(\([X\&^\_2, \ \(P\&^\)\_2\%5]\)\_-\), \(\([X\&^\_2, \(P\&^\)\_2\%2]\)\_-\)}\)], "Input"], Cell[BoxData[ \({0, 5\ \(P\&^\)\_2\%4, 2\ \(P\&^\)\_2}\)], "Output"] }, Open ]], Cell["we clear all definitions with", "Text"], Cell[BoxData[ \(QAClear[\ \(\([X\&^\_i_, P\&^\_j_]\)\_-\) =. \ ]\)], "InputOnly"], Cell[BoxData[ \(\(\([X\&^\_i_, \((P\&^\_j_)\)\^n_. ]\)\_-\) =. \)], "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell["Definition type 2", "Subsection"], Cell[TextData[{ "We give here other definitions that ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " can handle in which commutators appear. Again this eorks well if not \ complex patterns are given. " }], "Text"], Cell["\<\ In the following example the commutator between an operator and a commutator \ is defined\ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([P\&^, \(\([Q\&^, R\&^]\)\_-\)]\)\_-\) = S\&^\ ]\)], "InputOnly"], Cell["\<\ then all equivalent forms changing the order of the operators are defined\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([P\&^, \(\([Q\&^, R\&^]\)\_-\)]\)\_-\), \(\([\(\([Q\&^, R\&^]\)\_-\), P\&^]\)\_-\)}\)], "Input"], Cell[BoxData[ \({\(S\&^\), \(-\(S\&^\)\)}\)], "Output"] }, Open ]], Cell["We can define the commutator of two commutators as", "Text"], Cell[BoxData[ \(QASet[\ \(\([\(\([x\&^\_1, x\&^\_2]\)\_-\), \(\([x\&^\_3, x\&^\_4]\)\_-\)]\)\_-\) = x\&^\_5\ ]\)], "InputOnly"], Cell["\<\ again, all equivalent forms changing the order of the operators are defined, \ for example\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([\(\([x\&^\_4, x\&^\_3]\)\_-\), \(\([x\&^\_2, x\&^\_1]\)\_-\)]\)\_-\)\)], "Input"], Cell[BoxData[ \(\(-\(x\&^\)\_5\)\)], "Output"] }, Open ]], Cell["\<\ The following expression is the expanded form of the commutator two input \ lines above, this expression don't simplify as we would like\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(x\&^\_1\[CenterDot]x\&^\_2\[CenterDot]x\&^\_3\[CenterDot]x\&^\_4 - x\&^\_1\[CenterDot]x\&^\_2\[CenterDot]x\&^\_4\[CenterDot]x\&^\_3 - x\&^\_2\[CenterDot]x\&^\_1\[CenterDot]x\&^\_3\[CenterDot]x\&^\_4 + x\&^\_2\[CenterDot]x\&^\_1\[CenterDot]x\&^\_4\[CenterDot]x\&^\_3 - x\&^\_3\[CenterDot]x\&^\_4\[CenterDot]x\&^\_1\[CenterDot]x\&^\_2 + x\&^\_3\[CenterDot]x\&^\_4\[CenterDot]x\&^\_2\[CenterDot]x\&^\_1 + x\&^\_4\[CenterDot]x\&^\_3\[CenterDot]x\&^\_1\[CenterDot]x\&^\_2 - x\&^\_4\[CenterDot]x\&^\_3\[CenterDot]x\&^\_2\[CenterDot] x\&^\_1\)], "Input"], Cell[BoxData[ \(\(x\&^\)\_1\[CenterDot]\(x\&^\)\_2\[CenterDot]\(x\&^\)\_3\[CenterDot]\(\ x\&^\)\_4 - \(x\&^\)\_1\[CenterDot]\(x\&^\)\_2\[CenterDot]\(x\&^\)\_4\ \[CenterDot]\(x\&^\)\_3 - \ \(x\&^\)\_2\[CenterDot]\(x\&^\)\_1\[CenterDot]\(x\&^\)\_3\[CenterDot]\(x\&^\)\ \_4 + \(x\&^\)\_2\[CenterDot]\(x\&^\)\_1\[CenterDot]\(x\&^\)\_4\[CenterDot]\(\ x\&^\)\_3 - \(x\&^\)\_3\[CenterDot]\(x\&^\)\_4\[CenterDot]\(x\&^\)\_1\ \[CenterDot]\(x\&^\)\_2 + \ \(x\&^\)\_3\[CenterDot]\(x\&^\)\_4\[CenterDot]\(x\&^\)\_2\[CenterDot]\(x\&^\)\ \_1 + \(x\&^\)\_4\[CenterDot]\(x\&^\)\_3\[CenterDot]\(x\&^\)\_1\[CenterDot]\(\ x\&^\)\_2 - \(x\&^\)\_4\[CenterDot]\(x\&^\)\_3\[CenterDot]\(x\&^\)\_2\ \[CenterDot]\(x\&^\)\_1\)], "Output"] }, Open ]], Cell["we can manipulate the expression to find the answer", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract[#, {{x\&^\_1, x\&^\_2}, {x\&^\_3, x\&^\_4}}] &\)], "Input"], Cell[BoxData[ \(\(\(\([\)\(\(x\&^\)\_1, \ \(x\&^\)\_2\)\(]\)\)\_-\)\[CenterDot]\(\(\([\)\(\(x\&^\)\_3, \(x\&^\)\_4\)\(]\ \)\)\_-\) - \(\(\([\)\(\(x\&^\)\_3, \(x\&^\)\_4\)\(]\)\)\_-\)\[CenterDot]\(\(\ \([\)\(\(x\&^\)\_1, \(x\&^\)\_2\)\(]\)\)\_-\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% // QACommutatorContract\)], "Input"], Cell[BoxData[ \(\(x\&^\)\_5\)], "Output"] }, Open ]], Cell["We clear all definitions with", "Text"], Cell[BoxData[ \(QAClear[\ \(\([P\&^, \(\([Q\&^, R\&^]\)\_-\)]\)\_-\) =. \ ]\)], "InputOnly"], Cell[BoxData[ \(QAClear[\ \(\([\(\([x\&^\_1, x\&^\_2]\)\_-\), \(\([x\&^\_3, x\&^\_4]\)\_-\)]\)\_-\) =. ]\)], "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell["Definition type 3", "Subsection"], Cell["\<\ If we have two operators that commute between them several definitions are \ setup at once\ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([m\&^, n\&^]\)\_-\) = 0\ ]\)], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ \({\(\([m\&^, n\&^]\)\_-\), \(\([n\&^, m\&^\^3]\)\_-\), \(\([Exp[m\&^], Exp[n\&^]]\)\_-\)}\)], "Input"], Cell[BoxData[ \({0, 0, 0}\)], "Output"] }, Open ]], Cell[BoxData[ \(QAClear[\ \(\([m\&^, n\&^]\)\_-\) =. ]\)], "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell["Definition type 4", "Subsection"], Cell["\<\ We can enter a definition in which two operators commutes with their \ commutator. \ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([J\&^, \(\([J\&^, K\&^]\)\_-\)]\)\_-\) = 0, \ \(\([K\&^, \(\([J\&^, K\&^]\)\_-\)]\)\_-\) = 0]\)], "InputOnly"], Cell["so the following commutators can be computed", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \({\ \(\([K\&^, J\&^\^2]\)\_-\), \(\([J\&^, Exp[\[Omega]\ K\&^\^4]]\)\_-\)\ , \(\([K\&^\^3, J\&^\^3]\)\_-\)}\)], "Input"], Cell[BoxData[ \({\(-2\)\ \(\(\([\)\(\(J\&^\), \ \(K\&^\)\)\(]\)\)\_-\)\[CenterDot]\(J\&^\), 4\ \[Omega]\ \(\(\([\)\(\(J\&^\), \(K\&^\)\)\(]\)\)\_-\)\[CenterDot]\ \[ExponentialE]\^\(\[Omega]\ \(K\&^\)\^4\)\[CenterDot]\(K\&^\)\^3, \(-6\)\ \(\ \([\)\(\(J\&^\), \(K\&^\)\)\(]\)\)\_-\%3 - 9\ \(\(\([\)\(\(J\&^\), \(K\&^\)\)\(]\)\)\_-\)\[CenterDot]\(J\&^\)\^2\ \[CenterDot]\(K\&^\)\^2 + 18\ \(\([\)\(\(J\&^\), \(K\&^\)\)\(]\)\)\_-\%2\[CenterDot]\(J\&^\)\ \[CenterDot]\(K\&^\)}\)], "Output"] }, Open ]], Cell["\<\ Let's show that the answer for the last term was the correct one. First, we \ clear all definitions\ \>", "Text"], Cell[BoxData[ \(QAClear[\ \(\([J\&^, \(\([J\&^, K\&^]\)\_-\)]\)\_-\) =. , \ \(\([K\&^, \(\([J\&^, K\&^]\)\_-\)]\)\_-\) =. \ ]\)], "InputOnly"], Cell[TextData[{ "Let's suppose that the commutator of ", Cell[BoxData[ \(TraditionalForm\`J\&^\)]], " and ", Cell[BoxData[ \(TraditionalForm\`K\&^\)]], " is ", Cell[BoxData[ \(TraditionalForm\`L\&^\)]], ". We can define it giving two definitions as" }], "Text"], Cell[BoxData[{ \(\(\(\([J\&^, K\&^]\)\_-\) = L\&^;\)\), "\[IndentingNewLine]", \(\(\(\([K\&^, J\&^]\)\_-\) = \(-L\&^\);\)\)}], "InputOnly"], Cell[TextData[{ "and the we suppose that ", Cell[BoxData[ \(TraditionalForm\`J\&^\)]], " and ", Cell[BoxData[ \(TraditionalForm\`K\&^\)]], " commute with their commutator." }], "Text"], Cell[BoxData[{ \(\(\(\([J\&^, L\&^]\)\_-\) = \(\(\([L\&^, J\&^]\)\_-\) = 0\);\)\), "\n", \(\(\(\([K\&^, L\&^]\)\_-\) = \(\(\([L\&^, K\&^]\)\_-\) = 0\);\)\)}], "InputOnly"], Cell["\<\ the trick resides on the order the operators are given in the answer\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(\(\(\([K\&^\^3, J\&^\^3]\)\_-\) // QAPowerExpand\) // QAOrdering[#, {L\&^, J\&^, K\&^}] &\) // Expand\) // QAPowerContract\)], "Input"], Cell[BoxData[ \(\(-9\)\ \(L\&^\)\[CenterDot]\(J\&^\)\^2\[CenterDot]\(K\&^\)\^2 + 18\ \(L\&^\)\^2\[CenterDot]\(J\&^\)\[CenterDot]\(K\&^\) - 6\ \(L\&^\)\^3\)], "Output"] }, Open ]], Cell[TextData[{ "Comparing this result with the given above we see that they coincide. \ Indeed the formula used by ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " to handle this kind of commutators was infered testing several cases \ using ", StyleBox["QAOrdering", FontFamily->"Courier New", FontWeight->"Bold"], ". Before including in the package this formula was proved by induction. " }], "Text"], Cell[BoxData[ \(\({\ \ \(\([J\&^, K\&^]\)\_-\) =. , \(\([K\&^, J\&^]\)\_-\) =. , \(\([J\&^, L\&^]\)\_-\) =. , \[IndentingNewLine]\(\([L\&^, J\&^]\)\_-\) =. , \(\([K\&^, L\&^]\)\_-\) =. , \(\([L\&^, K\&^]\)\_-\) =. \ };\)\)], "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell["Definition type 5", "Subsection"], Cell[TextData[{ "With ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " it is posible to define the action of an operator on a ket and some \ consequences. For example the bra aaociated equation automatically holds. In \ the following example we define an eigenvalue expression for the operator ", Cell[BoxData[ \(TraditionalForm\`\(\(Q\&^\)\(.\)\)\)]] }], "Text"], Cell[BoxData[ RowBox[{"QASet", "[", " ", RowBox[{ RowBox[{\(Q\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(q_, p_\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{"q", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(q, p\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}]}], " ", "]"}]], "InputOnly"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"{", " ", RowBox[{ RowBox[{\(Q\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Epsilon], \[Xi]\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["Q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(q, p\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(Q\&^\^\[Dagger]\)}], ",", RowBox[{\(Q\&^\^2\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(q, p\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["Q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(\[Nu], \[Mu]\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\[ExponentialE]\^\(\[CapitalOmega] Q\&^\^\[Dagger]\)\)}]}], "}"}]], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"\[Epsilon]", " ", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Epsilon], \[Xi]\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["Q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(q, p\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], " ", \(q\^*\)}], ",", RowBox[{\(q\^2\), " ", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(q, p\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], ",", RowBox[{\(\[ExponentialE]\^\(\[CapitalOmega]\ \(\[Nu]\^*\)\)\), " ", TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["Q", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(\[Nu], \[Mu]\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"]}]}], "}"}]], "Output"] }, Open ]], Cell["we clear definitions as before", "Text"], Cell[BoxData[ RowBox[{"QAClear", "[", " ", RowBox[{ RowBox[{\(Q\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(q_, p_\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["Q", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "=."}], " ", "]"}]], "InputOnly"], Cell[TextData[{ "Note that ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " could set up all these definitions because the equation we gave to it was \ an eigenvalue equation. We also mention that the operator in the argument of \ ", StyleBox["QASet", FontFamily->"Courier New", FontWeight->"Bold"], " can't be a pattern." }], "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["9 Example: Coherent States", "Section 1", ShowGroupOpenCloseIcon->True], Cell[CellGroupData[{ Cell["The harmonic oscillator in quantum mechanics", "Subsection", ShowGroupOpenCloseIcon->True], Cell[TextData[{ "The Hamiltonian for a particle of mass ", Cell[BoxData[ \(TraditionalForm\`m\)]], " placed in an harmonic potential in terms of position and momentum \ operators is given by" }], "Text"], Cell[BoxData[ \(\(H\&^ = \(1\/\(2 m\)\) P\&^\^2 + \(\(m\ \[Omega]\^2\)\/2\) X\&^\^2;\)\)], "InputOnly"], Cell["\<\ for these operators we implement the commutation relation according to\ \>", "Text"], Cell[BoxData[ \(QASet[\ \(\([X\&^, P\&^]\)\_-\) = \[ImaginaryI]\ \[HBar]\ 1\&^\ ]\)], "InputOnly"], Cell["\<\ The problem of finding the eigenvalues for such hamiltonian is nicely solved \ by introducing creation and annihilation operators, which are related to the \ position and mometum operators according to the folowing rule\ \>", "Text"], Cell[BoxData[ \(\(rule1 = {a\&^\^\[Dagger] \[Rule] \((\(\@\(\(m\ \[Omega]\)\/\(2 \ \[HBar]\)\)\) X\&^ - \(\[ImaginaryI]\/\@\(2 m\ \[HBar]\ \[Omega]\)\) P\&^)\), a\&^ \[Rule] \((\(\@\(\(m\ \[Omega]\)\/\(2 \[HBar]\)\)\) X\&^ + \(\[ImaginaryI]\/\@\(2 m\ \[HBar]\ \[Omega]\)\) P\&^)\)};\)\)], "InputOnly"], Cell["the inverse relation is", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(rule2 = \(Solve[{a\&^\^\[Dagger] == \((\(\@\(\(m\ \[Omega]\)\/\(2 \ \[HBar]\)\)\) X\&^ - \(\[ImaginaryI]\/\@\(2 m\ \[HBar]\ \[Omega]\)\) P\&^)\), a\&^ == \((\(\@\(\(m\ \[Omega]\)\/\(2 \[HBar]\)\)\) X\&^ + \(\[ImaginaryI]\/\@\(2 m\ \[HBar]\ \[Omega]\)\) P\&^)\)}, {X\&^, P\&^}]\)[\([1]\)] // Simplify\)], "Input"], Cell[BoxData[ \({\(X\&^\) \[Rule] \(\(a\&^\) + \(a\&^\)\^\[Dagger]\)\/\(\@2\ \@\(\(m\ \ \[Omega]\)\/\[HBar]\)\), \(P\&^\) \[Rule] \(-\(\(\[ImaginaryI]\ \@\(m\ \ \[Omega]\ \[HBar]\)\ \((\(a\&^\) - \(a\&^\)\^\[Dagger])\)\)\/\@2\)\)}\)], \ "Output"] }, Open ]], Cell["\<\ From the commutation relation for momentum and position operators the \ commuttion relation for these new operators can be found\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\([a\&^, a\&^\^\[Dagger]]\)\_-\) /. rule1 // PowerExpand\)], "Input"], Cell[BoxData[ \(\(1\&^\)\)], "Output"] }, Open ]], Cell["We implement this commutator as a definition", "Text"], Cell[BoxData[ \(QASet[\ \(\([a\&^, a\&^\^\[Dagger]]\)\_-\) = 1\&^\ ]\)], "InputOnly"], Cell["The replacing hamiltonian reduces to", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\(H\&^ /. rule2 // QAPowerExpand\) // Factor\) // QAOrdering[#, {a\&^\^\[Dagger], a\&^}] &\)], "Input"], Cell[BoxData[ \(1\/2\ \[Omega]\ \[HBar]\ \((2\ \(a\&^\)\^\[Dagger]\[CenterDot]\(a\&^\) \ + \(1\&^\))\)\)], "Output"] }, Open ]], Cell["\<\ So the problem of finding eigenstates of the HO reduces to find the \ eigenstates of the number operator defined as \ \>", "Text"], Cell[BoxData[ \(\(\[ScriptCapitalN]\&^ = a\&^\^\[Dagger]\[CenterDot]a\&^\ ;\)\)], "InputOnly"], Cell[TextData[{ "This problem can be solved and what one obtains is a set of infinite \ eigenstates labeled as ", Cell[BoxData[ FormBox[ RowBox[{" ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], TraditionalForm]]], " with eigenvalue ", Cell[BoxData[ \(TraditionalForm\`n\)]], ", where the allowed values fo ", Cell[BoxData[ \(TraditionalForm\`n\)]], " are ", Cell[BoxData[ \(TraditionalForm\`n = 0, 1, 2 \[Ellipsis]\)]], "This solutions for a basis in the hilbert space" }], "Text"], Cell[BoxData[ RowBox[{ TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["n_", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["m_", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], Braket, TagStyle->"BraKetWrapper"], ":=", \(KroneckerDelta[n, m]\)}]], "InputOnly"], Cell[TextData[{ "The action of ", Cell[BoxData[ \(TraditionalForm\`a\&^, a\&^\^\[Dagger]\)]], "on these eigenstates can be found, and we introduce them as defintions to \ work with" }], "Text"], Cell[BoxData[ RowBox[{"QASet", "[", " ", RowBox[{ RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{\(\@n\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(n - 1\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], " ", "]"}]], "InputOnly"], Cell[BoxData[ RowBox[{"QASet", "[", " ", RowBox[{ RowBox[{\(a\&^\^\[Dagger]\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{\(\@\(n + 1\)\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(n + 1\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], " ", "]"}]], "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell["Definition of coherent states", "Subsection", ShowGroupOpenCloseIcon->True], Cell["\<\ Coherent states are well known as quasi-classical states for the harmonic \ oscillator. This state can be expressed as a linear superposition of the \ infinite fock states which are eigenstates of the harmonic oscillator \ hamiltonian. \ \>", "Text"], Cell["\<\ Formally a coherent state is an eigenstate of the annihilation operator. We \ can introduce it as a definition to work with.\ \>", "Text"], Cell[BoxData[ RowBox[{"QASet", "[", " ", RowBox[{ RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["a_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{"a", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["a", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}]}], " ", "]"}]], "InputOnly"], Cell["\<\ Note that the eigenkets of the annihilation operator have a subscript label \ \"\[Alpha]\", so they are not confused with the engeinkets of the number \ operator. \ \>", "Text"], Cell["\<\ Expanding the coherent state in the fock basis and applying the annihilation \ operator we have (sum over n is implied on the r.h.s of equation)\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{\(a\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "\[Equal]", RowBox[{\(a\&^\), "\[CenterDot]", RowBox[{"(", RowBox[{\(c[n]\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ")"}]}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"\[Alpha]", " ", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "==", RowBox[{\(\@n\), " ", \(c[n]\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\(-1\) + n\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell[TextData[{ "where the sum on the hand r.h.s of equation runs from ", Cell[BoxData[ \(TraditionalForm\`1\)]], "to ", Cell[BoxData[ \(TraditionalForm\`\[Infinity]\)]], ". Replacing the expansion for the coherent state on the l.h.s shifted by \ one so it too runs from ", Cell[BoxData[ \(TraditionalForm\`1\)]], " to \[Infinity] we have" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"\[Alpha]", " ", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "==", RowBox[{\(\@n\), " ", \(c[n]\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\(-1\) + n\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], "/.", RowBox[{ TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], "->", RowBox[{\(c[n - 1]\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(n - 1\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"\[Alpha]", " ", \(c[\(-1\) + n]\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\(-1\) + n\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "==", RowBox[{\(\@n\), " ", \(c[n]\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\(-1\) + n\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell["\<\ the solution of the last equation gives the following expression (sum over n \ implied)\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], "=", RowBox[{\(\[Alpha]\^n\/\@\(n!\)\), \(c\_0\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], ";"}]], "InputOnly"], Cell["and the correspondent bra", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "=", RowBox[{\(\((\(\[Alpha]\^*\))\)\^m\/\@\(m!\)\), \(c0\^*\), TagBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["m", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}], Bra, TagStyle->"BraWrapper"]}]}], ";"}]], "InputOnly"], Cell[TextData[{ "normalization of the coherent state assuming that ", Cell[BoxData[ \(TraditionalForm\`c0\)]], " is real gives a simple equation to solve (sum over ", Cell[BoxData[ \(TraditionalForm\`n\)]], " on the r.h.s)" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{" ", RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "\[Equal]", "1"}]}]], "Input"], Cell[BoxData[ \(\(\[Alpha]\^n\ \(c0\^*\)\ \((\(\[Alpha]\^*\))\)\^m\ KroneckerDelta[m, \ n]\ c\_0\)\/\(\@\(m!\)\ \@\(n!\)\) == 1\)], "Output"] }, Open ]], Cell["This sum is, of course the exponential", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\[Sum]\+\(n = 0\)\%\[Infinity]\( c0\ \[Alpha]\^n\ \(c0\^*\)\ \((\(\ \[Alpha]\^*\))\)\^n\)\/\(n!\) == 1\)], "Input"], Cell[BoxData[ \(c0\ \[ExponentialE]\^\(\[Alpha]\ \(\[Alpha]\^*\)\)\ \(c0\^*\) == 1\)], "Output"] }, Open ]], Cell["So we got our final expression for a coherent state", "Text"], Cell[BoxData[ FormBox[ RowBox[{ TagBox[ SubscriptBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[\(\(\ \)\(\[Alpha]\)\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], "=", RowBox[{\(\[ExponentialE]\^\(-\(\(|\)\(\ \)\(\[Alpha]\)\(\ \)\( | \^2\ \)\(\(/\)\(\ \)\(2\)\)\)\)\), RowBox[{\(\[Sum]\+\(n = 0\)\%\[Infinity]\), RowBox[{\(\[Alpha]\^n\/\@\(n!\)\), TagBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]}]}], TraditionalForm]], "DisplayFormula"] }, Closed]], Cell[CellGroupData[{ Cell["Coherent states: minimun uncertainty states", "Subsection", ShowGroupOpenCloseIcon->True], Cell["\<\ Before going on, we clear the definition of the coherent state in terms of \ fock states. We also enter the normalization of coherent states to work \ automatically\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], "=."}], " ", ";", " ", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "=."}], ";", " ", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], SubscriptBox[ RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["a_", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["a_", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]]}], Braket, TagStyle->"BraKetWrapper"], "=", "1"}], ";"}]], "InputOnly"], Cell["\<\ The expectation values of the position operator and its square when the \ system is in a coherent state can be calulated as\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[LeftAngleBracket]X\[RightAngleBracket]\_\[Alpha]\), "=", RowBox[{ RowBox[{ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(X\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "/.", "rule2"}], "//", "PowerExpand"}], "//", "FullSimplify"}]}]], "Input"], Cell[BoxData[ \(\(\@2\ \@\[HBar]\ Re[\[Alpha]]\)\/\(\@m\ \@\[Omega]\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[LeftAngleBracket]X\^2\[RightAngleBracket]\_\[Alpha]\), "=", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(X\&^\^2\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "/.", "rule2"}], "//", "QAPowerExpand"}], "//", "\[IndentingNewLine]", "\t\t\t\t\t", \(QAOrdering[#, {a\&^\^\[Dagger], a\&^}] &\)}], "//", "FullSimplify"}]}]], "Input"], Cell[BoxData[ \(\(\[HBar]\ \((1 + \[Alpha]\^2 + 2\ \[Alpha]\ \(\[Alpha]\^*\) + \((\(\ \[Alpha]\^*\))\)\^2)\)\)\/\(2\ m\ \[Omega]\)\)], "Output"] }, Open ]], Cell["the uncertainty in the position is given by", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\[CapitalDelta]x = \(\@\(\[LeftAngleBracket]X\^2\[RightAngleBracket]\_\ \[Alpha] - \[LeftAngleBracket]X\[RightAngleBracket]\_\[Alpha]\^2\) // FullSimplify\) // PowerExpand\)], "Input"], Cell[BoxData[ \(\@\[HBar]\/\(\@2\ \@m\ \@\[Omega]\)\)], "Output"] }, Open ]], Cell["\<\ Similarly the expectation values of the momentum operator and its square when \ the system is in a coherent state can be calulated as \ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[LeftAngleBracket]P\[RightAngleBracket]\_\[Alpha]\), "=", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(P\&^\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "/.", "rule2"}], "//", "Factor"}], "//", "\[IndentingNewLine]", "\t\t\t\t\t", "PowerExpand"}], "//", "FullSimplify"}]}]], "Input"], Cell[BoxData[ \(\@2\ \@m\ \@\[Omega]\ \@\[HBar]\ Im[\[Alpha]]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[LeftAngleBracket]P\^2\[RightAngleBracket]\_\[Alpha]\), "=", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["\[Alpha]", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(P\&^\^2\), "\[CenterDot]", TagBox[ SubscriptBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], "/.", "rule2"}], "//", "QAPowerExpand"}], "//", "\[IndentingNewLine]", "\t\t\t\t\t", \(QAOrdering[#, {a\&^\^\[Dagger], a\&^}] &\)}], "//", "FullSimplify"}]}]], "Input"], Cell[BoxData[ \(\(-\(1\/2\)\)\ m\ \[Omega]\ \[HBar]\ \((\(-1\) + \[Alpha]\^2 - 2\ \[Alpha]\ \(\[Alpha]\^*\) + \((\(\[Alpha]\^*\))\)\^2)\)\)], \ "Output"] }, Open ]], Cell["and the uncertainty in the momentum give us", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\[CapitalDelta]p = \(\@\(\[LeftAngleBracket]P\^2\[RightAngleBracket]\_\ \[Alpha] - \[LeftAngleBracket]P\[RightAngleBracket]\_\[Alpha]\^2\) // FullSimplify\) // PowerExpand\)], "Input"], Cell[BoxData[ \(\(\@m\ \@\[Omega]\ \@\[HBar]\)\/\@2\)], "Output"] }, Open ]], Cell["\<\ with those results the product of the uncertainties gives the minimun value\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\[CapitalDelta]x\ \[CapitalDelta]p\)], "Input"], Cell[BoxData[ \(\[HBar]\/2\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["The displacement operator", "Subsection", ShowGroupOpenCloseIcon->True], Cell["We define the displacement operators as ", "Text"], Cell[BoxData[ \(\[ScriptCapitalD][\[Alpha]_] := Exp[\[Alpha]\ a\&^\^\[Dagger] - \(\[Alpha]\^*\) a\&^]\)], "InputOnly"], Cell["let's apply this operator to the vacuum fock state", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{\(\[ScriptCapitalD][\[Alpha]]\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "//", "BCHRelation"}]], "Input"], Cell[BoxData[ RowBox[{\(\[ExponentialE]\^\(-\(\(\[Alpha]\ \(\[Alpha]\^*\)\)\/2\)\)\), " ", RowBox[{\(\[ExponentialE]\^\(\[Alpha]\ \(a\&^\)\^\[Dagger]\)\), "\[CenterDot]", \(\[ExponentialE]\^\(\(-\(\[Alpha]\^*\)\)\ \(a\&^\)\)\ \), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Output"] }, Open ]], Cell[TextData[{ "expanding in series both exponential (note that we need to expand the \ powers because we have not defined rules for the action of powers of ", Cell[BoxData[ \(TraditionalForm\`a\&^, a\&^\^\[Dagger]\)]], "on fock states, thus we have to apply one operator each time to the \ vacuum)" }], "Text"], Cell[BoxData[ \(\(exp1 = QASeries[\[ExponentialE]\^\(\(-\(\[Alpha]\^*\)\)\ a\&^\), {a\&^, 0, 6}] // QAPowerExpand;\)\)], "InputOnly"], Cell[BoxData[ \(\(exp2 = QASeries[\[ExponentialE]\^\(\[Alpha]\ a\&^\^\[Dagger]\), {a\&^\^\ \[Dagger], 0, 6}] // QAPowerExpand;\)\)], "InputOnly"], Cell["thus we have", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{\(\[ExponentialE]\^\(-\(\(\[Alpha]\ \(\[Alpha]\^*\)\)\/2\)\)\), " ", RowBox[{"exp2", "\[CenterDot]", "exp1", "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], "//", "ReleaseHold"}]], "Input"], Cell[BoxData[ RowBox[{\(\[ExponentialE]\^\(-\(\(\[Alpha]\ \(\[Alpha]\^*\)\)\/2\)\)\), " ", RowBox[{"(", RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "+", RowBox[{"\[Alpha]", " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["1", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "+", FractionBox[ RowBox[{\(\[Alpha]\^2\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["2", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(\@2\)], "+", FractionBox[ RowBox[{\(\[Alpha]\^3\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["3", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(\@6\)], "+", FractionBox[ RowBox[{\(\[Alpha]\^4\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["4", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(2\ \@6\)], "+", FractionBox[ RowBox[{\(\[Alpha]\^5\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["5", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(2\ \@30\)], "+", FractionBox[ RowBox[{\(\[Alpha]\^6\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["6", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(12\ \@5\)]}], ")"}]}]], "Output"] }, Open ]], Cell["\<\ this is not other thing, but the definition of the coherent state in terms of \ fock states. So we state that the displacement operator applied on vacuum \ generates a coherent state\ \>", "Text"], Cell[BoxData[ FormBox[ RowBox[{ TagBox[ SubscriptBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["\[Alpha]", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[\(\(\ \)\(\[Alpha]\)\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"], "=", RowBox[{ RowBox[{\(\[ScriptCapitalD](\[Alpha])\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\(\ \)\(0\)\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{\(\[ExponentialE]\^\(-\(\(|\)\(\ \)\(\[Alpha]\)\(\ \)\( | \ \^2\)\(\(/\)\(\ \)\(2\)\)\)\)\), RowBox[{\(\[Sum]\+\(n = 0\)\%\[Infinity]\), RowBox[{\(\[Alpha]\^n\/\@\(n!\)\), TagBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]}]}]}], TraditionalForm]], "DisplayFormula"], Cell[TextData[{ "One over property of the displacement operator can be derived using the \ expansion formula for expressions like ", Cell[BoxData[ \(TraditionalForm\`\(\[ExponentialE]\^A\&^\) \(B\&^\) \[ExponentialE]\^\ \(-A\&^\)\)]], " as explained in part 7" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[\ \[ScriptCapitalD][\[Alpha]]\^\[Dagger]\[CenterDot] a\&^\[CenterDot]\[ScriptCapitalD][\[Alpha]], 10] // ReleaseHold\)], "Input"], Cell[BoxData[ \(\[Alpha]\ \(1\&^\) + \(a\&^\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(QASeries[\ \[ScriptCapitalD][\[Alpha]]\^\[Dagger]\[CenterDot] a\&^\^\[Dagger]\[CenterDot]\[ScriptCapitalD][\[Alpha]], 10] // ReleaseHold\)], "Input"], Cell[BoxData[ \(\(\[Alpha]\^*\)\ \(1\&^\) + \(a\&^\)\^\[Dagger]\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Evolution of initial coherent state", "Subsection", ShowGroupOpenCloseIcon->True], Cell["\<\ As we said above the fock states are eigenkets of the number operator. We \ want to set up this fact as a definition to work with.\ \>", "Text"], Cell[BoxData[{\(\[ScriptCapitalN]\&^ =. \), "\[IndentingNewLine]", RowBox[{"QASet", "[", " ", RowBox[{ RowBox[{\(\[ScriptCapitalN]\&^\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n_", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "=", RowBox[{"n", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}], " ", "]"}]}], "InputOnly"], Cell["with this definition the hamiltonian operator is given by", "Text"], Cell[BoxData[ \(TraditionalForm\`H\&^ = \[HBar]\ \[Omega]\ \((\[ScriptCapitalN]\&^ + 1\/2)\)\)], "DisplayFormula"], Cell["\<\ droping the cero point energy (taking it as a reference) the hamiltonian \ reads\ \>", "Text"], Cell[BoxData[ \(TraditionalForm\`H\&^ = \[HBar]\ \[Omega] \[ScriptCapitalN]\&^\)], \ "DisplayFormula"], Cell["so the evolution operator is given by", "Text"], Cell[BoxData[ \(\[ScriptCapitalU][t_] := Exp[\(-\[ImaginaryI]\)\ \[Omega]\ \(\[ScriptCapitalN]\&^\) t]\)], "InputOnly"], Cell[TextData[{ "If the state of the system at initial time is a coherent state the at time \ ", Cell[BoxData[ \(TraditionalForm\`t\)]], " we have (sum over ", Cell[BoxData[ \(TraditionalForm\`n\)]], " is implied in the definition of the coherent state)" }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Psi], t\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], "=", RowBox[{\(\[ScriptCapitalU][t]\), "\[CenterDot]", RowBox[{"(", RowBox[{\(\[ExponentialE]\^\(\(-Abs[\[Alpha]]\^2\)/ 2\)\), \(\[Alpha]\^n\/\@\(n!\)\), TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], ")"}]}]}]], "Input"], Cell[BoxData[ FractionBox[ RowBox[{\(\[ExponentialE]\^\(\(-\[ImaginaryI]\)\ n\ t\ \[Omega] - Abs[\[Alpha]]\^2\/2\)\), " ", \(\[Alpha]\^n\), " ", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["n", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], \(\@\(n!\)\)]], "Output"] }, Open ]], Cell["\<\ It's easy to see from these result that a time t the state will also be \ coherent\ \>", "Text"], Cell[BoxData[ FormBox[ RowBox[{ TagBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Psi], t\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"], " ", "=", " ", TagBox[ SubscriptBox[ RowBox[{ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox[\(\[Alpha]\ \[ExponentialE]\^\(\(-\[ImaginaryI]\)\ \ \[Omega]\ t\)\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0]}], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[\(\(\ \)\(\[Alpha]\)\), KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"RIndex"]], Ket, TagStyle->"KetWrapper"]}], TraditionalForm]], "DisplayFormula"] }, Closed]], Cell[CellGroupData[{ Cell["Wave packet associated with a coherent state", "Subsection", ShowGroupOpenCloseIcon->True], Cell[TextData[{ "For the following calculation we will need the action of the exponential \ operators of ", Cell[BoxData[ \(TraditionalForm\`P\&^\)]], " and ", Cell[BoxData[ \(TraditionalForm\`X\&^\)]], " on position bras " }], "Text"], Cell[BoxData[ RowBox[{"Bra", "/:", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["r_", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(Exp[\[Lambda]_. X\&^]\)}], ":=", RowBox[{\(Exp[\[Lambda]\ r]\), TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["r", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"]}]}]], "InputOnly"], Cell[BoxData[ RowBox[{"Bra", "/:", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["r_", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(Exp[\[Lambda]_. P\&^]\)}], ":=", TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox[\(r - \[ImaginaryI]\ \[HBar]\ \[Lambda]\), BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"]}]], "InputOnly"], Cell["\<\ Suppose that the wave function for the ground state of the harmonic \ oscillator is given by \ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ RowBox[{ TagBox["r_", BraKetArgs, TagStyle->"BraKetArg"], "\[VerticalSeparator]", TagBox["0", BraKetArgs, TagStyle->"BraKetArg"]}], BoxBaselineShift->0], "\[RightAngleBracket]"}]}], Braket, TagStyle->"BraKetWrapper"], "=", \(\[Phi]\_0[r]\)}], ";"}]], "InputOnly"], Cell["\<\ to obtain the wave packet for the coherent state we can apply the \ displacement operator to the vacuum to generate the coherent state and then \ project into the x\[Dash]representation\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[Psi][x]\), "=", RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\[ScriptCapitalD][\[Alpha]]\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]}]], "Input"], Cell[BoxData[ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\[ExponentialE]\^\(\(-\(\[Alpha]\^*\)\)\ \(a\&^\) + \ \[Alpha]\ \(a\&^\)\^\[Dagger]\)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]], "Output"] }, Open ]], Cell["\<\ replacing raising and lowering operators by position and momentum operators \ we get\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(\[Psi][x] /. rule1\) /. Exp[x_] :> Exp[Collect[x, {X\&^, P\&^}]]\)], "Input"], Cell[BoxData[ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\[ExponentialE]\^\(\((\(-\(\(\[ImaginaryI]\ \ \[Alpha]\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\)\)\) - \(\[ImaginaryI]\ \(\ \[Alpha]\^*\)\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\))\)\ \(P\&^\) + \((\(\ \[Alpha]\ \@\(\(m\ \[Omega]\)\/\[HBar]\)\)\/\@2 - \(\@\(\(m\ \[Omega]\)\/\ \[HBar]\)\ \(\[Alpha]\^*\)\)\/\@2)\)\ \(X\&^\)\)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}]], "Output"] }, Open ]], Cell["\<\ and changing manually the order of the two expressions on the exponential \ operator and applying the Baker\[Dash]Campbell\[Dash]Hausdorff relation\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(\[Psi][x]\), "=", RowBox[{ RowBox[{ RowBox[{ TagBox[ RowBox[{ SubscriptBox["\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], UDScript, TagStyle->"LIndex"]], RowBox[{"\[LeftAngleBracket]", AdjustmentBox[ TagBox["x", BraArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{0, -0.2}, {0, 0}}]}]}], Bra, TagStyle->"BraWrapper"], "\[CenterDot]", \(\[ExponentialE]\^\(\((\(-\(\(\[ImaginaryI]\ \ \[Alpha]\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\)\)\) - \(\[ImaginaryI]\ \(\ \[Alpha]\^*\)\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\))\)\ P\&^ + \((\(\[Alpha]\ \ \@\(\(m\ \[Omega]\)\/\[HBar]\)\)\/\@2 - \(\@\(\(m\ \[Omega]\)\/\[HBar]\)\ \ \(\[Alpha]\^*\)\)\/\@2)\)\ X\&^\)\), "\[CenterDot]", TagBox[ RowBox[{ AdjustmentBox["\[VerticalSeparator]", BoxMargins->{{-0.4, 0}, {0, 0}}], AdjustmentBox[ TagBox["0", KetArgs, TagStyle->"BraKetArg"], BoxBaselineShift->0], "\[RightAngleBracket]"}], Ket, TagStyle->"KetWrapper"]}], "//", "BCHRelation"}], "//", "QAProductExpand"}]}]], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(1\/2\ \[ImaginaryI]\ \[HBar]\ \((\(\[Alpha]\ \@\(\(m\ \ \[Omega]\)\/\[HBar]\)\)\/\@2 - \(\@\(\(m\ \[Omega]\)\/\[HBar]\)\ \(\[Alpha]\ \^*\)\)\/\@2)\)\ \((\(-\(\(\[ImaginaryI]\ \[Alpha]\)\/\(\@2\ \@\(m\ \[Omega]\ \ \[HBar]\)\)\)\) - \(\[ImaginaryI]\ \(\[Alpha]\^*\)\)\/\(\@2\ \@\(m\ \[Omega]\ \ \[HBar]\)\))\) + \((\(\[Alpha]\ \@\(\(m\ \[Omega]\)\/\[HBar]\)\)\/\@2 - \ \(\@\(\(m\ \[Omega]\)\/\[HBar]\)\ \(\[Alpha]\^*\)\)\/\@2)\)\ \((x - \ \[ImaginaryI]\ \[HBar]\ \((\(-\(\(\[ImaginaryI]\ \[Alpha]\)\/\(\@2\ \@\(m\ \ \[Omega]\ \[HBar]\)\)\)\) - \(\[ImaginaryI]\ \(\[Alpha]\^*\)\)\/\(\@2\ \@\(m\ \ \[Omega]\ \[HBar]\)\))\))\)\)\ \[Phi]\_0[ x - \[ImaginaryI]\ \[HBar]\ \((\(-\(\(\[ImaginaryI]\ \ \[Alpha]\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\)\)\) - \(\[ImaginaryI]\ \(\ \[Alpha]\^*\)\)\/\(\@2\ \@\(m\ \[Omega]\ \[HBar]\)\))\)]\)], "Output"] }, Open ]], Cell["simplifying the result we find ", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\[Psi][x] = \(\(\[Psi][x] // PowerExpand\) // ExpandAll\) // FullSimplify\)], "Input"], Cell[BoxData[ \(\[ExponentialE]\^\(\[ImaginaryI]\ Im[\[Alpha]]\ \((\(\@2\ \@m\ x\ \@\ \[Omega]\)\/\@\[HBar] - Re[\[Alpha]])\)\)\ \[Phi]\_0[ x - \(\@2\ \@\[HBar]\ Re[\[Alpha]]\)\/\(\@m\ \@\[Omega]\)]\)], \ "Output"] }, Open ]], Cell["\<\ After a closer look to this expression we recognize the mean values of \ position and momentum operators calculated above, thus the wave function \ associated with the coherent state is given by\ \>", "Text"], Cell[BoxData[ \(TraditionalForm\`\[Psi]( x) = \(\[ExponentialE]\^\(\(-\ \[ImaginaryI]\)\ \(\[ScriptCapitalR](\ \[Alpha])\) \(\[ScriptCapitalI](\[Alpha])\)\)\) \[ExponentialE]\^\(\(\(\(\ \)\ \(\(\[ImaginaryI]\)\(\ \)\(x\)\(\ \ \)\)\)\/\[HBar]\) \[LeftAngleBracket]\ P\ \ \[RightAngleBracket]\_\[Alpha]\)\ \(\(\[Phi]\_0\)(\ x - \[LeftAngleBracket]\ X\ \[RightAngleBracket]\_\[Alpha]\ )\)\)], \ "DisplayFormula"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["10 References", "Section 1", ShowGroupOpenCloseIcon->True], Cell["\<\ Feagin, James M. Quantum methods with mathematica Santa Clara, CA. : Springer, 1994 \ \>", "Reference", CellDingbat->"\[EmptyDiamond]", CellMargins->{{70, Inherited}, {Inherited, Inherited}}, FontSlant->"Italic"], Cell["\<\ Wolfram, Stephen The Mathematica book Edicion: 3rd ed. Cambridge : University Press, 1996 \ \>", "Reference", CellDingbat->"\[EmptyDiamond]", CellMargins->{{70, Inherited}, {Inherited, Inherited}}, FontSlant->"Italic"], Cell[TextData[{ "Jason, Harris \nCreating New Notations in ", StyleBox["Mathematica\nDemo distributed with Mathematica.", FontSlant->"Italic"] }], "Reference", CellDingbat->"\[EmptyDiamond]", CellMargins->{{70, Inherited}, {Inherited, Inherited}}, FontSlant->"Italic"], Cell[TextData[{ "Jason, Harris \nNotation.m \[Dash] A Package for Defining New Notation\n\ Package distributed with ", StyleBox["Mathematica", FontSlant->"Italic"], "." }], "Reference", CellDingbat->"\[EmptyDiamond]", CellMargins->{{70, Inherited}, {Inherited, Inherited}}, FontSlant->"Italic"] }, Closed]] }, Open ]] }, FrontEndVersion->"5.0 for Microsoft Windows", ScreenRectangle->{{0, 800}, {0, 536}}, ScreenStyleEnvironment->"Working", WindowToolbars->"EditBar", WindowSize->{552, 448}, WindowMargins->{{41, Automatic}, {Automatic, 19}}, Visible->True, PrintingCopies->1, PrintingPageRange->{Automatic, Automatic}, InputAliases->{"braketd"->TagBox[ SubscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0]], Braket, TagStyle -> "BraKetWrapper"], "notation"->RowBox[ {"Notation", "[", RowBox[ { TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], " ", "\[DoubleLongLeftRightArrow]", " ", TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"]}], "]"}], "notation>"->RowBox[ {"Notation", "[", RowBox[ { TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], " ", "\[DoubleLongRightArrow]", " ", TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"]}], "]"}], "notation<"->RowBox[ {"Notation", "[", RowBox[ { TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], " ", "\[DoubleLongLeftArrow]", " ", TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"]}], "]"}], "symb"->RowBox[ {"Symbolize", "[", TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], "]"}], "infixnotation"->RowBox[ {"InfixNotation", "[", RowBox[ { TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], ",", "\[Placeholder]"}], "]"}], "addia"->RowBox[ {"AddInputAlias", "[", RowBox[ { TagBox[ "\[Placeholder]", NotationBoxTag, TagStyle -> "NotationTemplateStyle"], ",", "\[Placeholder]"}], "]"}], "pattwraper"->TagBox[ "\[Placeholder]", NotationPatternTag, TagStyle -> "NotationPatternWrapperStyle"], "madeboxeswraper"->TagBox[ "\[Placeholder]", NotationMadeBoxesTag, TagStyle -> "NotationMadeBoxesWrapperStyle"], "com"->SubscriptBox[ RowBox[ {"[", "\[SelectionPlaceholder]", "]"}], "-"], "op"->OverscriptBox[ "\[SelectionPlaceholder]", "^"], "hop"->SuperscriptBox[ OverscriptBox[ "\[SelectionPlaceholder]", "^"], "\[Dagger]"], "ket"->TagBox[ RowBox[ { AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{-.40000000596046448, 0.0}, { 0.0, 0.0}}], AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], Ket, TagStyle -> "KetWrapper"], "bra"->TagBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{0.0, -.20000000298023224}, { 0.0, 0.0}}]}], Bra, TagStyle -> "BraWrapper"], "braket"->TagBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], Braket, TagStyle -> "BraKetWrapper"], "ketd"->TagBox[ SubscriptBox[ RowBox[ { AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{-.40000000596046448, 0.0}, {0.0, 0.0}}], AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]], Ket, TagStyle -> "KetWrapper"], "ketu"->TagBox[ SuperscriptBox[ RowBox[ { AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{-.40000000596046448, 0.0}, {0.0, 0.0}}], AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]], Ket, TagStyle -> "KetWrapper"], "ketdu"->TagBox[ SubsuperscriptBox[ RowBox[ { AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{-.40000000596046448, 0.0}, {0.0, 0.0}}], AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]], Ket, TagStyle -> "KetWrapper"], "dbra"->TagBox[ RowBox[ { SubscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{ 0.0, -.20000000298023224}, {0.0, 0.0}}]}]}], Bra, TagStyle -> "BraWrapper"], "ubra"->TagBox[ RowBox[ { SuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{ 0.0, -.20000000298023224}, {0.0, 0.0}}]}]}], Bra, TagStyle -> "BraWrapper"], "dubra"->TagBox[ RowBox[ { SubsuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], AdjustmentBox[ "\[VerticalSeparator]", BoxMargins -> {{ 0.0, -.20000000298023224}, {0.0, 0.0}}]}]}], Bra, TagStyle -> "BraWrapper"], "braketu"->TagBox[ SuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]], Braket, TagStyle -> "BraKetWrapper"], "braketdu"->TagBox[ SubsuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", KetArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]], Braket, TagStyle -> "BraKetWrapper"], "dbraket"->TagBox[ RowBox[ { SubscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}]}], Braket, TagStyle -> "BraKetWrapper"], "ubraket"->TagBox[ RowBox[ { SuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}]}], Braket, TagStyle -> "BraKetWrapper"], "dubraket"->TagBox[ RowBox[ { SubsuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}]}], Braket, TagStyle -> "BraKetWrapper"], "dbraketd"->TagBox[ RowBox[ { SubscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "dbraketu"->TagBox[ RowBox[ { SubscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "dbraketdu"->TagBox[ RowBox[ { SubscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubsuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "ubraketd"->TagBox[ RowBox[ { SuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "ubraketu"->TagBox[ RowBox[ { SuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "ubraketdu"->TagBox[ RowBox[ { SuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubsuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "dubraketd"->TagBox[ RowBox[ { SubsuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "dubraketu"->TagBox[ RowBox[ { SubsuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"], "dubraketdu"->TagBox[ RowBox[ { SubsuperscriptBox[ "\[InvisiblePrefixScriptBase]", TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "LIndex"]], SubsuperscriptBox[ RowBox[ {"\[LeftAngleBracket]", AdjustmentBox[ RowBox[ { TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"], "\[VerticalSeparator]", TagBox[ "\[SelectionPlaceholder]", BraKetArgs, TagStyle -> "BraKetArg"]}], BoxBaselineShift -> 0.0], "\[RightAngleBracket]"}], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"], TagBox[ AdjustmentBox[ TagBox[ "\[SelectionPlaceholder]", BraArgs, TagStyle -> "BraKetArg"], BoxBaselineShift -> 0.0], UDScript, TagStyle -> "RIndex"]]}], Braket, TagStyle -> "BraKetWrapper"]}, StyleDefinitions -> Notebook[{ Cell[CellGroupData[{ Cell["Style Definitions", "Subtitle"], Cell["\<\ Modify the definitions below to change the default appearance of all cells in \ a given style. Make modifications to any definition using commands in the Format menu.\ \>", "Text"], Cell[CellGroupData[{ Cell["Style Environment Names", "Section"], Cell[StyleData[All, "Working"], PageWidth->WindowWidth, CellBracketOptions->{"Color"->RGBColor[0, 0.25098, 0.501961]}, ScriptMinSize->9], Cell[StyleData[All, "Presentation"], PageWidth->WindowWidth, ScriptMinSize->9], Cell[StyleData[All, "Printout"], PageWidth->PaperWidth, ShowCellLabel->False, ImageSize->{200, 200}, PrivateFontOptions->{"FontType"->"Outline"}] }, Closed]], Cell[CellGroupData[{ Cell["Notebook Options", "Section", CellMargins->{{Inherited, 5}, {Inherited, Inherited}}], Cell["\<\ The options defined for the style below will be used at the Notebook level.\ \>", "Text", CellMargins->{{Inherited, 5}, {Inherited, Inherited}}], Cell[StyleData["Notebook"], PageHeaders->{{Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"], None, Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"]}, {Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"], None, Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"]}}, CellMargins->{{Inherited, 5}, {Inherited, Inherited}}, CellFrameLabelMargins->6, StyleMenuListing->None] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headings", "Section"], Cell[CellGroupData[{ Cell[StyleData["Title"], CellMargins->{{18, 10}, {0, 20}}, CellGroupingRules->{"TitleGrouping", 0}, PageBreakBelow->False, CellFrameMargins->6, CellFrameColor->RGBColor[0, 0.25098, 0.501961], InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, TextAlignment->Center, LineSpacing->{0.95, 13}, CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Garamond", FontSize->36, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Title", "Presentation"], CellMargins->{{20, 10}, {2, 20}}, CellFrameMargins->5, FontSize->48], Cell[StyleData["Title", "Printout"], CellMargins->{{18, 30}, {0, 0}}, CellFrameMargins->4, FontSize->24] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subtitle"], CellMargins->{{20, 30}, {2, 10}}, CellGroupingRules->{"TitleGrouping", 10}, PageBreakBelow->False, CellFrameMargins->{{0, 4}, {8, 4}}, InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, LineSpacing->{1, 0}, CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Garamond", FontSize->24, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Subtitle", "Presentation"], CellMargins->{{20, 10}, {2, 10}}, FontSize->36], Cell[StyleData["Subtitle", "Printout"], CellMargins->{{18, 30}, {0, 10}}, FontSize->18] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Section 1"], CellFrame->{{0, 0}, {0, 3}}, ShowGroupOpenCloseIcon->True, CellMargins->{{18, 10}, {5, 30}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CellFrameMargins->{{0, 4}, {8, 4}}, CellFrameColor->RGBColor[0, 0.25098, 0.501961], InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontFamily->"Garamond", FontSize->22, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Section 1", "Presentation"], CellMargins->{{20, 10}, {6, 30}}, CellFrameMargins->5, CellFrameColor->RGBColor[0, 0.25098, 0.501961], FontSize->24], Cell[StyleData["Section 1", "Printout"], CellMargins->{{18, 30}, {4, 30}}, CellFrameMargins->4, CellFrameColor->RGBColor[0, 0.25098, 0.501961], FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Section"], CellFrame->{{0, 0}, {0, 0.25}}, CellMargins->{{18, 10}, {10, 30}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CellFrameMargins->4, CellFrameColor->RGBColor[0, 0.25098, 0.501961], InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontFamily->"Garamond", FontSize->22, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Section", "Presentation"], CellMargins->{{20, 10}, {0, 30}}, CellFrameColor->RGBColor[0, 0.25098, 0.501961], FontSize->24], Cell[StyleData["Section", "Printout"], CellMargins->{{18, 30}, {0, 30}}, CellFrameMargins->5, CellFrameColor->RGBColor[0, 0.25098, 0.501961], FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsection"], CellDingbat->"\[FilledSquare]", ShowGroupOpenCloseIcon->True, CellMargins->{{58, 30}, {2, 10}}, CellGroupingRules->{"SectionGrouping", 50}, PageBreakBelow->False, InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontFamily->"Garamond", FontSize->18, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Subsection", "Presentation"], CellMargins->{{35, 30}, {0, 20}}, FontSize->16], Cell[StyleData["Subsection", "Printout"], CellMargins->{{18, 30}, {0, 10}}, FontSize->12] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsubsection"], CellDingbat->"\[FilledSmallSquare]", CellMargins->{{55, 30}, {4, 10}}, CellGroupingRules->{"SectionGrouping", 60}, PageBreakBelow->False, InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, CounterIncrements->"Subsubsection", FontFamily->"Garamond", FontSize->16, FontWeight->"Bold", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["Subsubsection", "Presentation"], CellMargins->{{31, 30}, {0, 12}}, FontSize->14], Cell[StyleData["Subsubsection", "Printout"], CellMargins->{{18, 30}, {0, 12}}, FontSize->10] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[CellGroupData[{ Cell[StyleData["Text"], CellMargins->{{55, 10}, {6, 6}}, InputAutoReplacements->{"TeX"->StyleBox[ RowBox[ {"T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "LaTeX"->StyleBox[ RowBox[ {"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-.35999999999999999, \ -.10000000000000001}, {0, 0}}, BoxBaselineShift -> -.20000000000000001], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-.074999999999999997, \ -.085000000000000006}, {0, 0}}, BoxBaselineShift -> .5], "X"}]], "mma"->"Mathematica", "Mma"->"Mathematica", "MMA"->"Mathematica", Inherited}, TextJustification->1, Hyphenation->True, LineSpacing->{1, 2}, FontFamily->"Times", FontSize->12], Cell[StyleData["Text", "Presentation"], CellMargins->{{20, 10}, {6, 6}}, TextAlignment->Left, TextJustification->0, LineSpacing->{1.3, 0}, FontSize->14], Cell[StyleData["Text", "Printout"], CellMargins->{{18, 4}, {4, 4}}, LineSpacing->{1, 3}, FontSize->10] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Commentary"], CellMargins->{{55, 10}, {2, 6}}, TextJustification->1, Hyphenation->True, LineSpacing->{1, 2}, FontFamily->"Helvetica", FontSize->10, FontColor->RGBColor[0, 0, 0.4]], Cell[StyleData["Commentary", "Presentation"], CellMargins->{{60, 30}, {2, 6}}, TextJustification->1, LineSpacing->{1.3, 0}, FontSize->12], Cell[StyleData["Commentary", "Printout"], CellMargins->{{18, 30}, {3, 0}}, LineSpacing->{1, 3}, FontFamily->"Times", FontSize->10] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Input/Output", "Section"], Cell["\<\ The cells in this section define styles used for input and output to the \ kernel. Be careful when modifying, renaming, or removing these styles, \ because the front end associates special meanings with these style names.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Input"], ShowCellBracket->True, CellMargins->{{55, 16}, {0, 6}}, Evaluatable->True, CellGroupingRules->"InputGrouping", PageBreakWithin->False, CellFrameMargins->{{8, 8}, {4, 8}}, DefaultFormatType->DefaultInputFormatType, FontFamily->"Courier", FontWeight->"Bold", FontColor->GrayLevel[0], Background->RGBColor[0.792157, 0.952941, 1]], Cell[StyleData["Input", "Presentation"], CellMargins->{{55, 16}, {0, 10}}, Background->GrayLevel[0.850004]], Cell[StyleData["Input", "Printout"], CellMargins->{{55, 16}, {0, 10}}, LinebreakAdjustments->{0.85, 2, 10, 1, 1}, FontSize->10, Background->GrayLevel[0.850004]] }, Closed]], Cell[StyleData["InlineInput"], Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, DefaultFormatType->DefaultInputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, AutoItalicWords->{}, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontWeight->"Bold"], Cell[CellGroupData[{ Cell[StyleData["Output"], ShowCellBracket->True, CellMargins->{{55, 16}, {6, 0}}, CellEditDuplicate->True, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, CellFrameMargins->{{8, 8}, {8, 4}}, DefaultFormatType->DefaultOutputFormatType, FontFamily->"Courier", FontColor->GrayLevel[0], Background->RGBColor[0.882353, 0.976471, 1]], Cell[StyleData["Output", "Presentation"], CellMargins->{{55, 16}, {10, 0}}], Cell[StyleData["Output", "Printout"], CellMargins->{{55, 16}, {10, 0}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["InputOnly"], CellMargins->{{55, 16}, {15, 0}}, Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelPositioning->Automatic, CellLabelMargins->{{23, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultInputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, LanguageCategory->"Formula", FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, LinebreakAdjustments->{0.85, 2, 10, 0, 1}, FontSize->12, FontWeight->"Bold", Background->RGBColor[0.792157, 0.952941, 1]], Cell[StyleData["InputOnly", "Presentation"], CellMargins->{{55, 16}, {10, 10}}], Cell[StyleData["InputOnly", "Printout"], CellMargins->{{55, 16}, {10, 10}}, LinebreakAdjustments->{0.85, 2, 10, 1, 1}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Message"], CellFrame->{{1, 1}, {0, 0}}, CellDingbat->"\[LongDash]", CellMargins->{{55, 16}, {0, 0}}, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{23, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, FormatType->InputForm, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->10, FontSlant->"Oblique", FontColor->GrayLevel[0], Background->RGBColor[0.882353, 0.976471, 1]], Cell[StyleData["Message", "Presentation"], CellMargins->{{55, 16}, {Inherited, Inherited}}, LineSpacing->{1, 0}], Cell[StyleData["Message", "Printout"], CellMargins->{{55, 16}, {0, 0}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Print"], CellMargins->{{55, 16}, {1, 6}}, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{23, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, TextAlignment->Left, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, FormatType->InputForm, StyleMenuListing->None, Background->RGBColor[0.882353, 0.976471, 1]], Cell[StyleData["Print", "Presentation"], CellMargins->{{55, 16}, {10, 2}}], Cell[StyleData["Print", "Printout"], CellMargins->{{55, 16}, {2, 6}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Graphics"], CellFrame->{{1, 1}, {0, 0}}, CellMargins->{{55, 16}, {0, 0}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, ImageMargins->{{35, Inherited}, {Inherited, 0}}, StyleMenuListing->None, Background->RGBColor[0.882353, 0.976471, 1]], Cell[StyleData["Graphics", "Presentation"], CellMargins->{{55, 16}, {0, 0}}, ImageMargins->{{10, 10}, {10, 10}}], Cell[StyleData["Graphics", "Printout"], CellMargins->{{55, 16}, {0, 0}}, ImageSize->{0.0625, 0.0625}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["CellLabel"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->10, FontSlant->"Oblique", FontColor->RGBColor[0, 0.25098, 0.501961]], Cell[StyleData["CellLabel", "Presentation"], CellMargins->{{18, Inherited}, {Inherited, Inherited}}], Cell[StyleData["CellLabel", "Printout"], CellMargins->{{0, Inherited}, {Inherited, Inherited}}, FontSize->8] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Unique Styles", "Section"], Cell[CellGroupData[{ Cell[StyleData["Author"], CellMargins->{{20, 9}, {45, 5}}, CellGroupingRules->{"TitleGrouping", 20}, PageBreakBelow->False, CellFrameMargins->{{0, 4}, {8, 4}}, TextAlignment->Center, LineSpacing->{1, 0}, CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Helvetica", FontSize->14, FontSlant->"Italic"], Cell[StyleData["Author", "Presentation"], CellMargins->{{20, 9}, {45, 10}}, TextAlignment->Center], Cell[StyleData["Author", "Printout"], CellMargins->{{18, 9}, {45, 5}}, TextAlignment->Center] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Abstract"], CellFrame->False, CellMargins->{{18, 140}, {4, 30}}, Hyphenation->True, LineSpacing->{0.9, 0}, FontFamily->"Times", FontSize->12], Cell[StyleData["Abstract", "Presentation"], CellFrame->True, CellMargins->{{20, 10}, {Inherited, 30}}], Cell[StyleData["Abstract", "Printout"], LineSpacing->{1, 2}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Caption"], CellMargins->{{55, 10}, {5, 3}}, PageBreakAbove->False, Hyphenation->True, FontFamily->"Helvetica", FontSize->9], Cell[StyleData["Caption", "Presentation"], CellMargins->{{60, 65}, {6, 4}}, FontSize->10], Cell[StyleData["Caption", "Printout"], CellMargins->{{55, 55}, {5, 4}}, LineSpacing->{1, 2}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Reference"], CellMargins->{{24, 40}, {6, 6}}, TextJustification->1, Hyphenation->True, LineSpacing->{1, 0}, FontFamily->"Times"], Cell[StyleData["Reference", "Presentation"], CellMargins->{{20, 40}, {Inherited, 6}}, TextJustification->0, LineSpacing->{1, 4}, FontSize->12], Cell[StyleData["Reference", "Printout"], CellMargins->{{18, 4}, {4, 4}}, FontSize->9] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["PictureGroup"], CellFrame->{{1, 1}, {0, 0}}, CellMargins->{{55, Inherited}, {0, 0}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, ShowCellLabel->False, ImageMargins->{{35, Inherited}, {Inherited, 0}}, StyleMenuListing->None, Background->GrayLevel[0.850004]], Cell[StyleData["PictureGroup", "Presentation"], CellMargins->{{60, Inherited}, {0, 0}}, ImageMargins->{{10, 10}, {10, 10}}], Cell[StyleData["PictureGroup", "Printout"], CellMargins->{{55, Inherited}, {0, 0}}, ImageSize->{0.0625, 0.0625}] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Hyperlink Styles", "Section"], Cell["\<\ The cells below define styles useful for making hypertext ButtonBoxes. The \ \"Hyperlink\" style is for links within the same Notebook, or between \ Notebooks.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Hyperlink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookLocate[ #2]}]&), Active->True, ButtonNote->ButtonData}], Cell[StyleData["Hyperlink", "Presentation"], FontSize->16], Cell[StyleData["Hyperlink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell["\<\ The following styles are for linking automatically to the on-line help \ system.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["MainBookLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "MainBook", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["MainBookLink", "Presentation"], FontSize->16], Cell[StyleData["MainBookLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["AddOnsLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "AddOns", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["AddOnsLink", "Presentation"], FontSize->16], Cell[StyleData["AddOnsLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["RefGuideLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "RefGuide", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["RefGuideLink", "Presentation"], FontSize->16], Cell[StyleData["RefGuideLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["GettingStartedLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "GettingStarted", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["GettingStartedLink", "Presentation"], FontSize->16], Cell[StyleData["GettingStartedLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["OtherInformationLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "OtherInformation", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["OtherInformationLink", "Presentation"], FontSize->16], Cell[StyleData["OtherInformationLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Palette Styles", "Section"], Cell["\<\ The cells below define styles that define standard ButtonFunctions, for use \ in palette buttons.\ \>", "Text"], Cell[StyleData["Paste"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, After]}]&)}], Cell[StyleData["Evaluate"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], SelectionEvaluate[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["EvaluateCell"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionMove[ FrontEnd`InputNotebook[ ], All, Cell, 1], FrontEnd`SelectionEvaluateCreateCell[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["CopyEvaluate"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`SelectionCreateCell[ FrontEnd`InputNotebook[ ], All], FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionEvaluate[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["CopyEvaluateCell"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`SelectionCreateCell[ FrontEnd`InputNotebook[ ], All], FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionEvaluateCreateCell[ FrontEnd`InputNotebook[ ], All]}]&)}] }, Closed]], Cell[CellGroupData[{ Cell["Formulas and Programming", "Section"], Cell[CellGroupData[{ Cell[StyleData["DisplayFormula"], CellMargins->{{55, Inherited}, {Inherited, Inherited}}, CellHorizontalScrolling->True, DefaultFormatType->DefaultInputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, LanguageCategory->"Formula", ScriptLevel->0, SingleLetterItalics->True, StyleMenuListing->None, UnderoverscriptBoxOptions->{LimitsPositioning->True}], Cell[StyleData["DisplayFormula", "Presentation"], CellMargins->{{60, 10}, {Inherited, 6}}, LineSpacing->{1, 5}], Cell[StyleData["DisplayFormula", "Printout"], CellMargins->{{18, 4}, {4, 4}}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["ChemicalFormula"], CellMargins->{{55, 10}, {Inherited, 0}}, CellHorizontalScrolling->True, DefaultFormatType->DefaultInputFormatType, TextJustification->1, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, LanguageCategory->"Formula", AutoSpacing->False, ScriptLevel->1, ScriptBaselineShifts->{0.6, Automatic}, SingleLetterItalics->False, ZeroWidthTimes->True], Cell[StyleData["ChemicalFormula", "Presentation"], CellMargins->{{60, 10}, {Inherited, 6}}], Cell[StyleData["ChemicalFormula", "Printout"], CellMargins->{{18, 4}, {4, 4}}, LineSpacing->{1, 3}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Program"], CellMargins->{{55, 10}, {Inherited, 0}}, CellHorizontalScrolling->True, Hyphenation->False, LanguageCategory->"Formula", FontFamily->"Courier"], Cell[StyleData["Program", "Presentation"], CellMargins->{{60, 10}, {Inherited, 6}}], Cell[StyleData["Program", "Printout"], CellMargins->{{18, 4}, {4, 4}}, LineSpacing->{1, 3}, FontSize->9.5] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Automatic Numbering", "Section"], Cell["\<\ The following styles are useful for numbered equations, figures, etc. They \ automatically give the cell a FrameLabel containing a reference to a \ particular counter, and also increment that counter.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["NumberedEquation"], CellMargins->{{55, 85}, {Inherited, Inherited}}, CellFrameLabels->{{None, Cell[ TextData[ {"(", CounterBox[ "NumberedEquation"], ")"}]]}, {None, None}}, DefaultFormatType->DefaultInputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, CounterIncrements->"NumberedEquation", FormatTypeAutoConvert->False, FontFamily->"Times"], Cell[StyleData["NumberedEquation", "Presentation"], CellMargins->{{60, 10}, {Inherited, 6}}, LineSpacing->{1, 0}], Cell[StyleData["NumberedEquation", "Printout"], CellMargins->{{18, 4}, {4, 4}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedFigure"], CellMargins->{{55, 95}, {Inherited, Inherited}}, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Figure ", CounterBox[ "NumberedFigure"]}], FontWeight -> "Bold"], None}}, CounterIncrements->"NumberedFigure", FormatTypeAutoConvert->False, FontFamily->"Times"], Cell[StyleData["NumberedFigure", "Presentation"], CellMargins->{{60, 80}, {Inherited, 6}}, LineSpacing->{1, 0}], Cell[StyleData["NumberedFigure", "Printout"], CellMargins->{{18, 80}, {4, 4}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedTable"], CellMargins->{{55, 95}, {Inherited, Inherited}}, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Table ", CounterBox[ "NumberedTable"]}], FontWeight -> "Bold"], None}}, TextAlignment->Center, CounterIncrements->"NumberedTable", FormatTypeAutoConvert->False, FontFamily->"Times"], Cell[StyleData["NumberedTable", "Presentation"], CellMargins->{{60, 80}, {Inherited, 6}}, LineSpacing->{1, 0}], Cell[StyleData["NumberedTable", "Printout"], CellMargins->{{18, 80}, {4, 4}}, FontSize->8] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headers and Footers", "Section"], Cell[StyleData["Header"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9], Cell[StyleData["PageNumber"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9, FontWeight->"Bold"], Cell[StyleData["Footer"], TextAlignment->Center, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9] }, Closed]], Cell[CellGroupData[{ Cell["Bra Ket Styles", "Section"], Cell["\<\ The cells below define certain styles needed for defining Bras&Kets.These \ styles serve to give the correct structural properties to Bras & Kets \ \>", "Text", CellTags->"NotationPackage35"], Cell[StyleData["BraKetArg"], AutoStyleOptions->{"UnmatchedBracketStyle"->"UnmatchedBracket"}, SpanMinSize->Automatic, StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{0, 0}, {0, 0}}}, TagBoxOptions->{Editable->True, Selectable->True}], Cell[StyleData["BraWrapper"], AutoStyleOptions->{"UnmatchedBracketStyle"->None}, ScriptBaselineShifts->{0.6, 0.9}, SpanMinSize->2, StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{0.2, -0.13}, {0, 0}}}, TagBoxOptions->{Editable->False}], Cell[StyleData["KetWrapper"], AutoStyleOptions->{"UnmatchedBracketStyle"->None}, ScriptBaselineShifts->{0.6, 0.9}, SpanMinSize->2, StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{-0.1, 0.2}, {0, 0}}}, TagBoxOptions->{Editable->False}], Cell[StyleData["BraKetWrapper"], AutoStyleOptions->{"UnmatchedBracketStyle"->None}, ScriptBaselineShifts->{0.6, 0.9}, SpanMinSize->2, StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{0.25, 0.25}, {0, 0}}}, TagBoxOptions->{Editable->False}], Cell[StyleData["RIndex"], StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{-0.16, 0}, {0, 0}}}, TagBoxOptions->{Editable->False}], Cell[StyleData["LIndex"], StyleMenuListing->None, AdjustmentBoxOptions->{BoxMargins->{{0, -0.1}, {0, 0}}}, TagBoxOptions->{Editable->False}] }, Closed]] }, Open ]] }] ] (******************************************************************* Cached data follows. If you edit this Notebook file directly, not using Mathematica, you must remove the line containing CacheID at the top of the file. The cache data will then be recreated when you save this file from within Mathematica. *******************************************************************) (*CellTagsOutline CellTagsIndex->{ "Info3284432791-7644650"->{ Cell[8108, 259, 804, 11, 382, "Print", CellTags->"Info3284432791-7644650"]} } *) (*CellTagsIndex CellTagsIndex->{ {"Info3284432791-7644650", 264519, 7966} } *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[1776, 53, 32, 0, 72, "Title"], Cell[1811, 55, 786, 19, 177, "Author"], Cell[CellGroupData[{ Cell[2622, 78, 114, 3, 69, "Section 1"], Cell[CellGroupData[{ Cell[2761, 85, 34, 0, 35, "Subsection"], Cell[2798, 87, 332, 10, 47, "Text"], Cell[CellGroupData[{ Cell[3155, 101, 92, 1, 36, "Input"], Cell[3250, 104, 122, 2, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[3409, 111, 109, 2, 36, "Input"], Cell[3521, 115, 133, 2, 54, "Output"] }, Open ]], Cell[3669, 120, 1111, 35, 100, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[4817, 160, 41, 0, 29, "Subsection"], Cell[4861, 162, 896, 26, 99, "Text"], Cell[5760, 190, 74, 0, 23, "Commentary"], Cell[5837, 192, 80, 1, 49, "InputOnly"], Cell[5920, 195, 516, 13, 64, "Text"], Cell[6439, 210, 707, 17, 83, "Text"], Cell[7149, 229, 68, 0, 29, "Text"], Cell[CellGroupData[{ Cell[7242, 233, 73, 1, 36, "Input"], Cell[7318, 236, 427, 6, 92, "Output"] }, Open ]], Cell[7760, 245, 274, 7, 46, "Text"], Cell[CellGroupData[{ Cell[8059, 256, 46, 1, 36, "Input"], Cell[8108, 259, 804, 11, 382, "Print", CellTags->"Info3284432791-7644650"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[8973, 277, 137, 3, 43, "Section 1"], Cell[CellGroupData[{ Cell[9135, 284, 63, 1, 35, "Subsection"], Cell[9201, 287, 819, 19, 114, "Text"], Cell[CellGroupData[{ Cell[10045, 310, 79, 1, 38, "Input"], Cell[10127, 313, 98, 2, 38, "Output"] }, Open ]], Cell[10240, 318, 287, 5, 63, "Text"], Cell[CellGroupData[{ Cell[10552, 327, 138, 2, 38, "Input"], Cell[10693, 331, 141, 2, 38, "Output"] }, Open ]], Cell[10849, 336, 282, 9, 46, "Text"], Cell[11134, 347, 266, 7, 47, "Text"], Cell[CellGroupData[{ Cell[11425, 358, 323, 5, 61, "Input"], Cell[11751, 365, 2336, 73, 143, "Output"] }, Open ]], Cell[14102, 441, 192, 4, 46, "Text"], Cell[14297, 447, 275, 7, 46, "Text"], Cell[14575, 456, 80, 2, 50, "InputOnly", Evaluatable->False], Cell[14658, 460, 265, 10, 29, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[14960, 475, 67, 1, 29, "Subsection"], Cell[15030, 478, 822, 20, 115, "Text"], Cell[CellGroupData[{ Cell[15877, 502, 4578, 136, 39, "Input"], Cell[20458, 640, 4579, 136, 39, "Output"] }, Open ]], Cell[25052, 779, 239, 4, 46, "Text"], Cell[25294, 785, 452, 16, 47, "Text"], Cell[CellGroupData[{ Cell[25771, 805, 4105, 108, 39, "Input"], Cell[29879, 915, 1523, 49, 95, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[31451, 970, 90, 1, 29, "Subsection"], Cell[31544, 973, 551, 15, 65, "Text"], Cell[32098, 990, 38, 0, 29, "Text"], Cell[CellGroupData[{ Cell[32161, 994, 1799, 49, 37, "Input"], Cell[33963, 1045, 1479, 40, 37, "Output"] }, Open ]], Cell[35457, 1088, 147, 3, 29, "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[35653, 1097, 62, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[35740, 1102, 37, 0, 35, "Subsection"], Cell[35780, 1104, 310, 12, 46, "Text"], Cell[36093, 1118, 90, 2, 29, "Text"], Cell[CellGroupData[{ Cell[36208, 1124, 949, 27, 37, "Input"], Cell[37160, 1153, 942, 25, 37, "Output"] }, Open ]], Cell[38117, 1181, 197, 4, 46, "Text"], Cell[CellGroupData[{ Cell[38339, 1189, 921, 26, 37, "Input"], Cell[39263, 1217, 973, 26, 37, "Output"] }, Open ]], Cell[40251, 1246, 206, 6, 30, "Text"], Cell[CellGroupData[{ Cell[40482, 1256, 1013, 27, 37, "Input"], Cell[41498, 1285, 942, 25, 37, "Output"] }, Open ]], Cell[42455, 1313, 161, 3, 46, "Text"], Cell[CellGroupData[{ Cell[42641, 1320, 135, 2, 37, "Input"], Cell[42779, 1324, 308, 5, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[43124, 1334, 53, 1, 36, "Input"], Cell[43180, 1337, 282, 5, 35, "Output"] }, Open ]], Cell[43477, 1345, 98, 2, 29, "Text"], Cell[CellGroupData[{ Cell[43600, 1351, 138, 2, 37, "Input"], Cell[43741, 1355, 282, 5, 35, "Output"] }, Open ]], Cell[44038, 1363, 72, 0, 29, "Text"], Cell[CellGroupData[{ Cell[44135, 1367, 154, 2, 37, "Input"], Cell[44292, 1371, 52, 1, 35, "Output"] }, Open ]], Cell[44359, 1375, 120, 3, 29, "Text"], Cell[CellGroupData[{ Cell[44504, 1382, 1856, 51, 37, "Input"], Cell[46363, 1435, 1035, 29, 37, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[47435, 1469, 1546, 46, 37, "Input"], Cell[48984, 1517, 1243, 37, 37, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[50264, 1559, 53, 1, 36, "Input"], Cell[50320, 1562, 1275, 37, 37, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[51644, 1605, 35, 0, 29, "Subsection"], Cell[51682, 1607, 251, 7, 48, "Text"], Cell[CellGroupData[{ Cell[51958, 1618, 57, 1, 36, "Input"], Cell[52018, 1621, 82, 1, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[52137, 1627, 112, 2, 38, "Input"], Cell[52252, 1631, 1444, 19, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[53733, 1655, 74, 1, 37, "Input"], Cell[53810, 1658, 181, 3, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[54028, 1666, 165, 2, 39, "Input"], Cell[54196, 1670, 826, 11, 54, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[55071, 1687, 47, 0, 29, "Subsection"], Cell[55121, 1689, 137, 3, 29, "Text"], Cell[CellGroupData[{ Cell[55283, 1696, 1343, 38, 58, "Input"], Cell[56629, 1736, 1132, 31, 57, "Output"] }, Open ]], Cell[57776, 1770, 95, 2, 29, "Text"], Cell[CellGroupData[{ Cell[57896, 1776, 1011, 27, 58, "Input"], Cell[58910, 1805, 1084, 29, 58, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[60031, 1839, 1026, 28, 58, "Input"], Cell[61060, 1869, 1107, 31, 58, "Output"] }, Open ]], Cell[62182, 1903, 91, 2, 29, "Text"], Cell[CellGroupData[{ Cell[62298, 1909, 1425, 44, 37, "Input"], Cell[63726, 1955, 4384, 130, 37, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[68159, 2091, 45, 0, 29, "Subsection"], Cell[68207, 2093, 181, 4, 46, "Text"], Cell[68391, 2099, 194, 4, 46, "Text"], Cell[68588, 2105, 124, 3, 49, "InputOnly"], Cell[CellGroupData[{ Cell[68737, 2112, 75, 1, 36, "Input"], Cell[68815, 2115, 384, 9, 35, "Output"] }, Open ]], Cell[69214, 2127, 45, 0, 29, "Text"], Cell[69262, 2129, 58, 1, 49, "InputOnly"], Cell[69323, 2132, 479, 13, 64, "Text"], Cell[69805, 2147, 1304, 37, 50, "InputOnly"], Cell[CellGroupData[{ Cell[71134, 2188, 1704, 51, 37, "Input"], Cell[72841, 2241, 412, 9, 35, "Output"] }, Open ]], Cell[73268, 2253, 43, 0, 29, "Text"], Cell[73314, 2255, 1314, 36, 50, "InputOnly"], Cell[74631, 2293, 146, 3, 29, "Text"], Cell[74780, 2298, 890, 25, 52, "InputOnly"], Cell[CellGroupData[{ Cell[75695, 2327, 546, 14, 54, "Input"], Cell[76244, 2343, 344, 11, 37, "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[76649, 2361, 74, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[76748, 2366, 51, 0, 35, "Subsection"], Cell[76802, 2368, 312, 10, 47, "Text"], Cell[CellGroupData[{ Cell[77139, 2382, 86, 1, 38, "Input"], Cell[77228, 2385, 85, 1, 38, "Output"] }, Open ]], Cell[77328, 2389, 235, 6, 46, "Text"], Cell[CellGroupData[{ Cell[77588, 2399, 188, 3, 39, "Input"], Cell[77779, 2404, 1236, 39, 79, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[79064, 2449, 53, 0, 29, "Subsection"], Cell[79120, 2451, 194, 4, 46, "Text"], Cell[CellGroupData[{ Cell[79339, 2459, 76, 1, 38, "Input"], Cell[79418, 2462, 105, 2, 36, "Output"] }, Open ]], Cell[79538, 2467, 95, 2, 29, "Text"], Cell[CellGroupData[{ Cell[79658, 2473, 127, 2, 37, "Input"], Cell[79788, 2477, 845, 15, 54, "Output"] }, Open ]], Cell[80648, 2495, 105, 3, 29, "Text"], Cell[CellGroupData[{ Cell[80778, 2502, 125, 2, 37, "Input"], Cell[80906, 2506, 845, 15, 54, "Output"] }, Open ]], Cell[81766, 2524, 40, 0, 29, "Text"], Cell[CellGroupData[{ Cell[81831, 2528, 46, 1, 36, "Input"], Cell[81880, 2531, 38, 1, 35, "Output"] }, Open ]], Cell[81933, 2535, 328, 5, 63, "Text"], Cell[CellGroupData[{ Cell[82286, 2544, 1062, 28, 39, "Input"], Cell[83351, 2574, 899, 25, 37, "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[84311, 2606, 67, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[84403, 2611, 32, 0, 35, "Subsection"], Cell[84438, 2613, 328, 8, 47, "Text"], Cell[CellGroupData[{ Cell[84791, 2625, 62, 1, 37, "Input"], Cell[84856, 2628, 81, 1, 37, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[84974, 2634, 70, 1, 37, "Input"], Cell[85047, 2637, 130, 2, 37, "Output"] }, Open ]], Cell[85192, 2642, 61, 0, 29, "Text"], Cell[CellGroupData[{ Cell[85278, 2646, 107, 2, 38, "Input"], Cell[85388, 2650, 84, 1, 38, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[85509, 2656, 108, 2, 37, "Input"], Cell[85620, 2660, 71, 1, 37, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[85740, 2667, 41, 0, 29, "Subsection"], Cell[85784, 2669, 226, 7, 47, "Text"], Cell[CellGroupData[{ Cell[86035, 2680, 134, 2, 37, "Input"], Cell[86172, 2684, 321, 5, 35, "Output"] }, Open ]], Cell[86508, 2692, 269, 7, 47, "Text"], Cell[CellGroupData[{ Cell[86802, 2703, 78, 1, 37, "Input"], Cell[86883, 2706, 93, 1, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[87013, 2712, 58, 1, 36, "Input"], Cell[87074, 2715, 77, 1, 37, "Output"] }, Open ]], Cell[87166, 2719, 61, 0, 29, "Text"], Cell[CellGroupData[{ Cell[87252, 2723, 156, 3, 36, "Input"], Cell[87411, 2728, 1197, 16, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[88645, 2749, 61, 1, 36, "Input"], Cell[88709, 2752, 1815, 33, 92, "Output"] }, Open ]], Cell[90539, 2788, 535, 10, 81, "Text"], Cell[CellGroupData[{ Cell[91099, 2802, 80, 1, 36, "Input"], Cell[91182, 2805, 741, 12, 54, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[91960, 2822, 115, 2, 36, "Input"], Cell[92078, 2826, 460, 8, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[92575, 2839, 140, 2, 36, "Input"], Cell[92718, 2843, 357, 5, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[93112, 2853, 140, 2, 36, "Input"], Cell[93255, 2857, 269, 4, 35, "Output"] }, Open ]], Cell[93539, 2864, 60, 0, 29, "Text"], Cell[CellGroupData[{ Cell[93624, 2868, 316, 6, 56, "Input"], Cell[93943, 2876, 269, 4, 35, "Output"] }, Open ]], Cell[94227, 2883, 480, 15, 66, "Text"], Cell[CellGroupData[{ Cell[94732, 2902, 148, 2, 38, "Input"], Cell[94883, 2906, 498, 7, 36, "Output"] }, Open ]], Cell[95396, 2916, 63, 0, 29, "Text"], Cell[95462, 2918, 229, 3, 36, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[95728, 2926, 42, 0, 29, "Subsection"], Cell[95773, 2928, 197, 4, 46, "Text"], Cell[CellGroupData[{ Cell[95995, 2936, 115, 2, 37, "Input"], Cell[96113, 2940, 357, 5, 37, "Output"] }, Open ]], Cell[96485, 2948, 243, 8, 29, "Text"], Cell[96731, 2958, 150, 2, 71, "InputOnly"], Cell[96884, 2962, 116, 3, 29, "Text"], Cell[CellGroupData[{ Cell[97025, 2969, 115, 2, 37, "Input"], Cell[97143, 2973, 449, 6, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[97629, 2984, 53, 1, 36, "Input"], Cell[97685, 2987, 228, 3, 35, "Output"] }, Open ]], Cell[97928, 2993, 150, 3, 46, "Text"], Cell[98081, 2998, 162, 2, 71, "InputOnly"], Cell[CellGroupData[{ Cell[98268, 3004, 115, 2, 37, "Input"], Cell[98386, 3008, 228, 3, 35, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[98663, 3017, 32, 0, 29, "Subsection"], Cell[98698, 3019, 474, 11, 63, "Text"], Cell[CellGroupData[{ Cell[99197, 3034, 227, 4, 36, "Input"], Cell[99427, 3040, 248, 3, 35, "Output"] }, Open ]], Cell[99690, 3046, 303, 8, 47, "Text"], Cell[CellGroupData[{ Cell[100018, 3058, 73, 1, 37, "Input"], Cell[100094, 3061, 184, 3, 35, "Output"] }, Open ]], Cell[100293, 3067, 332, 10, 46, "Text"], Cell[CellGroupData[{ Cell[100650, 3081, 379, 7, 36, "Input"], Cell[101032, 3090, 354, 5, 35, "Output"] }, Open ]], Cell[101401, 3098, 34, 0, 29, "Text"], Cell[CellGroupData[{ Cell[101460, 3102, 133, 3, 37, "Input"], Cell[101596, 3107, 1424, 22, 73, "Output"] }, Open ]], Cell[103035, 3132, 116, 3, 29, "Text"], Cell[CellGroupData[{ Cell[103176, 3139, 132, 2, 37, "Input"], Cell[103311, 3143, 153, 2, 35, "Output"] }, Open ]], Cell[103479, 3148, 179, 3, 46, "Text"], Cell[103661, 3153, 442, 8, 118, "InputOnly"], Cell[CellGroupData[{ Cell[104128, 3165, 133, 3, 37, "Input"], Cell[104264, 3170, 260, 4, 35, "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[104585, 3181, 76, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[104686, 3186, 34, 0, 35, "Subsection"], Cell[104723, 3188, 214, 6, 30, "Text"], Cell[CellGroupData[{ Cell[104962, 3198, 42, 1, 36, "Input"], Cell[105007, 3201, 59, 1, 39, "Output"] }, Open ]], Cell[105081, 3205, 192, 4, 46, "Text"], Cell[CellGroupData[{ Cell[105298, 3213, 106, 2, 38, "Input"], Cell[105407, 3217, 159, 2, 40, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[105603, 3224, 58, 1, 36, "Input"], Cell[105664, 3227, 111, 2, 44, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[105824, 3235, 33, 0, 29, "Subsection"], Cell[105860, 3237, 186, 4, 46, "Text"], Cell[106049, 3243, 244, 5, 28, "DisplayFormula"], Cell[106296, 3250, 223, 4, 33, "DisplayFormula"], Cell[106522, 3256, 156, 5, 30, "Text"], Cell[CellGroupData[{ Cell[106703, 3265, 108, 2, 37, "Input"], Cell[106814, 3269, 119, 2, 38, "Output"] }, Open ]], Cell[106948, 3274, 269, 7, 47, "Text"], Cell[107220, 3283, 179, 3, 71, "InputOnly"], Cell[CellGroupData[{ Cell[107424, 3290, 108, 2, 37, "Input"], Cell[107535, 3294, 211, 3, 42, "Output"] }, Open ]], Cell[107761, 3300, 195, 4, 46, "Text"], Cell[CellGroupData[{ Cell[107981, 3308, 113, 2, 37, "Input"], Cell[108097, 3312, 208, 4, 42, "Output"] }, Open ]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[108366, 3323, 98, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[108489, 3328, 32, 0, 35, "Subsection"], Cell[108524, 3330, 214, 4, 46, "Text"], Cell[CellGroupData[{ Cell[108763, 3338, 67, 1, 37, "Input"], Cell[108833, 3341, 1067, 33, 51, "Output"] }, Open ]], Cell[109915, 3377, 89, 2, 29, "Text"], Cell[CellGroupData[{ Cell[110029, 3383, 49, 1, 36, "Input"], Cell[110081, 3386, 813, 21, 48, "Output"] }, Open ]], Cell[110909, 3410, 256, 6, 47, "Text"], Cell[CellGroupData[{ Cell[111190, 3420, 76, 1, 36, "Input"], Cell[111269, 3423, 426, 13, 51, "Output"] }, Open ]], Cell[111710, 3439, 117, 3, 29, "Text"], Cell[CellGroupData[{ Cell[111852, 3446, 87, 1, 37, "Input"], Cell[111942, 3449, 425, 10, 55, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[112404, 3464, 114, 2, 36, "Input"], Cell[112521, 3468, 376, 5, 82, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[112946, 3479, 33, 0, 29, "Subsection"], Cell[112982, 3481, 283, 9, 33, "Text"], Cell[113268, 3492, 119, 2, 28, "DisplayFormula"], Cell[113390, 3496, 322, 6, 41, "DisplayFormula"], Cell[113715, 3504, 235, 6, 46, "Text"], Cell[CellGroupData[{ Cell[113975, 3514, 108, 2, 37, "Input"], Cell[114086, 3518, 791, 20, 54, "Output"] }, Open ]], Cell[114892, 3541, 61, 0, 29, "Text"], Cell[CellGroupData[{ Cell[114978, 3545, 49, 1, 36, "Input"], Cell[115030, 3548, 479, 8, 48, "Output"] }, Open ]], Cell[115524, 3559, 135, 3, 29, "Text"], Cell[115662, 3564, 372, 7, 82, "InputOnly"], Cell[CellGroupData[{ Cell[116059, 3575, 228, 4, 38, "Input"], Cell[116290, 3581, 1288, 38, 51, "Output"] }, Open ]], Cell[117593, 3622, 35, 0, 29, "Text"], Cell[117631, 3624, 293, 6, 28, "DisplayFormula"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[117973, 3636, 82, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[118080, 3641, 39, 0, 35, "Subsection"], Cell[118122, 3643, 932, 24, 99, "Text"], Cell[119057, 3669, 428, 14, 48, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[119522, 3688, 39, 0, 29, "Subsection"], Cell[119564, 3690, 63, 0, 29, "Text"], Cell[119630, 3692, 78, 1, 49, "InputOnly"], Cell[119711, 3695, 73, 0, 29, "Text"], Cell[CellGroupData[{ Cell[119809, 3699, 154, 2, 37, "Input"], Cell[119966, 3703, 173, 3, 39, "Output"] }, Open ]], Cell[120154, 3709, 284, 5, 63, "Text"], Cell[120441, 3716, 79, 1, 49, "InputOnly"], Cell[120523, 3719, 89, 2, 29, "Text"], Cell[120615, 3723, 120, 2, 50, "InputOnly"], Cell[120738, 3727, 131, 3, 29, "Text"], Cell[CellGroupData[{ Cell[120894, 3734, 183, 3, 37, "Input"], Cell[121080, 3739, 277, 5, 42, "Output"] }, Open ]], Cell[121372, 3747, 79, 1, 49, "InputOnly"], Cell[121454, 3750, 96, 2, 29, "Text"], Cell[121553, 3754, 119, 2, 50, "InputOnly"], Cell[CellGroupData[{ Cell[121697, 3760, 208, 3, 38, "Input"], Cell[121908, 3765, 204, 4, 43, "Output"] }, Open ]], Cell[122127, 3772, 200, 4, 46, "Text"], Cell[122330, 3778, 165, 3, 51, "InputOnly"], Cell[CellGroupData[{ Cell[122520, 3785, 149, 2, 38, "Input"], Cell[122672, 3789, 72, 1, 38, "Output"] }, Open ]], Cell[122759, 3793, 45, 0, 29, "Text"], Cell[122807, 3795, 85, 1, 50, "InputOnly"], Cell[122895, 3798, 84, 1, 50, "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell[123016, 3804, 39, 0, 29, "Subsection"], Cell[123058, 3806, 250, 7, 47, "Text"], Cell[123311, 3815, 113, 3, 29, "Text"], Cell[123427, 3820, 106, 2, 50, "InputOnly"], Cell[123536, 3824, 97, 2, 29, "Text"], Cell[CellGroupData[{ Cell[123658, 3830, 140, 2, 37, "Input"], Cell[123801, 3834, 59, 1, 37, "Output"] }, Open ]], Cell[123875, 3838, 66, 0, 29, "Text"], Cell[123944, 3840, 152, 2, 49, "InputOnly"], Cell[124099, 3844, 114, 3, 29, "Text"], Cell[CellGroupData[{ Cell[124238, 3851, 123, 2, 36, "Input"], Cell[124364, 3855, 50, 1, 35, "Output"] }, Open ]], Cell[124429, 3859, 160, 3, 46, "Text"], Cell[CellGroupData[{ Cell[124614, 3866, 624, 9, 56, "Input"], Cell[125241, 3877, 715, 11, 54, "Output"] }, Open ]], Cell[125971, 3891, 67, 0, 29, "Text"], Cell[CellGroupData[{ Cell[126063, 3895, 120, 2, 36, "Input"], Cell[126186, 3899, 263, 4, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[126486, 3908, 58, 1, 36, "Input"], Cell[126547, 3911, 45, 1, 35, "Output"] }, Open ]], Cell[126607, 3915, 45, 0, 29, "Text"], Cell[126655, 3917, 117, 2, 50, "InputOnly"], Cell[126775, 3921, 146, 2, 49, "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell[126958, 3928, 39, 0, 29, "Subsection"], Cell[127000, 3930, 114, 3, 29, "Text"], Cell[127117, 3935, 75, 1, 49, "InputOnly"], Cell[CellGroupData[{ Cell[127217, 3940, 134, 2, 37, "Input"], Cell[127354, 3944, 43, 1, 35, "Output"] }, Open ]], Cell[127412, 3948, 75, 1, 49, "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell[127524, 3954, 39, 0, 29, "Subsection"], Cell[127566, 3956, 109, 3, 29, "Text"], Cell[127678, 3961, 151, 2, 50, "InputOnly"], Cell[127832, 3965, 60, 0, 29, "Text"], Cell[CellGroupData[{ Cell[127917, 3969, 165, 3, 38, "Input"], Cell[128085, 3974, 513, 9, 44, "Output"] }, Open ]], Cell[128613, 3986, 124, 3, 29, "Text"], Cell[128740, 3991, 188, 3, 50, "InputOnly"], Cell[128931, 3996, 293, 11, 30, "Text"], Cell[129227, 4009, 148, 2, 71, "InputOnly"], Cell[129378, 4013, 206, 8, 30, "Text"], Cell[129587, 4023, 202, 4, 71, "InputOnly"], Cell[129792, 4029, 92, 2, 29, "Text"], Cell[CellGroupData[{ Cell[129909, 4035, 177, 3, 38, "Input"], Cell[130089, 4040, 185, 3, 36, "Output"] }, Open ]], Cell[130289, 4046, 451, 12, 65, "Text"], Cell[130743, 4060, 309, 5, 71, "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell[131089, 4070, 39, 0, 29, "Subsection"], Cell[131131, 4072, 407, 10, 48, "Text"], Cell[131541, 4084, 1555, 44, 51, "InputOnly"], Cell[CellGroupData[{ Cell[133121, 4132, 3309, 91, 43, "Input"], Cell[136433, 4225, 3211, 88, 39, "Output"] }, Open ]], Cell[139659, 4316, 46, 0, 29, "Text"], Cell[139708, 4318, 837, 23, 51, "InputOnly"], Cell[140548, 4343, 382, 12, 48, "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[140979, 4361, 79, 1, 43, "Section 1"], Cell[CellGroupData[{ Cell[141083, 4366, 98, 1, 35, "Subsection"], Cell[141184, 4369, 215, 6, 46, "Text"], Cell[141402, 4377, 121, 2, 64, "InputOnly"], Cell[141526, 4381, 94, 2, 29, "Text"], Cell[141623, 4385, 117, 2, 50, "InputOnly"], Cell[141743, 4389, 243, 4, 46, "Text"], Cell[141989, 4395, 377, 6, 73, "InputOnly"], Cell[142369, 4403, 39, 0, 29, "Text"], Cell[CellGroupData[{ Cell[142433, 4407, 429, 7, 105, "Input"], Cell[142865, 4416, 250, 4, 64, "Output"] }, Open ]], Cell[143130, 4423, 152, 3, 46, "Text"], Cell[CellGroupData[{ Cell[143307, 4430, 91, 1, 37, "Input"], Cell[143401, 4433, 42, 1, 35, "Output"] }, Open ]], Cell[143458, 4437, 60, 0, 29, "Text"], Cell[143521, 4439, 89, 1, 50, "InputOnly"], Cell[143613, 4442, 52, 0, 29, "Text"], Cell[CellGroupData[{ Cell[143690, 4446, 132, 2, 37, "Input"], Cell[143825, 4450, 120, 2, 48, "Output"] }, Open ]], Cell[143960, 4455, 140, 3, 29, "Text"], Cell[144103, 4460, 107, 2, 49, "InputOnly"], Cell[144213, 4464, 878, 27, 49, "Text"], Cell[145094, 4493, 510, 15, 50, "InputOnly"], Cell[145607, 4510, 206, 6, 29, "Text"], Cell[145816, 4518, 946, 26, 52, "InputOnly"], Cell[146765, 4546, 965, 26, 52, "InputOnly"] }, Closed]], Cell[CellGroupData[{ Cell[147767, 4577, 83, 1, 29, "Subsection"], Cell[147853, 4580, 261, 5, 46, "Text"], Cell[148117, 4587, 148, 3, 29, "Text"], Cell[148268, 4592, 1556, 44, 50, "InputOnly"], Cell[149827, 4638, 187, 4, 46, "Text"], Cell[150017, 4644, 168, 3, 46, "Text"], Cell[CellGroupData[{ Cell[150210, 4651, 1268, 36, 37, "Input"], Cell[151481, 4689, 1164, 34, 38, "Output"] }, Open ]], Cell[152660, 4726, 383, 12, 46, "Text"], Cell[CellGroupData[{ Cell[153068, 4742, 2365, 68, 39, "Input"], Cell[155436, 4812, 900, 25, 38, "Output"] }, Open ]], Cell[156351, 4840, 111, 3, 29, "Text"], Cell[156465, 4845, 1175, 34, 68, "InputOnly"], Cell[157643, 4881, 41, 0, 29, "Text"], Cell[157687, 4883, 1258, 35, 68, "InputOnly"], Cell[158948, 4920, 257, 8, 29, "Text"], Cell[CellGroupData[{ Cell[159230, 4932, 1591, 44, 37, "Input"], Cell[160824, 4978, 145, 2, 53, "Output"] }, Open ]], Cell[160984, 4983, 54, 0, 29, "Text"], Cell[CellGroupData[{ Cell[161063, 4987, 135, 2, 55, "Input"], Cell[161201, 4991, 107, 2, 36, "Output"] }, Open ]], Cell[161323, 4996, 67, 0, 29, "Text"], Cell[161393, 4998, 1499, 40, 57, "DisplayFormula"] }, Closed]], Cell[CellGroupData[{ Cell[162929, 5043, 97, 1, 29, "Subsection"], Cell[163029, 5046, 188, 4, 46, "Text"], Cell[163220, 5052, 2700, 77, 50, "InputOnly"], Cell[165923, 5131, 147, 3, 29, "Text"], Cell[CellGroupData[{ Cell[166095, 5138, 1948, 48, 37, "Input"], Cell[168046, 5188, 87, 1, 57, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[168170, 5194, 2176, 51, 60, "Input"], Cell[170349, 5247, 148, 2, 51, "Output"] }, Open ]], Cell[170512, 5252, 59, 0, 29, "Text"], Cell[CellGroupData[{ Cell[170596, 5256, 215, 3, 42, "Input"], Cell[170814, 5261, 69, 1, 57, "Output"] }, Open ]], Cell[170898, 5265, 159, 3, 46, "Text"], Cell[CellGroupData[{ Cell[171082, 5272, 2123, 50, 57, "Input"], Cell[173208, 5324, 79, 1, 36, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[173324, 5330, 2176, 51, 60, "Input"], Cell[175503, 5383, 168, 3, 48, "Output"] }, Open ]], Cell[175686, 5389, 59, 0, 29, "Text"], Cell[CellGroupData[{ Cell[175770, 5393, 215, 3, 42, "Input"], Cell[175988, 5398, 69, 1, 57, "Output"] }, Open ]], Cell[176072, 5402, 99, 2, 29, "Text"], Cell[CellGroupData[{ Cell[176196, 5408, 67, 1, 36, "Input"], Cell[176266, 5411, 44, 1, 48, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[176359, 5418, 79, 1, 29, "Subsection"], Cell[176441, 5421, 56, 0, 29, "Text"], Cell[176500, 5423, 129, 2, 50, "InputOnly"], Cell[176632, 5427, 66, 0, 29, "Text"], Cell[CellGroupData[{ Cell[176723, 5431, 489, 13, 37, "Input"], Cell[177215, 5446, 652, 16, 44, "Output"] }, Open ]], Cell[177882, 5465, 324, 7, 46, "Text"], Cell[178209, 5474, 161, 3, 52, "InputOnly"], Cell[178373, 5479, 158, 3, 53, "InputOnly"], Cell[178534, 5484, 28, 0, 29, "Text"], Cell[CellGroupData[{ Cell[178587, 5488, 607, 15, 44, "Input"], Cell[179197, 5505, 3580, 92, 58, "Output"] }, Open ]], Cell[182792, 5600, 206, 4, 46, "Text"], Cell[183001, 5606, 2039, 54, 57, "DisplayFormula"], Cell[185043, 5662, 284, 7, 49, "Text"], Cell[CellGroupData[{ Cell[185352, 5673, 175, 3, 37, "Input"], Cell[185530, 5678, 63, 1, 35, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[185630, 5684, 186, 3, 37, "Input"], Cell[185819, 5689, 81, 1, 35, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[185949, 5696, 89, 1, 29, "Subsection"], Cell[186041, 5699, 154, 3, 46, "Text"], Cell[186198, 5704, 1007, 26, 70, "InputOnly"], Cell[187208, 5732, 73, 0, 29, "Text"], Cell[187284, 5734, 131, 2, 41, "DisplayFormula"], Cell[187418, 5738, 104, 3, 29, "Text"], Cell[187525, 5743, 107, 2, 27, "DisplayFormula"], Cell[187635, 5747, 53, 0, 29, "Text"], Cell[187691, 5749, 141, 3, 50, "InputOnly"], Cell[187835, 5754, 288, 9, 46, "Text"], Cell[CellGroupData[{ Cell[188148, 5767, 1020, 28, 58, "Input"], Cell[189171, 5797, 562, 14, 68, "Output"] }, Open ]], Cell[189748, 5814, 106, 3, 29, "Text"], Cell[189857, 5819, 1299, 37, 30, "DisplayFormula"] }, Closed]], Cell[CellGroupData[{ Cell[191193, 5861, 98, 1, 29, "Subsection"], Cell[191294, 5864, 257, 9, 30, "Text"], Cell[191554, 5875, 1611, 46, 50, "InputOnly"], Cell[193168, 5923, 1567, 45, 50, "InputOnly"], Cell[194738, 5970, 117, 3, 29, "Text"], Cell[194858, 5975, 908, 26, 50, "InputOnly"], Cell[195769, 6003, 209, 4, 46, "Text"], Cell[CellGroupData[{ Cell[196003, 6011, 1233, 35, 37, "Input"], Cell[197239, 6048, 1189, 35, 40, "Output"] }, Open ]], Cell[198443, 6086, 108, 3, 29, "Text"], Cell[CellGroupData[{ Cell[198576, 6093, 106, 2, 37, "Input"], Cell[198685, 6097, 1423, 38, 83, "Output"] }, Open ]], Cell[200123, 6138, 171, 3, 46, "Text"], Cell[CellGroupData[{ Cell[200319, 6145, 1744, 42, 109, "Input"], Cell[202066, 6189, 883, 12, 127, "Output"] }, Open ]], Cell[202964, 6204, 48, 0, 29, "Text"], Cell[CellGroupData[{ Cell[203037, 6208, 115, 2, 36, "Input"], Cell[203155, 6212, 226, 4, 72, "Output"] }, Open ]], Cell[203396, 6219, 218, 4, 46, "Text"], Cell[203617, 6225, 432, 7, 32, "DisplayFormula"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[204098, 6238, 66, 1, 43, "Section 1"], Cell[204167, 6241, 228, 7, 57, "Reference"], Cell[204398, 6250, 236, 7, 57, "Reference"], Cell[204637, 6259, 282, 7, 57, "Reference"], Cell[204922, 6268, 310, 9, 57, "Reference"] }, Closed]] }, Open ]] } ] *) (******************************************************************* End of Mathematica Notebook file. *******************************************************************)