(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 6.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 43580, 1412] NotebookOptionsPosition[ 39107, 1273] NotebookOutlinePosition[ 39495, 1290] CellTagsIndexPosition[ 39452, 1287] WindowFrame->Normal ContainsDynamic->False*) (* Beginning of Notebook Content *) Notebook[{ Cell[CellGroupData[{ Cell["Solutions (4)", "Title"], Cell["\<\ Assigned: February 12, 2009 Due: February 26, 2009\ \>", "Subsubtitle", CellChangeTimes->{{3.447751953119987*^9, 3.447751967382563*^9}}], Cell[CellGroupData[{ Cell["Setup your Solution Notebook (in-class)", "Section"], Cell["\<\ Just like last week's exercises, you must set-up your notebook in order to \ solve these execises. Copy the definitions for the equations of motion for \ Hyperion orbiting Saturn. \ \>", "Text"], Cell[CellGroupData[{ Cell["Equation of Motion for Center of Mass ", "Subsection"], Cell["\<\ Since the separation between the two dumbell masses is small, the equations \ of motion for Hyperion's center-of-mass (COM) orbit about Saturn are \ identical to the motion of planets about the Sun. Below, we normalize time to \ the mean period of orbit (21 days) and distance to the mean separation \ between the center of Saturn and the COM of Hyperion (0.01 AU).\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"Off", "[", RowBox[{"General", "::", "spell1"}], "]"}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"pCOM", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"x", "[", "t", "]"}], ",", " ", RowBox[{"y", "[", "t", "]"}], ",", " ", RowBox[{"vx", "[", "t", "]"}], ",", " ", RowBox[{"vy", "[", "t", "]"}]}], "}"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"dpCOM", " ", "=", " ", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"vx", "[", "t", "]"}], ",", " ", RowBox[{"vy", "[", "t", "]"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"-", "4"}], " ", SuperscriptBox["\[Pi]", "2"], " ", RowBox[{ RowBox[{"x", "[", "t", "]"}], "/", RowBox[{"r", "^", "3"}]}]}], ",", " ", RowBox[{ RowBox[{"-", "4"}], " ", SuperscriptBox["\[Pi]", "2"], " ", RowBox[{ RowBox[{"y", "[", "t", "]"}], "/", RowBox[{"r", "^", "3"}]}]}]}], "}"}], "/.", " ", RowBox[{"r", "\[Rule]", " ", RowBox[{"Sqrt", "[", RowBox[{ RowBox[{ RowBox[{"x", "[", "t", "]"}], "^", "2"}], " ", "+", " ", RowBox[{ RowBox[{"y", "[", "t", "]"}], "^", "2"}]}], "]"}]}]}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"p0COM", " ", "=", " ", RowBox[{"{", RowBox[{"x0", ",", " ", "y0", ",", "vx0", ",", " ", "vy0"}], "}"}]}], ";"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Equation of Motion for Rotation", "Subsection"], Cell["\<\ Hyperion's rate of change of angular rotation is determined by the torque \ applied by Saturn.\ \>", "Text"], Cell[CellGroupData[{ Cell["Some simple vector algebra", "Subsubsection"], Cell[BoxData[{ RowBox[{ RowBox[{"a", " ", "=", " ", RowBox[{"{", RowBox[{"ax", ",", "ay", ",", "az"}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{"b", " ", "=", " ", RowBox[{"{", RowBox[{"bx", ",", " ", "by", ",", " ", "bz"}], "}"}]}], ";"}]}], "Input"], Cell[BoxData[ RowBox[{"a", " ", "\[Cross]", " ", "b"}]], "Input"], Cell[BoxData[ RowBox[{"a", " ", ".", " ", "b"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["The torque", "Subsubsection"], Cell[TextData[{ "Let \"", StyleBox["d", FontWeight->"Bold"], "\" be the distance from the COM to one of the two masses." }], "Text"], Cell[BoxData[{ RowBox[{ RowBox[{"r1", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"d", " ", RowBox[{"Cos", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}]}], ",", " ", RowBox[{"d", " ", RowBox[{"Sin", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}]}], ",", "0"}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{"r2", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"d", " ", RowBox[{"Cos", "[", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], "+", "Pi"}], "]"}]}], ",", " ", RowBox[{"d", " ", RowBox[{"Sin", "[", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], "+", "Pi"}], "]"}]}], ",", "0"}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{"rCOM", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"x", "[", "t", "]"}], ",", RowBox[{"y", "[", "t", "]"}], ",", "0"}], "}"}]}], ";"}]}], "Input"], Cell[BoxData[ RowBox[{"f1", " ", "=", " ", RowBox[{ RowBox[{"-", "4"}], SuperscriptBox["\[Pi]", "2"], " ", "m", RowBox[{ RowBox[{"(", RowBox[{"r1", " ", "+", " ", "rCOM"}], ")"}], "/", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{"r1", " ", "+", " ", "rCOM"}], ")"}], ".", RowBox[{"(", RowBox[{"r1", " ", "+", " ", "rCOM"}], ")"}]}], " ", ")"}], "^", RowBox[{"(", RowBox[{"3", "/", "2"}], ")"}]}]}]}]}]], "Input"], Cell[BoxData[ RowBox[{"f2", "=", " ", RowBox[{ RowBox[{"-", "4"}], SuperscriptBox["\[Pi]", "2"], " ", "m", RowBox[{ RowBox[{"(", RowBox[{"r2", " ", "+", " ", "rCOM"}], ")"}], "/", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"(", RowBox[{"r2", " ", "+", " ", "rCOM"}], ")"}], ".", RowBox[{"(", RowBox[{"r2", " ", "+", " ", "rCOM"}], ")"}]}], " ", ")"}], "^", RowBox[{"(", RowBox[{"3", "/", "2"}], ")"}]}]}]}]}]], "Input"], Cell[BoxData[ RowBox[{"torque", " ", "=", " ", RowBox[{ RowBox[{ RowBox[{"r1", " ", "\[Cross]", " ", "f1"}], " ", "+", " ", RowBox[{"r2", " ", "\[Cross]", " ", "f2"}]}], " ", "//", " ", "Simplify"}]}]], "Input"], Cell[TextData[{ "Let's consider only the case where \"", StyleBox["d", FontWeight->"Bold"], "\" is very small..." }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"Series", "[", RowBox[{ RowBox[{"torque", "[", RowBox[{"[", "3", "]"}], "]"}], ",", RowBox[{"{", RowBox[{"d", ",", "0", ",", "2"}], "}"}]}], "]"}], " ", "//", " ", "Simplify", " "}]], "Input"], Cell[TextData[{ "We see the leading order term is proportional to ", Cell[BoxData[ FormBox[ SuperscriptBox["d", "2"], TraditionalForm]]], "." }], "Text"] }, Closed]], Cell[CellGroupData[{ Cell["The Leading-Order Expression for Rotational Dynamics", "Subsubsection"], Cell[BoxData[{ RowBox[{ RowBox[{"moment", " ", "=", " ", RowBox[{"2", " ", "m", " ", SuperscriptBox["d", "2"]}]}], ";", " ", RowBox[{"(*", " ", RowBox[{"Moment", " ", "of", " ", "Inertial"}], " ", "*)"}], "\n", RowBox[{"pROT", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], ",", RowBox[{"\[Omega]", "[", "t", "]"}]}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{"dpROT", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Omega]", "[", "t", "]"}], ",", "\n", "\t\t", RowBox[{ RowBox[{ RowBox[{"-", RowBox[{"(", RowBox[{"24", " ", "m", " ", SuperscriptBox["d", "2"], SuperscriptBox["\[Pi]", "2"], " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"Sin", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}], " ", RowBox[{"x", "[", "t", "]"}]}], "-", RowBox[{ RowBox[{"Cos", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}], " ", RowBox[{"y", "[", "t", "]"}]}]}], ")"}], " ", RowBox[{"(", RowBox[{ RowBox[{ RowBox[{"Cos", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}], " ", RowBox[{"x", "[", "t", "]"}]}], "+", RowBox[{ RowBox[{"Sin", "[", RowBox[{"\[Theta]", "[", "t", "]"}], "]"}], " ", RowBox[{"y", "[", "t", "]"}]}]}], ")"}]}], ")"}]}], "/", SuperscriptBox[ RowBox[{"(", RowBox[{ SuperscriptBox[ RowBox[{"x", "[", "t", "]"}], "2"], "+", SuperscriptBox[ RowBox[{"y", "[", "t", "]"}], "2"]}], ")"}], RowBox[{"5", "/", "2"}]]}], "/", "moment"}]}], "}"}]}], ";"}], "\n", RowBox[{ RowBox[{"p0ROT", " ", "=", " ", RowBox[{"{", RowBox[{"\[Theta]0", ",", " ", "\[Omega]0"}], "}"}]}], ";"}]}], "Input"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Combined Equations of Motion", "Subsection"], Cell[BoxData[{ RowBox[{ RowBox[{"p", " ", "=", " ", RowBox[{"pCOM", " ", "~", " ", "Join", " ", "~", " ", "pROT"}]}], ";"}], "\n", RowBox[{ RowBox[{"p0", " ", "=", " ", RowBox[{"p0COM", " ", "~", " ", "Join", " ", "~", " ", "p0ROT"}]}], ";"}], "\n", RowBox[{ RowBox[{"dp", " ", "=", " ", RowBox[{"dpCOM", " ", "~", " ", "Join", " ", "~", " ", "dpROT"}]}], ";"}]}], "Input"], Cell[TextData[{ "(", StyleBox["Thread[...]", FontWeight->"Bold"], " is an easy way of writing a single equation for a list of variables.)" }], "Text"], Cell[BoxData[ RowBox[{"eqs", " ", "=", " ", RowBox[{ RowBox[{"Thread", "[", RowBox[{ RowBox[{"D", "[", RowBox[{"p", ",", "t"}], "]"}], " ", "==", " ", "dp"}], "]"}], "~", " ", "Join", " ", "~", RowBox[{"Thread", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"x", "[", "0", "]"}], ",", " ", RowBox[{"y", "[", "0", "]"}], ",", " ", RowBox[{"vx", "[", "0", "]"}], ",", " ", RowBox[{"vy", "[", "0", "]"}], ",", " ", RowBox[{"\[Theta]", "[", "0", "]"}], ",", RowBox[{"\[Omega]", "[", "0", "]"}]}], "}"}], " ", "==", " ", "p0"}], "]"}]}]}]], "Input"], Cell[BoxData[ RowBox[{"h1", " ", "=", " ", RowBox[{ RowBox[{"NDSolve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"eqs", " ", "/.", RowBox[{"x0", " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{"y0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"vy0", "->", RowBox[{"2", " ", "\[Pi]"}]}]}], "/.", " ", RowBox[{"vx0", " ", "->", " ", "0"}]}], "/.", RowBox[{"\[Theta]0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"\[Omega]0", " ", "->", " ", "1"}]}], ",", " ", "p", ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", "10"}], "}"}]}], "]"}], "//", "Flatten"}]}]], "Input"], Cell[BoxData[ RowBox[{"h2", " ", "=", " ", RowBox[{ RowBox[{"NDSolve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"eqs", " ", "/.", RowBox[{"x0", " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{"y0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"vy0", "->", StyleBox[ RowBox[{"2", " ", RowBox[{"\[Pi]", " ", "/", "1.25"}]}], FontColor->RGBColor[1, 0, 1]]}]}], "/.", " ", RowBox[{"vx0", " ", "->", " ", "0"}]}], "/.", RowBox[{"\[Theta]0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"\[Omega]0", " ", "->", " ", "1"}]}], ",", " ", "p", ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", "10"}], "}"}]}], "]"}], "//", "Flatten"}]}]], "Input"], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{ RowBox[{"Mod", "[", RowBox[{ RowBox[{ RowBox[{"Evaluate", "[", RowBox[{ RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], " ", "-", RowBox[{"ArcTan", "[", RowBox[{ RowBox[{"x", "[", "t", "]"}], ",", RowBox[{"y", "[", "t", "]"}]}], "]"}]}], " ", "/.", " ", "h2"}], "]"}], "+", " ", "\[Pi]"}], ",", RowBox[{"2", "\[Pi]"}]}], "]"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", " ", "10"}], "}"}], ",", " ", RowBox[{ "PlotLabel", " ", "\[Rule]", " ", "\"\\""}], ",", " ", RowBox[{"AxesLabel", " ", "\[Rule]", " ", RowBox[{"{", RowBox[{"\"\\"", ",", " ", "\"\<\[CapitalDelta]\[Theta]\>\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{3.44775201971417*^9}] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Eccentricity (in-class)", "Section"], Cell[TextData[{ "A command is defined below that can be used to find the eccentricity of an \ orbit. To use this command, you must make a table of the square of the radius \ of the orbit for at least one orbital period. (Remember, you can find this \ using \"(", StyleBox["x[t]^2 + y[t]^2 /. solution)\"", FontWeight->"Bold"], "Use this command to compute the eccentricity of the circular and elliptical \ orbits demonstrated in class (and called \"h1\" and \"h2\"). " }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"eccentricty", "[", "r2_List", "]"}], " ", ":=", " ", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"mn", ",", "mx"}], "}"}], ",", "\n", "\t\t", RowBox[{ RowBox[{"mn", " ", "=", " ", RowBox[{"Sqrt", "[", " ", RowBox[{"Min", "[", "r2", "]"}], "]"}]}], ";", "\n", "\t\t", RowBox[{"mx", " ", "=", " ", RowBox[{"Sqrt", "[", RowBox[{"Max", "[", "r2", "]"}], "]"}]}], ";", "\n", "\t\t", RowBox[{ RowBox[{"(", RowBox[{"mx", "-", "mn"}], ")"}], "/", RowBox[{"(", RowBox[{"mx", " ", "+", " ", "mn"}], ")"}]}]}]}], " ", StyleBox[ RowBox[{"(*", " ", RowBox[{"e", " ", "=", " ", RowBox[{"c", "/", "a"}]}], " ", "*)"}], FontColor->RGBColor[1, 0, 1]], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"r1List", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"Evaluate", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"x", "[", "t", "]"}], "^", "2"}], " ", "+", " ", RowBox[{ RowBox[{"y", "[", "t", "]"}], "^", "2"}]}], " ", "/.", " ", "h1"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", " ", "2", ",", " ", "0.05"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"r2List", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"Evaluate", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{"x", "[", "t", "]"}], "^", "2"}], " ", "+", " ", RowBox[{ RowBox[{"y", "[", "t", "]"}], "^", "2"}]}], " ", "/.", " ", "h2"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", " ", "2", ",", " ", "0.05"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"r2List", " ", "//", " ", "Shallow"}]], "Input"], Cell[BoxData[ RowBox[{"eccentricty", "[", "r1List", "]"}]], "Input"], Cell[BoxData[ RowBox[{"eccentricty", "[", "r2List", "]"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Lyapunov (in-class)", "Section"], Cell["\<\ The command below takes a list of the differences (of the logrythm of the \ magnitude) between two orbits and fits these list of points to a straight \ line. Demonstrate the use of this function by recreating a table of the \ logrythm of the magnitude of two solutions with slightly different initial \ conditions. (Use the solution \"h2a\" illustrated in class.)\ \>", "Text"], Cell[BoxData[ RowBox[{ RowBox[{"lyapunov", "[", "dt_List", "]"}], " ", ":=", " ", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", "ft", "}"}], ",", "\n", "\t\t", RowBox[{ RowBox[{"ft", " ", "=", " ", RowBox[{"Fit", "[", RowBox[{"dt", ",", RowBox[{"{", RowBox[{"1", ",", "t"}], "}"}], ",", " ", "t"}], "]"}]}], ";", "\n", "\t\t", RowBox[{"Coefficient", "[", RowBox[{"ft", ",", "t"}], "]"}]}]}], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{"h2a", " ", "=", " ", RowBox[{ RowBox[{"NDSolve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"eqs", " ", "/.", RowBox[{"x0", " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{"y0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"vy0", "->", StyleBox[ RowBox[{"2", " ", RowBox[{"\[Pi]", " ", "/", "1.25"}]}], FontColor->RGBColor[1, 0, 1]]}]}], "/.", " ", RowBox[{"vx0", " ", "->", " ", "0"}]}], "/.", RowBox[{"\[Theta]0", " ", "->", " ", "0.001"}]}], " ", "/.", " ", RowBox[{"\[Omega]0", " ", "->", " ", "1"}]}], ",", " ", "p", ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", "10"}], "}"}]}], "]"}], "//", "Flatten"}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"dl", "[", "t_", "]"}], " ", "=", " ", RowBox[{"Log", "[", RowBox[{"Abs", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], " ", "/.", " ", "h2a"}], ")"}], " ", "-", " ", RowBox[{"(", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], " ", "/.", " ", "h2"}], ")"}]}], "]"}], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{"dl", "[", "1.2", "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"dList", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"{", RowBox[{"t", ",", " ", RowBox[{"dl", "[", "t", "]"}]}], "}"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", " ", "10", ",", " ", "0.1"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"dList", " ", "//", " ", "Shallow"}]], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", "dList", "]"}]], "Input", CellChangeTimes->{3.447752015189423*^9}], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"Select", "[", RowBox[{"dList", ",", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Last", "[", "#", "]"}], "<", "0"}], ")"}], "&"}]}], "]"}], "]"}]], "Input", CellChangeTimes->{3.447752016274241*^9}], Cell[TextData[{ "We only want to send the \"linear\" part of the data list to the ", StyleBox["lyapunov[...]", FontWeight->"Bold"], " command. This is the part of the data list that can be fit to a straight \ line." }], "Text"], Cell[BoxData[ RowBox[{"lyapunov", "[", RowBox[{"Select", "[", RowBox[{"dList", ",", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Last", "[", "#", "]"}], "<", "0"}], ")"}], "&"}]}], "]"}], "]"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Measure Chaos versus Eccentricity (in-class)", "Section"], Cell["\<\ When Hyperion is in a circular orbit, then the orientation of the long axis \ is stable. When the orbit is sufficiently elliptical, the orientation becomes \ unstable and \"flips\" randomly. \ \>", "Text"], Cell["\<\ In this assignment, you are to use the computer to estimate how elliptical \ the orbit must be to create chaotic tumbling. This is when the difference \ between orientations of two nearly identical initial conditions grows \ exponentially fast.\ \>", "Text"], Cell["\<\ Execute the commands described by this notebook for different eccentricities \ of Hyperion's orbit. As the eccentricity increases, calculate the Lyapunov \ number using the method previously demonstrated. Can you estimate for what \ values of eccentricity the moon tumbles chaotically? If you can, create a \ plot of the Lyapunov exponent as a function of eccentricity.\ \>", "Text"], Cell[TextData[{ "To help your study, the \"", StyleBox["getLyapunov", FontWeight->"Bold"], "\" command is defined below. ", "This is command first solves two orbits beginning with the initial \ velocity, \"v0\". The second orbit begin \"nearly\" the same as the first. \ Second, the command computes the eccentricity of the orbit. Finally, it \ compares the two closely-spaced orbits, and computes a Lyapunov exponent. The \ command returns a list of two numbers: the eccentricity and an estimate of \ the Lyapunov exponent." }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"getLyapunov", "[", StyleBox[ RowBox[{ StyleBox["v0", FontColor->RGBColor[0, 1, 0]], "_Real"}]], "]"}], " ", ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"h1", ",", "h2", ",", "r2", ",", "dt"}], "}"}], ",", RowBox[{ RowBox[{"h1", " ", "=", " ", StyleBox[ RowBox[{"(*", " ", RowBox[{"solution", " ", "1"}], " ", "*)"}], FontColor->RGBColor[1, 0, 1]], RowBox[{ RowBox[{"NDSolve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"eqs", " ", "/.", RowBox[{"x0", " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{"y0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"vy0", "->", StyleBox["v0", FontColor->RGBColor[0, 1, 0]]}]}], "/.", " ", RowBox[{"vx0", " ", "->", " ", "0"}]}], "/.", RowBox[{"\[Theta]0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"\[Omega]0", " ", "->", " ", "1"}]}], ",", " ", "p", ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", "5"}], "}"}]}], "]"}], " ", "//", " ", "Flatten"}]}], ";", "\t", RowBox[{"h2", " ", "=", " ", StyleBox[ RowBox[{"(*", " ", RowBox[{"solution", " ", "2"}], " ", "*)"}], FontColor->RGBColor[1, 0, 1]], RowBox[{ RowBox[{"NDSolve", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"eqs", " ", "/.", RowBox[{"x0", " ", "->", " ", "1"}]}], " ", "/.", " ", RowBox[{"y0", " ", "->", " ", "0"}]}], " ", "/.", " ", RowBox[{"vy0", "->", "v0"}]}], "/.", " ", RowBox[{"vx0", " ", "->", " ", "0"}]}], "/.", RowBox[{"\[Theta]0", " ", "->", " ", "0.01"}]}], " ", "/.", " ", RowBox[{"\[Omega]0", " ", "->", " ", "1"}]}], ",", " ", "p", ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", "5"}], "}"}]}], "]"}], " ", "//", " ", "Flatten"}]}], ";", "\[IndentingNewLine]", RowBox[{"r2", " ", "=", " ", StyleBox[ RowBox[{"(*", " ", RowBox[{ "list", " ", "of", " ", "radii", " ", "for", " ", "eccentricity"}], " ", "*)"}], FontColor->RGBColor[1, 0, 1]], RowBox[{"Table", "[", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"x", "[", "t", "]"}], "^", "2"}], " ", "+", " ", RowBox[{ RowBox[{"y", "[", "t", "]"}], "^", "2"}]}], " ", "/.", " ", "h1"}], ",", " ", RowBox[{"{", RowBox[{"t", ",", " ", "0", ",", " ", "5", ",", " ", "0.1"}], "}"}]}], "]"}]}], ";", RowBox[{"dt", " ", "=", " ", StyleBox[ RowBox[{"(*", " ", RowBox[{"how", " ", "far", " ", RowBox[{"apart", "?"}]}], " ", "*)"}], FontColor->RGBColor[1, 0, 1]], "\[IndentingNewLine]", RowBox[{"Table", "[", RowBox[{ RowBox[{"{", RowBox[{"t", ",", RowBox[{"Log", "[", RowBox[{"Abs", "[", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], " ", "/.", " ", "h1"}], ")"}], " ", "-", " ", RowBox[{"(", RowBox[{ RowBox[{"\[Theta]", "[", "t", "]"}], " ", "/.", " ", "h2"}], ")"}]}], "]"}], "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"t", ",", "0", ",", "5", ",", "0.05"}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ RowBox[{ StyleBox["eccentricty", FontColor->RGBColor[1, 0, 0]], "[", "r2", "]"}], ",", RowBox[{ StyleBox["lyapunov", FontColor->RGBColor[1, 0, 0]], "[", RowBox[{"Select", "[", RowBox[{"dt", ",", " ", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Last", "[", "#", "]"}], " ", "<", " ", "0"}], ")"}], "&"}]}], "]"}], "]"}]}], "}"}]}]}], "]"}]}]], "Input"], Cell[TextData[{ "When you are finished, you should find Hyperion becomes chaotic (", StyleBox["i.e.", FontSlant->"Italic"], " unstable) when ", "the eccentricity exceeds a critical value (about 0.35 for our model \ problem)." }], "Text"], Cell[BoxData[ RowBox[{"getLyapunov", "[", RowBox[{"N", "[", RowBox[{"2", " ", "\[Pi]"}], "]"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"getLyapunov", "[", RowBox[{ RowBox[{"N", "[", RowBox[{"2", " ", "\[Pi]"}], "]"}], "/", "1.1"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"el", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"getLyapunov", "[", RowBox[{ RowBox[{"N", "[", RowBox[{"2", " ", "\[Pi]"}], "]"}], "/", "a"}], "]"}], ",", " ", RowBox[{"{", RowBox[{"a", ",", " ", "1", ",", " ", "1.5", ",", " ", "0.01"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"el", ",", " ", RowBox[{"PlotStyle", "\[Rule]", " ", RowBox[{"PointSize", "[", "0.02", "]"}]}], ",", " ", RowBox[{"Frame", "\[Rule]", " ", "True"}], ",", " ", RowBox[{"FrameLabel", " ", "\[Rule]", " ", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{3.44775198222476*^9}] }, Closed]], Cell[CellGroupData[{ Cell["Chirikov Map", "Section"], Cell[TextData[{ "The Russian mathematician and physicist, Chirikov, studied the dynamics of \ coupled oscillators in 1979. Instead of solving a differential equation, he \ defined a \"map\" or a \"stepper\" that advances the system according to a \ model. \nHis map is often called the \"circle map\", and it is relatively \ easy to model on the computer. The map has a single parameter, \"k\", that \ controls the interaction between the drive and the natural oscillations. When \ ", StyleBox["k", FontSlant->"Italic"], " ~ 0, then the motion is purely periodic. As ", StyleBox["k", FontSlant->"Italic"], " exceeds unity, the motion is chaotic. \nIn ", StyleBox["Mathematica", FontSlant->"Italic"], ", we use the Chirikov map with ", StyleBox["NestList[...]", FontWeight->"Bold"], " instead of ", StyleBox["NDSolve[\[Ellipsis]]", FontWeight->"Bold"], ", and this is computationally efficient." }], "Text"], Cell["One simple model for the Chirikov's map is:", "Text"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{ RowBox[{"chirikov", "[", "k_", "]"}], "[", RowBox[{"{", RowBox[{"th_", ",", "p_"}], "}"}], "]"}], " ", ":=", " ", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"thp", ",", " ", "pp"}], "}"}], ",", "\n", "\t\t", RowBox[{ RowBox[{"pp", " ", "=", " ", RowBox[{"Mod", "[", RowBox[{ RowBox[{"p", " ", "-", " ", RowBox[{"k", " ", RowBox[{"Sin", "[", "th", "]"}]}]}], ",", " ", RowBox[{"2", " ", "Pi"}]}], "]"}]}], ";", "\n", "\t\t", RowBox[{"thp", " ", "=", " ", RowBox[{"Mod", "[", RowBox[{ RowBox[{"th", " ", "+", " ", "pp"}], ",", " ", RowBox[{"2", " ", "Pi"}]}], "]"}]}], ";", "\n", "\t\t", RowBox[{"{", RowBox[{"thp", ",", " ", "pp"}], "}"}]}]}], "]"}]}], ";"}]], "Input"], Cell[TextData[{ "Note that this map has a parameter, \"k\". To use the map, you must assign \ a value to ", StyleBox["k", FontSlant->"Italic"], "." }], "Text"], Cell[BoxData[ RowBox[{ RowBox[{"chirikov", "[", "0.5", "]"}], "[", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", " ", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "0.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", " ", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], ",", " ", "5"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{ RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "0.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", " ", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], ",", " ", "1000"}], "]"}], ",", RowBox[{"PlotRange", "->", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"0", ",", RowBox[{"2", " ", "Pi"}]}], "}"}], ",", " ", RowBox[{"{", RowBox[{"0", ",", " ", RowBox[{"2", " ", "Pi"}]}], "}"}]}], "}"}]}], ",", "\n", "\t ", RowBox[{"Frame", "->", "True"}], ",", "\n", "\t", RowBox[{"FrameLabel", " ", "->", " ", RowBox[{"{", RowBox[{"\"\\"", ",", " ", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{3.447752009321867*^9}], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{ RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "1.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", " ", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], ",", " ", "1000"}], "]"}], ",", RowBox[{"PlotRange", "->", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"0", ",", RowBox[{"2", " ", "Pi"}]}], "}"}], ",", " ", RowBox[{"{", RowBox[{"0", ",", " ", RowBox[{"2", " ", "Pi"}]}], "}"}]}], "}"}]}], ",", "\n", "\t ", RowBox[{"Frame", "->", "True"}], ",", "\n", "\t", RowBox[{"FrameLabel", " ", "->", " ", RowBox[{"{", RowBox[{"\"\\"", ",", " ", "\"\\""}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{3.447752008617374*^9}], Cell[TextData[{ "In this exercise, you are to write a module that takes a parameter ", StyleBox["k", FontSlant->"Italic"], " and an initial condition and computes the Lyapunov exponent for the \ Chirikov map. When the Lyapunov exponent becomes large, the system is \ chaotic. Determine, approximately, the value of ", StyleBox["k", FontSlant->"Italic"], " when this system becomes chaotic. (With some ", StyleBox["very ", FontSlant->"Italic"], " sophisticated mathematics, it can be shown that the critical value of ", StyleBox["k", FontSlant->"Italic"], " leading to global chaos is ", StyleBox["k", FontSlant->"Italic"], " = 0.9716.)" }], "Text"], Cell[TextData[{ "Perhaps the best way to illustrate the onset of chaos is to compute the \ Lyapunov exponent as ", StyleBox["k", FontSlant->"Italic"], " slowly increases. If you choose this method, you should start two \ trajectories very close together (differing by perhaps a few hundreds of a \ percent) and compute how quickly (or slowly) these points move away from each \ other. Note, however, the important point: the trajectories can never be more \ than about \[Pi] apart! Thus, look for exponential divergence only when the \ separation of the two trajectories are less than unity." }], "Text"], Cell[CellGroupData[{ Cell["Solution", "Subsection"], Cell[CellGroupData[{ Cell["Example with k = 0.5...", "Subsubsection"], Cell[BoxData[{ RowBox[{ RowBox[{"l1", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "0.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2.0"}], ",", RowBox[{"3", RowBox[{"\[Pi]", "/", "4.0"}]}]}], "}"}], ",", " ", "500"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"l2", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "0.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"\[Pi]", "/", "2.0"}], " ", "1.00001"}], ",", RowBox[{"3", RowBox[{"\[Pi]", "/", "4.0"}]}]}], "}"}], ",", " ", "500"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"d", " ", "=", " ", RowBox[{"l1", " ", "-", " ", "l2"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"d", " ", "=", " ", RowBox[{ RowBox[{ RowBox[{"Sqrt", "[", RowBox[{ RowBox[{"#1", "^", "2"}], " ", "+", " ", RowBox[{"#2", "^", "2"}]}], "]"}], "&"}], " ", "@@@", " ", "d"}]}], ";"}]}], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], "]"}]], "Input", CellChangeTimes->{3.447752003705224*^9}], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"Select", "[", RowBox[{ RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], ",", RowBox[{ RowBox[{"(", RowBox[{"#", " ", "<", " ", RowBox[{"-", "1"}]}], ")"}], "&"}]}], "]"}], "]"}]], "Input", CellChangeTimes->{3.447752002422213*^9}], Cell[BoxData[ RowBox[{"Fit", "[", RowBox[{ RowBox[{"Select", "[", RowBox[{ RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], ",", RowBox[{ RowBox[{"(", RowBox[{"#", " ", "<", " ", RowBox[{"-", "1"}]}], ")"}], "&"}]}], "]"}], ",", RowBox[{"{", RowBox[{"1", ",", "t"}], "}"}], ",", " ", "t"}], "]"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Example with k = 1.5...", "Subsubsection"], Cell[BoxData[{ RowBox[{ RowBox[{"l1", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "1.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2.0"}], ",", RowBox[{"3", RowBox[{"\[Pi]", "/", "4.0"}]}]}], "}"}], ",", " ", "500"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"l2", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "1.5", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{ RowBox[{"\[Pi]", "/", "2.0"}], " ", "1.00001"}], ",", RowBox[{"3", RowBox[{"\[Pi]", "/", "4.0"}]}]}], "}"}], ",", " ", "500"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"d", " ", "=", " ", RowBox[{"l1", " ", "-", " ", "l2"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"d", " ", "=", " ", RowBox[{ RowBox[{ RowBox[{"Sqrt", "[", RowBox[{ RowBox[{"#1", "^", "2"}], " ", "+", " ", RowBox[{"#2", "^", "2"}]}], "]"}], "&"}], " ", "@@@", " ", "d"}]}], ";"}]}], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], "]"}]], "Input", CellChangeTimes->{3.44775199752805*^9}], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"Select", "[", RowBox[{ RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], ",", RowBox[{ RowBox[{"(", RowBox[{"#", " ", "<", " ", RowBox[{"-", "1"}]}], ")"}], "&"}]}], "]"}], "]"}]], "Input", CellChangeTimes->{3.447751998681821*^9}], Cell[BoxData[ RowBox[{"Fit", "[", RowBox[{ RowBox[{"Select", "[", RowBox[{ RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], ",", RowBox[{ RowBox[{"(", RowBox[{"#", " ", "<", " ", RowBox[{"-", "1"}]}], ")"}], "&"}]}], "]"}], ",", RowBox[{"{", RowBox[{"1", ",", "t"}], "}"}], ",", " ", "t"}], "]"}]], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Table of Results", "Subsubsection"], Cell[BoxData[ RowBox[{ RowBox[{ RowBox[{"lyapunovC", "[", "k_", "]"}], "[", RowBox[{"{", RowBox[{"th0_", ",", " ", "p0_"}], "}"}], "]"}], " ", ":=", " ", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", RowBox[{"l1", ",", " ", "l2", ",", " ", "d", ",", " ", "ft"}], "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"l1", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "k", "]"}], ",", " ", RowBox[{"{", RowBox[{"th0", ",", "p0"}], "}"}], ",", " ", "500"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"l2", " ", "=", " ", RowBox[{"NestList", "[", RowBox[{ RowBox[{"chirikov", "[", "k", "]"}], ",", " ", RowBox[{"{", RowBox[{ RowBox[{"th0", " ", "1.00001"}], ",", "p0"}], "}"}], ",", " ", "500"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"d", " ", "=", " ", RowBox[{"l1", " ", "-", " ", "l2"}]}], ";", "\[IndentingNewLine]", RowBox[{"d", " ", "=", " ", RowBox[{ RowBox[{ RowBox[{"Sqrt", "[", RowBox[{ RowBox[{"#1", "^", "2"}], " ", "+", " ", RowBox[{"#2", "^", "2"}]}], "]"}], "&"}], " ", "@@@", " ", "d"}]}], ";", "\[IndentingNewLine]", RowBox[{"ft", " ", "=", " ", RowBox[{"Fit", "[", RowBox[{ RowBox[{"Select", "[", RowBox[{ RowBox[{"Log", "[", RowBox[{"Abs", "[", "d", "]"}], "]"}], ",", RowBox[{ RowBox[{"(", RowBox[{"#", " ", "<", " ", RowBox[{"-", "1"}]}], ")"}], "&"}]}], "]"}], ",", RowBox[{"{", RowBox[{"1", ",", "t"}], "}"}], ",", " ", "t"}], "]"}]}], ";", "\[IndentingNewLine]", RowBox[{"Coefficient", "[", RowBox[{"ft", ",", "t"}], "]"}]}]}], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"lyapunovC", "[", "0.5", "]"}], "[", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"lTable", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"{", RowBox[{"k", ",", RowBox[{ RowBox[{"lyapunovC", "[", "k", "]"}], "[", RowBox[{"{", RowBox[{ RowBox[{"\[Pi]", "/", "2"}], ",", " ", RowBox[{"3", RowBox[{"\[Pi]", "/", "4"}]}]}], "}"}], "]"}]}], "}"}], ",", " ", RowBox[{"{", RowBox[{"k", ",", " ", "0.5", ",", " ", "1.5", ",", " ", "0.01"}], "}"}]}], "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"ListPlot", "[", RowBox[{"lTable", ",", RowBox[{"PlotStyle", "\[Rule]", " ", RowBox[{"PointSize", "[", "0.02", "]"}]}], ",", " ", RowBox[{ "PlotLabel", "\[Rule]", " ", "\"\\""}], ",", " ", RowBox[{"AxesOrigin", "\[Rule]", " ", RowBox[{"{", RowBox[{"0.5", ",", " ", "0.0"}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{3.44775199256907*^9}], Cell["\<\ The Lyapunov number increases rapidly near the onset of gloabl chaos at the \ predicted value of k = 0.9716\[Ellipsis]\ \>", "Text"] }, Closed]] }, Closed]] }, Closed]] }, Open ]] }, WindowSize->{648, 793}, WindowMargins->{{62, Automatic}, {Automatic, 0}}, PrintingCopies->1, PrintingPageRange->{1, Automatic}, FrontEndVersion->"6.0 for Mac OS X x86 (32-bit) (May 21, 2008)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[590, 23, 30, 0, 73, "Title"], Cell[623, 25, 147, 4, 45, "Subsubtitle"], Cell[CellGroupData[{ Cell[795, 33, 58, 0, 69, "Section"], Cell[856, 35, 204, 4, 43, "Text"], Cell[CellGroupData[{ Cell[1085, 43, 60, 0, 33, "Subsection"], Cell[1148, 45, 389, 6, 75, "Text"], Cell[1540, 53, 110, 3, 28, "Input"], Cell[1653, 58, 290, 8, 28, "Input"], Cell[1946, 68, 839, 25, 53, "Input"], Cell[2788, 95, 169, 5, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[2994, 105, 53, 0, 33, "Subsection"], Cell[3050, 107, 118, 3, 27, "Text"], Cell[CellGroupData[{ Cell[3193, 114, 51, 0, 24, "Subsubsection"], Cell[3247, 116, 274, 8, 46, "Input"], Cell[3524, 126, 66, 1, 28, "Input"], Cell[3593, 129, 59, 1, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[3689, 135, 35, 0, 24, "Subsubsection"], Cell[3727, 137, 137, 5, 27, "Text"], Cell[3867, 144, 924, 30, 63, "Input"], Cell[4794, 176, 508, 16, 30, "Input"], Cell[5305, 194, 503, 16, 30, "Input"], Cell[5811, 212, 231, 6, 28, "Input"], Cell[6045, 220, 130, 5, 27, "Text"], Cell[6178, 227, 254, 8, 28, "Input"], Cell[6435, 237, 161, 6, 30, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[6633, 248, 77, 0, 24, "Subsubsection"], Cell[6713, 250, 1979, 55, 143, "Input"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[8741, 311, 50, 0, 33, "Subsection"], Cell[8794, 313, 405, 12, 63, "Input"], Cell[9202, 327, 155, 5, 27, "Text"], Cell[9360, 334, 643, 18, 46, "Input"], Cell[10006, 354, 752, 20, 63, "Input"], Cell[10761, 376, 856, 23, 63, "Input"], Cell[11620, 401, 895, 25, 63, "Input"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[12564, 432, 42, 0, 39, "Section"], Cell[12609, 434, 485, 9, 75, "Text"], Cell[13097, 445, 820, 23, 80, "Input"], Cell[13920, 470, 491, 15, 28, "Input"], Cell[14414, 487, 491, 15, 28, "Input"], Cell[14908, 504, 71, 1, 28, "Input"], Cell[14982, 507, 69, 1, 28, "Input"], Cell[15054, 510, 69, 1, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[15160, 516, 38, 0, 39, "Section"], Cell[15201, 518, 387, 6, 75, "Text"], Cell[15591, 526, 486, 14, 63, "Input"], Cell[16080, 542, 861, 23, 63, "Input"], Cell[16944, 567, 407, 13, 28, "Input"], Cell[17354, 582, 57, 1, 28, "Input"], Cell[17414, 585, 332, 10, 28, "Input"], Cell[17749, 597, 70, 1, 28, "Input"], Cell[17822, 600, 107, 2, 28, "Input"], Cell[17932, 604, 281, 9, 28, "Input"], Cell[18216, 615, 232, 6, 43, "Text"], Cell[18451, 623, 239, 8, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[18727, 636, 63, 0, 39, "Section"], Cell[18793, 638, 215, 4, 43, "Text"], Cell[19011, 644, 268, 5, 59, "Text"], Cell[19282, 651, 393, 6, 75, "Text"], Cell[19678, 659, 543, 11, 91, "Text"], Cell[20224, 672, 4306, 119, 233, "Input"], Cell[24533, 793, 243, 7, 43, "Text"], Cell[24779, 802, 120, 3, 28, "Input"], Cell[24902, 807, 147, 4, 28, "Input"], Cell[25052, 813, 375, 11, 28, "Input"], Cell[25430, 826, 424, 10, 46, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[25891, 841, 31, 0, 39, "Section"], Cell[25925, 843, 927, 23, 139, "Text"], Cell[26855, 868, 59, 0, 27, "Text"], Cell[26917, 870, 890, 25, 80, "Input"], Cell[27810, 897, 164, 6, 27, "Text"], Cell[27977, 905, 227, 7, 28, "Input"], Cell[28207, 914, 283, 8, 28, "Input"], Cell[28493, 924, 869, 26, 80, "Input"], Cell[29365, 952, 869, 26, 80, "Input"], Cell[30237, 980, 669, 19, 75, "Text"], Cell[30909, 1001, 609, 11, 91, "Text"], Cell[CellGroupData[{ Cell[31543, 1016, 30, 0, 33, "Subsection"], Cell[CellGroupData[{ Cell[31598, 1020, 48, 0, 24, "Subsubsection"], Cell[31649, 1022, 1117, 35, 80, "Input"], Cell[32769, 1059, 164, 4, 28, "Input"], Cell[32936, 1065, 331, 10, 28, "Input"], Cell[33270, 1077, 379, 12, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[33686, 1094, 48, 0, 24, "Subsubsection"], Cell[33737, 1096, 1117, 35, 80, "Input"], Cell[34857, 1133, 163, 4, 28, "Input"], Cell[35023, 1139, 331, 10, 28, "Input"], Cell[35357, 1151, 379, 12, 28, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[35773, 1168, 41, 0, 24, "Subsubsection"], Cell[35817, 1170, 1893, 52, 131, "Input"], Cell[37713, 1224, 223, 7, 28, "Input"], Cell[37939, 1233, 536, 16, 28, "Input"], Cell[38478, 1251, 432, 11, 46, "Input"], Cell[38913, 1264, 142, 3, 43, "Text"] }, Closed]] }, Closed]] }, Closed]] }, Open ]] } ] *) (* End of internal cache information *)