(*********************************************************************** 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[ 198526, 5499]*) (*NotebookOutlinePosition[ 228788, 6604]*) (* CellTagsIndexPosition[ 228744, 6600]*) (*WindowFrame->Normal*) Notebook[{ Cell[TextData[{ "Modelling of the Seesaw/Pendulum\nwith ", StyleBox["Mathematica", FontSlant->"Italic"] }], "Title", CellMargins->{{0, -87}, {Inherited, Inherited}}, Evaluatable->False, CellLabelMargins->{{0, Inherited}, {Inherited, Inherited}}, TextAlignment->Left, AspectRatioFixed->True], Cell[TextData[StyleBox[ "Copyright \[Copyright] MathCore AB 1998"]], "Copyright"], Cell["\<\ created by Mats Jirstrand and Johan Gunnarsson \ Link\[ODoubleDot]ping University\ \>", "Author"], Cell[CellGroupData[{ Cell[TextData[StyleBox["Introduction"]], "Section"], Cell[TextData[StyleBox[ "This notebook illustrates how to build a dynamic model of a physical system \ and generate efficient code for simulating the model."]], "Text"], Cell[TextData[StyleBox[ "The physical system is a seesaw where two wagons C1 and C2 are freely moving \ due to the forces acting on them. On wagon C2 there is an inverted pendulum \ attached by a friction free joint."]], "Text"], Cell["\<\ The model will show how the system will behave if it is in rest and \ balanced at time zero and then is disturbed by some small changes in the \ pendulum angle.\ \>", "Text"], Cell[GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHggo1P22o`H0lOl0 0>Oo1P2>o`H0jol00>7o1P2Jo`H0iOl00=_o1P2Vo`H0gol00=Go1P2bo`H0 fOl0000fo`030?oo03?o00<0ool0nOl00=;o:`0mocL0nol00=;o00<0 ool09ol00`3oo`1Fo`030?oo0?oo5Ol00=;o00<0ool09ol00`3oo`1Fo`03 0?oo0?oo5Ol00=;o00<0ool09ol00`3oo`1Go`030?oo0?oo5?l00=;o00<0 ool09ol00`3oo`1Go`030?oo0?oo5?l00=;o00<0ool09ol00`3oo`1Go`03 0?oo0?oo5?l00=;o00<0ool09ol00`3oo`1Go`030?oo0?oo5?l00=;o00<0 ool09ol00`3oo`1Go`030?oo0?oo5?l00=;o00<0ool09ol00`3oo`1Ho`03 0?oo0?oo4ol00=;o00<0ool09ol00`3oo`1Ho`030?oo0?oo4ol00=;o00<0 ool09ol00`3oo`1Ho`030?oo0?oo4ol004Oo100o`00oomMo`030?oo 0?oo3_l00?ooGOl00`3oo`3oo`ko003ooego00<0ool0ool>o`00oomMo`03 0?oo0?oo3_l00?ooG_l00`3oo`3oo`go003ooeko00<0ool0ool=o`00oomN o`030?oo0?oo3Ol00?ooG_l00`3oo`3oo`go003ooeko00<0ool0ool=o`00 oomOo`030?oo0?oo3?l00?ooGol00`3oo`3oo`co003ooeoo00<0ool0ool< o`00oomOo`030?oo0?oo3?l00?ooGol00`3oo`3oo`co003oof3o00<0ool0 ool;o`00oomPo`030?oo0?oo2ol00?ooH?l00`3oo`3oo`_o003oof3o00<0 ool0ool;o`00oomPo`030?oo0?oo2ol00?ooHOl00`3oo`3oo`[o003oof7o 00<0ool0ool:o`00oomQo`030?oo0?oo2_l00?ooHOl00`3oo`3oo`[o003o of7o00<0ool0ool:o`00oomQo`030?oo0?oo2_l00?ooH_l00`3oo`3oo`Wo 003oof;o00<0ool0ool9o`00oomRo`030?oo0?oo2Ol00?ooH_l00`3oo`3o o`Wo003oof;o00<0ool0ool9o`00oomSo`030?oo0?oo2?l00?ooHol00`3o o`3oo`So003oof?o00<0ool0ool8o`00oomSo`030?oo0?oo2?l00?ooHol0 0`3oo`3oo`So003oofCo00<0ool0ool7o`00oomTo`030?oo0?oo1ol00?oo I?l00`3oo`3oo`Oo003oofCo00<0ool0ool7o`00oomTo`030?oo0?oo1ol0 0?ooI?l00`3oo`3oo`Oo003oofGo00<0ool0ool6o`00oomUo`030?oo0?oo 1_l00?ooIOl00`3oo`3oo`Ko003oofGo00<0ool0ool6o`00oomUo`030?oo 0?oo1_l00?ooI_l00`3oo`3oo`Go003oofKo00<0ool0ool5o`00oomVo`03 0?oo0?oo1Ol00?ooI_l00`3oo`3oo`Go003oofKo00<0ool0ool5o`00oomW o`030?oo0?oo1?l00?ooIol00`3oo`3oo`Co003oofOo00<0ool0ool4o`00 oomWo`030?oo0?oo1?l00?ooIol00`3oo`3oo`Co003oofSo00<0ool0ool3 o`00oomXo`030?oo0?oo0ol00?ooJ?l00`3oo`3oo`?o003oofSo00<0ool0 ool3o`00oomXo`030?oo0?oo0ol00?ooJ?l00`3oo`3oo`?o003oofWo00<0 ool0ool2o`00oomYo`030?oo0?oo0_l00?ooJOl00`3oo`3oo`;o003oofWo 00<0ool0ool2o`00oomYo`030?oo0?oo0_l00?ooJ_l00`3oo`3oo`7o003o of[o00<0ool0ool1o`00oomZo`030?oo0?oo0Ol00?ooJ_l00`3oo`3oo`7o 003oof[o00<0ool0ool1o`00oom[o`030?oo0?oo003oof_o00<0ool0ool0 0?ooJol00`3oo`3oo`00oom[o`030?oo0?oo003oof_o00<0ool0ool00?oo K?l00`3oo`3no`00oom/o`030?oo0?ko003oofco00<0ool0o_l00?ooK?l0 0`3oo`3no`00oom/o`030?oo0?ko003oofco00<0ool0o_l00?ooKOl00`3o o`3mo`00oom]o`030?oo0?go003oofgo00<0ool0oOl00?ooKOl00`3oo`3m o`00oom]o`030?oo0?go003oofko00<0ool0o?l00?ooK_l00`3oo`3lo`00 oom^o`030?oo0?co003oofko00<0ool0o?l00?ooK_l00`3oo`3lo`00oom_ o`030?oo0?_o003oofoo00<0ool0nol00?ooKol00`3oo`3ko`00oom_o`03 0?oo0?_o003oofoo00<0ool0nol00?ooKol00`3oo`3ko`00oom`o`030?oo 0?[o003oog3o00<0ool0n_l00?ooL?l00`3oo`3jo`00oom`o`030?oo0?[o 003oog3o00<0ool0n_l00?ooLOl00`3oo`3io`00oomao`030?oo0?Wo003o og7o00<0ool0nOl00?ooLOl00`3oo`3io`00oomao`030?oo0?Wo003oog;o 00<0ool0n?l00?ooL_l00`3oo`3ho`00oombo`030?oo0?So003oog;o00<0 ool0n?l00?ooL_l00`3oo`3ho`00oomco`030?oo0?Oo003oog?o00<0ool0 mol00?ooLol00`3oo`3go`00oomco`030?oo0?Oo003oog?o00<0ool0mol0 0?ooLol00`3oo`3go`00oomdo`030?oo0?Ko003oogCo00<0ool0m_l00?oo M?l00`3oo`3fo`00oomdo`030?oo0?Ko003oogCo00<0ool0m_l00?ooMOl0 0`3oo`3eo`00oomeo`030?oo0?Go003oogGo00<0ool0mOl00?ooMOl00`3o o`3eo`00oomeo`030?oo0?Go003oogKo00<0ool0m?l00?ooM_l00`3oo`3d o`00oomfo`030?oo0?Co003oogKo00<0ool0m?l00?ooM_l00`3oo`3do`00 oomgo`030?oo0??o003oogOo00<0ool0lol00?ooMol00`3oo`3co`00oomg o`030?oo0??o003oogOo00<0ool0lol00001\ \>"], "Text", ImageSize->{620, 291}, ImageMargins->{{0, 0}, {0, 2}}, ImageRegion->{{0, 1}, {0, 1}}] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Variables and Constants"]], "Section", Evaluatable->False, AspectRatioFixed->True], Cell[TextData[{ "Variables:\n\t", Cell[BoxData[ \(x\_1\)]], "\ttranslation of cart 1 from center of track\n\t", Cell[BoxData[ \(TraditionalForm\`x\_2\)]], "\ttranslation of cart 1 from center of track\n\t\[Theta]\tangle of seesaw \ with vertical\n\t\[Alpha]\tangle of pendulum with normal to track\n\t", Cell[BoxData[ \(TraditionalForm\`F\_1\)]], "\tforce applied to cart 1\n\t", Cell[BoxData[ \(TraditionalForm\`F\_2\)]], "\tforce applied to cart 2" }], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[TextData[{ "Constants:\n\tJ\tinertia of seesaw with track att height h\n\t", Cell[BoxData[ \(TraditionalForm\`m\_s\)]], "\tmass of seesaw with track\n\tc\tcenter of gravity\n\th\theight of track \ from pivot point\n\t", Cell[BoxData[ \(TraditionalForm\`m\_1\)]], "\tmass of cart 1 (weight cart, on the back track)\n\t", Cell[BoxData[ \(TraditionalForm\`m\_2\)]], "\tmass of cart 2\t (pendulum cart, on the front track)\n\t", Cell[BoxData[ \(TraditionalForm\`m\_p\)]], "\tmass of pendulum\n\t", Cell[BoxData[ \(TraditionalForm\`l\_p\)]], "\tcenter of mass of pendulum rod (half of full length)\n\tg\tgravitational \ acceleration" }], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(physicalvalues := {J \[Rule] 1.6, m\_s \[Rule] 6.6, c \[Rule] 0.06, h \[Rule] 0.115, \n \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_1 \[Rule] 0.48 + 0.38, m\_2 \[Rule] 0.48, m\_p \[Rule] 0.2, \n\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ l\_p \[Rule] 0.61\/2 + 0.03, g \[Rule] 9.81}\)], "Input", AspectRatioFixed->True], Cell["Off[General::\"spell1\"];", "Input"] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Mathematical Modeling"]], "Section", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[TextData[StyleBox["Computation of the Lagrangian"]], "Subsection", Evaluatable->False, AspectRatioFixed->True], Cell["Coordinates of the center of mass of the seesaw", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(x\_s := c\ Sin[\[Theta][t]]; \ny\_s := c\ Cos[\[Theta][t]]; \)], "Input",\ AspectRatioFixed->True], Cell[TextData[StyleBox[ "The potential and kinetic energies of the seesaw"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(V\_s := m\_s\ g\ y\_s; \n T\_s := Simplify[1\/2\ J\ \((\[PartialD]\_t \[Theta][t])\)\^2]; \)], "Input", AspectRatioFixed->True], Cell["Coordinates of the center of track", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(x\_c := h\ Sin[\[Theta][t]]; \ny\_c := h\ Cos[\[Theta][t]]; \)], "Input",\ AspectRatioFixed->True], Cell[TextData[StyleBox["Coordinates of cart 1"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(x\_m1 := x\_c + x\_1[t]\ Cos[\[Theta][t]]; \n y\_m1 := y\_c - x\_1[t]\ Sin[\[Theta][t]]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox[ "The potential and kinetic energies of cart 1"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(V\_m1 := m\_1\ g\ y\_m1; \n T\_m1 := Simplify[ 1\/2\ m\_1\ \((\((\[PartialD]\_t x\_m1)\)\^2 + \((\[PartialD]\_t y\_m1)\)\^2) \)]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["Coordinates of cart 2"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(x\_m2 := x\_c + x\_2[t]\ Cos[\[Theta][t]]; \n y\_m2 := y\_c - x\_2[t]\ Sin[\[Theta][t]]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox[ "The potential and kinetic energies of cart 2"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(V\_m2 := m\_2\ g\ y\_m2; \n T\_m2 := Simplify[ 1\/2\ m\_2\ \((\((\[PartialD]\_t x\_m2)\)\^2 + \((\[PartialD]\_t y\_m2)\)\^2) \)]; \)], "Input", AspectRatioFixed->True], Cell["Coordinates of the center of mass of the pendulum", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(x\_p := x\_m2 + l\_p\ Sin[\[Alpha][t] + \[Theta][t]]; \n y\_p := y\_m2 + l\_p\ Cos[\[Alpha][t] + \[Theta][t]]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox[ "The potential and kinetic energies of the pendulum"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(V\_p := m\_p\ g\ y\_p; \n T\_p := Simplify[ 1\/2\ m\_p\ \((\((\[PartialD]\_t x\_p)\)\^2 + \((\[PartialD]\_t y\_p)\)\^2)\)]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["The total potential energy"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(V\_tot := V\_s + V\_m1 + V\_m2 + V\_p; \)\)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["The total kinetic energy"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(T\_tot := T\_s + T\_m1 + T\_m2 + T\_p; \)\)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["The Lagrangian"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(L := T\_tot - V\_tot; \)\)], "Input", AspectRatioFixed->True] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox[ "Computation of the Equations of Motion"]], "Subsection", Evaluatable->False, AspectRatioFixed->True], Cell[TextData[StyleBox[ "Equations of motion: D[D[L,D[qi,t]],t]-D[L,qi[t]] == Qi\n(This \ computation takes a minute or two ...)"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(eqn\_1 = Simplify[\[PartialD]\_t\((\[PartialD]\_\(\[PartialD]\_t x\_1[t]\)L)\) - \[PartialD]\_\(x\_1[t]\)L == F\_1]; \n eqn\_2 = Simplify[ \[PartialD]\_t\((\[PartialD]\_\(\[PartialD]\_t x\_2[t]\)L)\) - \[PartialD]\_\(x\_2[t]\)L == F\_2]; \n eqn\_3 = Simplify[ \[PartialD]\_t\((\[PartialD]\_\(\[PartialD]\_t \[Theta][t]\)L)\) - \[PartialD]\_\(\[Theta][t]\)L == 0]; \n eqn\_4 = Simplify[ \[PartialD]\_t\((\[PartialD]\_\(\[PartialD]\_t \[Alpha][t]\)L)\) - \[PartialD]\_\(\[Alpha][t]\)L == 0]; \)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["Solve for second order derivatives"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(sol = Solve[\ {\ eqn\_1, eqn\_2, eqn\_3, eqn\_4\ }, \n \t\t\t\t\t\t\t\t\t\t\t\t{\ \[PartialD]\_{t, 2}x\_1[t], \[PartialD]\_{t, 2}x\_2[t], \n\t\t\t\t\t\t\t\t\t\t\t\t\t\ \[PartialD]\_{t, 2}\[Theta][t], \[PartialD]\_{t, 2}\[Alpha][t]\ } \ ]; \)\)], "Input", AspectRatioFixed->True], Cell["Conversion rules to get rid of explicit time dependence", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(ssvariables := {\ \ x\_1[t] \[Rule] x\_1, \[Theta][t] \[Rule] \[Theta], \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t x\_2[t] \[Rule] x\_2, \[Alpha][t] \[Rule] \[Alpha], \n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\[PartialD]\_t x\_1[t] \[Rule] dx\_1, \[PartialD]\_t \[Theta][t] \[Rule] d\[Theta], \n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\[PartialD]\_t x\_2[t] \[Rule] dx\_2, \[PartialD]\_t \[Alpha][t] \[Rule] d\[Alpha]\ }; \)\)], "Input", AspectRatioFixed->True], Cell[TextData[{ StyleBox["The right hand side of the nonlinear state space equations, "], StyleBox[Cell[BoxData[ \(TraditionalForm\`x\& . \)]]], StyleBox["[t] "], StyleBox["= f[x[t],u[t]]"] }], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(f = \({\[PartialD]\_{t, 2}x\_1[t], \[PartialD]\_{t, 2}\[Theta][t], \[PartialD]\_{t, 2}x\_2[t], \[PartialD]\_{t, 2}\[Alpha][t]}\n \t\t\t /. sol\[LeftDoubleBracket]1\[RightDoubleBracket]\) /. ssvariables; \)\)], "Input", AspectRatioFixed->True] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["The Linearized Model"]], "Subsection", Evaluatable->False, AspectRatioFixed->True], Cell[TextData[{ StyleBox["Linearize the equations around {0,0,0,0,0,0,0,0} \[Implies] "], StyleBox[Cell[BoxData[ \(TraditionalForm\`x\& . \)]]], StyleBox["[t] = A x[t] + B u[t]"] }], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(\(stationarypoint = {\ \ x\_1 \[Rule] 0, \[Theta] \[Rule] 0, x\_2 \[Rule] 0, \[Alpha] \[Rule] 0, \n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdx\_1 \[Rule] 0, d\[Theta] \[Rule] 0, \ dx\_2 \[Rule] 0, d\[Alpha] \[Rule] 0, \n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tF\_1 \[Rule] 0, F\_2 \[Rule] 0\ }; \)\)], "Input", AspectRatioFixed->True], Cell["\<\ The jacobian function computes the Jacobian matrix of a \ vector-valued function.\ \>", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[ \(jacobian[h_, vars_] := Outer[D, h, vars]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(\(A\ = \ Simplify[\n\t\t\t\t\t jacobian[\ f, \ {\ x\_1, \[Theta], x\_2, \[Alpha], \n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ \ dx\_1, d\[Theta], dx\_2, d\[Alpha]}\ ] /. stationarypoint\ ]; \)\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(\(B = Simplify[\ jacobian[\ f, {F\_1, F\_2}\ ] /. stationarypoint\ ]; \)\)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["Augment the system matrices"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[BoxData[{ \(<< LinearAlgebra`MatrixManipulation`\), \(A\_a = AppendColumns[\n\t\t\t\t\t\t AppendRows[Table[0, {4}, {4}], IdentityMatrix[4]], A\ ]; \n B\_a = AppendColumns[Table[0, {4}, {2}], B]; \)}], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox["Insert numerical values"]], "Text", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[A\_a /. physicalvalues]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ TagBox[ RowBox[{"(", GridBox[{ {"0", "0", "0", "0", "1", "0", "0", "0"}, {"0", "0", "0", "0", "0", "1", "0", "0"}, {"0", "0", "0", "0", "0", "0", "1", "0"}, {"0", "0", "0", "0", "0", "0", "0", "1"}, {\(-0.606380624999999984`\), "9.53078287499999987`", \(-0.479463750000000032`\), "0", "0", "0", "0", "0"}, {"5.27287499999999997`", "2.42797499999999999`", "4.1692499999999999`", "0", "0", "0", "0", "0"}, {\(-0.606380624999999984`\), "9.53078287499999987`", \(-0.479463750000000032`\), \(-4.08750000000000124`\), "0", "0", "0", "0"}, {\(-5.27287499999999997`\), \(-2.42797499999999999`\), \(-4.1692499999999999`\), "41.4850746268656767`", "0", "0", "0", "0"} }], ")"}], (MatrixForm[ #]&)]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[B\_a /. physicalvalues]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ TagBox[ RowBox[{"(", GridBox[{ {"0", "0"}, {"0", "0"}, {"0", "0"}, {"0", "0"}, {"1.17105632267441861`", "0.008265625`"}, {\(-0.0718750000000000088`\), \(-0.0718750000000000088`\)}, {"0.008265625`", "2.09159895833333342`"}, {"0.0718750000000000088`", \(-6.14703047263681678`\)} }], ")"}], (MatrixForm[ #]&)]], "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Code Generation"]], "Section", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[TextData[StyleBox[ "Load MathCode and set Current Directory"]], "Subsection"], Cell[CellGroupData[{ Cell["Needs[\"MathCode`\"];", "Input"], Cell[BoxData[ InterpretationBox[ RowBox[{"\<\"MathCode C++ ver \"\>", "\[InvisibleSpace]", TagBox[ InterpretationBox["\<\" 1.0\"\>", 1.0, AutoDelete->True], (PaddedForm[ #, {1, 1}]&)], "\[InvisibleSpace]", "\<\" loaded.\"\>"}], SequenceForm[ "MathCode C++ ver ", PaddedForm[ 1.0, {1, 1}], " loaded."], Editable->False]], "Print"] }, Open ]], Cell["SetDirectory[$MCRoot<>\"/Demos/Pendulum\"];", "Input"], Cell["ExistFileQ[\"Pendulum.nb\"];", "Input"] }, Open ]], Cell[CellGroupData[{ Cell["C++ code using MathCode", "Subsection"], Cell["\<\ Create the right hand side of the nonlinear state space \ function\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(Cvariables\ = \n \t\t{\ Subscript[x, \ 1]\ \[Rule] \ x1, \[Theta]\ \[Rule] \ theta, \n \t\t\tSubscript[x, \ 2]\ \[Rule] \ x2, \[Alpha]\ \[Rule] \ alpha, \n \t\t\tSubscript[dx, \ 1]\ \[Rule] \ dx1, d\[Theta]\ \[Rule] \ dtheta, \n\t\t\t Subscript[dx, \ 2]\ \[Rule] \ dx2, \ d\[Alpha] \[Rule] \ dalpha, \n \t\t\tSubscript[F, \ 1]\ \[Rule] \ F1, Subscript[F, \ 2]\ \[Rule] \ F2\ }; \)\)], "Input"], Cell[BoxData[ \(General::"spell1" \( : \ \) "Possible spelling error: new symbol name \"\!\(dtheta\)\" is similar \ to existing symbol \"\!\(theta\)\"."\)], "Message"], Cell[BoxData[ \(General::"spell1" \( : \ \) "Possible spelling error: new symbol name \"\!\(dalpha\)\" is similar \ to existing symbol \"\!\(alpha\)\"."\)], "Message"] }, Open ]], Cell[BoxData[ \(\(rhs = \(f /. physicalvalues\)\ /. \ Cvariables; \)\)], "Input", AspectRatioFixed->True], Cell[TextData[StyleBox[ "Store the huge expression rhs on file for later use."]], "Text"], Cell[BoxData[ \( (*\ rhs\ >> \ PendulumExpr`\ *) \)], "Input"], Cell[TextData[{ "If you have memory problems, e.g., the CompilePackage fails and stops and \ nothing happens, then the previous computations in this notebook have made \ the memory used by ", StyleBox["Mathematica", FontSlant->"Italic"], " too large for the external compiler to work. This risk is greatest on a \ Windows 95 system. In such a case restart and load the rhs from a file \ instead." }], "Text"], Cell["(* rhs = << PendulumExpr.m; *)", "Input"], Cell[TextData[StyleBox["To free some memory."]], "Text"], Cell["Share[];", "Input"], Cell[CellGroupData[{ Cell[TextData[StyleBox["Create the Global package"]], "Subsubsection"], Cell["\<\ This defines the function PendFunc1 which contains the huge rhs \ expression from above as its body. Note that the expression can read from the \ file PendulumExpr.m which is created above. This file makes it quicker to try \ out the compilation in different sessions without computing rhs each \ time.\ \>", "Text"], Cell["\<\ The PendFunc1 function maps 10 real parameters to a list with 4 \ elements of reals. Since all function arguments have the same type we map \ Real on the arguments for convenience.\ \>", "Text"], Cell["\<\ Evaluate[(Real /@ PendFunc1[x1_, theta_, x2_, alpha_, dx1_, dtheta_, dx2_, dalpha_, F1_, \ F2_])-> Real[4]] = rhs; \ \>", "Input"], Cell[TextData[StyleBox[ "This function is only used for measuring the performance."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(calcfunc[Integer@\ n_] -> Real[4]\ := \ \n\t Module[{\n\t\t\t\tInteger@\ \ count, \n\t\t\t\tReal[4]@\ \ res\n \t\t\t}, \n\t\t For\ [count = 1, count <= n, count = count + 1, \n\t\t\t\t res = PendFunc1[1. , 2. , 3. , 4. , 5. , 6. , 7. , 8. , 9. , 10. ]\n \t\t]; \n\t\tres\n\t]; \)\)], "Input"], Cell[BoxData[ \(General::"spell1" \( : \ \) "Possible spelling error: new symbol name \"\!\(count\)\" is similar to \ existing symbol \"\!\(Count\)\"."\)], "Message"] }, Open ]], Cell["\<\ Since NDSolve must have scalar equations, we must create a function \ returning each component of the result from PendFunc1.\ \>", "Text"], Cell["\<\ Evaluate[ScalarPendFunc1[Sequence@@ Real/@ {x1_, theta_, x2_, alpha_, dx1_, dtheta_, dx2_, dalpha_, F1_, F2_}, Integer@ \ k_]-> Real] := \tPendFunc1[x1, theta, x2, alpha, dx1, dtheta, dx2, dalpha, F1, \ F2][[k]];\ \>", "Input"] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Compilation"]], "Subsubsection"], Cell[TextData[StyleBox["We are now ready to compile the package."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(CompilePackage["\", EvaluateFunctions -> {PendFunc1}]\)], "Input"], Cell[BoxData[ \("Successful compilation to C++: 4 function(s)"\)], "Print"] }, Open ]], Cell[TextData[StyleBox[ "The size of the of the symbolic expression is obvious by just take a look at \ it."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(?? PendFunc1\)], "Input"], Cell[BoxData[ \("Global`PendFunc1"\)], "Print"], Cell[BoxData[ InterpretationBox[ StyleBox[ \(PendFunc1[x1_, \ theta_, \ x2_, \ alpha_, \ dx1_, \ dtheta_, \ dx2_, \ dalpha_, \ F1_, \ F2_]\ := \ {\(-1.162790697674418\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\)) \)\ + \ 0.115*\(( \(-\((\((\((\(-0.01526259999999999\)\ + \ 0.004488999999999999*Cos[alpha]^2)\)* \((\(-\(( \((\(-0.05761999999999999\)* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \)\ + \ 0.06699999999999999*Cos[alpha]* \((\(-0.009781209999999999\)\ + \ 0.8599999999999999* \((1.62509\ + \ 0.8599999999999999* \((0.013225\ + \ x1^2)\)\ + \ 0.2*x2^2\ + \ 0.4799999999999999* \((0.013225\ + \ x2^2)\)\ + \ 0.01540999999999999*Cos[alpha]\ + \ 0.1339999999999999*x2*Sin[alpha])\)) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\((\(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2*\(( \(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)) \)\)\ + \ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\((0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-0.0989\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\))\)\ + \ 0.8599999999999999* \((0.4*dtheta*dx2*x2\ + \ 0.06699999999999999*dalpha^2*x2* Cos[alpha]\ + \ 0.1339999999999999*dalpha*dtheta*x2* Cos[alpha]\ - \ 1.962*x2*Cos[theta]\ - \ 0.007705*dalpha^2*Sin[alpha]\ - \ 0.01540999999999999*dalpha*dtheta* Sin[alpha]\ + \ 0.1339999999999999*dtheta*dx2* Sin[alpha]\ + \ 0.8599999999999999* \((x1*\((2*dtheta*dx1\ - \ 9.81*Cos[theta])\)\ - \ 1.12815*Sin[theta])\)\ + \ 0.4799999999999999* \((2*dtheta*dx2*x2\ - \ 9.81*x2*Cos[theta]\ - \ 1.12815*Sin[theta])\)\ - \ 4.110389999999999*Sin[theta]\ - \ 0.65727*Sin[alpha\ + \ theta])\)) \)\ - \ 0.05761999999999999* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\))\)) \)/\((\(( 0.001407089619199999*Cos[alpha]\ + \ 0.0007563106703199999*x1^2*Cos[alpha]\ + \ 0.0005980130881599998*x2^2*Cos[alpha]\ - \ 0.0004138498879999999*Cos[alpha]^3\ - \ 0.0002224443147999999*x1^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2* Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]* Sin[alpha]^2)\)* \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \))\))\))\)\)\ + \ \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\(( \(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)/ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha]) \))\)*Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\))\))\), \ \((\((\(-0.01526259999999999\)\ + \ 0.004488999999999999*Cos[alpha]^2)\)* \((\(-\((\((\(-0.05761999999999999\)* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \)\ + \ 0.06699999999999999*Cos[alpha]* \((\(-0.009781209999999999\)\ + \ 0.8599999999999999* \((1.62509\ + \ 0.8599999999999999* \((0.013225\ + \ x1^2)\)\ + \ 0.2*x2^2\ + \ 0.4799999999999999* \((0.013225\ + \ x2^2)\)\ + \ 0.01540999999999999*Cos[alpha]\ + \ 0.1339999999999999*x2*Sin[alpha])\)) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\(( \(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)) \)\)\ + \ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\)) \)*\((0.06699999999999999*Cos[alpha]* \((\(-0.0989\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\))\)\ + \ 0.8599999999999999* \((0.4*dtheta*dx2*x2\ + \ 0.06699999999999999*dalpha^2*x2* Cos[alpha]\ + \ 0.1339999999999999*dalpha*dtheta*x2* Cos[alpha]\ - \ 1.962*x2*Cos[theta]\ - \ 0.007705*dalpha^2*Sin[alpha]\ - \ 0.01540999999999999*dalpha*dtheta* Sin[alpha]\ + \ 0.1339999999999999*dtheta*dx2* Sin[alpha]\ + \ 0.8599999999999999* \((x1*\((2*dtheta*dx1\ - \ 9.81*Cos[theta])\)\ - \ 1.12815*Sin[theta])\)\ + \ 0.4799999999999999* \((2*dtheta*dx2*x2\ - \ 9.81*x2*Cos[theta]\ - \ 1.12815*Sin[theta])\)\ - \ 4.110389999999999*Sin[theta]\ - \ 0.65727*Sin[alpha\ + \ theta])\)) \)\ - \ 0.05761999999999999* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\))\))\)/ \((\((0.001407089619199999*Cos[alpha]\ + \ 0.0007563106703199999*x1^2*Cos[alpha]\ + \ 0.0005980130881599998*x2^2*Cos[alpha]\ - \ 0.0004138498879999999*Cos[alpha]^3\ - \ 0.0002224443147999999*x1^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]*Sin[alpha]^2)\)* \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha]) \))\)*Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\))\))\)\ - \ \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta]) \)\ + \ 0.2*\(( \(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)/ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\((0.115\ + \ 0.3349999999999999*Cos[alpha])\)) \)*Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\))\), \ Sec[alpha]* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\)* \((\(-\(( \((\((\(-0.01526259999999999\)\ + \ 0.004488999999999999*Cos[alpha]^2)\)* \((\(-\(( \((\(-0.05761999999999999\)* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \)\ + \ 0.06699999999999999*Cos[alpha]* \((\(-0.009781209999999999\)\ + \ 0.8599999999999999* \((1.62509\ + \ 0.8599999999999999* \((0.013225\ + \ x1^2)\)\ + \ 0.2*x2^2\ + \ 0.4799999999999999* \((0.013225\ + \ x2^2)\)\ + \ 0.01540999999999999*Cos[alpha]\ + \ 0.1339999999999999*x2*Sin[alpha])\)) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\((\(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2*\(( \(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)) \)\)\ + \ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\((0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-0.0989\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\))\)\ + \ 0.8599999999999999* \((0.4*dtheta*dx2*x2\ + \ 0.06699999999999999*dalpha^2*x2* Cos[alpha]\ + \ 0.1339999999999999*dalpha*dtheta*x2* Cos[alpha]\ - \ 1.962*x2*Cos[theta]\ - \ 0.007705*dalpha^2*Sin[alpha]\ - \ 0.01540999999999999*dalpha*dtheta* Sin[alpha]\ + \ 0.1339999999999999*dtheta*dx2* Sin[alpha]\ + \ 0.8599999999999999* \((x1*\((2*dtheta*dx1\ - \ 9.81*Cos[theta])\)\ - \ 1.12815*Sin[theta])\)\ + \ 0.4799999999999999* \((2*dtheta*dx2*x2\ - \ 9.81*x2*Cos[theta]\ - \ 1.12815*Sin[theta])\)\ - \ 4.110389999999999*Sin[theta]\ - \ 0.65727*Sin[alpha\ + \ theta])\)) \)\ - \ 0.05761999999999999* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\))\)) \)/ \((\((0.001407089619199999*Cos[alpha]\ + \ 0.0007563106703199999*x1^2*Cos[alpha]\ + \ 0.0005980130881599998*x2^2*Cos[alpha]\ - \ 0.0004138498879999999*Cos[alpha]^3\ - \ 0.0002224443147999999*x1^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2* Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]* Sin[alpha]^2)\)* \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \))\))\))\)\)\ + \ \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\(( \(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)/ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha]) \))\)*Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\))\))\)\ + \ \((0.3349999999999999*Sec[alpha]* \((\(-\(( \((\(-0.05761999999999999\)* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \)\ + \ 0.06699999999999999*Cos[alpha]* \((\(-0.009781209999999999\)\ + \ 0.8599999999999999* \((1.62509\ + \ 0.8599999999999999* \((0.013225\ + \ x1^2)\)\ + \ 0.2*x2^2\ + \ 0.4799999999999999* \((0.013225\ + \ x2^2)\)\ + \ 0.01540999999999999*Cos[alpha]\ + \ 0.1339999999999999*x2*Sin[alpha])\)) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2* \((\(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)) \)\)\ + \ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\)) \)*\((0.06699999999999999*Cos[alpha]* \((\(-0.0989\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\))\)\ + \ 0.8599999999999999* \((0.4*dtheta*dx2*x2\ + \ 0.06699999999999999*dalpha^2*x2* Cos[alpha]\ + \ 0.1339999999999999*dalpha*dtheta*x2* Cos[alpha]\ - \ 1.962*x2*Cos[theta]\ - \ 0.007705*dalpha^2*Sin[alpha]\ - \ 0.01540999999999999*dalpha*dtheta* Sin[alpha]\ + \ 0.1339999999999999*dtheta*dx2* Sin[alpha]\ + \ 0.8599999999999999* \((x1*\((2*dtheta*dx1\ - \ 9.81*Cos[theta])\)\ - \ 1.12815*Sin[theta])\)\ + \ 0.4799999999999999* \((2*dtheta*dx2*x2\ - \ 9.81*x2*Cos[theta]\ - \ 1.12815*Sin[theta])\)\ - \ 4.110389999999999*Sin[theta]\ - \ 0.65727*Sin[alpha\ + \ theta])\)) \)\ - \ 0.05761999999999999* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\))\))\)/ \((0.001407089619199999*Cos[alpha]\ + \ 0.0007563106703199999*x1^2*Cos[alpha]\ + \ 0.0005980130881599998*x2^2*Cos[alpha]\ - \ 0.0004138498879999999*Cos[alpha]^3\ - \ 0.0002224443147999999*x1^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]*Sin[alpha]^2)\)\ - \ Sec[alpha]* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha]) \)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\), \ \(-\((\(( \(-\((\((\(-0.05761999999999999\)* \((0.0782\ + \ 0.06699999999999999*Cos[alpha])\)* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha]) \)\ + \ 0.06699999999999999*Cos[alpha]* \((\(-0.009781209999999999\)\ + \ 0.8599999999999999* \((1.62509\ + \ 0.8599999999999999* \((0.013225\ + \ x1^2)\)\ + \ 0.2*x2^2\ + \ 0.4799999999999999* \((0.013225\ + \ x2^2)\)\ + \ 0.01540999999999999*Cos[alpha]\ + \ 0.1339999999999999*x2*Sin[alpha])\)) \))\)* \((0.06699999999999999*Cos[alpha]* \((\(-F2\)\ + \ 0.4799999999999999* \((\(-\((dtheta^2*x2)\)\)\ - \ 9.81*Sin[theta])\)\ + \ 0.2*\(( \(-\((dtheta^2*x2)\)\)\ + \ 0.3349999999999999* \((\(-\((dalpha^2*Sin[alpha])\)\)\ - \ 2*dalpha*dtheta*Sin[alpha]\ - \ dtheta^2*Sin[alpha])\)\ - \ 9.81*Sin[theta])\))\)\ - \ 0.04555999999999999* \((dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\)) \)\)\ + \ \((0.06699999999999999* \((0.05519999999999999\ + \ 0.2*\(( 0.115\ + \ 0.3349999999999999*Cos[alpha])\))\)* Cos[alpha]\ - \ 0.04555999999999999* \((0.3349999999999999\ + \ 0.115*Cos[alpha]\ + \ x2*Sin[alpha])\))\)* \((0.06699999999999999*Cos[alpha]* \((\(-0.0989\)* \((\(-F1\)\ + \ 0.8599999999999999* \((\(-\((dtheta^2*x1)\)\)\ - \ 9.81*Sin[theta])\))\)\ + \ 0.8599999999999999* \((0.4*dtheta*dx2*x2\ + \ 0.06699999999999999*dalpha^2*x2* Cos[alpha]\ + \ 0.1339999999999999*dalpha*dtheta*x2* Cos[alpha]\ - \ 1.962*x2*Cos[theta]\ - \ 0.007705*dalpha^2*Sin[alpha]\ - \ 0.01540999999999999*dalpha*dtheta* Sin[alpha]\ + \ 0.1339999999999999*dtheta*dx2* Sin[alpha]\ + \ 0.8599999999999999* \((x1*\((2*dtheta*dx1\ - \ 9.81*Cos[theta])\)\ - \ 1.12815*Sin[theta])\)\ + \ 0.4799999999999999* \((2*dtheta*dx2*x2\ - \ 9.81*x2*Cos[theta]\ - \ 1.12815*Sin[theta])\)\ - \ 4.110389999999999*Sin[theta]\ - \ 0.65727*Sin[alpha\ + \ theta])\)) \)\ - \ 0.05761999999999999* \((0.0782\ + \ 0.06699999999999999*Cos[alpha]) \)*\(( dtheta^2* \((\(-\((x2*Cos[alpha])\)\)\ + \ 0.115*Sin[alpha])\)\ + \ 2*dtheta*dx2*Sin[alpha]\ - \ 9.81*Sin[alpha\ + \ theta])\))\))\)/ \((0.001407089619199999*Cos[alpha]\ + \ 0.0007563106703199999*x1^2*Cos[alpha]\ + \ 0.0005980130881599998*x2^2*Cos[alpha]\ - \ 0.0004138498879999999*Cos[alpha]^3\ - \ 0.0002224443147999999*x1^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]^3\ - \ 0.0001758862023999999*x2^2*Cos[alpha]*Sin[alpha]^2)\)) \)\)}\), ShowStringCharacters->True, NumberMarks->True], InputForm[ Definition[ PendFunc1]], Editable->True, AutoDelete->True]], "Print"] }, Open ]], Cell[TextData[StyleBox[ "The corresponding generated code can be seen as the first function in the \ file pend.cc"]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(!! "\"\)\)], "Input"], Cell["\<\ #include \"Global.h\" #include \"Global.icc\" #include doubleN Global_Tcalcfunc ( const int &n) { int count; doubleN res(4); count = 1; while (count <= n) { res = Global_TPendFunc1 (1., 2., 3., 4., 5., 6., 7., 8., 9., 10.); count = count+1; } return res; } void Global_TGlobalInit () { ; } double Global_TScalarPendFunc1 ( const double &x1, const double &theta, const \ double &x2, const double &alpha, const double &dx1, const double &dtheta, \ const double &dx2, const double &dalpha, const double &F1, const double \ &F2 , const int &k) { return Global_TPendFunc1 (x1, theta, x2, alpha, dx1, dtheta, dx2, dalpha, \ F1 , F2)(k); } doubleN Global_TPendFunc1 ( const double &x1, const double &theta, const \ double &x2, const double &alpha, const double &dx1, const double &dtheta, const double &dx2, const double &dalpha, const double &F1, const double &F2) { double mc_T1; double mc_T2; double mc_T3; double mc_T4; double mc_T5; double mc_T6; double mc_T7; double mc_T8; double mc_T9; double mc_T10; double mc_T11; double mc_T12; double mc_T13; double mc_T14; double mc_T15; double mc_T16; double mc_T17; double mc_T18; double mc_T19; double mc_T20; double mc_T21; double mc_T22; double mc_T23; double mc_T24; double mc_T25; double mc_T26; double mc_T27; double mc_T28; double mc_T29; double mc_T30; double mc_T31; double mc_T32; double mc_T33; double mc_T34; double mc_T35; double mc_T36; double mc_T37; double mc_T38; double mc_T39; double mc_T40; double mc_T41; double mc_T42; double mc_T43; double mc_T44; double mc_T45; double mc_T46; double mc_T47; double mc_T48; double mc_T49; double mc_T50; double mc_T51; double mc_T52; double mc_T53; double mc_T54; double mc_T55; double mc_T56; double mc_T57; double mc_T58; double mc_T59; double mc_T60; double mc_T61; double mc_T62; double mc_T63; double mc_T64; double mc_T65; double mc_T66; double mc_T67; double mc_T68; double mc_T69; double mc_T70; double mc_T71; double mc_T72; double mc_T73; double mc_T74; double mc_T75; double mc_T76; double mc_T77; double mc_T78; double mc_T79; double mc_T80; double mc_T81; double mc_T82; double mc_T83; double mc_T84; double mc_T85; double mc_T86; double mc_T87; double mc_T88; double mc_T89; double mc_T90; double mc_T91; double mc_T92; double mc_T93; double mc_T94; double mc_T95; double mc_T96; double mc_T97; double mc_T98; double mc_T99; double mc_T100; double mc_T101; double mc_T102; double mc_T103; double mc_T104; double mc_T105; double mc_T106; double mc_T107; double mc_T108; double mc_T109; double mc_T110; double mc_T111; double mc_T112; double mc_T113; double mc_T114; double mc_T115; double mc_T116; double mc_T117; double mc_T118; double mc_T119; double mc_T120; double mc_T121; double mc_T122; double mc_T123; double mc_T124; double mc_T125; double mc_T126; double mc_T127; double mc_T128; double mc_T129; double mc_T130; double mc_T131; double mc_T132; doubleN mc_T133(4); mc_T1 = sin(alpha); mc_T2 = (mc_T1*mc_T1); mc_T3 = cos(alpha); mc_T4 = (x2*x2); mc_T5 = -0.0001758862023999999*mc_T4*mc_T3*mc_T2; mc_T6 = (mc_T3*mc_T3*mc_T3); mc_T7 = -0.0001758862023999999*mc_T4*mc_T6; mc_T8 = (x1*x1); mc_T9 = -0.0002224443147999999*mc_T8*mc_T6; mc_T10 = -0.0004138498879999999*mc_T6; mc_T11 = 0.0005980130881599998*mc_T4*mc_T3; mc_T12 = 0.0007563106703199999*mc_T8*mc_T3; mc_T13 = 0.001407089619199999*mc_T3; mc_T14 = mc_T13+mc_T12+mc_T11+mc_T10+mc_T9+mc_T7+mc_T5; mc_T15 = alpha+theta; mc_T16 = sin(mc_T15); mc_T17 = -9.81*mc_T16; mc_T18 = 2*dtheta*dx2*mc_T1; mc_T19 = 0.115*mc_T1; mc_T20 = x2*mc_T3; mc_T21 = -mc_T20; mc_T22 = mc_T21+mc_T19; mc_T23 = (dtheta*dtheta); mc_T24 = mc_T23*mc_T22; mc_T25 = mc_T24+mc_T18+mc_T17; mc_T26 = 0.06699999999999999*mc_T3; mc_T27 = 0.0782+mc_T26; mc_T28 = -0.05761999999999999*mc_T27*mc_T25; mc_T29 = -0.65727*mc_T16; mc_T30 = sin(theta); mc_T31 = -4.110389999999999*mc_T30; mc_T32 = -1.12815*mc_T30; mc_T33 = cos(theta); mc_T34 = -9.81*x2*mc_T33; mc_T35 = 2*dtheta*dx2*x2; mc_T36 = mc_T35+mc_T34+mc_T32; mc_T37 = 0.4799999999999999*mc_T36; mc_T38 = -9.81*mc_T33; mc_T39 = 2*dtheta*dx1; mc_T40 = mc_T39+mc_T38; mc_T41 = x1*mc_T40; mc_T42 = mc_T41+mc_T32; mc_T43 = 0.8599999999999999*mc_T42; mc_T44 = 0.1339999999999999*dtheta*dx2*mc_T1; mc_T45 = -0.01540999999999999*dalpha*dtheta*mc_T1; mc_T46 = (dalpha*dalpha); mc_T47 = -0.007705*mc_T46*mc_T1; mc_T48 = -1.962*x2*mc_T33; mc_T49 = 0.1339999999999999*dalpha*dtheta*x2*mc_T3; mc_T50 = 0.06699999999999999*mc_T46*x2*mc_T3; mc_T51 = 0.4*dtheta*dx2*x2; mc_T52 = mc_T51+mc_T50+mc_T49+mc_T48+mc_T47+mc_T45+mc_T44+mc_T43+mc_T37+ mc_T31+mc_T29; mc_T53 = 0.8599999999999999*mc_T52; mc_T54 = -9.81*mc_T30; mc_T55 = mc_T23*x1; mc_T56 = -mc_T55; mc_T57 = mc_T56+mc_T54; mc_T58 = 0.8599999999999999*mc_T57; mc_T59 = -F1; mc_T60 = mc_T59+mc_T58; mc_T61 = -0.0989*mc_T60; mc_T62 = mc_T61+mc_T53; mc_T63 = 0.06699999999999999*mc_T3*mc_T62; mc_T64 = mc_T63+mc_T28; mc_T65 = x2*mc_T1; mc_T66 = 0.115*mc_T3; mc_T67 = 0.3349999999999999+mc_T66+mc_T65; mc_T68 = -0.04555999999999999*mc_T67; mc_T69 = 0.3349999999999999*mc_T3; mc_T70 = 0.115+mc_T69; mc_T71 = 0.2*mc_T70; mc_T72 = 0.05519999999999999+mc_T71; mc_T73 = 0.06699999999999999*mc_T72*mc_T3; mc_T74 = mc_T73+mc_T68; mc_T75 = mc_T74*mc_T64; mc_T76 = -0.04555999999999999*mc_T25; mc_T77 = mc_T23*mc_T1; mc_T78 = -mc_T77; mc_T79 = -2*dalpha*dtheta*mc_T1; mc_T80 = mc_T46*mc_T1; mc_T81 = -mc_T80; mc_T82 = mc_T81+mc_T79+mc_T78; mc_T83 = 0.3349999999999999*mc_T82; mc_T84 = mc_T23*x2; mc_T85 = -mc_T84; mc_T86 = mc_T85+mc_T83+mc_T54; mc_T87 = 0.2*mc_T86; mc_T88 = mc_T85+mc_T54; mc_T89 = 0.4799999999999999*mc_T88; mc_T90 = -F2; mc_T91 = mc_T90+mc_T89+mc_T87; mc_T92 = 0.06699999999999999*mc_T3*mc_T91; mc_T93 = mc_T92+mc_T76; mc_T94 = 0.1339999999999999*x2*mc_T1; mc_T95 = 0.01540999999999999*mc_T3; mc_T96 = 0.013225+mc_T4; mc_T97 = 0.4799999999999999*mc_T96; mc_T98 = 0.2*mc_T4; mc_T99 = 0.013225+mc_T8; mc_T100 = 0.8599999999999999*mc_T99; mc_T101 = 1.62509+mc_T100+mc_T98+mc_T97+mc_T95+mc_T94; mc_T102 = 0.8599999999999999*mc_T101; mc_T103 = -0.009781209999999999+mc_T102; mc_T104 = 0.06699999999999999*mc_T3*mc_T103; mc_T105 = -0.05761999999999999*mc_T27*mc_T67; mc_T106 = mc_T105+mc_T104; mc_T107 = mc_T106*mc_T93; mc_T108 = -mc_T107; mc_T109 = mc_T108+mc_T75; mc_T110 = mc_T109/mc_T14; mc_T111 = -mc_T110; mc_T112 = 1/cos(alpha); mc_T113 = mc_T112*mc_T25; mc_T114 = -mc_T113; mc_T115 = 0.3349999999999999*mc_T112*mc_T109; mc_T116 = mc_T115/mc_T14; mc_T117 = mc_T93/mc_T74; mc_T118 = mc_T74*mc_T14; mc_T119 = (mc_T3*mc_T3); mc_T120 = 0.004488999999999999*mc_T119; mc_T121 = -0.01526259999999999+mc_T120; mc_T122 = mc_T121*mc_T109; mc_T123 = mc_T122/mc_T118; mc_T124 = -mc_T123; mc_T125 = mc_T124+mc_T117; mc_T126 = mc_T112*mc_T67*mc_T125; mc_T127 = mc_T126+mc_T116+mc_T114; mc_T128 = -mc_T117; mc_T129 = mc_T123+mc_T128; mc_T130 = 0.115*mc_T125; mc_T131 = -1.162790697674418*mc_T60; mc_T132 = mc_T131+mc_T130; mc_T133.SetShape(4 ); mc_T133(1) = mc_T132; mc_T133(2) = mc_T129; mc_T133(3) = mc_T127; mc_T133(4) = mc_T111; return mc_T133; } \ \>", "Print"] }, Open ]], Cell["\<\ The types of the functions in the package do not influence the \ evaluation of these functions.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[PendFunc1[1. , 2. , 3. , 4. , 5. , 6. , 7. , 8. , 9. , 10. ]] \)], "Input"], Cell[BoxData[ \({0.00999999999999801048`\ Second, {58.2355667682955591`, \(-24.7847194092682743`\), 122.847532151604976`, 71.1550033272455095`}}\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["ScalarPendFunc1[1.,2.,3.,4.,5.,6.,7.,8.,9.,10.,1]", "Input"], Cell[BoxData[ \(58.2355667682955591`\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["ScalarPendFunc1[1.,2.,3.,4.,5.,6.,7.,8.,9.,10.,4]", "Input"], Cell[BoxData[ \(71.1550033272455095`\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(calcfunc[10]\)], "Input"], Cell[BoxData[ \({58.2355667682955591`, \(-24.7847194092682743`\), 122.847532151604976`, 71.1550033272455095`}\)], "Output"] }, Open ]], Cell[TextData[{ StyleBox[ "All necessary files for building binaries are now generated. The \ MakeBinary command will build both a standalone application using the code \ specified by the function GenerateMainFileAndFunction used in the compilation \ script in the package definition, and a "], StyleBox["MathLink", FontSlant->"Italic"], StyleBox[" version which is ready to install into "], StyleBox["Mathematica", FontSlant->"Italic"], StyleBox["."] }], "Text"], Cell[BoxData[ \(\(MakeBinary[]; \)\)], "Input"] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Simulation of the Nonlinear Model"]], "Subsubsection"], Cell["\<\ We define f1[t] to be the PendFunc1 with the inputs F1 and F2 set \ to zero. \ \>", "Text"], Cell[BoxData[ \(f1[t_] := Array[\n\t\t \(PendFunc1[x1[t], theta[t], x2[t], alpha[t], dx1[t], dtheta[t], dx2[t], dalpha[t], 0. , 0. ]\)\[LeftDoubleBracket]#1 \[RightDoubleBracket]&, {4}]\)], "Input"], Cell[TextData[StyleBox["The state vector."]], "Text"], Cell[BoxData[ \(x[t_] := {x1[t], theta[t], x2[t], alpha[t], dx1[t], dtheta[t], dx2[t], dalpha[t]}\)], "Input"], Cell["\<\ The dynamic equations. The f1[t] function is the right hand side of \ the last four state variables in x[t]. The first 4 equations are simple \ integrations.\ \>", "Text"], Cell[BoxData[ RowBox[{"deq", ":=", RowBox[{"Thread", "[", RowBox[{ RowBox[{ SuperscriptBox["x", "\[Prime]", MultilineFunction->None], "[", "t", "]"}], "==", \(Join[Take[x[t], \(-4\)], f1[t]]\)}], "]"}]}]], "Input"], Cell["\<\ Initial conditions. Cart 1 is positioned at -1, the seesaw is \ horizontal, cart 2 is at +1 and the pendulum has a small deviation from the \ vertical axis. No initial movements.\ \>", "Text"], Cell[BoxData[ \(initeq := Thread[x[0] == {\(-1\), 0, 1, 0.1, 0, 0, 0, 0}]\)], "Input"], Cell[TextData[StyleBox["Simulate the system."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Timing[dsol = NDSolve[deq \[Union] initeq, Head/@x[t], {t, 0. , 1}]] \)], "Input"], Cell[BoxData[ \(General::"spell1" \( : \ \) "Possible spelling error: new symbol name \"\!\(dsol\)\" is similar to \ existing symbol \"\!\(sol\)\"."\)], "Message"], Cell[BoxData[ RowBox[{"{", RowBox[{\(0.620000000000004547`\ Second\), ",", RowBox[{"{", RowBox[{"{", RowBox[{ RowBox[{"x1", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"theta", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"x2", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"alpha", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dx1", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dtheta", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dx2", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dalpha", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}]}], "}"}], "}"}]}], "}"}]], "Output"] }, Open ]], Cell[TextData[StyleBox[ "Plot the result for the first 4 state variables."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Map[Plot[#1, {t, 0, 1}]&, Partition[Take[Flatten[x[t] /. dsol], 4], 2], {2}]\)], "Input"], Cell[CellGroupData[{ Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 20.7443 20.1632 [ [.21429 .5686 -9 -9 ] [.21429 .5686 9 0 ] [.40476 .5686 -9 -9 ] [.40476 .5686 9 0 ] [.59524 .5686 -9 -9 ] [.59524 .5686 9 0 ] [.78571 .5686 -9 -9 ] [.78571 .5686 9 0 ] [.97619 .5686 -3 -9 ] [.97619 .5686 3 0 ] [.01131 .07702 -36 -4.5 ] [.01131 .07702 0 4.5 ] [.01131 .17783 -30 -4.5 ] [.01131 .17783 0 4.5 ] [.01131 .27865 -36 -4.5 ] [.01131 .27865 0 4.5 ] [.01131 .37946 -30 -4.5 ] [.01131 .37946 0 4.5 ] [.01131 .48028 -36 -4.5 ] [.01131 .48028 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .5811 m .21429 .58735 L s [(0.2)] .21429 .5686 0 1 Mshowa .40476 .5811 m .40476 .58735 L s [(0.4)] .40476 .5686 0 1 Mshowa .59524 .5811 m .59524 .58735 L s [(0.6)] .59524 .5686 0 1 Mshowa .78571 .5811 m .78571 .58735 L s [(0.8)] .78571 .5686 0 1 Mshowa .97619 .5811 m .97619 .58735 L s [(1)] .97619 .5686 0 1 Mshowa .125 Mabswid .07143 .5811 m .07143 .58485 L s .11905 .5811 m .11905 .58485 L s .16667 .5811 m .16667 .58485 L s .2619 .5811 m .2619 .58485 L s .30952 .5811 m .30952 .58485 L s .35714 .5811 m .35714 .58485 L s .45238 .5811 m .45238 .58485 L s .5 .5811 m .5 .58485 L s .54762 .5811 m .54762 .58485 L s .64286 .5811 m .64286 .58485 L s .69048 .5811 m .69048 .58485 L s .7381 .5811 m .7381 .58485 L s .83333 .5811 m .83333 .58485 L s .88095 .5811 m .88095 .58485 L s .92857 .5811 m .92857 .58485 L s .25 Mabswid 0 .5811 m 1 .5811 L s .02381 .07702 m .03006 .07702 L s [(-1.025)] .01131 .07702 1 0 Mshowa .02381 .17783 m .03006 .17783 L s [(-1.02)] .01131 .17783 1 0 Mshowa .02381 .27865 m .03006 .27865 L s [(-1.015)] .01131 .27865 1 0 Mshowa .02381 .37946 m .03006 .37946 L s [(-1.01)] .01131 .37946 1 0 Mshowa .02381 .48028 m .03006 .48028 L s [(-1.005)] .01131 .48028 1 0 Mshowa .125 Mabswid .02381 .09718 m .02756 .09718 L s .02381 .11734 m .02756 .11734 L s .02381 .13751 m .02756 .13751 L s .02381 .15767 m .02756 .15767 L s .02381 .198 m .02756 .198 L s .02381 .21816 m .02756 .21816 L s .02381 .23832 m .02756 .23832 L s .02381 .25849 m .02756 .25849 L s .02381 .29881 m .02756 .29881 L s .02381 .31898 m .02756 .31898 L s .02381 .33914 m .02756 .33914 L s .02381 .3593 m .02756 .3593 L s .02381 .39963 m .02756 .39963 L s .02381 .41979 m .02756 .41979 L s .02381 .43995 m .02756 .43995 L s .02381 .46012 m .02756 .46012 L s .02381 .50044 m .02756 .50044 L s .02381 .52061 m .02756 .52061 L s .02381 .54077 m .02756 .54077 L s .02381 .56093 m .02756 .56093 L s .02381 .05685 m .02756 .05685 L s .02381 .03669 m .02756 .03669 L s .02381 .01653 m .02756 .01653 L s .02381 .60126 m .02756 .60126 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .5811 m .02499 .5811 L .02605 .5811 L .02729 .58111 L .02846 .58111 L .03053 .58113 L .03279 .58116 L .03527 .58119 L .0379 .58124 L .04262 .58135 L .04749 .5815 L .05205 .58168 L .06244 .58217 L .07305 .58283 L .08274 .58356 L .10458 .58561 L .14429 .59044 L .18248 .59569 L .2038 .59847 L .22313 .60065 L .23281 .60156 L .24328 .60236 L .24808 .60266 L .25316 .60292 L .2575 .60309 L .25997 .60317 L .26226 .60323 L .26477 .60327 L .26609 .60329 L .26677 .6033 L .2675 .60331 L .26871 .60332 L .26986 .60332 L .27052 .60332 L .27122 .60332 L .27246 .60331 L .27357 .6033 L .27476 .60329 L .27589 .60327 L .27691 .60325 L .27941 .60319 L .28177 .60312 L .28699 .60288 L .2918 .60258 L .29709 .60214 L .30268 .60156 L .31212 .60028 L .32225 .59845 L .34057 .59378 L .3507 .59035 L Mistroke .36174 .58586 L .38184 .57539 L .40156 .56185 L .42254 .54325 L .44399 .51903 L .46418 .49058 L .50278 .41745 L .52276 .36784 L .54384 .30495 L .58186 .15843 L Mfstroke .58186 .15843 m .61178 0 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgool00`00ooooo`1Uool000Woo`03003ooooo00Ooo`04003ooooo 0002ool00`00ooooo`06ool00`00ooooo`02ool2002?ool00`00ooooo`1Uool000Woo`03003ooooo 00Ooo`04003ooooo0003ool00`00ooooo`05ool00`00ooooo`02ool00`00ooooo`2>ool00`00oooo o`1Uool00003ool00000008000Coo`03003ooooo00Ooo`04003ooooo0004ool01000oooooooo0`00 1Ooo00<00?ooool0S_oo00<00?ooool0IOoo0009ool00`00ooooo`07ool01000ooooo`001Ooo00@0 0?ooool000Ooo`03003ooooo08koo`03003ooooo06Goo`001ooo0`002Ooo00@00?ooool000;oo`04 003ooooo0002ool00`00ooooo`05ool00`00ooooo`2=ool00`00ooooo`1Vool000Woo`03003ooooo 00Soo`8000Coo`8000?oo`@000Coo`8008koo`03003ooooo06Koo`009ooo00<00?ooool0SOoo00<0 0?ooool0I_oo000Wool00`00ooooo`2=ool00`00ooooo`1Vool002Ooo`03003ooooo08goo`03003o oooo06Koo`009ooo00<00?ooool0S?oo00<00?ooool0Iooo000Wool2002=ool00`00ooooo`1Wool0 02Ooo`03003ooooo08coo`03003ooooo06Ooo`009ooo00<00?ooool0S?oo00<00?ooool0Iooo000W ool00`00ooooo`2ool002Ooo`03003ooooo06Goo`03003ooooo08koo`00 9ooo00<00?ooool0I?oo00<00?ooool0Sooo000Wool00`00ooooo`1Sool00`00ooooo`2@ool002Oo o`8006?oo`03003ooooo097oo`009ooo00<00?ooool0HOoo00<00?ooool0T_oo000Wool00`00oooo o`0Vool20004ool00`00ooooo`02ool4000Qool20004ool01@00oooooooo00000_oo00<00?ooool0 8Ooo0P001?oo00<00?ooool00ooo0P008_oo0P001?oo00<00?ooool00ooo0P009ooo10001_oo000W ool00`00ooooo`0Uool01000ooooo`002?oo00<00?ooool08Ooo00@00?ooool000Koo`05003ooooo ool0000Rool01000ooooo`002?oo00@00?ooool0023oo`04003ooooo0008ool01000ooooo`00:?oo 00<00?ooool01Ooo000Wool00`00ooooo`0Uool01000ooooo`002Ooo00<00?ooool08?oo00@00?oo ool000Goo`03003oo`0000@0027oo`04003ooooo0008ool01000ooooo`008?oo00@00?ooool000So o`04003ooooo000Xool00`00ooooo`05ool002Ooo`8002Koo`04003ooooo000:ool00`00ooooo`0O ool01000ooooo`001?oo00@00?ooool000;oo`03003ooooo023oo`04003ooooo0008ool3000Qool0 1000ooooo`002Ooo0P00:Ooo00<00?ooool01Ooo000Wool00`00ooooo`0Uool01000ooooo`002ooo 00<00?ooool07_oo00@00?ooool000?oo`03003ooooo00;oo`03003oo`0002;oo`04003ooooo0008 ool00`00ooooo`0Qool01000ooooo`002?oo00@00?ooool002Soo`03003ooooo00Goo`009ooo00<0 0?ooool09Ooo00@00?ooool000Soo`04003ooooo000Pool01@00ooooo`00ool00P001_oo0P008_oo 00@00?ooool000Soo`03003ooooo027oo`04003ooooo0008ool01000ooooo`009_oo0`001ooo000W ool00`00ooooo`0Vool2000:ool2000Rool200000ooo003oo`08ool00`00ooooo`0Qool2000:ool3 000Qool2000:ool2000Yool00`00ooooo`05ool002Ooo`03003ooooo05Ooo`8009goo`008Oooo`00 000Wool00`00ooooo`08ool>000;ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool0 0`00ooooo`09ool30009ool00`00ooooo`09ool00`00ooooo`0:ool00`00ooooo`09ool00`00oooo o`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00oooo o`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`05ool002Ooo`03 003ooooo01Koo`P000ooo`03003ooooo01ooo`8000coo`03003ooooo02koo`03003ooooo02goo`03 003ooooo02goo`03003ooooo00Goo`009ooo00<00?ooool07_oo1@00:Ooo0`00Yooo000Wool00`00 ooooo`0Sool5000Rool2002Zool002Ooo`8002Woo`/000ooo`P00:coo`009ooo00<00?ooool0"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.162025, -1.03078, 0.004136, 0.000195358}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 0.603319 1.65321 [ [.21429 .59082 -9 -9 ] [.21429 .59082 9 0 ] [.40476 .59082 -9 -9 ] [.40476 .59082 9 0 ] [.59524 .59082 -9 -9 ] [.59524 .59082 9 0 ] [.78571 .59082 -9 -9 ] [.78571 .59082 9 0 ] [.97619 .59082 -3 -9 ] [.97619 .59082 3 0 ] [.01131 .0247 -30 -4.5 ] [.01131 .0247 0 4.5 ] [.01131 .10736 -24 -4.5 ] [.01131 .10736 0 4.5 ] [.01131 .19002 -30 -4.5 ] [.01131 .19002 0 4.5 ] [.01131 .27268 -24 -4.5 ] [.01131 .27268 0 4.5 ] [.01131 .35534 -30 -4.5 ] [.01131 .35534 0 4.5 ] [.01131 .438 -24 -4.5 ] [.01131 .438 0 4.5 ] [.01131 .52066 -30 -4.5 ] [.01131 .52066 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .60332 m .21429 .60957 L s [(0.2)] .21429 .59082 0 1 Mshowa .40476 .60332 m .40476 .60957 L s [(0.4)] .40476 .59082 0 1 Mshowa .59524 .60332 m .59524 .60957 L s [(0.6)] .59524 .59082 0 1 Mshowa .78571 .60332 m .78571 .60957 L s [(0.8)] .78571 .59082 0 1 Mshowa .97619 .60332 m .97619 .60957 L s [(1)] .97619 .59082 0 1 Mshowa .125 Mabswid .07143 .60332 m .07143 .60707 L s .11905 .60332 m .11905 .60707 L s .16667 .60332 m .16667 .60707 L s .2619 .60332 m .2619 .60707 L s .30952 .60332 m .30952 .60707 L s .35714 .60332 m .35714 .60707 L s .45238 .60332 m .45238 .60707 L s .5 .60332 m .5 .60707 L s .54762 .60332 m .54762 .60707 L s .64286 .60332 m .64286 .60707 L s .69048 .60332 m .69048 .60707 L s .7381 .60332 m .7381 .60707 L s .83333 .60332 m .83333 .60707 L s .88095 .60332 m .88095 .60707 L s .92857 .60332 m .92857 .60707 L s .25 Mabswid 0 .60332 m 1 .60332 L s .02381 .0247 m .03006 .0247 L s [(-0.35)] .01131 .0247 1 0 Mshowa .02381 .10736 m .03006 .10736 L s [(-0.3)] .01131 .10736 1 0 Mshowa .02381 .19002 m .03006 .19002 L s [(-0.25)] .01131 .19002 1 0 Mshowa .02381 .27268 m .03006 .27268 L s [(-0.2)] .01131 .27268 1 0 Mshowa .02381 .35534 m .03006 .35534 L s [(-0.15)] .01131 .35534 1 0 Mshowa .02381 .438 m .03006 .438 L s [(-0.1)] .01131 .438 1 0 Mshowa .02381 .52066 m .03006 .52066 L s [(-0.05)] .01131 .52066 1 0 Mshowa .125 Mabswid .02381 .04123 m .02756 .04123 L s .02381 .05776 m .02756 .05776 L s .02381 .07429 m .02756 .07429 L s .02381 .09082 m .02756 .09082 L s .02381 .12389 m .02756 .12389 L s .02381 .14042 m .02756 .14042 L s .02381 .15695 m .02756 .15695 L s .02381 .17348 m .02756 .17348 L s .02381 .20655 m .02756 .20655 L s .02381 .22308 m .02756 .22308 L s .02381 .23961 m .02756 .23961 L s .02381 .25615 m .02756 .25615 L s .02381 .28921 m .02756 .28921 L s .02381 .30574 m .02756 .30574 L s .02381 .32227 m .02756 .32227 L s .02381 .33881 m .02756 .33881 L s .02381 .37187 m .02756 .37187 L s .02381 .3884 m .02756 .3884 L s .02381 .40493 m .02756 .40493 L s .02381 .42147 m .02756 .42147 L s .02381 .45453 m .02756 .45453 L s .02381 .47106 m .02756 .47106 L s .02381 .48759 m .02756 .48759 L s .02381 .50413 m .02756 .50413 L s .02381 .53719 m .02756 .53719 L s .02381 .55372 m .02756 .55372 L s .02381 .57025 m .02756 .57025 L s .02381 .58679 m .02756 .58679 L s .02381 .00816 m .02756 .00816 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .60332 m .02499 .60332 L .02605 .60332 L .02729 .60331 L .02846 .60331 L .03053 .6033 L .03279 .60328 L .03527 .60325 L .0379 .60322 L .04262 .60313 L .04749 .60303 L .05205 .6029 L .06244 .60254 L .07305 .60205 L .08274 .60151 L .10458 .59991 L .12357 .59811 L .14429 .59569 L .18493 .58958 L .22406 .58189 L .26565 .5716 L .30571 .55938 L .34426 .54514 L .38527 .5268 L .42475 .50541 L .46273 .48078 L .50315 .44971 L .54206 .41509 L .58342 .37425 L .62326 .33382 L .66159 .29878 L .70238 .26883 L .74164 .24363 L .77939 .2183 L .8196 .18741 L .85828 .15272 L .89942 .11006 L .93905 .06336 L .97619 .01472 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgooo`03003ooooo00[oo`008Ooo00<00?ooool0k_oo00<00?ooool02ooo000Qool00`00ooooo`3] ool00`00ooooo`0goo`03003ooooo00coo`008Ooo0P00kOoo00<00?oo ool03Ooo000Qool00`00ooooo`3[ool00`00ooooo`0>ool0027oo`03003ooooo0>[oo`03003ooooo 00ooo`008Ooo00<00?ooool0jOoo00<00?ooool04?oo000Qool2003Yool00`00ooooo`0Aool0027o o`03003ooooo0>Ooo`03003ooooo01;oo`008Ooo00<00?ooool0i_oo00<00?ooool04ooo000Qool0 0`00ooooo`3Vool00`00ooooo`0Cool0027oo`800>Koo`03003ooooo01Coo`008Ooo00<00?ooool0 i?oo00<00?ooool05Ooo000Qool00`00ooooo`3Sool00`00ooooo`0Fool000koo`8000Coo`03003o oooo00?oo`8000Goo`03003ooooo0>;oo`03003ooooo01Ooo`003Ooo00@00?ooool000Soo`04003o oooo0004ool00`00ooooo`3Qool00`00ooooo`0Hool000goo`04003ooooo000;ool00`00ooooo`02 ool2003Qool00`00ooooo`0Iool000Ooo`@000;oo`04003ooooo0009ool20005ool00`00ooooo`3O ool00`00ooooo`0Jool000goo`04003ooooo000;ool00`00ooooo`02ool00`00ooooo`3Nool00`00 ooooo`0Kool000goo`04003ooooo0008ool01000ooooo`001?oo00<00?ooool0gOoo00<00?ooool0 7?oo000>ool2000:ool20005ool2003Mool00`00ooooo`0Mool0027oo`03003ooooo0=_oo`03003o oooo01koo`008Ooo00<00?ooool0fooo00<00?ooool07_oo000Qool00`00ooooo`3Jool00`00oooo o`0Oool0027oo`800=[oo`03003ooooo023oo`008Ooo00<00?ooool0f?oo00<00?ooool08Ooo000Q ool00`00ooooo`3Gool00`00ooooo`0Rool0027oo`03003ooooo0=Koo`03003ooooo02?oo`008Ooo 00<00?ooool0eOoo00<00?ooool09?oo000Qool2003Eool00`00ooooo`0Uool0027oo`03003ooooo 0=?oo`03003ooooo02Koo`008Ooo00<00?ooool0dOoo0P00:Ooo000Qool00`00ooooo`3@ool00`00 ooooo`0Yool0027oo`800=3oo`03003ooooo02[oo`008Ooo00<00?ooool0c_oo00<00?ooool0:ooo 000Qool00`00ooooo`3=ool00`00ooooo`0/ool000Soo`8000Coo`03003ooooo00;oo`@000;oo`<0 00Goo`03003ooooo0ooo000Qool2002oool00`00ooooo`0kool0027oo`03 003ooooo0;coo`8003koo`008Ooo00<00?ooool0^ooo00<00?ooool0?_oo000Qool00`00ooooo`2j ool00`00ooooo`0oool0027oo`800;Woo`8004;oo`008Ooo00<00?ooool0]ooo00<00?ooool0@_oo 000Qool00`00ooooo`2eool20015ool0027oo`03003ooooo0;Coo`03003ooooo04Goo`008Ooo0P00 /ooo0P00B?oo000Qool00`00ooooo`2aool00`00ooooo`18ool0027oo`03003ooooo0;3oo`03003o oooo04Woo`003_oo0P001?oo00<00?ooool00_oo10001?oo00<00?ooool0[_oo0P00C?oo000=ool0 1000ooooo`002?oo00<00?ooool01Ooo00<00?ooool0[Ooo00<00?ooool0C?oo000=ool01000oooo o`002Ooo00<00?ooool01?oo0P00[?oo0P00Cooo0007ool40002ool01000ooooo`002_oo00<00?oo ool00ooo00<00?ooool0Z_oo00<00?ooool0Cooo000=ool01000ooooo`002ooo00<00?ooool00_oo 00<00?ooool0Z?oo0P00D_oo000=ool01000ooooo`002?oo00@00?ooool000Coo`03003ooooo0:Oo o`03003ooooo05;oo`003_oo0P002_oo0P001Ooo0P00Yooo00<00?ooool0Dooo000Qool00`00oooo o`2Tool2001Fool0027oo`03003ooooo0:?oo`03003ooooo05Koo`008Ooo00<00?ooool0X_oo00<0 0?ooool0Eooo000Qool2002Rool00`00ooooo`1Hool0027oo`03003ooooo0:3oo`03003ooooo05Wo o`008Ooo00<00?ooool0W_oo0P00G?oo000Qool00`00ooooo`2Mool00`00ooooo`1Lool0027oo`80 09goo`03003ooooo05goo`008Ooo00<00?ooool0Vooo00<00?ooool0G_oo000Qool00`00ooooo`2J ool00`00ooooo`1Oool0027oo`03003ooooo09Woo`03003ooooo063oo`008Ooo00<00?ooool0V?oo 00<00?ooool0HOoo000Qool2002Hool00`00ooooo`1Rool0027oo`03003ooooo09Koo`03003ooooo 06?oo`008Ooo00<00?ooool0UOoo00<00?ooool0I?oo0008ool20004ool00`00ooooo`02ool40002 ool30005ool00`00ooooo`2Dool00`00ooooo`1Uool000Ooo`04003ooooo000:ool00`00ooooo`04 ool00`00ooooo`02ool2002Dool00`00ooooo`1Vool000Ooo`04003ooooo000:ool00`00ooooo`04 ool00`00ooooo`02ool00`00ooooo`2Bool00`00ooooo`1Wool00003ool00000008000;oo`04003o oooo000:ool01000oooooooo0`001Ooo00<00?ooool0TOoo00<00?ooool0J?oo0007ool01000oooo o`002_oo00D00?ooooooo`0000Ooo`03003ooooo093oo`03003ooooo06Woo`001ooo00@00?ooool0 00Soo`<000?oo`03003ooooo00Goo`80093oo`03003ooooo06[oo`002?oo0P002ooo00@00?oooooo o`@000Coo`03003ooooo08koo`03003ooooo06_oo`008Ooo00<00?ooool0SOoo00<00?ooool0K?oo 000Qool00`00ooooo`2"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.134313, -0.38389, 0.00403944, 0.00232704}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 -2.29209 2.82521 [ [.21429 .52062 -9 -9 ] [.21429 .52062 9 0 ] [.40476 .52062 -9 -9 ] [.40476 .52062 9 0 ] [.59524 .52062 -9 -9 ] [.59524 .52062 9 0 ] [.78571 .52062 -9 -9 ] [.78571 .52062 9 0 ] [.97619 .52062 -3 -9 ] [.97619 .52062 3 0 ] [.01131 .10934 -24 -4.5 ] [.01131 .10934 0 4.5 ] [.01131 .2506 -18 -4.5 ] [.01131 .2506 0 4.5 ] [.01131 .39186 -24 -4.5 ] [.01131 .39186 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .53312 m .21429 .53937 L s [(0.2)] .21429 .52062 0 1 Mshowa .40476 .53312 m .40476 .53937 L s [(0.4)] .40476 .52062 0 1 Mshowa .59524 .53312 m .59524 .53937 L s [(0.6)] .59524 .52062 0 1 Mshowa .78571 .53312 m .78571 .53937 L s [(0.8)] .78571 .52062 0 1 Mshowa .97619 .53312 m .97619 .53937 L s [(1)] .97619 .52062 0 1 Mshowa .125 Mabswid .07143 .53312 m .07143 .53687 L s .11905 .53312 m .11905 .53687 L s .16667 .53312 m .16667 .53687 L s .2619 .53312 m .2619 .53687 L s .30952 .53312 m .30952 .53687 L s .35714 .53312 m .35714 .53687 L s .45238 .53312 m .45238 .53687 L s .5 .53312 m .5 .53687 L s .54762 .53312 m .54762 .53687 L s .64286 .53312 m .64286 .53687 L s .69048 .53312 m .69048 .53687 L s .7381 .53312 m .7381 .53687 L s .83333 .53312 m .83333 .53687 L s .88095 .53312 m .88095 .53687 L s .92857 .53312 m .92857 .53687 L s .25 Mabswid 0 .53312 m 1 .53312 L s .02381 .10934 m .03006 .10934 L s [(0.85)] .01131 .10934 1 0 Mshowa .02381 .2506 m .03006 .2506 L s [(0.9)] .01131 .2506 1 0 Mshowa .02381 .39186 m .03006 .39186 L s [(0.95)] .01131 .39186 1 0 Mshowa .125 Mabswid .02381 .13759 m .02756 .13759 L s .02381 .16584 m .02756 .16584 L s .02381 .19409 m .02756 .19409 L s .02381 .22235 m .02756 .22235 L s .02381 .27885 m .02756 .27885 L s .02381 .3071 m .02756 .3071 L s .02381 .33535 m .02756 .33535 L s .02381 .36361 m .02756 .36361 L s .02381 .42011 m .02756 .42011 L s .02381 .44836 m .02756 .44836 L s .02381 .47661 m .02756 .47661 L s .02381 .50487 m .02756 .50487 L s .02381 .08109 m .02756 .08109 L s .02381 .05283 m .02756 .05283 L s .02381 .02458 m .02756 .02458 L s .02381 .56137 m .02756 .56137 L s .02381 .58962 m .02756 .58962 L s .02381 .61788 m .02756 .61788 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .53312 m .02499 .53312 L .02605 .53312 L .02729 .53311 L .02846 .53311 L .03053 .53309 L .03279 .53307 L .03527 .53304 L .0379 .53301 L .04262 .53292 L .04749 .5328 L .05205 .53267 L .06244 .53227 L .07305 .53173 L .08274 .53112 L .10458 .52929 L .12357 .52715 L .14429 .52418 L .16561 .52033 L .18493 .51605 L .22406 .50469 L .26413 .4885 L .30268 .46758 L .34368 .43873 L .38317 .40447 L .42114 .367 L .46157 .32644 L .4802 .30954 L .50048 .2941 L .51151 .28753 L .51636 .28515 L .52172 .28292 L .52675 .28125 L .53147 .28007 L .53407 .2796 L .53646 .27927 L .53771 .27915 L .53908 .27905 L .53977 .27901 L .54051 .27898 L .5412 .27896 L .54184 .27896 L .54303 .27897 L .54415 .279 L .54537 .27908 L .54669 .27919 L .54806 .27935 L .54937 .27954 L .55182 .28 L .5541 .28056 L Mistroke .55622 .28119 L .56102 .28303 L .56631 .28575 L .57109 .28886 L .58182 .29821 L .59187 .31014 L .6011 .32394 L .62194 .36509 L .66148 .47082 L .68138 .52386 L .6995 .56284 L .70955 .57914 L .71905 .59072 L .72426 .59547 L .72908 .59885 L .7316 .60023 L .73437 .60145 L .73576 .60195 L .73726 .6024 L .73869 .60274 L .73998 .60299 L .74122 .60316 L .74238 .60326 L .74362 .60331 L .74431 .60332 L .74495 .60331 L .74602 .60325 L .7472 .60314 L .74843 .60297 L .74957 .60276 L .75222 .60208 L .75463 .60125 L .76006 .5986 L .76525 .59512 L .7709 .59032 L .78117 .57903 L .80092 .54896 L .82192 .5067 L .85964 .41027 L .89981 .28695 L .93846 .15444 L .97619 .01472 L Mfstroke % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgool001_oo`03003ooooo0?7oo`03003ooooo 00koo`006ooo00<00?ooool0lOoo00<00?ooool03_oo000Kool00`00ooooo`3`ool00`00ooooo`0? ool001_oo`03003ooooo0?3oo`03003ooooo00ooo`006ooo00<00?ooool0l?oo00<00?ooool03ooo 000Kool00`00ooooo`3_ool00`00ooooo`0@ool001_oo`800?3oo`03003ooooo013oo`006ooo00<0 0?ooool0kooo00<00?ooool04?oo000Kool00`00ooooo`3_ool00`00ooooo`0@ool001_oo`03003o oooo0>koo`03003ooooo017oo`006ooo00<00?ooool0k_oo00<00?ooool04Ooo000Kool00`00oooo o`3^ool00`00ooooo`0Aool001_oo`03003ooooo0>goo`03003ooooo01;oo`006ooo0P00k_oo00<0 0?ooool04_oo000Kool00`00ooooo`3]ool00`00ooooo`0Bool001_oo`03003ooooo0>goo`03003o oooo01;oo`006ooo00<00?ooool0k?oo00<00?ooool04ooo000Kool00`00ooooo`3/ool00`00oooo o`0Cool001_oo`03003ooooo0>coo`03003ooooo01?oo`006ooo00<00?ooool0jooo00<00?ooool0 5?oo000Kool00`00ooooo`3[ool00`00ooooo`0Dool001_oo`800>coo`03003ooooo01Coo`006ooo 00<00?ooool0jooo00<00?ooool05?oo000Kool00`00ooooo`3Zool00`00ooooo`0Eool001_oo`03 003ooooo0>[oo`03003ooooo01Goo`006ooo00<00?ooool0j_oo00<00?ooool05Ooo000Kool00`00 ooooo`3Yool00`00ooooo`0Fool000Soo`8000Coo`03003ooooo00;oo`<000Goo`03003ooooo0>Wo o`03003ooooo01Koo`001ooo00@00?ooool000_oo`03003ooooo00;oo`800>[oo`03003ooooo01Ko o`001ooo00@00?ooool000_oo`03003ooooo00;oo`03003ooooo0>Woo`03003ooooo01Koo`001ooo 00@00?ooool000Woo`<000Coo`03003ooooo0>Soo`03003ooooo01Ooo`001ooo00@00?ooool000So o`04003ooooo0004ool00`00ooooo`3Xool00`00ooooo`0Gool000Ooo`04003ooooo0008ool01000 ooooo`001?oo00<00?ooool0j?oo00<00?ooool05ooo0008ool2000:ool20005ool00`00ooooo`3W ool00`00ooooo`0Hool001_oo`03003ooooo0>Ooo`03003ooooo01Soo`006ooo00<00?ooool0iooo 00<00?ooool06?oo000Kool20025ool7001Lool00`00ooooo`0Hool001_oo`03003ooooo087oo`<0 00Koo`<005Woo`03003ooooo01Woo`006ooo00<00?ooool0Oooo0P003?oo00<00?ooool0E_oo00<0 0?ooool06Ooo000Kool00`00ooooo`1mool2000?ool00`00ooooo`1Eool00`00ooooo`0Iool001_o o`03003ooooo07coo`03003ooooo013oo`8005Coo`03003ooooo01[oo`006ooo00<00?ooool0N_oo 0P005Ooo00<00?ooool0DOoo00<00?ooool06_oo000Kool00`00ooooo`1iool00`00ooooo`0Fool0 0`00ooooo`1@ool00`00ooooo`0Jool001_oo`03003ooooo07Ooo`8001[oo`03003ooooo04koo`03 003ooooo01_oo`006ooo0P00Mooo00<00?ooool06ooo00<00?ooool0COoo00<00?ooool06ooo000K ool00`00ooooo`1eool00`00ooooo`0Lool00`00ooooo`1=ool00`00ooooo`0Kool001_oo`03003o oooo07Coo`03003ooooo01koo`03003ooooo04_oo`03003ooooo01coo`006ooo00<00?ooool0Looo 00<00?ooool07ooo00<00?ooool0Booo00<00?ooool07?oo000Kool00`00ooooo`1bool00`00oooo o`0Qool00`00ooooo`1:ool00`00ooooo`0Lool001_oo`03003ooooo077oo`03003ooooo02?oo`03 003ooooo04Soo`03003ooooo01goo`006ooo00<00?ooool0L?oo00<00?ooool09?oo00<00?ooool0 B?oo00<00?ooool07Ooo000Kool2001`ool00`00ooooo`0Vool00`00ooooo`17ool00`00ooooo`0M ool001_oo`03003ooooo06koo`03003ooooo02Ooo`03003ooooo04Koo`03003ooooo01koo`006ooo 00<00?ooool0KOoo00<00?ooool0:Ooo00<00?ooool0AOoo00<00?ooool07_oo000Kool00`00oooo o`1/ool00`00ooooo`0Zool00`00ooooo`15ool00`00ooooo`0Nool001_oo`03003ooooo06_oo`03 003ooooo02coo`03003ooooo04?oo`03003ooooo01ooo`006ooo00<00?ooool0J_oo00<00?ooool0 ;Ooo00<00?ooool0@ooo00<00?ooool07ooo000Kool00`00ooooo`1Yool00`00ooooo`0_ool00`00 ooooo`12ool00`00ooooo`0Oool001_oo`03003ooooo06Soo`03003ooooo033oo`03003ooooo047o o`03003ooooo023oo`006ooo0P00J?oo00<00?ooool0<_oo00<00?ooool0@?oo00<00?ooool08?oo 000Kool00`00ooooo`1Vool00`00ooooo`0cool00`00ooooo`10ool00`00ooooo`0Pool001_oo`03 003ooooo06Goo`03003ooooo03Goo`03003ooooo03koo`03003ooooo027oo`006ooo00<00?ooool0 I?oo00<00?ooool0=_oo00<00?ooool0?_oo00<00?ooool08Ooo000Kool00`00ooooo`1Sool00`00 ooooo`0gool00`00ooooo`0nool00`00ooooo`0Qool001_oo`03003ooooo067oo`8003_oo`03003o oooo03coo`03003ooooo02;oo`000_oo0P001?oo00<00?ooool00_oo0`000ooo0`001Ooo00<00?oo ool0H?oo00<00?ooool0>ooo00<00?ooool0??oo00<00?ooool08_oo00001Ooo003ooooo00002ooo 00<00?ooool00ooo00<00?ooool00_oo0P00H?oo00<00?ooool0??oo00<00?ooool0??oo00<00?oo ool08_oo00001Ooo003ooooo00002ooo00<00?ooool00ooo00<00?ooool00_oo00<00?ooool0G_oo 00<00?ooool0?_oo00<00?ooool0>_oo00<00?ooool08ooo00001Ooo003ooooo00002Ooo0`000_oo 0`001Ooo00<00?ooool0GOoo00<00?ooool0?ooo00<00?ooool0>_oo00<00?ooool08ooo00001Ooo 003ooooo00002?oo00@00?ooool000;oo`03003ooooo00Goo`03003ooooo05coo`03003ooooo047o o`03003ooooo03Woo`03003ooooo02?oo`0000Goo`00ooooo`0000Soo`04003ooooo0002ool00`00 ooooo`05ool00`00ooooo`1Kool00`00ooooo`12ool00`00ooooo`0hool00`00ooooo`0Tool000;o o`8000[oo`8000?oo`@000Coo`03003ooooo05[oo`03003ooooo04?oo`03003ooooo03Soo`03003o oooo02Coo`006ooo00<00?ooool0FOoo00<00?ooool0AOoo00<00?ooool0=ooo00<00?ooool09?oo 000Kool00`00ooooo`1Hool00`00ooooo`16ool00`00ooooo`0fool00`00ooooo`0Uool001_oo`80 05Soo`03003ooooo04Ooo`03003ooooo03Koo`03003ooooo02Goo`006ooo00<00?ooool0E_oo00<0 0?ooool0BOoo00<00?ooool0=?oo00<00?ooool09_oo000Kool00`00ooooo`1Eool00`00ooooo`1: ool00`00ooooo`0dool00`00ooooo`0Vool001_oo`03003ooooo05Coo`03003ooooo04_oo`03003o oooo03Coo`03003ooooo02Koo`006ooo00<00?ooool0Dooo00<00?ooool0COoo00<00?ooool0<_oo 00<00?ooool09ooo000Kool00`00ooooo`1Bool00`00ooooo`1>ool00`00ooooo`0bool00`00oooo o`0Wool001_oo`03003ooooo053oo`80057oo`03003ooooo03;oo`03003ooooo02Ooo`006ooo0P00 D?oo00<00?ooool0D_oo00<00?ooool0Ooo0`00KOoo00<00?ooool0 9ooo00<00?ooool0;?oo000Kool00`00ooooo`0gool2001`ool00`00ooooo`0Vool00`00ooooo`0] ool001_oo`03003ooooo02Soo`8000Coo`03003ooooo00;oo`@002Coo`8000Coo`03003ooooo00Co o`03003ooooo02?oo`8000Coo`03003ooooo00?oo`8000goo`03003ooooo01Coo`8000Coo`03003o oooo00?oo`8000Coo`03003ooooo02?oo`@000Koo`006ooo0P00:?oo00@00?ooool000Koo`<002Ko o`04003ooooo000:ool00`00ooooo`0Rool01000ooooo`002?oo00@00?ooool000goo`03003ooooo 01;oo`04003ooooo0008ool01000ooooo`000_oo00<00?ooool09_oo00<00?ooool01Ooo000Kool0 0`00ooooo`0Wool01000ooooo`000_oo10000ooo00<00?ooool08ooo00@00?ooool000Ooo`D002?o o`04003ooooo0008ool01000ooooo`003Ooo00<00?ooool04_oo00@00?ooool000Soo`04003ooooo 0002ool00`00ooooo`0Vool00`00ooooo`05ool001_oo`03003ooooo02Ooo`03003ooooo00<000So o`03003ooooo02;oo`04003ooooo0007ool01000ooooo`009?oo00@00?ooool000Soo`<000ooo`03 003ooooo017oo`04003ooooo0009ool20003ool00`00ooooo`0Vool00`00ooooo`05ool001_oo`03 003ooooo02Koo`D000_oo`03003ooooo027oo`04003ooooo0008ool00`00ool0000Tool01000oooo o`002?oo00<00?ooool03ooo00<00?ooool04Ooo00@00?ooool000Soo`06003ooooo003oo`00:Ooo 00<00?ooool01Ooo000Kool00`00ooooo`0Pool600001Ooo003ooooo00002?oo00@00?ooool002?o o`04003ooooo0009ool2000Tool01000ooooo`002?oo00<00?ooool04?oo00<00?ooool04?oo00@0 0?ooool000Soo`06003ooooo003oo`009ooo0`001ooo000Kool00`00ooooo`0Jool60008ool2000: ool2000Uool2000;ool00`00ooooo`0Sool2000:ool3000?ool00`00ooooo`0Aool2000:ool20000 0ooo003oo`0Yool00`00ooooo`05ool001_oo`03003ooooo01Goo`D009;oo`03003ooooo023oo`03 003ooooo033oo`006ooo00<00?ooool01_oo3`00V?oo00<00?ooool07_oo00<00?ooool0?oo000Kool00`00ooooo`2cool00`00ooooo`0@ool00`00ooooo`0i ool001_oo`03003ooooo0;Coo`03003ooooo00koo`03003ooooo03[oo`006ooo00<00?ooool0]Ooo 00<00?ooool03Ooo00<00?ooool0>_oo000Kool2002gool00`00ooooo`0:ool2000mool001_oo`03 003ooooo0;Ooo`03003ooooo00Soo`03003ooooo03goo`006ooo00<00?ooool0^?oo0P001_oo0P00 @?oo000Kool00`00ooooo`2jool60012ool001_oo`03003ooooo0?ooo`?oo`006ooo00<00?ooool0 oooo0ooo000Kool00`00ooooo`3oool3ool001_oo`800?ooo`Coo`00oooo8Ooo003ooolQool00?oo ob7oo`00oooo8Ooo003ooolQool00?ooob7oo`00\ \>"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.107864, 0.802957, 0.00394728, 0.00133063}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 0.0147151 0.100063 [ [.21429 .00222 -9 -9 ] [.21429 .00222 9 0 ] [.40476 .00222 -9 -9 ] [.40476 .00222 9 0 ] [.59524 .00222 -9 -9 ] [.59524 .00222 9 0 ] [.78571 .00222 -9 -9 ] [.78571 .00222 9 0 ] [.97619 .00222 -3 -9 ] [.97619 .00222 3 0 ] [.01131 .11478 -6 -4.5 ] [.01131 .11478 0 4.5 ] [.01131 .21484 -6 -4.5 ] [.01131 .21484 0 4.5 ] [.01131 .3149 -6 -4.5 ] [.01131 .3149 0 4.5 ] [.01131 .41497 -6 -4.5 ] [.01131 .41497 0 4.5 ] [.01131 .51503 -6 -4.5 ] [.01131 .51503 0 4.5 ] [.01131 .61509 -6 -4.5 ] [.01131 .61509 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .01472 m .21429 .02097 L s [(0.2)] .21429 .00222 0 1 Mshowa .40476 .01472 m .40476 .02097 L s [(0.4)] .40476 .00222 0 1 Mshowa .59524 .01472 m .59524 .02097 L s [(0.6)] .59524 .00222 0 1 Mshowa .78571 .01472 m .78571 .02097 L s [(0.8)] .78571 .00222 0 1 Mshowa .97619 .01472 m .97619 .02097 L s [(1)] .97619 .00222 0 1 Mshowa .125 Mabswid .07143 .01472 m .07143 .01847 L s .11905 .01472 m .11905 .01847 L s .16667 .01472 m .16667 .01847 L s .2619 .01472 m .2619 .01847 L s .30952 .01472 m .30952 .01847 L s .35714 .01472 m .35714 .01847 L s .45238 .01472 m .45238 .01847 L s .5 .01472 m .5 .01847 L s .54762 .01472 m .54762 .01847 L s .64286 .01472 m .64286 .01847 L s .69048 .01472 m .69048 .01847 L s .7381 .01472 m .7381 .01847 L s .83333 .01472 m .83333 .01847 L s .88095 .01472 m .88095 .01847 L s .92857 .01472 m .92857 .01847 L s .25 Mabswid 0 .01472 m 1 .01472 L s .02381 .11478 m .03006 .11478 L s [(1)] .01131 .11478 1 0 Mshowa .02381 .21484 m .03006 .21484 L s [(2)] .01131 .21484 1 0 Mshowa .02381 .3149 m .03006 .3149 L s [(3)] .01131 .3149 1 0 Mshowa .02381 .41497 m .03006 .41497 L s [(4)] .01131 .41497 1 0 Mshowa .02381 .51503 m .03006 .51503 L s [(5)] .01131 .51503 1 0 Mshowa .02381 .61509 m .03006 .61509 L s [(6)] .01131 .61509 1 0 Mshowa .125 Mabswid .02381 .03473 m .02756 .03473 L s .02381 .05474 m .02756 .05474 L s .02381 .07475 m .02756 .07475 L s .02381 .09477 m .02756 .09477 L s .02381 .13479 m .02756 .13479 L s .02381 .1548 m .02756 .1548 L s .02381 .17482 m .02756 .17482 L s .02381 .19483 m .02756 .19483 L s .02381 .23485 m .02756 .23485 L s .02381 .25487 m .02756 .25487 L s .02381 .27488 m .02756 .27488 L s .02381 .29489 m .02756 .29489 L s .02381 .33492 m .02756 .33492 L s .02381 .35493 m .02756 .35493 L s .02381 .37494 m .02756 .37494 L s .02381 .39495 m .02756 .39495 L s .02381 .43498 m .02756 .43498 L s .02381 .45499 m .02756 .45499 L s .02381 .475 m .02756 .475 L s .02381 .49502 m .02756 .49502 L s .02381 .53504 m .02756 .53504 L s .02381 .55505 m .02756 .55505 L s .02381 .57507 m .02756 .57507 L s .02381 .59508 m .02756 .59508 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .02472 m .02499 .02472 L .02605 .02472 L .02729 .02472 L .02846 .02473 L .03053 .02473 L .03279 .02474 L .03527 .02476 L .0379 .02478 L .04262 .02482 L .04749 .02487 L .05205 .02494 L .06244 .02513 L .07305 .02539 L .08274 .02568 L .10458 .02654 L .12357 .02754 L .14429 .02891 L .18493 .03255 L .22406 .03749 L .26565 .04467 L .30571 .05395 L .34426 .06559 L .38527 .08153 L .42475 .10091 L .46273 .12377 L .50315 .15309 L .54206 .18677 L .58342 .22942 L .62326 .27825 L .66159 .33109 L .70238 .38642 L .74164 .43291 L .77939 .47101 L .8196 .50581 L .85828 .53479 L .89942 .56162 L .93905 .58427 L .97619 .60332 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg ool003coo`04003ooooo0009ool00`00ooooo`0Sool01000ooooo`001ooo1@008ooo00@00?ooool0 00Soo`04003ooooo000Sool01000ooooo`002?oo00@00?ooool002[oo`03003ooooo00koo`00??oo 00@00?ooool000[oo`03003ooooo02;oo`04003ooooo0007ool01000ooooo`009?oo00@00?ooool0 00Soo`<002Coo`04003ooooo0009ool2000[ool00`00ooooo`0>ool003coo`04003ooooo000;ool0 0`00ooooo`0Qool01000ooooo`002?oo00<00?oo00009?oo00@00?ooool000Soo`03003ooooo02Co o`04003ooooo0008ool01000ooooo`00:_oo00<00?ooool03_oo000Bool00`00ooooo`0Wool01000 ooooo`002?oo00@00?ooool002?oo`04003ooooo0009ool2000Tool01000ooooo`002?oo00<00?oo ool09?oo00@00?ooool000Soo`04003ooooo000Xool3000@ool001;oo`03003ooooo02Soo`8000[o o`8002Goo`8000_oo`03003ooooo02?oo`8000[oo`<002Coo`8000[oo`8002_oo`03003ooooo00ko o`004_oo00<00?ooool0oooo3?oo000Bool00`00ooooo`3ooolool001;ooad00?7oo`004_oo00<00?ooool06_oo2000 jOoo000Bool2000Sool;003Nool001;oo`03003ooooo02goo`P00=Koo`004_oo00<00?ooool0=Ooo 1P00d?oo000Bool00`00ooooo`0kool5003;ool001;oo`03003ooooo043oo`H00ooo000Bool00`00ooooo`3>ool2000kool001;oo`03003o oooo0=3oo`03003ooooo03Soo`004_oo00<00?ooool0dOoo00<00?ooool0=ooo0009ool30006ool0 0`00ooooo`3Bool00`00ooooo`0fool000coo`03003ooooo00?oo`800=Coo`8003Koo`003?oo00<0 0?ooool00ooo00<00?ooool0eOoo00<00?ooool0Coo`8002Goo`004_oo00<00?ooool0 i_oo00<00?ooool08_oo000Bool00`00ooooo`3Wool2000Rool001;oo`03003ooooo0>Woo`80023o o`004_oo0P00k?oo0P007_oo000Bool00`00ooooo`3]ool2000Lool001;oo`03003ooooo0>ooo`80 01[oo`004_oo00<00?ooool0lOoo00<00?ooool05ooo000Bool00`00ooooo`3bool2000Gool001;o o`03003ooooo0?Coo`8001Goo`004_oo0P00mooo0P004ooo000Bool00`00ooooo`3hool2000Aool0 01;oo`03003ooooo0?[oo`03003ooooo00koo`004_oo00<00?ooool0oooo3?oo000:ool20006ool0 0`00ooooo`3oool"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.0708923, -0.462182, 0.00393741, 0.0374755}}] }, Open ]], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False], ",", TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False]}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False], ",", TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False]}], "}"}]}], "}"}]], "Output"] }, Open ]], Cell["\<\ To use the generated code for the simulation, install the compiled \ package. This will replace the definition of the PendFunc1 and calcfunc \ functions.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(\(InstallCode["\"]; \)\)], "Input"], Cell[BoxData[ InterpretationBox[\("Global"\[InvisibleSpace]" is installed."\), SequenceForm[ "Global", " is installed."], Editable->False]], "Print"] }, Open ]], Cell["\<\ This is a fix to be able to measure time for external \ processes.\ \>", "Text"], Cell[BoxData[ \(SetAttributes[AbsTime, HoldFirst]; AbsTime[x_] := Module[{start, res}, \n\t\tstart = AbsoluteTime[]; res = x; {\((AbsoluteTime[] - start)\)\ Second, res}]; \)], "Input"], Cell[TextData[StyleBox[ "We will redefine f1 to use ScalarPendFunc1 instead"]], "Text"], Cell[BoxData[ \(f1[t_] := Array[\n\t\t ScalarPendFunc1[x1[t], theta[t], x2[t], alpha[t], dx1[t], dtheta[t], dx2[t], dalpha[t], 0. , 0. , #1]&, {4}]\)], "Input"], Cell[TextData[{ StyleBox["This will do the same simulation but using "], StyleBox["MathLink", FontSlant->"Italic"], StyleBox[" and the external package."] }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(AbsTime[dsol = NDSolve[deq \[Union] initeq, Head/@x[t], {t, 0. , 1}]] \)], "Input"], Cell[BoxData[ RowBox[{"{", RowBox[{\(1.`5.7196\ Second\), ",", RowBox[{"{", RowBox[{"{", RowBox[{ RowBox[{"x1", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"theta", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"x2", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"alpha", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dx1", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dtheta", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dx2", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}], ",", RowBox[{"dalpha", "\[Rule]", TagBox[\(InterpolatingFunction[{{0.`, 1.`}}, "<>"]\), False, Editable->False]}]}], "}"}], "}"}]}], "}"}]], "Output"] }, Open ]], Cell[TextData[StyleBox["Hopefully the result will be the same."]], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(Map[Plot[#1, {t, 0, 1}]&, Partition[Take[Flatten[x[t] /. dsol], 4], 2], {2}]\)], "Input"], Cell[CellGroupData[{ Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 20.7443 20.1632 [ [.21429 .5686 -9 -9 ] [.21429 .5686 9 0 ] [.40476 .5686 -9 -9 ] [.40476 .5686 9 0 ] [.59524 .5686 -9 -9 ] [.59524 .5686 9 0 ] [.78571 .5686 -9 -9 ] [.78571 .5686 9 0 ] [.97619 .5686 -3 -9 ] [.97619 .5686 3 0 ] [.01131 .07702 -36 -4.5 ] [.01131 .07702 0 4.5 ] [.01131 .17783 -30 -4.5 ] [.01131 .17783 0 4.5 ] [.01131 .27865 -36 -4.5 ] [.01131 .27865 0 4.5 ] [.01131 .37946 -30 -4.5 ] [.01131 .37946 0 4.5 ] [.01131 .48028 -36 -4.5 ] [.01131 .48028 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .5811 m .21429 .58735 L s [(0.2)] .21429 .5686 0 1 Mshowa .40476 .5811 m .40476 .58735 L s [(0.4)] .40476 .5686 0 1 Mshowa .59524 .5811 m .59524 .58735 L s [(0.6)] .59524 .5686 0 1 Mshowa .78571 .5811 m .78571 .58735 L s [(0.8)] .78571 .5686 0 1 Mshowa .97619 .5811 m .97619 .58735 L s [(1)] .97619 .5686 0 1 Mshowa .125 Mabswid .07143 .5811 m .07143 .58485 L s .11905 .5811 m .11905 .58485 L s .16667 .5811 m .16667 .58485 L s .2619 .5811 m .2619 .58485 L s .30952 .5811 m .30952 .58485 L s .35714 .5811 m .35714 .58485 L s .45238 .5811 m .45238 .58485 L s .5 .5811 m .5 .58485 L s .54762 .5811 m .54762 .58485 L s .64286 .5811 m .64286 .58485 L s .69048 .5811 m .69048 .58485 L s .7381 .5811 m .7381 .58485 L s .83333 .5811 m .83333 .58485 L s .88095 .5811 m .88095 .58485 L s .92857 .5811 m .92857 .58485 L s .25 Mabswid 0 .5811 m 1 .5811 L s .02381 .07702 m .03006 .07702 L s [(-1.025)] .01131 .07702 1 0 Mshowa .02381 .17783 m .03006 .17783 L s [(-1.02)] .01131 .17783 1 0 Mshowa .02381 .27865 m .03006 .27865 L s [(-1.015)] .01131 .27865 1 0 Mshowa .02381 .37946 m .03006 .37946 L s [(-1.01)] .01131 .37946 1 0 Mshowa .02381 .48028 m .03006 .48028 L s [(-1.005)] .01131 .48028 1 0 Mshowa .125 Mabswid .02381 .09718 m .02756 .09718 L s .02381 .11734 m .02756 .11734 L s .02381 .13751 m .02756 .13751 L s .02381 .15767 m .02756 .15767 L s .02381 .198 m .02756 .198 L s .02381 .21816 m .02756 .21816 L s .02381 .23832 m .02756 .23832 L s .02381 .25849 m .02756 .25849 L s .02381 .29881 m .02756 .29881 L s .02381 .31898 m .02756 .31898 L s .02381 .33914 m .02756 .33914 L s .02381 .3593 m .02756 .3593 L s .02381 .39963 m .02756 .39963 L s .02381 .41979 m .02756 .41979 L s .02381 .43995 m .02756 .43995 L s .02381 .46012 m .02756 .46012 L s .02381 .50044 m .02756 .50044 L s .02381 .52061 m .02756 .52061 L s .02381 .54077 m .02756 .54077 L s .02381 .56093 m .02756 .56093 L s .02381 .05685 m .02756 .05685 L s .02381 .03669 m .02756 .03669 L s .02381 .01653 m .02756 .01653 L s .02381 .60126 m .02756 .60126 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .5811 m .02499 .5811 L .02605 .5811 L .02729 .58111 L .02846 .58111 L .03053 .58113 L .03279 .58116 L .03527 .58119 L .0379 .58124 L .04262 .58135 L .04749 .5815 L .05205 .58168 L .06244 .58217 L .07305 .58283 L .08274 .58356 L .10458 .58561 L .14429 .59044 L .18248 .59569 L .2038 .59847 L .22313 .60065 L .23281 .60156 L .24328 .60236 L .24808 .60266 L .25316 .60292 L .2575 .60309 L .25997 .60317 L .26226 .60323 L .26477 .60327 L .26609 .60329 L .26677 .6033 L .2675 .60331 L .26871 .60332 L .26986 .60332 L .27052 .60332 L .27122 .60332 L .27246 .60331 L .27357 .6033 L .27476 .60329 L .27589 .60327 L .27691 .60325 L .27941 .60319 L .28177 .60312 L .28699 .60288 L .2918 .60258 L .29709 .60214 L .30268 .60156 L .31212 .60028 L .32225 .59845 L .34057 .59378 L .3507 .59035 L Mistroke .36174 .58586 L .38184 .57539 L .40156 .56185 L .42254 .54325 L .44399 .51903 L .46418 .49058 L .50278 .41745 L .52276 .36784 L .54384 .30495 L .58186 .15843 L Mfstroke .58186 .15843 m .61178 0 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgool00`00ooooo`1Uool000Woo`03003ooooo00Ooo`04003ooooo 0002ool00`00ooooo`06ool00`00ooooo`02ool2002?ool00`00ooooo`1Uool000Woo`03003ooooo 00Ooo`04003ooooo0003ool00`00ooooo`05ool00`00ooooo`02ool00`00ooooo`2>ool00`00oooo o`1Uool00003ool00000008000Coo`03003ooooo00Ooo`04003ooooo0004ool01000oooooooo0`00 1Ooo00<00?ooool0S_oo00<00?ooool0IOoo0009ool00`00ooooo`07ool01000ooooo`001Ooo00@0 0?ooool000Ooo`03003ooooo08koo`03003ooooo06Goo`001ooo0`002Ooo00@00?ooool000;oo`04 003ooooo0002ool00`00ooooo`05ool00`00ooooo`2=ool00`00ooooo`1Vool000Woo`03003ooooo 00Soo`8000Coo`8000?oo`@000Coo`8008koo`03003ooooo06Koo`009ooo00<00?ooool0SOoo00<0 0?ooool0I_oo000Wool00`00ooooo`2=ool00`00ooooo`1Vool002Ooo`03003ooooo08goo`03003o oooo06Koo`009ooo00<00?ooool0S?oo00<00?ooool0Iooo000Wool2002=ool00`00ooooo`1Wool0 02Ooo`03003ooooo08coo`03003ooooo06Ooo`009ooo00<00?ooool0S?oo00<00?ooool0Iooo000W ool00`00ooooo`2ool002Ooo`03003ooooo06Goo`03003ooooo08koo`00 9ooo00<00?ooool0I?oo00<00?ooool0Sooo000Wool00`00ooooo`1Sool00`00ooooo`2@ool002Oo o`8006?oo`03003ooooo097oo`009ooo00<00?ooool0HOoo00<00?ooool0T_oo000Wool00`00oooo o`0Vool20004ool00`00ooooo`02ool4000Qool20004ool01@00oooooooo00000_oo00<00?ooool0 8Ooo0P001?oo00<00?ooool00ooo0P008_oo0P001?oo00<00?ooool00ooo0P009ooo10001_oo000W ool00`00ooooo`0Uool01000ooooo`002?oo00<00?ooool08Ooo00@00?ooool000Koo`05003ooooo ool0000Rool01000ooooo`002?oo00@00?ooool0023oo`04003ooooo0008ool01000ooooo`00:?oo 00<00?ooool01Ooo000Wool00`00ooooo`0Uool01000ooooo`002Ooo00<00?ooool08?oo00@00?oo ool000Goo`03003oo`0000@0027oo`04003ooooo0008ool01000ooooo`008?oo00@00?ooool000So o`04003ooooo000Xool00`00ooooo`05ool002Ooo`8002Koo`04003ooooo000:ool00`00ooooo`0O ool01000ooooo`001?oo00@00?ooool000;oo`03003ooooo023oo`04003ooooo0008ool3000Qool0 1000ooooo`002Ooo0P00:Ooo00<00?ooool01Ooo000Wool00`00ooooo`0Uool01000ooooo`002ooo 00<00?ooool07_oo00@00?ooool000?oo`03003ooooo00;oo`03003oo`0002;oo`04003ooooo0008 ool00`00ooooo`0Qool01000ooooo`002?oo00@00?ooool002Soo`03003ooooo00Goo`009ooo00<0 0?ooool09Ooo00@00?ooool000Soo`04003ooooo000Pool01@00ooooo`00ool00P001_oo0P008_oo 00@00?ooool000Soo`03003ooooo027oo`04003ooooo0008ool01000ooooo`009_oo0`001ooo000W ool00`00ooooo`0Vool2000:ool2000Rool200000ooo003oo`08ool00`00ooooo`0Qool2000:ool3 000Qool2000:ool2000Yool00`00ooooo`05ool002Ooo`03003ooooo05Ooo`8009goo`008Oooo`00 000Wool00`00ooooo`08ool>000;ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool0 0`00ooooo`09ool30009ool00`00ooooo`09ool00`00ooooo`0:ool00`00ooooo`09ool00`00oooo o`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00oooo o`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`09ool00`00ooooo`05ool002Ooo`03 003ooooo01Koo`P000ooo`03003ooooo01ooo`8000coo`03003ooooo02koo`03003ooooo02goo`03 003ooooo02goo`03003ooooo00Goo`009ooo00<00?ooool07_oo1@00:Ooo0`00Yooo000Wool00`00 ooooo`0Sool5000Rool2002Zool002Ooo`8002Woo`/000ooo`P00:coo`009ooo00<00?ooool0"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.162025, -1.03078, 0.004136, 0.000195358}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 0.603319 1.65321 [ [.21429 .59082 -9 -9 ] [.21429 .59082 9 0 ] [.40476 .59082 -9 -9 ] [.40476 .59082 9 0 ] [.59524 .59082 -9 -9 ] [.59524 .59082 9 0 ] [.78571 .59082 -9 -9 ] [.78571 .59082 9 0 ] [.97619 .59082 -3 -9 ] [.97619 .59082 3 0 ] [.01131 .0247 -30 -4.5 ] [.01131 .0247 0 4.5 ] [.01131 .10736 -24 -4.5 ] [.01131 .10736 0 4.5 ] [.01131 .19002 -30 -4.5 ] [.01131 .19002 0 4.5 ] [.01131 .27268 -24 -4.5 ] [.01131 .27268 0 4.5 ] [.01131 .35534 -30 -4.5 ] [.01131 .35534 0 4.5 ] [.01131 .438 -24 -4.5 ] [.01131 .438 0 4.5 ] [.01131 .52066 -30 -4.5 ] [.01131 .52066 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .60332 m .21429 .60957 L s [(0.2)] .21429 .59082 0 1 Mshowa .40476 .60332 m .40476 .60957 L s [(0.4)] .40476 .59082 0 1 Mshowa .59524 .60332 m .59524 .60957 L s [(0.6)] .59524 .59082 0 1 Mshowa .78571 .60332 m .78571 .60957 L s [(0.8)] .78571 .59082 0 1 Mshowa .97619 .60332 m .97619 .60957 L s [(1)] .97619 .59082 0 1 Mshowa .125 Mabswid .07143 .60332 m .07143 .60707 L s .11905 .60332 m .11905 .60707 L s .16667 .60332 m .16667 .60707 L s .2619 .60332 m .2619 .60707 L s .30952 .60332 m .30952 .60707 L s .35714 .60332 m .35714 .60707 L s .45238 .60332 m .45238 .60707 L s .5 .60332 m .5 .60707 L s .54762 .60332 m .54762 .60707 L s .64286 .60332 m .64286 .60707 L s .69048 .60332 m .69048 .60707 L s .7381 .60332 m .7381 .60707 L s .83333 .60332 m .83333 .60707 L s .88095 .60332 m .88095 .60707 L s .92857 .60332 m .92857 .60707 L s .25 Mabswid 0 .60332 m 1 .60332 L s .02381 .0247 m .03006 .0247 L s [(-0.35)] .01131 .0247 1 0 Mshowa .02381 .10736 m .03006 .10736 L s [(-0.3)] .01131 .10736 1 0 Mshowa .02381 .19002 m .03006 .19002 L s [(-0.25)] .01131 .19002 1 0 Mshowa .02381 .27268 m .03006 .27268 L s [(-0.2)] .01131 .27268 1 0 Mshowa .02381 .35534 m .03006 .35534 L s [(-0.15)] .01131 .35534 1 0 Mshowa .02381 .438 m .03006 .438 L s [(-0.1)] .01131 .438 1 0 Mshowa .02381 .52066 m .03006 .52066 L s [(-0.05)] .01131 .52066 1 0 Mshowa .125 Mabswid .02381 .04123 m .02756 .04123 L s .02381 .05776 m .02756 .05776 L s .02381 .07429 m .02756 .07429 L s .02381 .09082 m .02756 .09082 L s .02381 .12389 m .02756 .12389 L s .02381 .14042 m .02756 .14042 L s .02381 .15695 m .02756 .15695 L s .02381 .17348 m .02756 .17348 L s .02381 .20655 m .02756 .20655 L s .02381 .22308 m .02756 .22308 L s .02381 .23961 m .02756 .23961 L s .02381 .25615 m .02756 .25615 L s .02381 .28921 m .02756 .28921 L s .02381 .30574 m .02756 .30574 L s .02381 .32227 m .02756 .32227 L s .02381 .33881 m .02756 .33881 L s .02381 .37187 m .02756 .37187 L s .02381 .3884 m .02756 .3884 L s .02381 .40493 m .02756 .40493 L s .02381 .42147 m .02756 .42147 L s .02381 .45453 m .02756 .45453 L s .02381 .47106 m .02756 .47106 L s .02381 .48759 m .02756 .48759 L s .02381 .50413 m .02756 .50413 L s .02381 .53719 m .02756 .53719 L s .02381 .55372 m .02756 .55372 L s .02381 .57025 m .02756 .57025 L s .02381 .58679 m .02756 .58679 L s .02381 .00816 m .02756 .00816 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .60332 m .02499 .60332 L .02605 .60332 L .02729 .60331 L .02846 .60331 L .03053 .6033 L .03279 .60328 L .03527 .60325 L .0379 .60322 L .04262 .60313 L .04749 .60303 L .05205 .6029 L .06244 .60254 L .07305 .60205 L .08274 .60151 L .10458 .59991 L .12357 .59811 L .14429 .59569 L .18493 .58958 L .22406 .58189 L .26565 .5716 L .30571 .55938 L .34426 .54514 L .38527 .5268 L .42475 .50541 L .46273 .48078 L .50315 .44971 L .54206 .41509 L .58342 .37425 L .62326 .33382 L .66159 .29878 L .70238 .26883 L .74164 .24363 L .77939 .2183 L .8196 .18741 L .85828 .15272 L .89942 .11006 L .93905 .06336 L .97619 .01472 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgooo`03003ooooo00[oo`008Ooo00<00?ooool0k_oo00<00?ooool02ooo000Qool00`00ooooo`3] ool00`00ooooo`0goo`03003ooooo00coo`008Ooo0P00kOoo00<00?oo ool03Ooo000Qool00`00ooooo`3[ool00`00ooooo`0>ool0027oo`03003ooooo0>[oo`03003ooooo 00ooo`008Ooo00<00?ooool0jOoo00<00?ooool04?oo000Qool2003Yool00`00ooooo`0Aool0027o o`03003ooooo0>Ooo`03003ooooo01;oo`008Ooo00<00?ooool0i_oo00<00?ooool04ooo000Qool0 0`00ooooo`3Vool00`00ooooo`0Cool0027oo`800>Koo`03003ooooo01Coo`008Ooo00<00?ooool0 i?oo00<00?ooool05Ooo000Qool00`00ooooo`3Sool00`00ooooo`0Fool000koo`8000Coo`03003o oooo00?oo`8000Goo`03003ooooo0>;oo`03003ooooo01Ooo`003Ooo00@00?ooool000Soo`04003o oooo0004ool00`00ooooo`3Qool00`00ooooo`0Hool000goo`04003ooooo000;ool00`00ooooo`02 ool2003Qool00`00ooooo`0Iool000Ooo`@000;oo`04003ooooo0009ool20005ool00`00ooooo`3O ool00`00ooooo`0Jool000goo`04003ooooo000;ool00`00ooooo`02ool00`00ooooo`3Nool00`00 ooooo`0Kool000goo`04003ooooo0008ool01000ooooo`001?oo00<00?ooool0gOoo00<00?ooool0 7?oo000>ool2000:ool20005ool2003Mool00`00ooooo`0Mool0027oo`03003ooooo0=_oo`03003o oooo01koo`008Ooo00<00?ooool0fooo00<00?ooool07_oo000Qool00`00ooooo`3Jool00`00oooo o`0Oool0027oo`800=[oo`03003ooooo023oo`008Ooo00<00?ooool0f?oo00<00?ooool08Ooo000Q ool00`00ooooo`3Gool00`00ooooo`0Rool0027oo`03003ooooo0=Koo`03003ooooo02?oo`008Ooo 00<00?ooool0eOoo00<00?ooool09?oo000Qool2003Eool00`00ooooo`0Uool0027oo`03003ooooo 0=?oo`03003ooooo02Koo`008Ooo00<00?ooool0dOoo0P00:Ooo000Qool00`00ooooo`3@ool00`00 ooooo`0Yool0027oo`800=3oo`03003ooooo02[oo`008Ooo00<00?ooool0c_oo00<00?ooool0:ooo 000Qool00`00ooooo`3=ool00`00ooooo`0/ool000Soo`8000Coo`03003ooooo00;oo`@000;oo`<0 00Goo`03003ooooo0ooo000Qool2002oool00`00ooooo`0kool0027oo`03 003ooooo0;coo`8003koo`008Ooo00<00?ooool0^ooo00<00?ooool0?_oo000Qool00`00ooooo`2j ool00`00ooooo`0oool0027oo`800;Woo`8004;oo`008Ooo00<00?ooool0]ooo00<00?ooool0@_oo 000Qool00`00ooooo`2eool20015ool0027oo`03003ooooo0;Coo`03003ooooo04Goo`008Ooo0P00 /ooo0P00B?oo000Qool00`00ooooo`2aool00`00ooooo`18ool0027oo`03003ooooo0;3oo`03003o oooo04Woo`003_oo0P001?oo00<00?ooool00_oo10001?oo00<00?ooool0[_oo0P00C?oo000=ool0 1000ooooo`002?oo00<00?ooool01Ooo00<00?ooool0[Ooo00<00?ooool0C?oo000=ool01000oooo o`002Ooo00<00?ooool01?oo0P00[?oo0P00Cooo0007ool40002ool01000ooooo`002_oo00<00?oo ool00ooo00<00?ooool0Z_oo00<00?ooool0Cooo000=ool01000ooooo`002ooo00<00?ooool00_oo 00<00?ooool0Z?oo0P00D_oo000=ool01000ooooo`002?oo00@00?ooool000Coo`03003ooooo0:Oo o`03003ooooo05;oo`003_oo0P002_oo0P001Ooo0P00Yooo00<00?ooool0Dooo000Qool00`00oooo o`2Tool2001Fool0027oo`03003ooooo0:?oo`03003ooooo05Koo`008Ooo00<00?ooool0X_oo00<0 0?ooool0Eooo000Qool2002Rool00`00ooooo`1Hool0027oo`03003ooooo0:3oo`03003ooooo05Wo o`008Ooo00<00?ooool0W_oo0P00G?oo000Qool00`00ooooo`2Mool00`00ooooo`1Lool0027oo`80 09goo`03003ooooo05goo`008Ooo00<00?ooool0Vooo00<00?ooool0G_oo000Qool00`00ooooo`2J ool00`00ooooo`1Oool0027oo`03003ooooo09Woo`03003ooooo063oo`008Ooo00<00?ooool0V?oo 00<00?ooool0HOoo000Qool2002Hool00`00ooooo`1Rool0027oo`03003ooooo09Koo`03003ooooo 06?oo`008Ooo00<00?ooool0UOoo00<00?ooool0I?oo0008ool20004ool00`00ooooo`02ool40002 ool30005ool00`00ooooo`2Dool00`00ooooo`1Uool000Ooo`04003ooooo000:ool00`00ooooo`04 ool00`00ooooo`02ool2002Dool00`00ooooo`1Vool000Ooo`04003ooooo000:ool00`00ooooo`04 ool00`00ooooo`02ool00`00ooooo`2Bool00`00ooooo`1Wool00003ool00000008000;oo`04003o oooo000:ool01000oooooooo0`001Ooo00<00?ooool0TOoo00<00?ooool0J?oo0007ool01000oooo o`002_oo00D00?ooooooo`0000Ooo`03003ooooo093oo`03003ooooo06Woo`001ooo00@00?ooool0 00Soo`<000?oo`03003ooooo00Goo`80093oo`03003ooooo06[oo`002?oo0P002ooo00@00?oooooo o`@000Coo`03003ooooo08koo`03003ooooo06_oo`008Ooo00<00?ooool0SOoo00<00?ooool0K?oo 000Qool00`00ooooo`2"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.134313, -0.38389, 0.00403944, 0.00232704}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 -2.29209 2.82521 [ [.21429 .52062 -9 -9 ] [.21429 .52062 9 0 ] [.40476 .52062 -9 -9 ] [.40476 .52062 9 0 ] [.59524 .52062 -9 -9 ] [.59524 .52062 9 0 ] [.78571 .52062 -9 -9 ] [.78571 .52062 9 0 ] [.97619 .52062 -3 -9 ] [.97619 .52062 3 0 ] [.01131 .10934 -24 -4.5 ] [.01131 .10934 0 4.5 ] [.01131 .2506 -18 -4.5 ] [.01131 .2506 0 4.5 ] [.01131 .39186 -24 -4.5 ] [.01131 .39186 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .53312 m .21429 .53937 L s [(0.2)] .21429 .52062 0 1 Mshowa .40476 .53312 m .40476 .53937 L s [(0.4)] .40476 .52062 0 1 Mshowa .59524 .53312 m .59524 .53937 L s [(0.6)] .59524 .52062 0 1 Mshowa .78571 .53312 m .78571 .53937 L s [(0.8)] .78571 .52062 0 1 Mshowa .97619 .53312 m .97619 .53937 L s [(1)] .97619 .52062 0 1 Mshowa .125 Mabswid .07143 .53312 m .07143 .53687 L s .11905 .53312 m .11905 .53687 L s .16667 .53312 m .16667 .53687 L s .2619 .53312 m .2619 .53687 L s .30952 .53312 m .30952 .53687 L s .35714 .53312 m .35714 .53687 L s .45238 .53312 m .45238 .53687 L s .5 .53312 m .5 .53687 L s .54762 .53312 m .54762 .53687 L s .64286 .53312 m .64286 .53687 L s .69048 .53312 m .69048 .53687 L s .7381 .53312 m .7381 .53687 L s .83333 .53312 m .83333 .53687 L s .88095 .53312 m .88095 .53687 L s .92857 .53312 m .92857 .53687 L s .25 Mabswid 0 .53312 m 1 .53312 L s .02381 .10934 m .03006 .10934 L s [(0.85)] .01131 .10934 1 0 Mshowa .02381 .2506 m .03006 .2506 L s [(0.9)] .01131 .2506 1 0 Mshowa .02381 .39186 m .03006 .39186 L s [(0.95)] .01131 .39186 1 0 Mshowa .125 Mabswid .02381 .13759 m .02756 .13759 L s .02381 .16584 m .02756 .16584 L s .02381 .19409 m .02756 .19409 L s .02381 .22235 m .02756 .22235 L s .02381 .27885 m .02756 .27885 L s .02381 .3071 m .02756 .3071 L s .02381 .33535 m .02756 .33535 L s .02381 .36361 m .02756 .36361 L s .02381 .42011 m .02756 .42011 L s .02381 .44836 m .02756 .44836 L s .02381 .47661 m .02756 .47661 L s .02381 .50487 m .02756 .50487 L s .02381 .08109 m .02756 .08109 L s .02381 .05283 m .02756 .05283 L s .02381 .02458 m .02756 .02458 L s .02381 .56137 m .02756 .56137 L s .02381 .58962 m .02756 .58962 L s .02381 .61788 m .02756 .61788 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .53312 m .02499 .53312 L .02605 .53312 L .02729 .53311 L .02846 .53311 L .03053 .53309 L .03279 .53307 L .03527 .53304 L .0379 .53301 L .04262 .53292 L .04749 .5328 L .05205 .53267 L .06244 .53227 L .07305 .53173 L .08274 .53112 L .10458 .52929 L .12357 .52715 L .14429 .52418 L .16561 .52033 L .18493 .51605 L .22406 .50469 L .26413 .4885 L .30268 .46758 L .34368 .43873 L .38317 .40447 L .42114 .367 L .46157 .32644 L .4802 .30954 L .50048 .2941 L .51151 .28753 L .51636 .28515 L .52172 .28292 L .52675 .28125 L .53147 .28007 L .53407 .2796 L .53646 .27927 L .53771 .27915 L .53908 .27905 L .53977 .27901 L .54051 .27898 L .5412 .27896 L .54184 .27896 L .54303 .27897 L .54415 .279 L .54537 .27908 L .54669 .27919 L .54806 .27935 L .54937 .27954 L .55182 .28 L .5541 .28056 L Mistroke .55622 .28119 L .56102 .28303 L .56631 .28575 L .57109 .28886 L .58182 .29821 L .59187 .31014 L .6011 .32394 L .62194 .36509 L .66148 .47082 L .68138 .52386 L .6995 .56284 L .70955 .57914 L .71905 .59072 L .72426 .59547 L .72908 .59885 L .7316 .60023 L .73437 .60145 L .73576 .60195 L .73726 .6024 L .73869 .60274 L .73998 .60299 L .74122 .60316 L .74238 .60326 L .74362 .60331 L .74431 .60332 L .74495 .60331 L .74602 .60325 L .7472 .60314 L .74843 .60297 L .74957 .60276 L .75222 .60208 L .75463 .60125 L .76006 .5986 L .76525 .59512 L .7709 .59032 L .78117 .57903 L .80092 .54896 L .82192 .5067 L .85964 .41027 L .89981 .28695 L .93846 .15444 L .97619 .01472 L Mfstroke % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHgool001_oo`03003ooooo0?7oo`03003ooooo 00koo`006ooo00<00?ooool0lOoo00<00?ooool03_oo000Kool00`00ooooo`3`ool00`00ooooo`0? ool001_oo`03003ooooo0?3oo`03003ooooo00ooo`006ooo00<00?ooool0l?oo00<00?ooool03ooo 000Kool00`00ooooo`3_ool00`00ooooo`0@ool001_oo`800?3oo`03003ooooo013oo`006ooo00<0 0?ooool0kooo00<00?ooool04?oo000Kool00`00ooooo`3_ool00`00ooooo`0@ool001_oo`03003o oooo0>koo`03003ooooo017oo`006ooo00<00?ooool0k_oo00<00?ooool04Ooo000Kool00`00oooo o`3^ool00`00ooooo`0Aool001_oo`03003ooooo0>goo`03003ooooo01;oo`006ooo0P00k_oo00<0 0?ooool04_oo000Kool00`00ooooo`3]ool00`00ooooo`0Bool001_oo`03003ooooo0>goo`03003o oooo01;oo`006ooo00<00?ooool0k?oo00<00?ooool04ooo000Kool00`00ooooo`3/ool00`00oooo o`0Cool001_oo`03003ooooo0>coo`03003ooooo01?oo`006ooo00<00?ooool0jooo00<00?ooool0 5?oo000Kool00`00ooooo`3[ool00`00ooooo`0Dool001_oo`800>coo`03003ooooo01Coo`006ooo 00<00?ooool0jooo00<00?ooool05?oo000Kool00`00ooooo`3Zool00`00ooooo`0Eool001_oo`03 003ooooo0>[oo`03003ooooo01Goo`006ooo00<00?ooool0j_oo00<00?ooool05Ooo000Kool00`00 ooooo`3Yool00`00ooooo`0Fool000Soo`8000Coo`03003ooooo00;oo`<000Goo`03003ooooo0>Wo o`03003ooooo01Koo`001ooo00@00?ooool000_oo`03003ooooo00;oo`800>[oo`03003ooooo01Ko o`001ooo00@00?ooool000_oo`03003ooooo00;oo`03003ooooo0>Woo`03003ooooo01Koo`001ooo 00@00?ooool000Woo`<000Coo`03003ooooo0>Soo`03003ooooo01Ooo`001ooo00@00?ooool000So o`04003ooooo0004ool00`00ooooo`3Xool00`00ooooo`0Gool000Ooo`04003ooooo0008ool01000 ooooo`001?oo00<00?ooool0j?oo00<00?ooool05ooo0008ool2000:ool20005ool00`00ooooo`3W ool00`00ooooo`0Hool001_oo`03003ooooo0>Ooo`03003ooooo01Soo`006ooo00<00?ooool0iooo 00<00?ooool06?oo000Kool20025ool7001Lool00`00ooooo`0Hool001_oo`03003ooooo087oo`<0 00Koo`<005Woo`03003ooooo01Woo`006ooo00<00?ooool0Oooo0P003?oo00<00?ooool0E_oo00<0 0?ooool06Ooo000Kool00`00ooooo`1mool2000?ool00`00ooooo`1Eool00`00ooooo`0Iool001_o o`03003ooooo07coo`03003ooooo013oo`8005Coo`03003ooooo01[oo`006ooo00<00?ooool0N_oo 0P005Ooo00<00?ooool0DOoo00<00?ooool06_oo000Kool00`00ooooo`1iool00`00ooooo`0Fool0 0`00ooooo`1@ool00`00ooooo`0Jool001_oo`03003ooooo07Ooo`8001[oo`03003ooooo04koo`03 003ooooo01_oo`006ooo0P00Mooo00<00?ooool06ooo00<00?ooool0COoo00<00?ooool06ooo000K ool00`00ooooo`1eool00`00ooooo`0Lool00`00ooooo`1=ool00`00ooooo`0Kool001_oo`03003o oooo07Coo`03003ooooo01koo`03003ooooo04_oo`03003ooooo01coo`006ooo00<00?ooool0Looo 00<00?ooool07ooo00<00?ooool0Booo00<00?ooool07?oo000Kool00`00ooooo`1bool00`00oooo o`0Qool00`00ooooo`1:ool00`00ooooo`0Lool001_oo`03003ooooo077oo`03003ooooo02?oo`03 003ooooo04Soo`03003ooooo01goo`006ooo00<00?ooool0L?oo00<00?ooool09?oo00<00?ooool0 B?oo00<00?ooool07Ooo000Kool2001`ool00`00ooooo`0Vool00`00ooooo`17ool00`00ooooo`0M ool001_oo`03003ooooo06koo`03003ooooo02Ooo`03003ooooo04Koo`03003ooooo01koo`006ooo 00<00?ooool0KOoo00<00?ooool0:Ooo00<00?ooool0AOoo00<00?ooool07_oo000Kool00`00oooo o`1/ool00`00ooooo`0Zool00`00ooooo`15ool00`00ooooo`0Nool001_oo`03003ooooo06_oo`03 003ooooo02coo`03003ooooo04?oo`03003ooooo01ooo`006ooo00<00?ooool0J_oo00<00?ooool0 ;Ooo00<00?ooool0@ooo00<00?ooool07ooo000Kool00`00ooooo`1Yool00`00ooooo`0_ool00`00 ooooo`12ool00`00ooooo`0Oool001_oo`03003ooooo06Soo`03003ooooo033oo`03003ooooo047o o`03003ooooo023oo`006ooo0P00J?oo00<00?ooool0<_oo00<00?ooool0@?oo00<00?ooool08?oo 000Kool00`00ooooo`1Vool00`00ooooo`0cool00`00ooooo`10ool00`00ooooo`0Pool001_oo`03 003ooooo06Goo`03003ooooo03Goo`03003ooooo03koo`03003ooooo027oo`006ooo00<00?ooool0 I?oo00<00?ooool0=_oo00<00?ooool0?_oo00<00?ooool08Ooo000Kool00`00ooooo`1Sool00`00 ooooo`0gool00`00ooooo`0nool00`00ooooo`0Qool001_oo`03003ooooo067oo`8003_oo`03003o oooo03coo`03003ooooo02;oo`000_oo0P001?oo00<00?ooool00_oo0`000ooo0`001Ooo00<00?oo ool0H?oo00<00?ooool0>ooo00<00?ooool0??oo00<00?ooool08_oo00001Ooo003ooooo00002ooo 00<00?ooool00ooo00<00?ooool00_oo0P00H?oo00<00?ooool0??oo00<00?ooool0??oo00<00?oo ool08_oo00001Ooo003ooooo00002ooo00<00?ooool00ooo00<00?ooool00_oo00<00?ooool0G_oo 00<00?ooool0?_oo00<00?ooool0>_oo00<00?ooool08ooo00001Ooo003ooooo00002Ooo0`000_oo 0`001Ooo00<00?ooool0GOoo00<00?ooool0?ooo00<00?ooool0>_oo00<00?ooool08ooo00001Ooo 003ooooo00002?oo00@00?ooool000;oo`03003ooooo00Goo`03003ooooo05coo`03003ooooo047o o`03003ooooo03Woo`03003ooooo02?oo`0000Goo`00ooooo`0000Soo`04003ooooo0002ool00`00 ooooo`05ool00`00ooooo`1Kool00`00ooooo`12ool00`00ooooo`0hool00`00ooooo`0Tool000;o o`8000[oo`8000?oo`@000Coo`03003ooooo05[oo`03003ooooo04?oo`03003ooooo03Soo`03003o oooo02Coo`006ooo00<00?ooool0FOoo00<00?ooool0AOoo00<00?ooool0=ooo00<00?ooool09?oo 000Kool00`00ooooo`1Hool00`00ooooo`16ool00`00ooooo`0fool00`00ooooo`0Uool001_oo`80 05Soo`03003ooooo04Ooo`03003ooooo03Koo`03003ooooo02Goo`006ooo00<00?ooool0E_oo00<0 0?ooool0BOoo00<00?ooool0=?oo00<00?ooool09_oo000Kool00`00ooooo`1Eool00`00ooooo`1: ool00`00ooooo`0dool00`00ooooo`0Vool001_oo`03003ooooo05Coo`03003ooooo04_oo`03003o oooo03Coo`03003ooooo02Koo`006ooo00<00?ooool0Dooo00<00?ooool0COoo00<00?ooool0<_oo 00<00?ooool09ooo000Kool00`00ooooo`1Bool00`00ooooo`1>ool00`00ooooo`0bool00`00oooo o`0Wool001_oo`03003ooooo053oo`80057oo`03003ooooo03;oo`03003ooooo02Ooo`006ooo0P00 D?oo00<00?ooool0D_oo00<00?ooool0Ooo0`00KOoo00<00?ooool0 9ooo00<00?ooool0;?oo000Kool00`00ooooo`0gool2001`ool00`00ooooo`0Vool00`00ooooo`0] ool001_oo`03003ooooo02Soo`8000Coo`03003ooooo00;oo`@002Coo`8000Coo`03003ooooo00Co o`03003ooooo02?oo`8000Coo`03003ooooo00?oo`8000goo`03003ooooo01Coo`8000Coo`03003o oooo00?oo`8000Coo`03003ooooo02?oo`@000Koo`006ooo0P00:?oo00@00?ooool000Koo`<002Ko o`04003ooooo000:ool00`00ooooo`0Rool01000ooooo`002?oo00@00?ooool000goo`03003ooooo 01;oo`04003ooooo0008ool01000ooooo`000_oo00<00?ooool09_oo00<00?ooool01Ooo000Kool0 0`00ooooo`0Wool01000ooooo`000_oo10000ooo00<00?ooool08ooo00@00?ooool000Ooo`D002?o o`04003ooooo0008ool01000ooooo`003Ooo00<00?ooool04_oo00@00?ooool000Soo`04003ooooo 0002ool00`00ooooo`0Vool00`00ooooo`05ool001_oo`03003ooooo02Ooo`03003ooooo00<000So o`03003ooooo02;oo`04003ooooo0007ool01000ooooo`009?oo00@00?ooool000Soo`<000ooo`03 003ooooo017oo`04003ooooo0009ool20003ool00`00ooooo`0Vool00`00ooooo`05ool001_oo`03 003ooooo02Koo`D000_oo`03003ooooo027oo`04003ooooo0008ool00`00ool0000Tool01000oooo o`002?oo00<00?ooool03ooo00<00?ooool04Ooo00@00?ooool000Soo`06003ooooo003oo`00:Ooo 00<00?ooool01Ooo000Kool00`00ooooo`0Pool600001Ooo003ooooo00002?oo00@00?ooool002?o o`04003ooooo0009ool2000Tool01000ooooo`002?oo00<00?ooool04?oo00<00?ooool04?oo00@0 0?ooool000Soo`06003ooooo003oo`009ooo0`001ooo000Kool00`00ooooo`0Jool60008ool2000: ool2000Uool2000;ool00`00ooooo`0Sool2000:ool3000?ool00`00ooooo`0Aool2000:ool20000 0ooo003oo`0Yool00`00ooooo`05ool001_oo`03003ooooo01Goo`D009;oo`03003ooooo023oo`03 003ooooo033oo`006ooo00<00?ooool01_oo3`00V?oo00<00?ooool07_oo00<00?ooool0?oo000Kool00`00ooooo`2cool00`00ooooo`0@ool00`00ooooo`0i ool001_oo`03003ooooo0;Coo`03003ooooo00koo`03003ooooo03[oo`006ooo00<00?ooool0]Ooo 00<00?ooool03Ooo00<00?ooool0>_oo000Kool2002gool00`00ooooo`0:ool2000mool001_oo`03 003ooooo0;Ooo`03003ooooo00Soo`03003ooooo03goo`006ooo00<00?ooool0^?oo0P001_oo0P00 @?oo000Kool00`00ooooo`2jool60012ool001_oo`03003ooooo0?ooo`?oo`006ooo00<00?ooool0 oooo0ooo000Kool00`00ooooo`3oool3ool001_oo`800?ooo`Coo`00oooo8Ooo003ooolQool00?oo ob7oo`00oooo8Ooo003ooolQool00?ooob7oo`00\ \>"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.107864, 0.802957, 0.00394728, 0.00133063}}], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.952381 0.0147151 0.100063 [ [.21429 .00222 -9 -9 ] [.21429 .00222 9 0 ] [.40476 .00222 -9 -9 ] [.40476 .00222 9 0 ] [.59524 .00222 -9 -9 ] [.59524 .00222 9 0 ] [.78571 .00222 -9 -9 ] [.78571 .00222 9 0 ] [.97619 .00222 -3 -9 ] [.97619 .00222 3 0 ] [.01131 .11478 -6 -4.5 ] [.01131 .11478 0 4.5 ] [.01131 .21484 -6 -4.5 ] [.01131 .21484 0 4.5 ] [.01131 .3149 -6 -4.5 ] [.01131 .3149 0 4.5 ] [.01131 .41497 -6 -4.5 ] [.01131 .41497 0 4.5 ] [.01131 .51503 -6 -4.5 ] [.01131 .51503 0 4.5 ] [.01131 .61509 -6 -4.5 ] [.01131 .61509 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .21429 .01472 m .21429 .02097 L s [(0.2)] .21429 .00222 0 1 Mshowa .40476 .01472 m .40476 .02097 L s [(0.4)] .40476 .00222 0 1 Mshowa .59524 .01472 m .59524 .02097 L s [(0.6)] .59524 .00222 0 1 Mshowa .78571 .01472 m .78571 .02097 L s [(0.8)] .78571 .00222 0 1 Mshowa .97619 .01472 m .97619 .02097 L s [(1)] .97619 .00222 0 1 Mshowa .125 Mabswid .07143 .01472 m .07143 .01847 L s .11905 .01472 m .11905 .01847 L s .16667 .01472 m .16667 .01847 L s .2619 .01472 m .2619 .01847 L s .30952 .01472 m .30952 .01847 L s .35714 .01472 m .35714 .01847 L s .45238 .01472 m .45238 .01847 L s .5 .01472 m .5 .01847 L s .54762 .01472 m .54762 .01847 L s .64286 .01472 m .64286 .01847 L s .69048 .01472 m .69048 .01847 L s .7381 .01472 m .7381 .01847 L s .83333 .01472 m .83333 .01847 L s .88095 .01472 m .88095 .01847 L s .92857 .01472 m .92857 .01847 L s .25 Mabswid 0 .01472 m 1 .01472 L s .02381 .11478 m .03006 .11478 L s [(1)] .01131 .11478 1 0 Mshowa .02381 .21484 m .03006 .21484 L s [(2)] .01131 .21484 1 0 Mshowa .02381 .3149 m .03006 .3149 L s [(3)] .01131 .3149 1 0 Mshowa .02381 .41497 m .03006 .41497 L s [(4)] .01131 .41497 1 0 Mshowa .02381 .51503 m .03006 .51503 L s [(5)] .01131 .51503 1 0 Mshowa .02381 .61509 m .03006 .61509 L s [(6)] .01131 .61509 1 0 Mshowa .125 Mabswid .02381 .03473 m .02756 .03473 L s .02381 .05474 m .02756 .05474 L s .02381 .07475 m .02756 .07475 L s .02381 .09477 m .02756 .09477 L s .02381 .13479 m .02756 .13479 L s .02381 .1548 m .02756 .1548 L s .02381 .17482 m .02756 .17482 L s .02381 .19483 m .02756 .19483 L s .02381 .23485 m .02756 .23485 L s .02381 .25487 m .02756 .25487 L s .02381 .27488 m .02756 .27488 L s .02381 .29489 m .02756 .29489 L s .02381 .33492 m .02756 .33492 L s .02381 .35493 m .02756 .35493 L s .02381 .37494 m .02756 .37494 L s .02381 .39495 m .02756 .39495 L s .02381 .43498 m .02756 .43498 L s .02381 .45499 m .02756 .45499 L s .02381 .475 m .02756 .475 L s .02381 .49502 m .02756 .49502 L s .02381 .53504 m .02756 .53504 L s .02381 .55505 m .02756 .55505 L s .02381 .57507 m .02756 .57507 L s .02381 .59508 m .02756 .59508 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .02472 m .02499 .02472 L .02605 .02472 L .02729 .02472 L .02846 .02473 L .03053 .02473 L .03279 .02474 L .03527 .02476 L .0379 .02478 L .04262 .02482 L .04749 .02487 L .05205 .02494 L .06244 .02513 L .07305 .02539 L .08274 .02568 L .10458 .02654 L .12357 .02754 L .14429 .02891 L .18493 .03255 L .22406 .03749 L .26565 .04467 L .30571 .05395 L .34426 .06559 L .38527 .08153 L .42475 .10091 L .46273 .12377 L .50315 .15309 L .54206 .18677 L .58342 .22942 L .62326 .27825 L .66159 .33109 L .70238 .38642 L .74164 .43291 L .77939 .47101 L .8196 .50581 L .85828 .53479 L .89942 .56162 L .93905 .58427 L .97619 .60332 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg ool003coo`04003ooooo0009ool00`00ooooo`0Sool01000ooooo`001ooo1@008ooo00@00?ooool0 00Soo`04003ooooo000Sool01000ooooo`002?oo00@00?ooool002[oo`03003ooooo00koo`00??oo 00@00?ooool000[oo`03003ooooo02;oo`04003ooooo0007ool01000ooooo`009?oo00@00?ooool0 00Soo`<002Coo`04003ooooo0009ool2000[ool00`00ooooo`0>ool003coo`04003ooooo000;ool0 0`00ooooo`0Qool01000ooooo`002?oo00<00?oo00009?oo00@00?ooool000Soo`03003ooooo02Co o`04003ooooo0008ool01000ooooo`00:_oo00<00?ooool03_oo000Bool00`00ooooo`0Wool01000 ooooo`002?oo00@00?ooool002?oo`04003ooooo0009ool2000Tool01000ooooo`002?oo00<00?oo ool09?oo00@00?ooool000Soo`04003ooooo000Xool3000@ool001;oo`03003ooooo02Soo`8000[o o`8002Goo`8000_oo`03003ooooo02?oo`8000[oo`<002Coo`8000[oo`8002_oo`03003ooooo00ko o`004_oo00<00?ooool0oooo3?oo000Bool00`00ooooo`3ooolool001;ooad00?7oo`004_oo00<00?ooool06_oo2000 jOoo000Bool2000Sool;003Nool001;oo`03003ooooo02goo`P00=Koo`004_oo00<00?ooool0=Ooo 1P00d?oo000Bool00`00ooooo`0kool5003;ool001;oo`03003ooooo043oo`H00ooo000Bool00`00ooooo`3>ool2000kool001;oo`03003o oooo0=3oo`03003ooooo03Soo`004_oo00<00?ooool0dOoo00<00?ooool0=ooo0009ool30006ool0 0`00ooooo`3Bool00`00ooooo`0fool000coo`03003ooooo00?oo`800=Coo`8003Koo`003?oo00<0 0?ooool00ooo00<00?ooool0eOoo00<00?ooool0Coo`8002Goo`004_oo00<00?ooool0 i_oo00<00?ooool08_oo000Bool00`00ooooo`3Wool2000Rool001;oo`03003ooooo0>Woo`80023o o`004_oo0P00k?oo0P007_oo000Bool00`00ooooo`3]ool2000Lool001;oo`03003ooooo0>ooo`80 01[oo`004_oo00<00?ooool0lOoo00<00?ooool05ooo000Bool00`00ooooo`3bool2000Gool001;o o`03003ooooo0?Coo`8001Goo`004_oo0P00mooo0P004ooo000Bool00`00ooooo`3hool2000Aool0 01;oo`03003ooooo0?[oo`03003ooooo00koo`004_oo00<00?ooool0oooo3?oo000:ool20006ool0 0`00ooooo`3oool"], ImageRangeCache->{{{0, 287}, {176.938, 0}} -> {-0.0708923, -0.462182, 0.00393741, 0.0374755}}] }, Open ]], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{ TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False], ",", TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False]}], "}"}], ",", RowBox[{"{", RowBox[{ TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False], ",", TagBox[\(\[SkeletonIndicator] Graphics \[SkeletonIndicator]\), False, Editable->False]}], "}"}]}], "}"}]], "Output"] }, Open ]], Cell[TextData[{ "The time measurements are better for the simulation using the internal \ expression compared to the external process. The reason for this is that the \ ", StyleBox["MathLink", FontSlant->"Italic"], " communication takes too much time so we do not gain any perfomance by \ using the external process. A much more effective solution would be to have \ an exernal simulator aswell." }], "Text"], Cell[TextData[StyleBox[ "The time of one iteration of PendFunc1 in the external process is"]], "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(AbsTime[calcfunc[1000000]]\), \(exttime\ = \ First[%]\/1000000\)}], "Input"], Cell[BoxData[ \({7.`6.5647\ Second, {58.2355667682955235`, \(-24.7847194092682787`\), 122.847532151604976`, 71.1550033272455362`}}\)], "Output"], Cell[BoxData[ \(7.`6.5647*^-6\ Second\)], "Output"] }, Open ]], Cell["DeactivateCode[calcfunc];", "Input"], Cell[CellGroupData[{ Cell["\<\ Timing[calcfunc[50]] inttime = First[%] / 50\ \>", "Input"], Cell[BoxData[ \({0.0399999999999991473`\ Second, {58.2355667682955235`, \(-24.7847194092682787`\), 122.847532151604976`, 71.1550033272455362`}}\)], "Output"], Cell[BoxData[ \(0.000799999999999982946`\ Second\)], "Output"] }, Open ]], Cell[TextData[StyleBox[ "The performance increase of the external code is"]], "Text"], Cell[CellGroupData[{ Cell["inttime / exttime", "Input"], Cell[BoxData[ \(114.285714285711836`\)], "Output"] }, Open ]], Cell[TextData[StyleBox["which is rather good. "]], "Text"], Cell[TextData[StyleBox["Compare this with the Mathematica Compile."]], "Text"], Cell["\<\ PendFunc1=Compile[{x1, theta, x2, alpha, dx1, dtheta, dx2, dalpha, \ F1, F2}, Evaluate[rhs]];\ \>", "Input"], Cell[CellGroupData[{ Cell["\<\ Timing[calcfunc[50]] comptime = First[%] / 50\ \>", "Input"], Cell[BoxData[ \({0.0800000000000054001`\ Second, {58.2355667682955591`, \(-24.7847194092682743`\), 122.847532151604976`, 71.1550033272455095`}}\)], "Output"], Cell[BoxData[ \(0.001600000000000108`\ Second\)], "Output"] }, Open ]], Cell["\<\ The performance improvement of the external code compared to the \ internally compiled code is\ \>", "Text"], Cell[CellGroupData[{ Cell["comptime / exttime", "Input"], Cell[BoxData[ \(228.571428571444013`\)], "Output"] }, Open ]], Cell["PendFunc1=.", "Input"], Cell[TextData[{ StyleBox["The time of one iteration of PendFunc1 + the "], StyleBox["MathLink's", FontSlant->"Italic"], StyleBox[" calls is"] }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(1\/500\ \(AbsTime[ Do[PendFunc1[1. , 2. , 3. , 4. , 5. , 6. , 7. , 8. , 9. , 10. ], { 500}]]\)\[LeftDoubleBracket]1\[RightDoubleBracket]\)], "Input"], Cell[BoxData[ \(0``8.4185\ Second\)], "Output"] }, Open ]] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Cleaning Up"]], "Section"], Cell[BoxData[ \(\(UninstallCode["\"]; \)\)], "Input"], Cell[BoxData[ \(\(CleanMathCodeFiles[]; \)\)], "Input"] }, Open ]] }, FrontEndVersion->"X 3.0", ScreenRectangle->{{0, 1024}, {0, 768}}, AutoGeneratedPackage->Automatic, ScreenStyleEnvironment->"Working", WindowToolbars->{}, CellGrouping->Automatic, WindowSize->{571, 455}, WindowMargins->{{122, Automatic}, {Automatic, 37}}, PrintingCopies->1, PrintingPageRange->{Automatic, Automatic}, PrintingOptions->{"PrintingMargins"->{{54, 54}, {72, 72}}, "PrintCellBrackets"->False, "PrintRegistrationMarks"->False, "PrintMultipleHorizontalPages"->False}, PrivateNotebookOptions->{"ColorPalette"->{RGBColor, 128}}, ShowCellLabel->True, ShowCellTags->False, RenderingOptions->{"ObjectDithering"->True, "RasterDithering"->False}, CharacterEncoding->"XAutomaticEncoding", Magnification->1, 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, ScriptMinSize->9], Cell[StyleData[All, "Presentation"], PageWidth->WindowWidth, ScriptMinSize->12, FontSize->16], Cell[StyleData[All, "Condensed"], PageWidth->WindowWidth, CellBracketOptions->{"Margins"->{1, 1}, "Widths"->{0, 5}}, ScriptMinSize->8, FontSize->11], Cell[StyleData[All, "Printout"], PageWidth->PaperWidth, ScriptMinSize->7, FontSize->10, PrivateFontOptions->{"FontType"->"Outline"}] }, Closed]], Cell[CellGroupData[{ Cell["Notebook Options", "Section"], Cell["\<\ The options defined for the style below will be used at the \ Notebook level.\ \>", "Text"], 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"]}}, PageHeaderLines->{True, True}, PrintingOptions->{"FirstPageHeader"->False, "FacingPages"->True}, CellFrameLabelMargins->6, StyleMenuListing->None] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headings", "Section"], Cell[CellGroupData[{ Cell[StyleData["Title"], ShowCellBracket->False, CellMargins->{{0, 0}, {0, 0}}, PageBreakBelow->False, LineSpacing->{1, 0}, CounterIncrements->"Title", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subtitle", 0}, {"Subsubtitle", 0}}, FontSize->34, FontColor->GrayLevel[1], Background->RGBColor[0, 0, 1]], Cell[StyleData["Title", "Presentation"], CellMargins->{{0, 0}, {0, 0}}, LineSpacing->{1, 0}, FontSize->44], Cell[StyleData["Title", "Condensed"], CellMargins->{{0, 0}, {0, 0}}, FontSize->20], Cell[StyleData["Title", "Printout"], CellMargins->{{0, 0}, {0, 0}}, FontSize->24, FontTracking->"Plain", Background->GrayLevel[0]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subtitle"], ShowCellBracket->False, CellMargins->{{0, 0}, {0, 0}}, PageBreakBelow->False, LineSpacing->{1, 3}, ParagraphIndent->-96, CounterIncrements->"Subtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subsubtitle", 0}}, FontFamily->"Helvetica", FontSize->18, FontColor->GrayLevel[1], Background->RGBColor[0.2, 0.700008, 0.700008]], Cell[StyleData["Subtitle", "Presentation"], CellMargins->{{0, 0}, {0, 0}}, LineSpacing->{1, 6}, ParagraphIndent->-157, FontSize->30], Cell[StyleData["Subtitle", "Condensed"], CellMargins->{{0, 0}, {0, 0}}, ParagraphIndent->-78, FontSize->14], Cell[StyleData["Subtitle", "Printout"], CellMargins->{{0, 0}, {0, 0}}, ParagraphIndent->-85, FontSize->16, Background->GrayLevel[0.6]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsubtitle"], ShowCellBracket->False, CellMargins->{{10, 4}, {30, 10}}, PageBreakBelow->False, CounterIncrements->"Subsubtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Helvetica", FontSize->14, FontSlant->"Italic"], Cell[StyleData["Subsubtitle", "Presentation"], CellMargins->{{8, 10}, {40, 20}}, LineSpacing->{1, 0}, FontSize->24], Cell[StyleData["Subsubtitle", "Condensed"], CellMargins->{{8, 10}, {12, 8}}, FontSize->12], Cell[StyleData["Subsubtitle", "Printout"], CellMargins->{{9, 10}, {50, 10}}, FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Section"], CellFrame->{{6, 0}, {0, 1}}, CellDingbat->None, CellMargins->{{12, Inherited}, {4, 24}}, CellGroupingRules->{"SectionGrouping", 30}, PageBreakBelow->False, CellFrameMargins->6, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontFamily->"Helvetica", FontSize->16, FontWeight->"Bold", FontColor->RGBColor[0.571389, 0.19675, 0.570504]], Cell[StyleData["Section", "Presentation"], CellMargins->{{10, 10}, {8, 32}}, LineSpacing->{1, 2}, FontSize->24, FontTracking->"Condensed"], Cell[StyleData["Section", "Condensed"], CellMargins->{{8, Inherited}, {2, 12}}, FontSize->12], Cell[StyleData["Section", "Printout"], CellMargins->{{9, 0}, {2, 50}}, FontSize->14, FontTracking->"Plain", FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsection"], CellMargins->{{12, Inherited}, {8, 20}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontFamily->"Helvetica", FontSize->13, FontWeight->"Bold"], Cell[StyleData["Subsection", "Presentation"], CellMargins->{{11, 10}, {8, 32}}, LineSpacing->{1, 0}, FontSize->22], Cell[StyleData["Subsection", "Condensed"], CellMargins->{{8, Inherited}, {2, 12}}, FontSize->12], Cell[StyleData["Subsection", "Printout"], CellMargins->{{9, 0}, {4, 40}}, FontSize->12] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsubsection"], CellDingbat->"\[FilledSquare]", CellMargins->{{25, Inherited}, {8, 12}}, CellGroupingRules->{"SectionGrouping", 50}, PageBreakBelow->False, CounterIncrements->"Subsubsection", FontFamily->"Times", FontSize->13, FontWeight->"Bold"], Cell[StyleData["Subsubsection", "Presentation"], CellMargins->{{29, 10}, {8, 26}}, LineSpacing->{1, 0}, FontSize->18], Cell[StyleData["Subsubsection", "Condensed"], CellMargins->{{22, Inherited}, {2, 12}}, FontSize->10], Cell[StyleData["Subsubsection", "Printout"], CellMargins->{{21, 0}, {4, 20}}, FontSize->11] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[CellGroupData[{ Cell[StyleData["Text"], CellMargins->{{12, 10}, {5, 5}}, LineSpacing->{1, 3}, ParagraphSpacing->{0, 12}, CounterIncrements->"Text", FontFamily->"Times"], Cell[StyleData["Text", "Presentation"], CellMargins->{{13, 10}, {8, 8}}, LineSpacing->{1, 5}, ParagraphSpacing->{0, 12}], Cell[StyleData["Text", "Condensed"], CellMargins->{{8, 10}, {4, 4}}, LineSpacing->{1, 1}, ParagraphSpacing->{0, 4}], Cell[StyleData["Text", "Printout"], CellMargins->{{9, 0}, {4, 4}}, ParagraphSpacing->{0, 6}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["SmallText"], CellMargins->{{12, 10}, {5, 5}}, LineSpacing->{1, 3}, ParagraphSpacing->{0, 6}, CounterIncrements->"SmallText", FontFamily->"Helvetica", FontSize->9], Cell[StyleData["SmallText", "Presentation"], CellMargins->{{13, 10}, {8, 8}}, LineSpacing->{1, 5}, FontSize->12], Cell[StyleData["SmallText", "Condensed"], CellMargins->{{8, 10}, {2, 2}}, LineSpacing->{1, 2}, FontSize->9], Cell[StyleData["SmallText", "Printout"], CellMargins->{{9, 0}, {4, 4}}, FontSize->7] }, 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"], CellFrame->{{3, 0}, {0, 0}}, CellMargins->{{52, 10}, {8, 8}}, Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelMargins->{{5, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultInputFormatType, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontWeight->"Bold", Background->RGBColor[1, 1, 0]], Cell[StyleData["Input", "Presentation"], CellMargins->{{62, Inherited}, {10, 10}}, LineSpacing->{1, 0}], Cell[StyleData["Input", "Condensed"], CellMargins->{{40, 10}, {4, 4}}], Cell[StyleData["Input", "Printout"], CellMargins->{{44, 0}, {6, 6}}, Background->GrayLevel[0.8]] }, Closed]], Cell[StyleData["InlineInput"], Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, DefaultFormatType->DefaultInputFormatType, AutoItalicWords->{}, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontWeight->"Bold"], Cell[CellGroupData[{ Cell[StyleData["Output"], CellFrame->{{3, 0}, {0, 0}}, CellMargins->{{52, 10}, {8, 8}}, CellEditDuplicate->True, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, CellLabelMargins->{{3, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Output", Background->RGBColor[1, 0.900008, 0.900008]], Cell[StyleData["Output", "Presentation"], CellMargins->{{62, Inherited}, {12, 5}}, LineSpacing->{1, 0}], Cell[StyleData["Output", "Condensed"], CellMargins->{{40, Inherited}, {4, 1}}], Cell[StyleData["Output", "Printout"], CellMargins->{{44, 0}, {6, 2}}, Background->GrayLevel[0.900008]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Message"], CellMargins->{{62, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Message", StyleMenuListing->None, FontColor->RGBColor[1, 0, 0]], Cell[StyleData["Message", "Presentation"], CellMargins->{{74, Inherited}, {Inherited, Inherited}}, LineSpacing->{1, 0}], Cell[StyleData["Message", "Condensed"], CellMargins->{{50, Inherited}, {Inherited, Inherited}}], Cell[StyleData["Message", "Printout"], CellMargins->{{54, Inherited}, {Inherited, Inherited}}, FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Print"], CellMargins->{{62, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Print", StyleMenuListing->None], Cell[StyleData["Print", "Presentation"], CellMargins->{{74, Inherited}, {Inherited, Inherited}}, LineSpacing->{1, 0}], Cell[StyleData["Print", "Condensed"], CellMargins->{{50, Inherited}, {Inherited, Inherited}}], Cell[StyleData["Print", "Printout"], CellMargins->{{54, Inherited}, {Inherited, Inherited}}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Graphics"], CellMargins->{{62, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Graphics", StyleMenuListing->None], Cell[StyleData["Graphics", "Presentation"], CellMargins->{{74, Inherited}, {Inherited, Inherited}}], Cell[StyleData["Graphics", "Condensed"], CellMargins->{{52, Inherited}, {Inherited, Inherited}}, ImageSize->{175, 175}], Cell[StyleData["Graphics", "Printout"], CellMargins->{{54, Inherited}, {Inherited, Inherited}}, ImageSize->{250, 250}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["CellLabel"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->11, FontWeight->"Bold", FontColor->RGBColor[0.571389, 0.19675, 0.570504]], Cell[StyleData["CellLabel", "Presentation"], FontSize->12], Cell[StyleData["CellLabel", "Condensed"], FontSize->8], Cell[StyleData["CellLabel", "Printout"], FontSize->8, FontColor->GrayLevel[0]] }, Closed]] }, Open ]], Cell[CellGroupData[{ Cell["Unique Styles", "Section"], Cell[CellGroupData[{ Cell[StyleData["Author"], ShowCellBracket->False, CellMargins->{{10, 4}, {2, 10}}, FontSize->16, FontSlant->"Italic"], Cell[StyleData["Author", "Presentation"], CellMargins->{{12, 10}, {2, 12}}, LineSpacing->{1, 5}, ParagraphSpacing->{0, 12}, FontSize->20], Cell[StyleData["Author", "Condensed"], CellMargins->{{8, 10}, {1, 4}}, LineSpacing->{1, 1}, ParagraphSpacing->{0, 4}, FontSize->12], Cell[StyleData["Author", "Printout"], CellMargins->{{9, 0}, {4, 12}}, ParagraphSpacing->{0, 6}, FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Copyright"], ShowCellBracket->False, CellMargins->{{10, 10}, {40, 2}}, FontFamily->"Helvetica", FontSize->9], Cell[StyleData["Copyright", "Presentation"], CellMargins->{{12, 10}, {50, 2}}, LineSpacing->{1, 5}, FontSize->12], Cell[StyleData["Copyright", "Condensed"], CellMargins->{{8, 10}, {12, 1}}, LineSpacing->{1, 2}, FontSize->9], Cell[StyleData["Copyright", "Printout"], CellMargins->{{9, 0}, {72, 4}}, FontSize->7] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Example"], CellMargins->{{12, 10}, {5, 12}}, LineSpacing->{1, 3}, ParagraphSpacing->{0, 12}, CounterIncrements->"Example", FontFamily->"Times", FontWeight->"Bold"], Cell[StyleData["Example", "Presentation"], CellMargins->{{18, 10}, {8, 20}}, LineSpacing->{1, 5}, ParagraphSpacing->{0, 12}], Cell[StyleData["Example", "Condensed"], CellMargins->{{8, 10}, {4, 8}}, LineSpacing->{1, 1}, ParagraphSpacing->{0, 4}], Cell[StyleData["Example", "Printout"], CellMargins->{{9, 0}, {4, 10}}, ParagraphSpacing->{0, 6}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Definition"], CellFrame->{{3, 0}, {0, 0}}, CellMargins->{{52, 10}, {8, 8}}, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelMargins->{{23, Inherited}, {Inherited, Inherited}}, ShowStringCharacters->True, CounterIncrements->"Definition", FontFamily->"Helvetica", FontWeight->"Bold", FontColor->GrayLevel[1], Background->RGBColor[0.2, 0.700008, 0.700008]], Cell[StyleData["Definition", "Presentation"], CellMargins->{{62, Inherited}, {5, 12}}, LineSpacing->{1, 0}], Cell[StyleData["Definition", "Condensed"], CellMargins->{{40, 10}, {1, 4}}], Cell[StyleData["Definition", "Printout"], CellMargins->{{44, 0}, {2, 6}}, Background->GrayLevel[0.6]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Theorem"], CellFrame->{{3, 0}, {0, 0}}, CellMargins->{{52, 10}, {8, 8}}, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelMargins->{{23, Inherited}, {Inherited, Inherited}}, ShowStringCharacters->True, CounterIncrements->"Theorem", FontFamily->"Helvetica", FontWeight->"Bold", FontColor->GrayLevel[1], Background->RGBColor[0.571389, 0.19675, 0.570504]], Cell[StyleData["Theorem", "Presentation"], CellMargins->{{62, Inherited}, {5, 12}}, LineSpacing->{1, 0}], Cell[StyleData["Theorem", "Condensed"], CellMargins->{{40, 10}, {1, 4}}], Cell[StyleData["Theorem", "Printout"], CellMargins->{{44, 0}, {2, 6}}, Background->GrayLevel[0.4]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["ExerciseMain"], CellFrame->{{6, 0}, {0, 1}}, CellMargins->{{12, Inherited}, {4, 20}}, CellGroupingRules->{"SectionGrouping", 30}, PageBreakBelow->False, CellFrameColor->RGBColor[0.571389, 0.19675, 0.570504], CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontFamily->"Helvetica", FontSize->16, FontWeight->"Bold", FontColor->RGBColor[0.571389, 0.19675, 0.570504]], Cell[StyleData["ExerciseMain", "Presentation"], CellMargins->{{18, 10}, {8, 32}}, LineSpacing->{1, 2}, FontSize->24, FontTracking->"Condensed"], Cell[StyleData["ExerciseMain", "Condensed"], CellMargins->{{8, Inherited}, {2, 12}}, FontSize->12], Cell[StyleData["ExerciseMain", "Printout"], CellMargins->{{9, 0}, {2, 50}}, CellFrameColor->GrayLevel[0.500008], FontSize->14, FontTracking->"Plain", FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Exercise"], CellDingbat->"\[FilledDownTriangle]", CellMargins->{{23, Inherited}, {4, 18}}, CellGroupingRules->{"SectionGrouping", 50}, PageBreakBelow->False, CounterIncrements->"Subsubsection", FontFamily->"Times", FontSize->13, FontWeight->"Bold", FontColor->RGBColor[0.571389, 0.19675, 0.570504]], Cell[StyleData["Exercise", "Presentation"], CellMargins->{{33, 10}, {8, 26}}, LineSpacing->{1, 0}, FontSize->18], Cell[StyleData["Exercise", "Condensed"], CellMargins->{{17, Inherited}, {2, 12}}, FontSize->10], Cell[StyleData["Exercise", "Printout"], CellFrame->{{0, 0}, {0.5, 0}}, CellDingbat->None, CellMargins->{{9, 0}, {6, 20}}, FontSize->11, FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["ExerciseText"], CellMargins->{{62, 10}, {5, 5}}, LineSpacing->{1, 3}, ParagraphSpacing->{0, 8}, CounterIncrements->"ExcersiceText", FontFamily->"Times"], Cell[StyleData["ExerciseText", "Presentation"], CellMargins->{{74, 10}, {8, 8}}, LineSpacing->{1, 5}, ParagraphSpacing->{0, 12}], Cell[StyleData["ExerciseText", "Condensed"], CellMargins->{{52, 10}, {2, 2}}, LineSpacing->{1, 1}, ParagraphSpacing->{0, 4}], Cell[StyleData["ExerciseText", "Printout"], CellMargins->{{54, 0}, {4, 4}}, ParagraphSpacing->{0, 6}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Itemize"], CellDingbat->"\[FilledSmallCircle]", CellMargins->{{65, Inherited}, {8, 8}}, FontFamily->"Times", FontSize->13, FontWeight->"Bold"], Cell[StyleData["Itemize", "Presentation"], CellMargins->{{Inherited, 10}, {8, 12}}, LineSpacing->{1, 0}, FontSize->18], Cell[StyleData["Itemize", "Condensed"], CellMargins->{{Inherited, Inherited}, {2, 12}}, FontSize->10], Cell[StyleData["Itemize", "Printout"], CellMargins->{{Inherited, 0}, {4, 20}}, FontSize->11] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["DisplayCode"], CellFrame->2, CellMargins->{{52, 10}, {8, 8}}, CellHorizontalScrolling->True, PageBreakWithin->True, CellLabelMargins->{{5, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultInputFormatType, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, FontWeight->"Bold", Background->RGBColor[1, 1, 0]], Cell[StyleData["DisplayCode", "Presentation"], CellMargins->{{62, Inherited}, {10, 10}}, LineSpacing->{1, 0}], Cell[StyleData["DisplayCode", "Condensed"], CellMargins->{{40, 10}, {4, 4}}], Cell[StyleData["DisplayCode", "Printout"], CellMargins->{{44, 0}, {6, 6}}, Background->GrayLevel[0.8]] }, Closed]] }, Open ]], Cell[CellGroupData[{ Cell["Formulas and Programming", "Section"], Cell[CellGroupData[{ Cell[StyleData["DisplayFormula"], CellMargins->{{62, 10}, {2, 10}}, CellHorizontalScrolling->True, ScriptLevel->0, SingleLetterItalics->True, UnderoverscriptBoxOptions->{LimitsPositioning->True}], Cell[StyleData["DisplayFormula", "Presentation"], CellMargins->{{74, 10}, {2, 10}}, FontSize->18], Cell[StyleData["DisplayFormula", "Condensed"], CellMargins->{{52, 10}, {2, 10}}, FontSize->10], Cell[StyleData["DisplayFormula", "Printout"], CellMargins->{{54, 10}, {2, 10}}, FontSize->10] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["ChemicalFormula"], CellMargins->{{62, 10}, {2, 10}}, AutoSpacing->False, ScriptLevel->1, ScriptBaselineShifts->{0.6, Automatic}, SingleLetterItalics->False, ZeroWidthTimes->True], Cell[StyleData["ChemicalFormula", "Presentation"], CellMargins->{{74, 10}, {2, 10}}, FontSize->10], Cell[StyleData["ChemicalFormula", "Condensed"], CellMargins->{{52, 10}, {2, 10}}, FontSize->10], Cell[StyleData["ChemicalFormula", "Printout"], CellMargins->{{54, 10}, {2, 10}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Program"], CellMargins->{{12, 10}, {Inherited, 6}}, FontFamily->"Courier"], Cell[StyleData["Program", "Presentation"], CellMargins->{{13, 30}, {Inherited, 4}}, FontSize->9.5], Cell[StyleData["Program", "Condensed"], CellMargins->{{8, 10}, {Inherited, 4}}, FontSize->9.5], Cell[StyleData["Program", "Printout"], CellMargins->{{9, 0}, {Inherited, 4}}, 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->{{62, 10}, {Inherited, Inherited}}, CellFrameLabels->{{None, Cell[ TextData[ {"(", CounterBox[ "NumberedEquation"], ")"}]]}, {None, None}}, DefaultFormatType->DefaultInputFormatType, CounterIncrements->"NumberedEquation", FormatTypeAutoConvert->False], Cell[StyleData["NumberedEquation", "Presentation"], CellMargins->{{74, 10}, {Inherited, Inherited}}], Cell[StyleData["NumberedEquation", "Condensed"], CellMargins->{{52, 10}, {Inherited, Inherited}}], Cell[StyleData["NumberedEquation", "Printout"], CellMargins->{{54, 0}, {Inherited, Inherited}}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedFigure"], CellMargins->{{62, 145}, {Inherited, Inherited}}, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Figure ", CounterBox[ "NumberedFigure"]}]], None}}, CounterIncrements->"NumberedFigure", ImageMargins->{{43, Inherited}, {Inherited, 0}}, FormatTypeAutoConvert->False], Cell[StyleData["NumberedFigure", "Presentation"]], Cell[StyleData["NumberedFigure", "Condensed"]], Cell[StyleData["NumberedFigure", "Printout"]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedTable"], CellMargins->{{62, 145}, {Inherited, Inherited}}, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Table ", CounterBox[ "NumberedTable"]}]], None}}, TextAlignment->Center, CounterIncrements->"NumberedTable", FormatTypeAutoConvert->False], Cell[StyleData["NumberedTable", "Presentation"]], Cell[StyleData["NumberedTable", "Condensed"]], Cell[StyleData["NumberedTable", "Printout"]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headers and Footers", "Section"], Cell[StyleData["Header"], CellMargins->{{0, 0}, {4, 1}}, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9, FontSlant->"Italic"], Cell[StyleData["Footer"], CellMargins->{{0, 0}, {0, 4}}, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->6], Cell[StyleData["PageNumber"], CellMargins->{{0, 0}, {4, 1}}, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9, FontWeight->"Bold"] }, 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->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookLocate[ #2]}]&), Active->True, ButtonFrame->"None", ButtonNote->ButtonData}], Cell[StyleData["Hyperlink", "Presentation"]], Cell[StyleData["Hyperlink", "Condensed"]], Cell[StyleData["Hyperlink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, 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->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "MainBook", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["MainBookLink", "Presentation"]], Cell[StyleData["MainBookLink", "Condensed"]], Cell[StyleData["MainBookLink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["AddOnsLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "AddOns", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["AddOnsLink", "Presentation"]], Cell[StyleData["AddOnsLink", "Condensed"]], Cell[StyleData["AddOnLink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["RefGuideLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "RefGuideLink", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["RefGuideLink", "Presentation"]], Cell[StyleData["RefGuideLink", "Condensed"]], Cell[StyleData["RefGuideLink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["GettingStartedLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "GettingStarted", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["GettingStartedLink", "Presentation"]], Cell[StyleData["GettingStartedLink", "Condensed"]], Cell[StyleData["GettingStartedLink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["OtherInformationLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->GrayLevel[1], Background->RGBColor[1, 0.4, 0], ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "OtherInformation", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["OtherInformationLink", "Presentation"]], Cell[StyleData["OtherInformationLink", "Condensed"]], Cell[StyleData["OtherInformationLink", "Printout"], FontColor->GrayLevel[0], Background->GrayLevel[1]] }, Closed]] }, 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->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[1709, 49, 308, 9, 86, "Title", Evaluatable->False], Cell[2020, 60, 81, 1, 55, "Copyright"], Cell[2104, 63, 107, 3, 31, "Author"], Cell[CellGroupData[{ Cell[2236, 70, 51, 0, 55, "Section"], Cell[2290, 72, 168, 2, 46, "Text"], Cell[2461, 76, 228, 3, 46, "Text"], Cell[2692, 81, 184, 4, 46, "Text"], Cell[2879, 87, 12193, 202, 303, 12101, 199, "GraphicsData", "Bitmap", "Text"] }, Open ]], Cell[CellGroupData[{ Cell[15109, 294, 110, 2, 55, "Section", Evaluatable->False], Cell[15222, 298, 552, 17, 208, "Text", Evaluatable->False], Cell[15777, 317, 745, 21, 300, "Text", Evaluatable->False], Cell[16525, 340, 454, 7, 103, "Input"], Cell[16982, 349, 42, 0, 47, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[17061, 354, 108, 2, 55, "Section", Evaluatable->False], Cell[CellGroupData[{ Cell[17194, 360, 119, 2, 46, "Subsection", Evaluatable->False], Cell[17316, 364, 111, 2, 28, "Text", Evaluatable->False], Cell[17430, 368, 121, 3, 63, "Input"], Cell[17554, 373, 133, 3, 28, "Text", Evaluatable->False], Cell[17690, 378, 156, 4, 83, "Input"], Cell[17849, 384, 98, 2, 28, "Text", Evaluatable->False], Cell[17950, 388, 121, 3, 63, "Input"], Cell[18074, 393, 105, 2, 28, "Text", Evaluatable->False], Cell[18182, 397, 152, 3, 63, "Input"], Cell[18337, 402, 129, 3, 28, "Text", Evaluatable->False], Cell[18469, 407, 224, 6, 83, "Input"], Cell[18696, 415, 105, 2, 28, "Text", Evaluatable->False], Cell[18804, 419, 152, 3, 63, "Input"], Cell[18959, 424, 129, 3, 28, "Text", Evaluatable->False], Cell[19091, 429, 224, 6, 83, "Input"], Cell[19318, 437, 113, 2, 28, "Text", Evaluatable->False], Cell[19434, 441, 174, 3, 67, "Input"], Cell[19611, 446, 135, 3, 28, "Text", Evaluatable->False], Cell[19749, 451, 211, 6, 84, "Input"], Cell[19963, 459, 110, 2, 28, "Text", Evaluatable->False], Cell[20076, 463, 102, 2, 49, "Input"], Cell[20181, 467, 108, 2, 28, "Text", Evaluatable->False], Cell[20292, 471, 102, 2, 49, "Input"], Cell[20397, 475, 98, 2, 28, "Text", Evaluatable->False], Cell[20498, 479, 85, 2, 47, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[20620, 486, 129, 3, 46, "Subsection", Evaluatable->False], Cell[20752, 491, 191, 4, 58, "Text", Evaluatable->False], Cell[20946, 497, 644, 13, 107, "Input"], Cell[21593, 512, 118, 2, 28, "Text", Evaluatable->False], Cell[21714, 516, 349, 7, 85, "Input"], Cell[22066, 525, 119, 2, 28, "Text", Evaluatable->False], Cell[22188, 529, 514, 8, 95, "Input"], Cell[22705, 539, 264, 8, 28, "Text", Evaluatable->False], Cell[22972, 549, 305, 6, 65, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[23314, 560, 110, 2, 46, "Subsection", Evaluatable->False], Cell[23427, 564, 251, 7, 28, "Text", Evaluatable->False], Cell[23681, 573, 396, 7, 79, "Input"], Cell[24080, 582, 153, 5, 28, "Text", Evaluatable->False], Cell[24236, 589, 99, 2, 47, "Input"], Cell[24338, 593, 306, 7, 79, "Input"], Cell[24647, 602, 136, 3, 47, "Input"], Cell[24786, 607, 111, 2, 28, "Text", Evaluatable->False], Cell[24900, 611, 268, 6, 95, "Input"], Cell[25171, 619, 107, 2, 28, "Text", Evaluatable->False], Cell[CellGroupData[{ Cell[25303, 625, 93, 2, 47, "Input"], Cell[25399, 629, 927, 18, 186, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[26363, 652, 93, 2, 47, "Input"], Cell[26459, 656, 456, 12, 186, "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[26976, 675, 102, 2, 55, "Section", Evaluatable->False], Cell[CellGroupData[{ Cell[27103, 681, 82, 1, 46, "Subsection"], Cell[CellGroupData[{ Cell[27210, 686, 38, 0, 47, "Input"], Cell[27251, 688, 422, 11, 23, "Print"] }, Open ]], Cell[27688, 702, 60, 0, 47, "Input"], Cell[27751, 704, 45, 0, 47, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[27833, 709, 45, 0, 46, "Subsection"], Cell[27881, 711, 90, 3, 28, "Text"], Cell[CellGroupData[{ Cell[27996, 718, 481, 8, 127, "Input"], Cell[28480, 728, 178, 3, 39, "Message"], Cell[28661, 733, 178, 3, 39, "Message"] }, Open ]], Cell[28854, 739, 112, 2, 47, "Input"], Cell[28969, 743, 89, 1, 28, "Text"], Cell[29061, 746, 67, 1, 47, "Input"], Cell[29131, 749, 418, 9, 82, "Text"], Cell[29552, 760, 47, 0, 47, "Input"], Cell[29602, 762, 56, 0, 28, "Text"], Cell[29661, 764, 25, 0, 47, "Input"], Cell[CellGroupData[{ Cell[29711, 768, 70, 0, 37, "Subsubsection"], Cell[29784, 770, 326, 6, 64, "Text"], Cell[30113, 778, 204, 4, 46, "Text"], Cell[30320, 784, 140, 4, 77, "Input"], Cell[30463, 790, 94, 1, 28, "Text"], Cell[CellGroupData[{ Cell[30582, 795, 359, 6, 191, "Input"], Cell[30944, 803, 177, 3, 39, "Message"] }, Open ]], Cell[31136, 809, 148, 3, 46, "Text"], Cell[31287, 814, 237, 6, 107, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[31561, 825, 56, 0, 37, "Subsubsection"], Cell[31620, 827, 76, 0, 28, "Text"], Cell[CellGroupData[{ Cell[31721, 831, 98, 2, 47, "Input"], Cell[31822, 835, 79, 1, 23, "Print"] }, Open ]], Cell[31916, 839, 119, 2, 28, "Text"], Cell[CellGroupData[{ Cell[32060, 845, 45, 1, 47, "Input"], Cell[32108, 848, 51, 1, 23, "Print"], Cell[32162, 851, 36957, 592, 5399, "Print"] }, Open ]], Cell[69134, 1446, 125, 2, 28, "Text"], Cell[CellGroupData[{ Cell[69284, 1452, 55, 1, 47, "Input"], Cell[69342, 1455, 8184, 318, 4823, "Print"] }, Open ]], Cell[77541, 1776, 119, 3, 28, "Text"], Cell[CellGroupData[{ Cell[77685, 1783, 108, 2, 47, "Input"], Cell[77796, 1787, 180, 3, 47, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[78013, 1795, 66, 0, 47, "Input"], Cell[78082, 1797, 54, 1, 47, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[78173, 1803, 66, 0, 47, "Input"], Cell[78242, 1805, 54, 1, 47, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[78333, 1811, 45, 1, 47, "Input"], Cell[78381, 1814, 134, 2, 47, "Output"] }, Open ]], Cell[78530, 1819, 483, 12, 82, "Text"], Cell[79016, 1833, 51, 1, 47, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[79104, 1839, 78, 0, 37, "Subsubsection"], Cell[79185, 1841, 101, 3, 28, "Text"], Cell[79289, 1846, 244, 5, 95, "Input"], Cell[79536, 1853, 53, 0, 28, "Text"], Cell[79592, 1855, 123, 2, 63, "Input"], Cell[79718, 1859, 181, 4, 46, "Text"], Cell[79902, 1865, 281, 7, 47, "Input"], Cell[80186, 1874, 202, 4, 46, "Text"], Cell[80391, 1880, 90, 1, 47, "Input"], Cell[80484, 1883, 56, 0, 28, "Text"], Cell[CellGroupData[{ Cell[80565, 1887, 108, 2, 47, "Input"], Cell[80676, 1891, 174, 3, 39, "Message"], Cell[80853, 1896, 1631, 37, 159, "Output"] }, Open ]], Cell[82499, 1936, 85, 1, 28, "Text"], Cell[CellGroupData[{ Cell[82609, 1941, 116, 2, 63, "Input"], Cell[CellGroupData[{ Cell[82750, 1947, 13657, 414, 186, 4151, 292, "GraphicsData", "PostScript", "Graphics"], Cell[96410, 2363, 13352, 411, 186, 4202, 294, "GraphicsData", "PostScript", "Graphics"], Cell[109765, 2776, 15028, 429, 186, 4213, 291, "GraphicsData", "PostScript", "Graphics"], Cell[124796, 3207, 11938, 377, 186, 3900, 273, "GraphicsData", "PostScript", "Graphics"] }, Open ]], Cell[136749, 3587, 704, 18, 47, "Output"] }, Open ]], Cell[137468, 3608, 177, 4, 46, "Text"], Cell[CellGroupData[{ Cell[137670, 3616, 64, 1, 47, "Input"], Cell[137737, 3619, 165, 3, 23, "Print"] }, Open ]], Cell[137917, 3625, 90, 3, 28, "Text"], Cell[138010, 3630, 210, 4, 95, "Input"], Cell[138223, 3636, 87, 1, 28, "Text"], Cell[138313, 3639, 192, 4, 95, "Input"], Cell[138508, 3645, 176, 5, 28, "Text"], Cell[CellGroupData[{ Cell[138709, 3654, 109, 2, 47, "Input"], Cell[138821, 3658, 1619, 37, 159, "Output"] }, Open ]], Cell[140455, 3698, 74, 0, 28, "Text"], Cell[CellGroupData[{ Cell[140554, 3702, 116, 2, 63, "Input"], Cell[CellGroupData[{ Cell[140695, 3708, 13657, 414, 186, 4151, 292, "GraphicsData", "PostScript", "Graphics"], Cell[154355, 4124, 13352, 411, 186, 4202, 294, "GraphicsData", "PostScript", "Graphics"], Cell[167710, 4537, 15028, 429, 186, 4213, 291, "GraphicsData", "PostScript", "Graphics"], Cell[182741, 4968, 11938, 377, 186, 3900, 273, "GraphicsData", "PostScript", "Graphics"] }, Open ]], Cell[194694, 5348, 704, 18, 47, "Output"] }, Open ]], Cell[195413, 5369, 418, 9, 82, "Text"], Cell[195834, 5380, 102, 1, 28, "Text"], Cell[CellGroupData[{ Cell[195961, 5385, 103, 2, 83, "Input"], Cell[196067, 5389, 157, 2, 47, "Output"], Cell[196227, 5393, 55, 1, 50, "Output"] }, Open ]], Cell[196297, 5397, 42, 0, 47, "Input"], Cell[CellGroupData[{ Cell[196364, 5401, 69, 3, 62, "Input"], Cell[196436, 5406, 179, 3, 47, "Output"], Cell[196618, 5411, 66, 1, 47, "Output"] }, Open ]], Cell[196699, 5415, 85, 1, 28, "Text"], Cell[CellGroupData[{ Cell[196809, 5420, 34, 0, 47, "Input"], Cell[196846, 5422, 54, 1, 47, "Output"] }, Open ]], Cell[196915, 5426, 58, 0, 28, "Text"], Cell[196976, 5428, 78, 0, 28, "Text"], Cell[197057, 5430, 118, 3, 62, "Input"], Cell[CellGroupData[{ Cell[197200, 5437, 70, 3, 62, "Input"], Cell[197273, 5442, 179, 3, 47, "Output"], Cell[197455, 5447, 63, 1, 47, "Output"] }, Open ]], Cell[197533, 5451, 118, 3, 28, "Text"], Cell[CellGroupData[{ Cell[197676, 5458, 35, 0, 47, "Input"], Cell[197714, 5460, 54, 1, 47, "Output"] }, Open ]], Cell[197783, 5464, 28, 0, 47, "Input"], Cell[197814, 5466, 163, 5, 28, "Text"], Cell[CellGroupData[{ Cell[198002, 5475, 200, 4, 99, "Input"], Cell[198205, 5481, 51, 1, 50, "Output"] }, Open ]] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[198329, 5490, 50, 0, 55, "Section"], Cell[198382, 5492, 66, 1, 47, "Input"], Cell[198451, 5495, 59, 1, 47, "Input"] }, Open ]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)