(*********************************************************************** Mathematica-Compatible Notebook This notebook can be used on any computer system with Mathematica 3.0, MathReader 3.0, or any compatible application. The data for the notebook starts with the line of 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[ 47294, 1753]*) (*NotebookOutlinePosition[ 48209, 1783]*) (* CellTagsIndexPosition[ 48165, 1779]*) (*WindowFrame->Normal*) Notebook[{ Cell["\t ", "Text"], Cell[CellGroupData[{ Cell["Matrix Exterior Differential Calculus: Examples", "Subtitle", TextAlignment->Center, TextJustification->0, FontWeight->"Bold"], Cell[TextData[{ StyleBox["\n", FontWeight->"Bold", FontSlant->"Italic"], ButtonBox["S. Bonanos", ButtonData:>{ URL[ "http://www.inp.demokritos.gr/~sbonano/SB.html"], None}, ButtonStyle->"Hyperlink"], StyleBox["\n", FontWeight->"Bold", FontSlant->"Italic"], StyleBox["\n", FontWeight->"Bold"], StyleBox["Institute of Nuclear Physics, ", FontWeight->"Bold", FontSlant->"Italic"], StyleBox[ButtonBox["NCSR \"Demokritos\"", ButtonData:>{ URL[ "http://www.demokritos.gr/"], None}, ButtonStyle->"Hyperlink"], FontSlant->"Italic"], StyleBox[", \nAghia Paraskevi 15310, Greece. ", FontWeight->"Bold", FontSlant->"Italic"], StyleBox["\n", FontSize->14, FontWeight->"Bold", FontSlant->"Italic"], StyleBox["\n", FontWeight->"Bold"], "Please send comments, suggestions, bug reports to: ", ButtonBox["sbonano@inp.demokritos.gr", ButtonData:>{ URL[ "mailto:sbonano@inp.demokritos.gr"], None}, ButtonStyle->"Hyperlink"], StyleBox[" \t", FontWeight->"Bold"] }], "Text", TextAlignment->Center, TextJustification->0, FontFamily->"Times", FontSize->16], Cell["\t", "Text"] }, Closed]], Cell["\<\ \tWarning: The first four examples are not independent. They must \ be evaluated in the order they appear.\ \>", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(<< matrixEDC.m\)], "Input"], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Example I:", FontWeight->"Bold"], "\tElementary calculations with symbolic matrices" }], "Subsubtitle", FontSize->16], Cell[CellGroupData[{ Cell[BoxData[ \(DeclareMatrixForms[{0, S, S}, {1, M, Mt}]\)], "Input"], Cell[BoxData[ \("OK"\)], "Print"] }, Open ]], Cell[TextData[{ "\tI.e., ", StyleBox["S", "Output"], " will stand for a symmetric 0-form matrix and ", StyleBox["M", "Output"], ", ", StyleBox["Mt", "Output"], " for an 1-form matrix and its transpose. " }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(S0 = S - tr[S]/matDimension\)], "Input"], Cell[BoxData[ \(S - tr[S]\/matDimension\)], "Output"] }, Open ]], Cell[TextData[{ "\tNote that the identity matrix multiplying the last term is not written \ explicitly. ", StyleBox["matDimension", "Output"], " is a global variable, used in the definition of ", StyleBox["tr", "Output"], ", that can be assigned by the user. " }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[S0]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[S0]\)], "Input"], Cell[BoxData[ \(d[S] - d[tr[S]]\/matDimension\)], "Output"] }, Open ]], Cell[TextData[{ "\t", StyleBox["Wedge", "Output"], " must be used to multiply matrices together , or with scalar forms," }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(S0\[Wedge]S0\)], "Input"], Cell[BoxData[ \(\(-\(\(2\ S\ tr[S]\)\/matDimension\)\) + tr[S]\^2\/matDimension\^2 + S\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[S0] - d[x]\[Wedge]S0\)], "Input"], Cell[BoxData[ \(d[S] - d[tr[S]]\/matDimension + \(d[x]\ tr[S]\)\/matDimension - d[x]\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(M0 = M - tr[M]/matDimension\)], "Input"], Cell[BoxData[ \(M - tr[M]\/matDimension\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(M0\[Wedge]M0\)], "Input"], Cell[BoxData[ \(M\[Wedge]M\)], "Output"] }, Open ]], Cell[TextData[{ "\tThis is correct, since ", StyleBox["M\[Wedge]tr[M]=", "Output"], StyleBox[" ", "Output", FontSize->10], StyleBox["-tr[M]\[Wedge]M", "Output"], " for an 1-form matrix ", StyleBox["M", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(M0t = Transpose[M0]\)], "Input"], Cell[BoxData[ \(Mt - tr[M]\/matDimension\)], "Output"] }, Open ]], Cell[TextData[{ "\tCorrect, since ", StyleBox["tr[Mt]=tr[M]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(M0\[Wedge]M0t + M0t\[Wedge]M0\)], "Input"], Cell[BoxData[ \(M\[Wedge]Mt + Mt\[Wedge]M\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell["\tThis is correct because (M being an 1-form matrix)", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"AntisymQ", "[", StyleBox[\(M\[Wedge]Mt + Mt\[Wedge]M\), "Output"], StyleBox["]", "Output"]}]], "Input"], Cell[BoxData[ \(True\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(S0\[Wedge]M0 + M0\[Wedge]S0\)], "Input"], Cell[BoxData[ \(\(-\(\(2\ M\ tr[S]\)\/matDimension\)\) + \(2\ tr[M]\ tr[S]\)\/matDimension\^2 + M\[Wedge]S + S\[Wedge]M - \(2\ tr[M]\[Wedge]S\)\/matDimension\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Transpose[%]\)], "Input"], Cell[BoxData[ \(\(-\(\(2\ Mt\ tr[S]\)\/matDimension\)\) + \(2\ tr[M]\ tr[S]\)\/matDimension\^2 + Mt\[Wedge]S + S\[Wedge]Mt - \(2\ tr[M]\[Wedge]S\)\/matDimension\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[%]\)], "Input"], Cell[BoxData[ \(\(-\(\(2\ d[Mt]\ tr[S]\)\/matDimension\)\) + \(2\ d[tr[M]]\ tr[S]\)\/matDimension\^2 - Mt\[Wedge]d[S] + S\[Wedge]d[Mt] + d[Mt]\[Wedge]S + d[S]\[Wedge]Mt - \(2\ d[tr[M]]\[Wedge]S\)\/matDimension - \(2\ d[tr[S]]\[Wedge]Mt\)\/matDimension + \(2\ d[tr[S]]\[Wedge]tr[M]\)\/matDimension\^2 + \(2\ tr[M]\[Wedge]d[S]\)\/matDimension\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(\(-\(\(2\ d[tr[M]]\ tr[S]\)\/matDimension\)\) - 2\ tr[M\[Wedge]d[S]] + 2\ tr[S\[Wedge]d[M]] - \(2\ d[tr[S]]\[Wedge]tr[M]\)\/matDimension\)], "Output"] }, Open ]], Cell[TextData[{ "\t", StyleBox["tr", FontFamily->"Courier"], " has applied trace identities in obtaining this expression" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[%]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Example II:", FontWeight->"Bold"], "\tApplying the Cayley-Hamilton theorem" }], "Subsubtitle", FontSize->16], Cell["\tNow suppose:", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(matDimension = 3; tr[S] = 0; \ntr[S\[Wedge]S] = 2 s2; tr[S\[Wedge]S\[Wedge]S] = 3 s3; \)], "Input"], Cell[TextData[{ "\tThen, the Cayley-Hamilton theorem gives (", StyleBox["s3", "Output"], " is understood to multiply the identity matrix)" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(\(S\[Wedge]S\[Wedge]S = s2\ S + s3; \)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(S4 = S\[Wedge]S\[Wedge]S\[Wedge]S\)], "Input"], Cell[BoxData[ \(S\ s3 + s2\ S\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(2\ s2\^2\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(S\[Wedge]S4\)], "Input"], Cell[BoxData[ \(s2\ \((S\ s2 + s3)\) + s3\ S\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(reWrite[%]\)], "Input"], Cell[BoxData[ \(S\ s2\^2 + s2\ s3 + s3\ S\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(5\ s2\ s3\)], "Output"] }, Open ]], Cell[TextData[{ "\t(", StyleBox["tr", "Output"], " takes into account that ", StyleBox["s2", "Output"], " ", StyleBox["s3", "Output"], " multiplies the 3-dim identity matrix)" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[%%]\)], "Input"], Cell[BoxData[ \(s2\^2\ d[S] + s3\ d[s2] + s2\ d[s3] + s3\ S\[Wedge]d[S] + s3\ d[S]\[Wedge]S + 2\ s2\ d[s2]\[Wedge]S + d[s3]\[Wedge]S\[Wedge]S\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(tr[%]\)], "Input"], Cell[BoxData[ \(3\ s3\ d[s2] + 5\ s2\ d[s3] + 2\ s3\ tr[S\[Wedge]d[S]]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[%]\)], "Input"], Cell[BoxData[ \(2\ d[s2]\[Wedge]d[s3] + 2\ d[s3]\[Wedge]tr[S\[Wedge]d[S]]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(% /. {tr[S\[Wedge]d[S]] -> d[s2], tr[d[S]\[Wedge]S] -> d[s2]}\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Example III:", FontWeight->"Bold"], " \tA composite calculation" }], "Subsubtitle", FontSize->16], Cell[TextData[{ "\tOne can assign ", StyleBox["d[S]", "Output"], ", say as a linear combination of ", StyleBox["S", "Output"], " and the traceless part of ", StyleBox["S\[Wedge]S,", "Output"], " with 1-form coefficients" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(DeclareForms[1, q[_]]\)], "Input"], Cell[BoxData[ \("OK"\)], "Print"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[S] = q[1]\[Wedge]S + q[2]\[Wedge]\((S\[Wedge]S - 2 s2/3)\)\)], "Input"], Cell[BoxData[ \(\(-\(2\/3\)\)\ s2\ q[2] + q[1]\[Wedge]S + q[2]\[Wedge]S\[Wedge]S\)], "Output"] }, Open ]], Cell[TextData[{ "\t(Note that, even though S is a 0-form matrix, one must use ", StyleBox["Wedge", "Output"], " to multiply it with scalar differential forms). Then ", StyleBox["d", "Output"], " uses this definition when applicable" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[S\[Wedge]S]\)], "Input"], Cell[BoxData[ \(2\ s3\ q[2] + 2\/3\ s2\ q[2]\[Wedge]S + 2\ q[1]\[Wedge]S\[Wedge]S\)], "Output"] }, Open ]], Cell[TextData[{ "\tNow, from the definition of ", StyleBox["s2, s3", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[s2] = tr[S\[Wedge]d[S]]\)], "Input"], Cell[BoxData[ \(2\ s2\ q[1] + 3\ s3\ q[2]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(d[s3] = tr[S\[Wedge]S\[Wedge]d[S]]\)], "Input"], Cell[BoxData[ \(3\ s3\ q[1] + 2\/3\ s2\^2\ q[2]\)], "Output"] }, Open ]], Cell[TextData[{ "\tThe integrability conditions for ", StyleBox["d[s2],", "Output"], " ", StyleBox["d[s3]", "Output"], " imply that ", StyleBox["q[1]", "Output"], " and ", StyleBox["q[2]", "Output"], " must make the following two equations vanish:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(eq1 = d[%%]\)], "Input"], Cell[BoxData[ \(2\ s2\ d[q[1]] + 3\ s3\ d[q[2]] + 3\ s3\ q[1]\[Wedge]q[2]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(eq2 = d[%%]\)], "Input"], Cell[BoxData[ \(3\ s3\ d[q[1]] + 2\/3\ s2\^2\ d[q[2]] + 2\/3\ s2\^2\ q[1]\[Wedge]q[2]\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(SolveAlways[{eq1 == 0, eq2 == 0}, {d[q[_]]}]\)], "Input"], Cell[BoxData[ \({{s3 \[Rule] 0, s2 \[Rule] 0}, {s3 \[Rule] 0, s2 \[Rule] 0}, { d[q[1]] \[Rule] 0, d[q[2]] \[Rule] \(-\((q[1]\[Wedge]q[2])\)\)}, { d[q[1]] \[Rule] 0, d[q[2]] \[Rule] \(-\((q[1]\[Wedge]q[2])\)\)}, { d[q[1]] \[Rule] 0, d[q[2]] \[Rule] \(-\((q[1]\[Wedge]q[2])\)\)}, { d[q[2]] \[Rule] \(-\((q[1]\[Wedge]q[2])\)\), d[q[1]] \[Rule] 0}, { d[q[2]] \[Rule] \(-\(\(\@3\ d[q[1]]\)\/\@s2\)\) - q[1]\[Wedge]q[2], s3 \[Rule] \(2\ s2\^\(3/2\)\)\/\(3\ \@3\)}, { d[q[2]] \[Rule] \(\@3\ d[q[1]]\)\/\@s2 - q[1]\[Wedge]q[2], s3 \[Rule] \(-\(\(2\ s2\^\(3/2\)\)\/\(3\ \@3\)\)\)}}\)], "Output"] }, Open ]], Cell[TextData[{ "\tThus, we can assign to ", StyleBox["d[q[i]]", "Output"], " the values:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(d[q[1]] = 0; d[q[2]] = \(-\((q[1]\[Wedge]q[2])\)\); \)], "Input"], Cell[TextData[{ "\tThen the integrability condition for our choice of ", StyleBox["d[S]", "Output"], " is satisfied:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[q[1]\[Wedge]S + q[2]\[Wedge]\((S\[Wedge]S - 2 s2/3)\)]\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Example IV: ", FontWeight->"Bold"], "\tConverting to component form - vectors" }], "Subsubtitle", FontSize->16], Cell["\<\ \tTo obtain the component form of any of these equations, one must \ define a substitution rule for S, s2, s3 consistent with the assumptions \ made. For example, let\ \>", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(Scomp = Array[Sc, {3, 3}]\)], "Input"], Cell[BoxData[ \({{Sc[1, 1], Sc[1, 2], Sc[1, 3]}, {Sc[2, 1], Sc[2, 2], Sc[2, 3]}, { Sc[3, 1], Sc[3, 2], Sc[3, 3]}}\)], "Output"] }, Open ]], Cell[BoxData[ RowBox[{\(Sc[i_, j_] := Sc[j, i] /; i > j; \), RowBox[{"(*", StyleBox[ RowBox[{ StyleBox[" ", "Text", FontFamily->"Times", FontWeight->"Plain"], StyleBox[" ", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}]}]], RowBox[{ StyleBox["To", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[" ", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[ StyleBox[ RowBox[{ StyleBox["m", FontFamily->"Times", FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox["ake", "Text", FontFamily->"Times", FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}]}]], FontSize->14, FontColor->RGBColor[0, 0, 1]], StyleBox[" ", "Text", FontSize->14, FontWeight->"Plain", FontColor->RGBColor[0, 0, 1]], StyleBox["Scomp", "Output", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[" ", "Text", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox["symmetric", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}]}], StyleBox[" ", "Text", FontFamily->"Times", FontWeight->"Plain"], StyleBox["*)", "Text"]}]}]], "Input"], Cell[BoxData[ RowBox[{\(Sc[3, 3] = \(-Sc[1, 1]\) - Sc[2, 2]; \), RowBox[{"(*", StyleBox[ RowBox[{ StyleBox[" ", "Text", FontFamily->"Times", FontWeight->"Plain"], StyleBox[" ", FontSize->14]}]], RowBox[{ RowBox[{ StyleBox["To", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[" ", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox["satisfy", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[" ", "Text", FontFamily->"Times", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox[\(tr[Scomp]\), "Text", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}]}], StyleBox["=", "Text", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}], StyleBox["0", "Text", FontSize->14, FontWeight->"Plain", FontSlant->"Plain", FontTracking->"Plain", FontVariations->{"Underline"->False, "Outline"->False, "Shadow"->False}]}], StyleBox[" ", "Text", FontWeight->"Plain"], StyleBox["*)", "Text"]}]}]], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(matComp = {S -> Scomp, s2 -> tr[Scomp\[Wedge]Scomp]/2, s3 -> tr[Scomp\[Wedge]Scomp\[Wedge]Scomp]/3}\)], "Input"], Cell[BoxData[ \({S \[Rule] {{Sc[1, 1], Sc[1, 2], Sc[1, 3]}, {Sc[1, 2], Sc[2, 2], Sc[2, 3]}, {Sc[1, 3], Sc[2, 3], \(-Sc[1, 1]\) - Sc[2, 2]}}, s2 \[Rule] Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2, s3 \[Rule] Sc[1, 1]\ Sc[1, 2]\^2 - Sc[1, 1]\^2\ Sc[2, 2] + Sc[1, 2]\^2\ Sc[2, 2] - Sc[1, 3]\^2\ Sc[2, 2] - Sc[1, 1]\ Sc[2, 2]\^2 + 2\ Sc[1, 2]\ Sc[1, 3]\ Sc[2, 3] - Sc[1, 1]\ Sc[2, 3]\^2}\)], "Output"] }, Open ]], Cell[TextData[{ "\t", StyleBox["toComponents", "Output"], " is equivalent to ", StyleBox["ReplaceAll(/.)", "Output"], " when acting on an expression that does not contain a hidden identity \ matrix:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"reWrite", "[", RowBox[{ RowBox[{"toComponents", "[", RowBox[{ StyleBox[\(S\[Wedge]S\), "Output"], ",", "matComp"}], "]"}], "-", RowBox[{"(", StyleBox[\(S\[Wedge]S /. matComp\), "Output"], ")"}]}], "]"}]], "Input"], Cell[BoxData[ \({{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}\)], "Output"] }, Open ]], Cell[TextData[{ "\tBut ", StyleBox[" /.", "Output"], " does not give the correct result here:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"reWrite", "[", RowBox[{ RowBox[{"toComponents", "[", RowBox[{ StyleBox[\(S\[Wedge]S - 2\ s2/3\), "Outputd"], ",", "matComp"}], "]"}], "-", RowBox[{"(", RowBox[{ StyleBox[\(S\[Wedge]S - 2\ s2/3\), "Outputd"], StyleBox["/.", "Output"], StyleBox["matComp", "Output"]}], ")"}]}], "]"}]], "Input"], Cell[BoxData[ \({{0, 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\), 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\)}, { 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\), 0, 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\)}, { 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\), 2\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 + Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\), 0}}\)], "Output"] }, Open ]], Cell[BoxData[ \(\(xdScomp = reWrite[toComponents[d[S], matComp]]; \)\)], "Input"], Cell[TextData[{ "\t", StyleBox["d[S]", "Output"], " is, of course, equal to ", StyleBox["q[1]\[Wedge]S+q[2]\[Wedge](S\[Wedge]S-2 s2/3)", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(d[Sc[i_, j_]] := xdScomp[\([i, j]\)]\)], "Input"], Cell[TextData[{ "\tNow we can evaluate the component form of the the integrability \ condition for", StyleBox[" d[S]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[xdScomp]\)], "Input"], Cell[BoxData[ \({{1\/3\ Sc[1, 1]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[1, 2]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[1, 3]\^2\ q[1]\[Wedge]q[2] - 2\/3\ Sc[1, 1]\ Sc[2, 2]\ q[1]\[Wedge]q[2] - 2\/3\ Sc[2, 2]\^2\ q[1]\[Wedge]q[2] - 2\/3\ Sc[2, 3]\^2\ q[1]\[Wedge]q[2] - 1\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 - 2\ Sc[1, 1]\ Sc[2, 2] - 2\ Sc[2, 2]\^2 - 2\ Sc[2, 3]\^2)\)\ q[1]\[Wedge]q[2], Sc[1, 1]\ Sc[1, 2]\ q[1]\[Wedge]q[2] + Sc[1, 2]\ Sc[2, 2]\ q[1]\[Wedge]q[2] + Sc[1, 3]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((Sc[1, 1]\ Sc[1, 2] + Sc[1, 2]\ Sc[2, 2] + Sc[1, 3]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2], \(-Sc[1, 3]\)\ Sc[2, 2]\ q[1]\[Wedge]q[2] + Sc[1, 2]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((\(-Sc[1, 3]\)\ Sc[2, 2] + Sc[1, 2]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2]}, { Sc[1, 1]\ Sc[1, 2]\ q[1]\[Wedge]q[2] + Sc[1, 2]\ Sc[2, 2]\ q[1]\[Wedge]q[2] + Sc[1, 3]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((Sc[1, 1]\ Sc[1, 2] + Sc[1, 2]\ Sc[2, 2] + Sc[1, 3]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2], \(-\(2\/3\)\)\ Sc[1, 1]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[1, 2]\^2\ q[1]\[Wedge]q[2] - 2\/3\ Sc[1, 3]\^2\ q[1]\[Wedge]q[2] - 2\/3\ Sc[1, 1]\ Sc[2, 2]\ q[1]\[Wedge]q[2] + 1\/3\ Sc[2, 2]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[2, 3]\^2\ q[1]\[Wedge]q[2] - 1\/3\ \(( \(-2\)\ Sc[1, 1]\^2 + Sc[1, 2]\^2 - 2\ Sc[1, 3]\^2 - 2\ Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\)\ q[1]\[Wedge]q[2], Sc[1, 2]\ Sc[1, 3]\ q[1]\[Wedge]q[2] - Sc[1, 1]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((Sc[1, 2]\ Sc[1, 3] - Sc[1, 1]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2]}, { \(-Sc[1, 3]\)\ Sc[2, 2]\ q[1]\[Wedge]q[2] + Sc[1, 2]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((\(-Sc[1, 3]\)\ Sc[2, 2] + Sc[1, 2]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2], Sc[1, 2]\ Sc[1, 3]\ q[1]\[Wedge]q[2] - Sc[1, 1]\ Sc[2, 3]\ q[1]\[Wedge]q[2] - \((Sc[1, 2]\ Sc[1, 3] - Sc[1, 1]\ Sc[2, 3])\)\ q[1]\[Wedge]q[2], 1\/3\ Sc[1, 1]\^2\ q[1]\[Wedge]q[2] - 2\/3\ Sc[1, 2]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[1, 3]\^2\ q[1]\[Wedge]q[2] + 4\/3\ Sc[1, 1]\ Sc[2, 2]\ q[1]\[Wedge]q[2] + 1\/3\ Sc[2, 2]\^2\ q[1]\[Wedge]q[2] + 1\/3\ Sc[2, 3]\^2\ q[1]\[Wedge]q[2] + 1\/3\ \(( Sc[1, 1]\^2 + Sc[1, 2]\^2 + Sc[1, 3]\^2 - 2\ Sc[1, 1]\ Sc[2, 2] - 2\ Sc[2, 2]\^2 - 2\ Sc[2, 3]\^2)\)\ q[1]\[Wedge]q[2] + 1\/3\ \(( \(-2\)\ Sc[1, 1]\^2 + Sc[1, 2]\^2 - 2\ Sc[1, 3]\^2 - 2\ Sc[1, 1]\ Sc[2, 2] + Sc[2, 2]\^2 + Sc[2, 3]\^2)\)\ q[1]\[Wedge]q[2]}}\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(reWrite[%]\)], "Input"], Cell[BoxData[ \({{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}\)], "Output"] }, Open ]], Cell[BoxData[ \(matComp =. \)], "Input"] }, Closed]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Example V:", FontWeight->"Bold"], " \tGauge Transformation of Connection and Curvature" }], "Subsubtitle", FontSize->16], Cell[TextData[{ "\tIn this example, the gauge transformation formulae for the connection \ 1-forms and the curvature 2-forms are given in matrix form. The notation \ follows the conventions of:\n\t R. Penrose and W. Rindler, ", StyleBox["Spinors and Space-Time", FontSlant->"Italic"], ", (Cambridge U. Press, 1984) vol 1, section 4.13.\n\t The formulation in \ terms of 2- and 3-dim matrices is developed in:\n\t S. Bonanos, ", StyleBox[ "The vacuum Einstein equations as closed ideals of matrix-valued \ differential forms", FontSlant->"Italic"], ", Journal of Mathematical Physics ", StyleBox["32", FontWeight->"Bold"], ", 188 (1991) ", "\n", "\t" }], "Text", FontSize->14], Cell[BoxData[ \(\(Off[General::"\", General::"\"]; \)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(DeclareMatrixForms[{0, G, Gt}, {0, Ginv, Ginvt}, {1, \[Omega], \[Omega]t}]\)], "Input"], Cell[BoxData[ \("OK"\)], "Print"] }, Open ]], Cell[TextData[ "\tG is a gauge transformation matrix, Ginv its inverse and \[Omega] is the \ connection 1-form matrix."], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(DeclareForms[{1, \[Omega]0, \[Omega]1, \[Omega]2}]\)], "Input"], Cell[BoxData[ \("OK"\)], "Print"] }, Open ]], Cell[TextData[{ "\tThe 1-forms ", StyleBox["\[Omega]0,", "Output"], " ", StyleBox["\[Omega]1,", "Output"], " ", StyleBox["\[Omega]2", "Output"], " are the components of the connection matrix ", StyleBox["\[Omega]", "Output"], ". In the two-dim representation, the matrices ", StyleBox["G,", "Output"], " ", StyleBox["\[Omega]", "Output"], " have the form:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(G[2] = {{a, b}, {c, d}}/Sqrt[a\ d - b\ c]; \n \[Omega][2] = {{\ \[Omega]1, \(-\[Omega]0\)}, {\[Omega]2, \(-\ \[Omega]1\)}}; \)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Print[MatrixForm[G[2]], "\< \>", Together[Det[G[2]]], "\< \>", MatrixForm[\[Omega][2]]]\)], "Input"], Cell[BoxData[ InterpretationBox[ RowBox[{ TagBox[ RowBox[{"(", GridBox[{ {\(a\/\@\(\(-b\)\ c + a\ d\)\), \(b\/\@\(\(-b\)\ c + a\ d\)\)}, {\(c\/\@\(\(-b\)\ c + a\ d\)\), \(d\/\@\(\(-b\)\ c + a\ d\)\)} }], ")"}], (MatrixForm[ #]&)], "\[InvisibleSpace]", \(" "\), "\[InvisibleSpace]", "1", "\[InvisibleSpace]", \(" "\), "\[InvisibleSpace]", TagBox[ RowBox[{"(", GridBox[{ {"\[Omega]1", \(-\[Omega]0\)}, {"\[Omega]2", \(-\[Omega]1\)} }], ")"}], (MatrixForm[ #]&)]}], SequenceForm[ MatrixForm[ {{ Times[ a, Power[ Plus[ Times[ -1, b, c], Times[ a, d]], Rational[ -1, 2]]], Times[ b, Power[ Plus[ Times[ -1, b, c], Times[ a, d]], Rational[ -1, 2]]]}, { Times[ c, Power[ Plus[ Times[ -1, b, c], Times[ a, d]], Rational[ -1, 2]]], Times[ d, Power[ Plus[ Times[ -1, b, c], Times[ a, d]], Rational[ -1, 2]]]}}], " ", 1, " ", MatrixForm[ {{\[Omega]1, Times[ -1, \[Omega]0]}, {\[Omega]2, Times[ -1, \[Omega]1]}}]], Editable->False]], "Print"] }, Open ]], Cell[TextData[{ "\tIn the three-dim representation, the matrices ", StyleBox["G,", "Output"], " ", StyleBox["\[Omega]", "Output"], " have the form:" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(G[3] = {{\((a\^2 - b\^2 - c\^2 + d\^2)\)/2, \(-I\) \((a\^2 + b\^2 - c\^2 - d\^2)\)/2, \(-a\)\ b + c\ d}, { I \((a\^2 - b\^2 + c\^2 - d\^2)\)/2, \((a\^2 + b\^2 + c\^2 + d\^2)\)/2, \(-I\) \((a\ b + c\ d)\)}, { \(-a\)\ c + b\ d, I \((a\ c + b\ d)\), a\ d + b\ c}}/ \((a\ d - b\ c)\); \n \[Omega][3] = {{0, \(-2\)\ I\ \[Omega]1, \[Omega]0 + \[Omega]2}, { 2\ I\ \[Omega]1, 0, I\ \((\[Omega]0 - \[Omega]2)\)}, { \(-\[Omega]0\) - \[Omega]2, \(-I\)\ \((\[Omega]0 - \[Omega]2)\), 0}}; \)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Print[MatrixForm[G[3]], "\< \>", Together[Det[G[3]]], "\< \>", MatrixForm[\[Omega][3]]]\)], "Input"], Cell[BoxData[ InterpretationBox[ RowBox[{ TagBox[ RowBox[{"(", GridBox[{ {\(\(a\^2 - b\^2 - c\^2 + d\^2\)\/\(2\ \((\(-b\)\ c + a\ d)\)\)\), \(-\(\(I\ \((a\^2 + b\^2 - c\^2 - d\^2)\)\)\/\(2\ \((\(-b\)\ c + a\ d)\)\)\)\), \(\(\(-a\)\ b + c\ d\)\/\(\(-b\)\ c + a\ d\)\)}, {\(\(I\ \((a\^2 - b\^2 + c\^2 - d\^2)\)\)\/\(2\ \((\(-b\)\ c + a\ d)\)\)\), \(\(a\^2 + b\^2 + c\^2 + d\^2\)\/\(2\ \((\(-b\)\ c + a\ d)\)\)\), \(-\(\(I\ \((a\ b + c\ d)\)\)\/\(\(-b\)\ c + a\ d\)\)\)}, {\(\(\(-a\)\ c + b\ d\)\/\(\(-b\)\ c + a\ d\)\), \(\(I\ \((a\ c + b\ d)\)\)\/\(\(-b\)\ c + a\ d\)\), \(\(b\ c + a\ d\)\/\(\(-b\)\ c + a\ d\)\)} }], ")"}], (MatrixForm[ #]&)], "\[InvisibleSpace]", \(" "\), "\[InvisibleSpace]", "1", "\[InvisibleSpace]", \(" "\), "\[InvisibleSpace]", TagBox[ RowBox[{"(", GridBox[{ {"0", \(\(-2\)\ I\ \[Omega]1\), \(\[Omega]0 + \[Omega]2\)}, {\(2\ I\ \[Omega]1\), "0", \(I\ \((\[Omega]0 - \[Omega]2)\)\)}, {\(\(-\[Omega]0\) - \[Omega]2\), \(\(-I\)\ \((\[Omega]0 - \[Omega]2)\)\), "0"} }], ")"}], (MatrixForm[ #]&)]}], SequenceForm[ MatrixForm[ {{ Times[ Rational[ 1, 2], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Power[ a, 2], Times[ -1, Power[ b, 2]], Times[ -1, Power[ c, 2]], Power[ d, 2]]], Times[ Complex[ 0, Rational[ -1, 2]], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Power[ a, 2], Power[ b, 2], Times[ -1, Power[ c, 2]], Times[ -1, Power[ d, 2]]]], Times[ Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Times[ -1, a, b], Times[ c, d]]]}, { Times[ Complex[ 0, Rational[ 1, 2]], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Power[ a, 2], Times[ -1, Power[ b, 2]], Power[ c, 2], Times[ -1, Power[ d, 2]]]], Times[ Rational[ 1, 2], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Power[ a, 2], Power[ b, 2], Power[ c, 2], Power[ d, 2]]], Times[ Complex[ 0, -1], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Times[ a, b], Times[ c, d]]]}, { Times[ Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Times[ -1, a, c], Times[ b, d]]], Times[ Complex[ 0, 1], Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Times[ a, c], Times[ b, d]]], Times[ Power[ Plus[ Times[ -1, b, c], Times[ a, d]], -1], Plus[ Times[ b, c], Times[ a, d]]]}}], " ", 1, " ", MatrixForm[ {{0, Times[ Complex[ 0, -2], \[Omega]1], Plus[ \[Omega]0, \[Omega]2]}, { Times[ Complex[ 0, 2], \[Omega]1], 0, Times[ Complex[ 0, 1], Plus[ \[Omega]0, Times[ -1, \[Omega]2]]]}, { Plus[ Times[ -1, \[Omega]0], Times[ -1, \[Omega]2]], Times[ Complex[ 0, -1], Plus[ \[Omega]0, Times[ -1, \[Omega]2]]], 0}}]], Editable->False]], "Print"] }, Open ]], Cell[TextData[{ "\tThe replacement rules ", StyleBox["matComp[n]", "Output"], " (n=2 or 3) transform the symbolic matrices ", StyleBox["G,", "Output"], " ", StyleBox["Ginv,", "Output"], " ", StyleBox["\[Omega]", "Output"], " to their respective component form" }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(\(matComp[n_] := \(matComp[n] = {G -> G[n], Gt -> Transpose[G[n]], \[Omega] -> \[Omega][n], \[Omega]t -> Transpose[\[Omega][n]], Ginv -> Together[Inverse[G[n]]], Ginvt -> Transpose[Together[Inverse[G[n]]]]}\); \)\)], "Input"], Cell[TextData[{ "\tDefinition of the curvature 2-form matrix ", StyleBox["\[CapitalOmega]", "Output"], " in terms of the connection 1-form matrix ", StyleBox["\[Omega]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(\[CapitalOmega] = d[\[Omega]] - \[Omega]\[Wedge]\[Omega]\)], "Input"], Cell[BoxData[ \(d[\[Omega]] - \[Omega]\[Wedge]\[Omega]\)], "Output"] }, Open ]], Cell[TextData[{ "\tComponent form of ", StyleBox["\[CapitalOmega]", "Output"], ". For brevity of notation, define ", StyleBox["compForm", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(\(compForm[x_, n_] := toComponents[x, matComp[n]]; \)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[compForm[\[CapitalOmega], 2]]\)], "Input"], Cell[BoxData[ TagBox[ RowBox[{"(", GridBox[{ {\(d[\[Omega]1] + \[Omega]0\[Wedge]\[Omega]2\), \(\(-d[\[Omega]0]\) - 2\ \[Omega]0\[Wedge]\[Omega]1\)}, {\(d[\[Omega]2] + 2\ \[Omega]1\[Wedge]\[Omega]2\), \(\(-d[\[Omega]1]\) - \[Omega]0\[Wedge]\[Omega]2\)} }], ")"}], (MatrixForm[ #]&)]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[Factor[compForm[\[CapitalOmega], 3]]]\)], "Input"], Cell[BoxData[ TagBox[ RowBox[{"(", GridBox[{ {"0", \(\(-2\)\ I\ \((d[\[Omega]1] + \[Omega]0\[Wedge]\[Omega]2) \)\), \(d[\[Omega]0] + d[\[Omega]2] + 2\ \[Omega]0\[Wedge]\[Omega]1 + 2\ \[Omega]1\[Wedge]\[Omega]2\)}, {\(2\ I\ \((d[\[Omega]1] + \[Omega]0\[Wedge]\[Omega]2)\)\), "0", \(I\ \((d[\[Omega]0] - d[\[Omega]2] + 2\ \[Omega]0\[Wedge]\[Omega]1 - 2\ \[Omega]1\[Wedge]\[Omega]2)\)\)}, {\(\(-d[\[Omega]0]\) - d[\[Omega]2] - 2\ \[Omega]0\[Wedge]\[Omega]1 - 2\ \[Omega]1\[Wedge]\[Omega]2\), \(\(-I\)\ \((d[\[Omega]0] - d[\[Omega]2] + 2\ \[Omega]0\[Wedge]\[Omega]1 - 2\ \[Omega]1\[Wedge]\[Omega]2)\)\), "0"} }], ")"}], (MatrixForm[ #]&)]], "Output"] }, Open ]], Cell[TextData[{ "\tExterior differentiation of matrix form ", StyleBox["\[CapitalOmega]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(d[\[CapitalOmega]]\)], "Input"], Cell[BoxData[ \(\[Omega]\[Wedge]d[\[Omega]] - d[\[Omega]]\[Wedge]\[Omega]\)], "Output"] }, Open ]], Cell["\tBianchi Identity ", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[ d[\[CapitalOmega]] - \[Omega]\[Wedge]\[CapitalOmega] + \[CapitalOmega]\[Wedge]\[Omega]]\)], "Input"], Cell[BoxData[ \({0.`\ Second, 0}\)], "Output"] }, Open ]], Cell["\tBianchi Identity in terms of components", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(\(Bianchi[n_] := reWrite[d[compForm[\[CapitalOmega], n]] - compForm[ \[Omega]\[Wedge]\[CapitalOmega] - \[CapitalOmega]\[Wedge]\[Omega], n]]; \)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[Bianchi[2]]\)], "Input"], Cell[BoxData[ \({0.0333333333333332149`\ Second, {{0, 0}, {0, 0}}}\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[Bianchi[3]]\)], "Input"], Cell[BoxData[ \({0.150000000000000355`\ Second, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}}\)], "Output"] }, Open ]], Cell[TextData[{ "\tVerify that, in the 3-dim representation, ", StyleBox["Inverse[G]=Transpose[G]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(reWrite[compForm[Ginv - Gt, 3]]\)], "Input"], Cell[BoxData[ \({{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}\)], "Output"] }, Open ]], Cell[TextData[{ "\tGauge transformation of the connection ", StyleBox["\[Omega]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(new\[Omega] = G\[Wedge]\[Omega]\[Wedge]Ginv + d[G]\[Wedge]Ginv\)], "Input"], Cell[BoxData[ \(d[G]\[Wedge]Ginv + G\[Wedge]\[Omega]\[Wedge]Ginv\)], "Output"] }, Open ]], Cell[TextData[{ "\tGauge transformation of the curvature ", StyleBox["\[CapitalOmega]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(new\[CapitalOmega] = G\[Wedge]\[CapitalOmega]\[Wedge]Ginv\)], "Input"], Cell[BoxData[ \(G\[Wedge]d[\[Omega]]\[Wedge]Ginv - G\[Wedge]\[Omega]\[Wedge]\[Omega]\[Wedge]Ginv\)], "Output"] }, Open ]], Cell[TextData[{ "\tVerify that ", StyleBox["new\[CapitalOmega] = d[new\[Omega]]", "Output"], " ", StyleBox["-", "Output"], " ", StyleBox["new\[Omega]\[Wedge]new\[Omega]", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(reWrite[ d[new\[Omega]] - new\[Omega]\[Wedge]new\[Omega] - new\[CapitalOmega]] \)], "Input"], Cell[BoxData[ \(\(-\((d[G]\[Wedge]d[Ginv])\)\) - G\[Wedge]\[Omega]\[Wedge]d[Ginv] + d[G]\[Wedge]\[Omega]\[Wedge]Ginv + G\[Wedge]\[Omega]\[Wedge]\[Omega]\[Wedge]Ginv - d[G]\[Wedge]Ginv\[Wedge]d[G]\[Wedge]Ginv - G\[Wedge]\[Omega]\[Wedge]Ginv\[Wedge]d[G]\[Wedge]Ginv - d[G]\[Wedge]Ginv\[Wedge]G\[Wedge]\[Omega]\[Wedge]Ginv - G\[Wedge]\[Omega]\[Wedge]Ginv\[Wedge]G\[Wedge]\[Omega]\[Wedge]Ginv\)], "Output"] }, Open ]], Cell[TextData[{ "\tApply identities relating the symbolic matrices ", StyleBox["G", "Output"], " and ", StyleBox["Ginv", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(% /. {Ginv\[Wedge]G -> 1, G\[Wedge]Ginv -> 1, d[Ginv] -> \(-Ginv\)\[Wedge]d[G]\[Wedge]Ginv}\)], "Input"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell[TextData[{ "\tOne can include these matrix identities in ", StyleBox["simpRules", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(simpRules = Join[simpRules, {Ginv\[Wedge]G -> 1, G\[Wedge]Ginv -> 1, d[Ginv] -> \(-Ginv\)\[Wedge]d[G]\[Wedge]Ginv}]\)], "Input"], Cell[BoxData[ \({Cos[h_]\^2\ x_. + x_.\ Sin[h_]\^2 \[RuleDelayed] x, Ginv\[Wedge]G \[Rule] 1, G\[Wedge]Ginv \[Rule] 1, d[Ginv] \[Rule] \(-\((Ginv\[Wedge]d[G]\[Wedge]Ginv)\)\)}\)], "Output"] }, Open ]], Cell[TextData[{ "\tso that they are applied with ", StyleBox["reWrite:", "Output"] }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[CellGroupData[{ Cell[BoxData[ \(reWrite[ d[new\[Omega]] - new\[Omega]\[Wedge]new\[Omega] - new\[CapitalOmega]] // Timing\)], "Input"], Cell[BoxData[ \({0.0166666666666657192`\ Second, 0}\)], "Output"] }, Open ]], Cell["\tSame calculation in terms of components:", "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(ComponentForm[n_] := \((new\[Omega]Mat = reWrite[compForm[new\[Omega], n]]; new\[CapitalOmega]Mat = reWrite[compForm[new\[CapitalOmega], n]]; reWrite[d[new\[Omega]Mat] - new\[Omega]Mat\[Wedge]new\[Omega]Mat - new\[CapitalOmega]Mat])\)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[ComponentForm[2]]\)], "Input"], Cell[BoxData[ \({1.28333333333333321`\ Second, {{0, 0}, {0, 0}}}\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[ComponentForm[3]]\)], "Input"], Cell[BoxData[ \({3.91666666666666607`\ Second, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}}\)], "Output"] }, Open ]], Cell[TextData[{ "\tThe simpler-looking definition: ", StyleBox[ "ComponentForm[n_]:=reWrite[compForm[d[new\[Omega]]-new\[Omega]\[Wedge]new\ \[Omega]-new\[CapitalOmega],n]];", "Output"], " is very inefficient. For n=2 it takes ~ 4 seconds to evaluate and, for \ n=3, ~130 sec! (All timings refer to an Apple Macintosh G3/900 computer \ running ", StyleBox["Mathematica", FontSlant->"Italic"], " 3.0). It is always advisable to apply ", StyleBox["reWrite", "Output"], " separately to every part of a complicated expression." }], "Text", FontSize->14, FontColor->RGBColor[0, 0, 1]], Cell[BoxData[ \(matComp =. \)], "Input"] }, Closed]] }, FrontEndVersion->"Macintosh 3.0", ScreenRectangle->{{0, 1024}, {0, 748}}, WindowToolbars->{}, CellGrouping->Manual, WindowSize->{956, 721}, WindowMargins->{{4, Automatic}, {Automatic, 0}}, StyleDefinitions -> "Default.nb", MacintoshSystemPageSetup->"\<\ 00<0001804P000000`d26_oQon@3:`8g0dL5N`?P0080001804P000000]P2:001 0000I00000400`<30?l00BL?00400@0000000000000006P801T1T00000000000 00000000004000000000000000000000\>" ] (*********************************************************************** 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->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[1709, 49, 19, 0, 30, "Text"], Cell[CellGroupData[{ Cell[1753, 53, 138, 3, 52, "Subtitle"], Cell[1894, 58, 1168, 41, 70, "Text"], Cell[3065, 101, 18, 0, 70, "Text"] }, Closed]], Cell[3098, 104, 178, 5, 29, "Text"], Cell[3279, 111, 47, 1, 26, "Input"], Cell[CellGroupData[{ Cell[3351, 116, 153, 5, 48, "Subsubtitle"], Cell[CellGroupData[{ Cell[3529, 125, 74, 1, 26, "Input"], Cell[3606, 128, 37, 1, 22, "Print"] }, Open ]], Cell[3658, 132, 279, 10, 32, "Text"], Cell[CellGroupData[{ Cell[3962, 146, 60, 1, 26, "Input"], Cell[4025, 149, 57, 1, 41, "Output"] }, Open ]], Cell[4097, 153, 331, 9, 50, "Text"], Cell[CellGroupData[{ Cell[4453, 166, 39, 1, 26, "Input"], Cell[4495, 169, 35, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[4567, 175, 38, 1, 26, "Input"], Cell[4608, 178, 63, 1, 41, "Output"] }, Open ]], Cell[4686, 182, 186, 6, 32, "Text"], Cell[CellGroupData[{ Cell[4897, 192, 45, 1, 26, "Input"], Cell[4945, 195, 120, 2, 43, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5102, 202, 55, 1, 26, "Input"], Cell[5160, 205, 118, 2, 41, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5315, 212, 38, 1, 26, "Input"], Cell[5356, 215, 35, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5428, 221, 60, 1, 26, "Input"], Cell[5491, 224, 57, 1, 41, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5585, 230, 45, 1, 26, "Input"], Cell[5633, 233, 44, 1, 26, "Output"] }, Open ]], Cell[5692, 237, 289, 10, 32, "Text"], Cell[CellGroupData[{ Cell[6006, 251, 52, 1, 26, "Input"], Cell[6061, 254, 58, 1, 41, "Output"] }, Open ]], Cell[6134, 258, 136, 5, 32, "Text"], Cell[CellGroupData[{ Cell[6295, 267, 38, 1, 26, "Input"], Cell[6336, 270, 35, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[6408, 276, 62, 1, 26, "Input"], Cell[6473, 279, 59, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[6569, 285, 38, 1, 26, "Input"], Cell[6610, 288, 35, 1, 26, "Output"] }, Open ]], Cell[6660, 292, 116, 2, 32, "Text"], Cell[CellGroupData[{ Cell[6801, 298, 160, 5, 26, "Input"], Cell[6964, 305, 38, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[7039, 311, 60, 1, 26, "Input"], Cell[7102, 314, 189, 3, 41, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[7328, 322, 45, 1, 26, "Input"], Cell[7376, 325, 192, 3, 41, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[7605, 333, 37, 1, 26, "Input"], Cell[7645, 336, 400, 7, 74, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[8082, 348, 38, 1, 26, "Input"], Cell[8123, 351, 180, 3, 41, "Output"] }, Open ]], Cell[8318, 357, 191, 7, 32, "Text"], Cell[CellGroupData[{ Cell[8534, 368, 37, 1, 26, "Input"], Cell[8574, 371, 35, 1, 26, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[8658, 378, 144, 5, 32, "Subsubtitle"], Cell[8805, 385, 78, 2, 32, "Text"], Cell[8886, 389, 126, 2, 41, "Input"], Cell[9015, 393, 204, 6, 32, "Text"], Cell[9222, 401, 71, 1, 26, "Input"], Cell[CellGroupData[{ Cell[9318, 406, 66, 1, 26, "Input"], Cell[9387, 409, 56, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[9480, 415, 38, 1, 26, "Input"], Cell[9521, 418, 42, 1, 28, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[9600, 424, 44, 1, 26, "Input"], Cell[9647, 427, 71, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[9755, 433, 43, 1, 26, "Input"], Cell[9801, 436, 68, 1, 28, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[9906, 442, 38, 1, 26, "Input"], Cell[9947, 445, 43, 1, 26, "Output"] }, Open ]], Cell[10005, 449, 249, 10, 32, "Text"], Cell[CellGroupData[{ Cell[10279, 463, 38, 1, 26, "Input"], Cell[10320, 466, 169, 3, 28, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10526, 474, 38, 1, 26, "Input"], Cell[10567, 477, 88, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10692, 483, 37, 1, 26, "Input"], Cell[10732, 486, 91, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10860, 492, 97, 2, 26, "Input"], Cell[10960, 496, 35, 1, 26, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[11044, 503, 133, 5, 32, "Subsubtitle"], Cell[11180, 510, 294, 10, 32, "Text"], Cell[CellGroupData[{ Cell[11499, 524, 54, 1, 26, "Input"], Cell[11556, 527, 37, 1, 22, "Print"] }, Open ]], Cell[CellGroupData[{ Cell[11630, 533, 97, 2, 26, "Input"], Cell[11730, 537, 101, 2, 40, "Output"] }, Open ]], Cell[11846, 542, 302, 8, 32, "Text"], Cell[CellGroupData[{ Cell[12173, 554, 46, 1, 26, "Input"], Cell[12222, 557, 102, 2, 40, "Output"] }, Open ]], Cell[12339, 562, 142, 5, 32, "Text"], Cell[CellGroupData[{ Cell[12506, 571, 58, 1, 26, "Input"], Cell[12567, 574, 59, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[12663, 580, 67, 1, 26, "Input"], Cell[12733, 583, 65, 1, 40, "Output"] }, Open ]], Cell[12813, 587, 326, 12, 32, "Text"], Cell[CellGroupData[{ Cell[13164, 603, 44, 1, 26, "Input"], Cell[13211, 606, 91, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[13339, 612, 44, 1, 26, "Input"], Cell[13386, 615, 110, 2, 40, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[13533, 622, 77, 1, 26, "Input"], Cell[13613, 625, 656, 9, 86, "Output"] }, Open ]], Cell[14284, 637, 157, 6, 32, "Text"], Cell[14444, 645, 85, 1, 26, "Input"], Cell[14532, 648, 183, 6, 32, "Text"], Cell[CellGroupData[{ Cell[14740, 658, 90, 1, 26, "Input"], Cell[14833, 661, 35, 1, 26, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[14917, 668, 147, 5, 32, "Subsubtitle"], Cell[15067, 675, 239, 6, 50, "Text"], Cell[CellGroupData[{ Cell[15331, 685, 58, 1, 26, "Input"], Cell[15392, 688, 139, 2, 26, "Output"] }, Open ]], Cell[15546, 693, 3419, 104, 27, "Input"], Cell[18968, 799, 2689, 84, 27, "Input"], Cell[CellGroupData[{ Cell[21682, 887, 148, 3, 26, "Input"], Cell[21833, 892, 536, 10, 60, "Output"] }, Open ]], Cell[22384, 905, 269, 9, 32, "Text"], Cell[CellGroupData[{ Cell[22678, 918, 324, 9, 26, "Input"], Cell[23005, 929, 67, 1, 26, "Output"] }, Open ]], Cell[23087, 933, 160, 6, 32, "Text"], Cell[CellGroupData[{ Cell[23272, 943, 471, 14, 26, "Input"], Cell[23746, 959, 883, 19, 200, "Output"] }, Open ]], Cell[24644, 981, 85, 1, 26, "Input"], Cell[24732, 984, 214, 7, 32, "Text"], Cell[24949, 993, 69, 1, 26, "Input"], Cell[25021, 996, 192, 6, 32, "Text"], Cell[CellGroupData[{ Cell[25238, 1006, 43, 1, 26, "Input"], Cell[25284, 1009, 2946, 58, 414, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[28267, 1072, 43, 1, 26, "Input"], Cell[28313, 1075, 67, 1, 26, "Output"] }, Open ]], Cell[28395, 1079, 44, 1, 26, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[28476, 1085, 156, 5, 32, "Subsubtitle"], Cell[28635, 1092, 712, 19, 122, "Text"], Cell[29350, 1113, 87, 1, 26, "Input"], Cell[CellGroupData[{ Cell[29462, 1118, 116, 2, 26, "Input"], Cell[29581, 1122, 37, 1, 22, "Print"] }, Open ]], Cell[29633, 1126, 177, 4, 32, "Text"], Cell[CellGroupData[{ Cell[29835, 1134, 83, 1, 26, "Input"], Cell[29921, 1137, 37, 1, 22, "Print"] }, Open ]], Cell[29973, 1141, 442, 16, 32, "Text"], Cell[30418, 1159, 175, 4, 41, "Input"], Cell[CellGroupData[{ Cell[30618, 1167, 127, 2, 26, "Input"], Cell[30748, 1171, 1585, 50, 69, "Print"] }, Open ]], Cell[32348, 1224, 218, 8, 32, "Text"], Cell[32569, 1234, 620, 12, 67, "Input"], Cell[CellGroupData[{ Cell[33214, 1250, 127, 2, 26, "Input"], Cell[33344, 1254, 4730, 149, 95, "Print"] }, Open ]], Cell[38089, 1406, 338, 12, 32, "Text"], Cell[38430, 1420, 285, 5, 41, "Input"], Cell[38718, 1427, 247, 7, 32, "Text"], Cell[CellGroupData[{ Cell[38990, 1438, 89, 1, 26, "Input"], Cell[39082, 1441, 72, 1, 26, "Output"] }, Open ]], Cell[39169, 1445, 216, 7, 32, "Text"], Cell[39388, 1454, 86, 1, 26, "Input"], Cell[CellGroupData[{ Cell[39499, 1459, 73, 1, 26, "Input"], Cell[39575, 1462, 401, 10, 51, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[40013, 1477, 81, 1, 26, "Input"], Cell[40097, 1480, 960, 22, 66, "Output"] }, Open ]], Cell[41072, 1505, 163, 5, 32, "Text"], Cell[CellGroupData[{ Cell[41260, 1514, 51, 1, 26, "Input"], Cell[41314, 1517, 91, 1, 26, "Output"] }, Open ]], Cell[41420, 1521, 83, 2, 32, "Text"], Cell[CellGroupData[{ Cell[41528, 1527, 143, 3, 26, "Input"], Cell[41674, 1532, 50, 1, 26, "Output"] }, Open ]], Cell[41739, 1536, 105, 2, 32, "Text"], Cell[41847, 1540, 221, 5, 26, "Input"], Cell[CellGroupData[{ Cell[42093, 1549, 51, 1, 26, "Input"], Cell[42147, 1552, 84, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[42268, 1558, 51, 1, 26, "Input"], Cell[42322, 1561, 103, 2, 26, "Output"] }, Open ]], Cell[42440, 1566, 174, 5, 32, "Text"], Cell[CellGroupData[{ Cell[42639, 1575, 64, 1, 26, "Input"], Cell[42706, 1578, 67, 1, 26, "Output"] }, Open ]], Cell[42788, 1582, 155, 5, 32, "Text"], Cell[CellGroupData[{ Cell[42968, 1591, 98, 2, 26, "Input"], Cell[43069, 1595, 82, 1, 26, "Output"] }, Open ]], Cell[43166, 1599, 161, 5, 32, "Text"], Cell[CellGroupData[{ Cell[43352, 1608, 90, 1, 26, "Input"], Cell[43445, 1611, 121, 2, 26, "Output"] }, Open ]], Cell[43581, 1616, 253, 9, 32, "Text"], Cell[CellGroupData[{ Cell[43859, 1629, 124, 3, 26, "Input"], Cell[43986, 1634, 451, 8, 41, "Output"] }, Open ]], Cell[44452, 1645, 198, 7, 32, "Text"], Cell[CellGroupData[{ Cell[44675, 1656, 133, 2, 26, "Input"], Cell[44811, 1660, 35, 1, 26, "Output"] }, Open ]], Cell[44861, 1664, 160, 5, 32, "Text"], Cell[CellGroupData[{ Cell[45046, 1673, 166, 3, 26, "Input"], Cell[45215, 1678, 207, 3, 28, "Output"] }, Open ]], Cell[45437, 1684, 146, 5, 32, "Text"], Cell[CellGroupData[{ Cell[45608, 1693, 138, 3, 26, "Input"], Cell[45749, 1698, 69, 1, 26, "Output"] }, Open ]], Cell[45833, 1702, 106, 2, 32, "Text"], Cell[45942, 1706, 305, 5, 41, "Input"], Cell[CellGroupData[{ Cell[46272, 1715, 57, 1, 26, "Input"], Cell[46332, 1718, 82, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[46451, 1724, 57, 1, 26, "Input"], Cell[46511, 1727, 102, 2, 26, "Output"] }, Open ]], Cell[46628, 1732, 603, 15, 68, "Text"], Cell[47234, 1749, 44, 1, 26, "Input"] }, Closed]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)