(*********************************************************************** Mathematica-Compatible Notebook This notebook can be used on any computer system with Mathematica 4.0, MathReader 4.0, or any compatible application. The data for the notebook starts with the line containing stars above. To get the notebook into a Mathematica-compatible application, do one of the following: * Save the data starting with the line of stars above into a file with a name ending in .nb, then open the file inside the application; * Copy the data starting with the line of stars above to the clipboard, then use the Paste menu command inside the application. Data for notebooks contains only printable 7-bit ASCII and can be sent directly in email or through ftp in text mode. Newlines can be CR, LF or CRLF (Unix, Macintosh or MS-DOS style). NOTE: If you modify the data for this notebook not in a Mathematica- compatible application, you must delete the line below containing the word CacheID, otherwise Mathematica-compatible applications may try to use invalid cache data. For more information on notebooks and Mathematica-compatible applications, contact Wolfram Research: web: http://www.wolfram.com email: info@wolfram.com phone: +1-217-398-0700 (U.S.) Notebook reader applications are available free of charge from Wolfram Research. ***********************************************************************) (*CacheID: 232*) (*NotebookFileLineBreakTest NotebookFileLineBreakTest*) (*NotebookOptionsPosition[ 287561, 8845]*) (*NotebookOutlinePosition[ 288444, 8875]*) (* CellTagsIndexPosition[ 288400, 8871]*) (*WindowFrame->Normal*) Notebook[{ Cell[TextData[{ StyleBox["Benchmarking Cerebellar Control", "Title"], "\n", StyleBox["Patrick van der Smagt", "Subsubtitle"], "\nBenchmarks I-III: rigid robot arm dynamics\nVersion 1.1\n\ http://www.robotic.dlr.de/Smagt/research/cerebellum/" }], "Subtitle"], Cell["\<\ This section computes the dynamics of an N-DoF robot arm using the \ recursive Newton-Euler equations.\ \>", "Text", Editable->False], Cell[CellGroupData[{ Cell["Explanation", "Section", Editable->False], Cell[CellGroupData[{ Cell["Introduction", "Subsection", Editable->False], Cell[TextData[{ "The Denavit-Hartenberg table for a robot is given by\n\tDH \ =Table[{\[Theta][i],d[i],a[i],\[Alpha][i]}, {i,1,DoF}];\nwhere we use the \ Craig convention for the definition of frames, axes, etc. This definition is \ as follows.\n\t\[FilledCircle] The ", Cell[BoxData[ \(TraditionalForm\`Z\_\(\ \)\)]], "axis of frame ", StyleBox["i", FontSlant->"Italic"], ", called ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], ", coincides with the joint axis ", StyleBox["i", FontSlant->"Italic"], ".\n\t\[FilledCircle] The origin of frame", StyleBox[" i", FontSlant->"Italic"], " is located where the perpendicular to ", Cell[BoxData[ \(TraditionalForm\`a\_i\)]], "intersects the joint ", StyleBox["i", FontSlant->"Italic"], " axis.\n\t\[FilledCircle] ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "points along ", Cell[BoxData[ \(TraditionalForm\`a\_i\)]], "in the direction from joint ", StyleBox["i", FontSlant->"Italic"], " to joint ", StyleBox["i+1", FontSlant->"Italic"], ".\n\t\[FilledCircle] If ", Cell[BoxData[ \(TraditionalForm\`a\_i\)]], "=0, then ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "is chosen normal to the plane of ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], "and ", Cell[BoxData[ \(TraditionalForm\`Z\_\(i + 1\)\)]], ".\nThe definitions of the elements of the DH matrix are as follows:\n\t", Cell[BoxData[ \(TraditionalForm\`a\_i\)]], " is the distance from ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], "to ", Cell[BoxData[ \(TraditionalForm\`Z\_\(i + 1\)\)]], "along the ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "axis\n\t", Cell[BoxData[ \(TraditionalForm\`\[Alpha]\_i\)]], " is the angle between ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], " and ", Cell[BoxData[ \(TraditionalForm\`Z\_\(i + 1\)\)]], "measured about ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "(using the right-hand rule)\n\t", Cell[BoxData[ \(TraditionalForm\`d\_i\)]], "is the distance from ", Cell[BoxData[ \(TraditionalForm\`X\_\(i - 1\)\)]], " to ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "measured along the ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], "axis\n\t", Cell[BoxData[ \(TraditionalForm\`\[Theta]\_i\)]], "is the angle between ", Cell[BoxData[ \(TraditionalForm\`X\_\(i - 1\)\)]], "and ", Cell[BoxData[ \(TraditionalForm\`X\_i\)]], "measured about ", Cell[BoxData[ \(TraditionalForm\`Z\_i\)]], "(using the right-hand rule)\nWe use the notation convention of Craig's \ \"Introduction to Robotics\"." }], "Text", Editable->False] }, Open ]], Cell[CellGroupData[{ Cell["Usage", "Subsection", Editable->False], Cell[TextData[{ "This package is used as follows. After clearing the variable definitions, \ first the global variables DoF (the number of degrees of freedom of the \ robot) and the robot Denavit-Hartenberg matrix (using the above conventions) \ have to be given. Furthermore, we have to define an inertia matrix T about \ the center of mass. For instance, for a general 6 degrees of freedom robot \ arm:\n\tClearAllVars;\n\tDoF=6;\n\tDH \ =Table[{\[Theta][i],d[i],a[i],\[Alpha][i]}, {i,1,DoF}];\n\tFor [i=1, i<=DoF, \ i++,\n\t\tT[i] = {{ixx[i], -ixy[i], -ixz[i]},\n\t\t\t {-ixy[i], iyy[i], \ -iyz[i]},\n\t\t\t {-ixz[i], -iyz[i], izz[i]}}];\nThe mass matrix is derived \ from the DH table and the inertia matrices; from this, the Coriolis and \ centrifugal matrices can be computed. The gravity matrix can be derived from \ the DH matrix only.\tIn the below section \"General dynamics of an N-DoF \ robot\" the derivation of these matrices is demonstrated.\nWhen a specific \ arm is defined, the DH table has to be specified (where the free variables \ \[Theta][i] are given as variables for a robot with rotary joints only, \ whereas d[i], a[i], and \[Alpha][i] have to be given values). Furthermore, \ the following quantities must be defined:\n\tg\t\t\tthe gravity (typically \ 9.8)\n\tm[1]...m[DoF]\tthe masses of the links\n\tPc[1]...Pc[DoF]\tthe \ positions of the centers of mass of the links, defined in their own \ coordinate system. When not defined, these are set by default to the base of \ the link (i.e., 0).\nFor the friction, we use a Coulomb model ", Cell[BoxData[ \(TraditionalForm\`\[Tau]\_f\)]], " = Sign[", Cell[BoxData[ \(TraditionalForm\`\[Theta]\& . \)]], "](f0 + f1", Cell[BoxData[ \(TraditionalForm\`\[Tau]\_g\)]], " + f2 ", Cell[BoxData[ \(TraditionalForm\`\[Tau]\_g\%2\)]], ") for each joint, with\n\tf0[1]...f0[DoF]\tthe constant component of the \ Coulomb friction\n\tf1[1]...f1[DoF]\tthe linear component of the Coulomb \ friction\n\tf2[1]...f2[DoF]\tthe quadratic component of the Coulomb friction \ (often set to 0)\nResult of these computations are \[Tau][1]...\[Tau][DoF], \ being the torque not including friction, and \[Tau]t[1]...\[Tau]t[DoF], which \ includes the Coulomb friction.\n\[FilledCircle]The function Gravity[\[Tau]] \ extracts the gravity component of the torque;\n\[FilledCircle]The function \ Mass[\[Tau]] extracts the mass component of the torque;\n\[FilledCircle]The \ function Coriolis[\[Tau]] extracts the Coriolis and centrifugal forces.\n\n\ NOTE: this package has been tested for robots with rotary joints only.\nAll \ important cells are initialized by default; you can just start your \ computation (e.g., evaluate one of the examples below)." }], "Text", Editable->False], Cell[BoxData[ RowBox[{\(Off[General::"\"]; \), StyleBox[ \( (*\ Switch\ off\ those\ "\"\ warnings\ *) \), "Commentary"]}]], "Input", Editable->False, InitializationCell->True] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Implementation Part 1: Initialization", "Section", Editable->False], Cell["\<\ The matrix R[i,j] is the rotation matrix from joint i to joint j. \ It is generated from the DH matrix:\ \>", "Text", Editable->False], Cell[BoxData[ RowBox[{"InitR", " ", ":=", " ", RowBox[{"Block", "[", RowBox[{\({}\), ",", RowBox[{ RowBox[{ RowBox[{"For", "[", RowBox[{ \(i = 1\), ",", " ", \(i <= DoF\), ",", " ", \(i++\), ",", "\n", "\t\t", StyleBox[\( (*\ Compute\ R\ from\ the\ DH\ matrix\ *) \), "Commentary"], "\n", "\t\t\t", \(R[i - 1, i]\ = \ {\n\t\t\t{Cos[DH[\([i, 1]\)]], \(-Cos[DH[\([i, 4]\)]]\)\ Sin[DH[\([i, 1]\)]], Sin[DH[\([i, 4]\)]]\ Sin[DH[\([i, 1]\)]]}, \n \t\t\t{Sin[DH[\([i, 1]\)]], Cos[DH[\([i, 4]\)]]\ Cos[DH[\([i, 1]\)]], \(-Sin[DH[\([i, 4]\)]]\) Cos[DH[\([i, 1]\)]]}, \n \t\t\t{0, Sin[DH[\([i, 4]\)]], \ Cos[DH[\([i, 4]\)]]}\n \t\t}\)}], "]"}], "\n", "\t\t", "\n", " ", StyleBox[\( (*\ Compute\ the\ inverse\ R\ matrices\ *) \), "Commentary"], "\n", " ", \(For[i = 1, \ i <= DoF, \ \(i++\), \ R[i, i - 1] = Map[Simplify, \ Inverse[R[i - 1, i]]]]\)}], ";", "\n", "\t", \(R[DoF, \ DoF + 1] = IdentityMatrix[3]\), " ", ";"}]}], "\n", "]"}]}]], "Input", Editable->False, InitializationCell->True], Cell[TextData[{ "P[i-1,i] is the origin of the ith coordinate frame with respect to the \ (i-1)th coodinate system. It can be computed from the DH matrix: since ", StyleBox["d", FontSlant->"Italic"], " is the distance aloing the ", StyleBox["Z", FontSlant->"Italic"], " axis and ", StyleBox["a", FontSlant->"Italic"], " the distance along the ", StyleBox["X", FontSlant->"Italic"], " axis, we can directly fill these values in.\nPc[i] is the position of the \ center of mass of link i in coordinate frame i, which is \"arbitrarily\" \ chosen at the end of the link (since the actuators are often situated there). \ This is only a coarse approximation, however!" }], "Text"], Cell[BoxData[ \(InitP\ := \ Block[{}, \n\t\tP[0, 1] = {0, 0, 0}; \n\t\tPc[DoF + 1]\ = \ {0, 0, 0}; \n\t\t\n\t\t For[i = 1, \ i <= DoF, \ \(i++\), \n\t\t\t\t P[i, i + 1] = {DH[\([i, 3]\)], 0, \ DH[\([i, 2]\)]}; \n\t\t\t\t Pc[i]\ = {DH[\([i, 2]\)] + DH[\([i, 3]\)], 0, 0}; \n\t\t]\n]\)], "Input", InitializationCell->True], Cell[TextData[ "When a is zero for the first joint, this means that we are rotating along \ the z-axis which is pointing up. Therefore, the gravity component is working \ in the z direction. In all other cases, the gravity works along the y \ component. The variable \[Nu] is defined correspondingly.\nThe other \ variables are set to 0."], "Text", Editable->False], Cell[BoxData[ \(InitVars\ := \ Block[{}, \n\t If[AtomQ[DH[\([1, 3]\)]]\ \[And] \ DH[\([1, 3]\)] == 0, \[Nu][0] = {0, \ 0, g}, \[Nu][0] = {0, g, 0}, \[Nu][0] = {0, g, 0}]; \n\t\[Omega][0] = {0, 0, 0}; \n\t d\[Omega][0] = {0, 0, 0}; \n\tf[DoF + 1] = {0, 0, 0}; \n\t n[DoF + 1] = {0, 0, 0}; \n\t]\)], "Input", Editable->False, InitializationCell->True], Cell[BoxData[ \(Init\ := \ Block[{}, \n\t\tInitR; \n\t\tInitP; \n\t\tInitVars; \n\t\t]\)], "Input",\ Editable->False, InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell["Implementation Part 2: Recursive Newton-Euler", "Section", Editable->False], Cell["\<\ Note that the \"Simplify\" operation in these equations is most \ time-consuming. You can take it out, but then be prepared to get \ ridiculously long answers...\ \>", "Text", Editable->False], Cell[CellGroupData[{ Cell["Forwards computation", "Subsection", Editable->False], Cell[BoxData[ \(Forwards\ [verbose_] := \ Block[{}, \n\t\t For[i = 0, \ i < DoF, \ \(i++\), \n\t\t\t \[Omega][i + 1]\ = \ Map[Simplify, \ R[i + 1, i] . \[Omega][i]\ + \ {0, 0, d\[Theta][i + 1]}]; \n \t\t\td\[Omega][i + 1]\ = \ Map[Simplify, \ R[i + 1, i] . d\[Omega][i]\ + \ Cross[R[i + 1, i] . \[Omega][i], \ {0, 0, d\[Theta][i + 1]}] \ + \ {0, 0, dd\[Theta][i + 1]}]; \n\t\t\t \[Nu][i + 1]\ = \ Map[Simplify, \ R[i + 1, i] . \((Cross[d\[Omega][i], \ P[i, i + 1]] + Cross[\[Omega][i], Cross[\[Omega][i], \ P[i, i + 1]]]\ + \ \[Nu][i])\)]; \n\t\t\t \[Nu]c[i + 1]\ = \ Map[Simplify, \ Cross[d\[Omega][i + 1], Pc[i + 1]]\ + \ Cross[\[Omega][i + 1], Cross[\[Omega][i + 1], Pc[i + 1]]]\ + \ \[Nu][i + 1]]; \n\t\t\t F[i + 1]\ = \ Map[Simplify, \ m[i + 1]\ \[Nu]c[i + 1]]; \n\t\t\t NN[i + 1]\ = \ Map[Simplify, T[i + 1]\ . \ d\[Omega][i + 1]\ + \ Cross[\[Omega][i + 1], \ T[i + 1]\ . \ \[Omega][i + 1]]]; \n \t\t\tIf[verbose, Print["\", \ i + 1, \ "\< of \>", \ DoF, \ "\< finished.\>"]]; \n\t\t\t]\n\t]\)], "Input", Editable->False, InitializationCell->True] }, Open ]], Cell[CellGroupData[{ Cell["Backwards computation", "Subsection", Editable->False], Cell[BoxData[ RowBox[{\(Backwards\ [verbose_]\), ":=", RowBox[{"Block", "[", RowBox[{\({}\), ",", "\n", "\t\t", RowBox[{"For", "[", RowBox[{ \(i = DoF\), ",", \(i > 0\), ",", \(i--\), ",", " ", "\n", "\t\t\t", RowBox[{ \(f[i] = Map[Simplify, R[i, i + 1] . f[i + 1]\ + F[i]]\), ";", "\n", "\t\t\t", \(n[i] = Map[Simplify, NN[i] + R[i, i + 1]\ . \ n[i + 1]\ + \ Cross[Pc[i], F[i]]\ + \ Cross[P[i, i + 1], \ R[i, i + 1] . f[i + 1]]]\), ";", "\n", "\t\t\t", StyleBox[ \( (*\ This\ is\ the\ torque\ without\ friction\ *) \), "Commentary"], "\n", "\t\t\t", \(\[Tau]m[i]\ = \ \(n[i]\)[\([3]\)]\), ";", "\n", "\t\t\t", StyleBox[ \( (*\ This\ is\ the\ gravity\ component\ of\ the\ torque \ *) \), "Commentary"], "\n", "\t\t\t", \(\[Tau]g[i]\ = \ Gravity[\[Tau]m[i]]\), ";", "\n", "\t\t\t", StyleBox[ \( (*\ This\ is\ the\ friction\ component\ of\ the\ torque \ *) \), "Commentary"], "\n", "\t\t\t", \(\[Tau]f[i]\ = \ Sign[d\[Theta][i]] \((f0[i]\ + \ f1[i] \[Tau]g[i]\ + \ f2[i]\ \[Tau]g[i]\^2)\)\), ";", "\n", "\t\t\t", StyleBox[\( (*\ This\ is\ the\ total\ torque\ *) \), "Commentary"], "\n", "\t\t\t", \(\[Tau][i]\ = \ \[Tau]m[i] + \[Tau]f[i]\), ";", "\n", "\t\t\t", \(If[verbose, Print["\", \ DoF + 1 - i, \ "\< of \>", \ DoF, \ "\< finished.\>"]]\), ";"}]}], "\n", "\t\t", "]"}]}], "\n", "\t", "]"}]}]], "Input", Editable->False, InitializationCell->True] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Implementation Part 3: Help functions", "Section", Editable->False], Cell[BoxData[ \(ClearAllVars\ := \ Block[{}, \n\t\tOff[ClearAll::"\"]; \n\t\tClearAll[DH]; ClearAll[DoF]; ClearAll[F]; ClearAll[NN]; ClearAll[P]; ClearAll[Pc]; ClearAll[R]; ClearAll[T]; ClearAll[a]; ClearAll[f]; ClearAll[g]; ClearAll[j]; ClearAll[m]; ClearAll[n]; ClearAll[\[Alpha]]; ClearAll[\[Nu]]; ClearAll[\[Nu]c]; ClearAll[\[Omega]]; ClearAll[d\[Omega]]; \ ClearAll[\[Tau]]; ClearAll[\[Theta]]; ClearAll[d\[Theta]]; \ ClearAll[dd\[Theta]]; ClearAll[f0]; ClearAll[f1]; ClearAll[f2]; \n\t]\)], "Input", Editable->False, InitializationCell->True], Cell[BoxData[ \(Gravity[\[Tau]_]\ := \ Simplify[\[Tau] /. Join[Table[d\[Theta][i] -> 0, {i, DoF}], Table[dd\[Theta][i] -> 0, {i, DoF}]]]; \n Mass[\[Tau]_]\ := \ Simplify[\[Tau] /. Join[Table[d\[Theta][i] -> 0, {i, DoF}], {g -> 0}]]; \nCoriolis[\[Tau]_] := Simplify[\[Tau] /. Join[Table[dd\[Theta][i] -> 0, {i, DoF}], {g -> 0}]]; \)], "Input", Editable->False, InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell["Example 1: General dynamics of an N-DoF robot", "Section"], Cell["\<\ We can also get the equations for a general N-link robot. In the \ below implementation, we demonstrate a 2DoF robot. Note that these equations \ may take some time to compute!\ \>", "Text"], Cell[BoxData[ RowBox[{ \(ClearAllVars; \nDoF\ = \ 2; \n DH\ = Table[{\[Theta][i], d[i], a[i], \[Alpha][i]}, \ {i, 1, DoF}]; \), " ", StyleBox[\( (*\ general\ two - link\ robot*) \), "Commentary"], "\n", \( (*DH\ = Table[{\[Theta][i], 0, l[i], 0}, \ {i, 1, DoF}]; \ \ *) \), " ", StyleBox[\( (*\ exemplar\ two - link\ robot\ *) \), "Commentary"]}]], "Input"], Cell[TextData[StyleBox["We use the general inertia matrix:"]], "Text"], Cell[BoxData[ \(\(For\ [i = 1, \ i <= DoF, \ \(i++\), \n\t\t T[i]\ = \ {{ixx[i], \ \(-ixy[i]\), \ \(-ixz[i]\)}, \n \t\t\t\ {\(-ixy[i]\), \ iyy[i], \ \(-iyz[i]\)}, \n \t\t\t\ {\(-ixz[i]\), \ \(-iyz[i]\), \ izz[i]}}]; \)\)], "Input"], Cell[BoxData[ \(\(Init; \)\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{\(Forwards[True]\), " ", StyleBox[ RowBox[{"(*", " ", RowBox[{"\"\\"", " ", StyleBox["indicates", "Text"], StyleBox[" ", "Text"], StyleBox["that", "Text"], StyleBox[" ", "Text"], StyleBox["the", "Text"], StyleBox[" ", "Text"], StyleBox["iterations", "Text"], StyleBox[" ", "Text"], StyleBox["are", "Text"], StyleBox[" ", "Text"], StyleBox["numbered", "Text"]}], " ", "*)"}], "Commentary"]}]], "Input"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Backwards[True]\)], "Input"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell[TextData[{ "Now:\n\t", StyleBox["f", FontSlant->"Italic"], " is the force exerted on link ", StyleBox["i", FontSlant->"Italic"], " by link ", StyleBox["i-1", FontSlant->"Italic"], "\n\t", StyleBox["n", FontSlant->"Italic"], " is the torque exerted on link ", StyleBox["i", FontSlant->"Italic"], " by link ", StyleBox["i-1", FontSlant->"Italic"], "\n\t\[Tau] is the ", StyleBox["z", FontSlant->"Italic"], "-element of ", StyleBox["n (", FontSlant->"Italic"], "and therefore the torque in the direction of the rotating joint) with \ friction added." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(For[i = 1, \ i <= DoF, \ \(i++\), \ \n\t Print["\", i, "\<] = \>", \ f[i]]; \n\t Print["\", i, "\<] = \>", \ n[i]]; \n\t Print["\<\[Tau][\>", i, "\<] = \>", \ \[Tau][i]]; \n\t]\)], "Input"], Cell[BoxData[ InterpretationBox[ \("f["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]{ 1\/4\ \(( \(-2\)\ a[1]\ d\[Theta][1]\^2\ m[1] - 4\ a[1]\ d\[Theta][1]\^2\ m[2] + Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ d\[Theta][1]\^2\ m[2] - 2\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ d\[Theta][1]\ d\[Theta][2]\ m[2] - Cos[\[Alpha][2] - \[Theta][2]]\ d\[Theta][1]\ \((d[2]\ d\[Theta][1] + 2\ a[2]\ d\[Theta][2])\)\ m[2] - 2\ a[2]\ Cos[\[Theta][2]]\ \((d\[Theta][1]\^2 + d\[Theta][2]\^2)\)\ m[2] + 4\ g\ m[1]\ Sin[\[Theta][1]] + 4\ g\ m[2]\ Sin[\[Theta][1]] + d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] + a[2]\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] - 2\ a[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Theta][2]] + d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]] - a[2]\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]])\), 1\/4\ \(( 2\ a[1]\ dd\[Theta][1]\ m[1] + 4\ a[1]\ dd\[Theta][1]\ m[2] + 2\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] - Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] + a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2]\ m[2] + a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2]\ m[2] + 2\ g\ Cos[\[Alpha][1] - \[Theta][1]]\ \((m[1] + m[2])\) + 2\ g\ Cos[\[Alpha][1] + \[Theta][1]]\ \((m[1] + m[2])\) + d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] + 2\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] - 2\ a[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - 2\ a[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Theta][2]] + d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]] - 2\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]])\), \(-g\)\ Cos[\[Theta][1]]\ \((m[1] + m[2])\)\ Sin[\[Alpha][1]] + 1\/2\ a[2]\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2]]}\), SequenceForm[ "f[", 1, "] = ", { Times[ Rational[ 1, 4], Plus[ Times[ -2, a[ 1], Power[ d\[Theta][ 1], 2], m[ 1]], Times[ -4, a[ 1], Power[ d\[Theta][ 1], 2], m[ 2]], Times[ Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2]], Times[ -2, a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d\[Theta][ 1], d\[Theta][ 2], m[ 2]], Times[ -1, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d\[Theta][ 1], Plus[ Times[ d[ 2], d\[Theta][ 1]], Times[ 2, a[ 2], d\[Theta][ 2]]], m[ 2]], Times[ -2, a[ 2], Cos[ \[Theta][ 2]], Plus[ Power[ d\[Theta][ 1], 2], Power[ d\[Theta][ 2], 2]], m[ 2]], Times[ 4, g, m[ 1], Sin[ \[Theta][ 1]]], Times[ 4, g, m[ 2], Sin[ \[Theta][ 1]]], Times[ d[ 2], dd\[Theta][ 1], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ a[ 2], dd\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -2, a[ 2], dd\[Theta][ 1], m[ 2], Sin[ \[Theta][ 2]]], Times[ d[ 2], dd\[Theta][ 1], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]], Times[ -1, a[ 2], dd\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]], Times[ Rational[ 1, 4], Plus[ Times[ 2, a[ 1], dd\[Theta][ 1], m[ 1]], Times[ 4, a[ 1], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1], m[ 2]], Times[ Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ -1, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2], m[ 2]], Times[ a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], Plus[ m[ 1], m[ 2]]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], Plus[ m[ 1], m[ 2]]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ 2, a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -2, a[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -2, a[ 2], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]], Times[ -2, a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]], Plus[ Times[ -1, g, Cos[ \[Theta][ 1]], Plus[ m[ 1], m[ 2]], Sin[ \[Alpha][ 1]]], Times[ Rational[ 1, 2], a[ 2], dd\[Theta][ 2], m[ 2], Sin[ \[Alpha][ 2]]]]}], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("n["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]{ 1\/4\ \(( \(-4\)\ dd\[Theta][1]\ ixz[1] + 4\ d\[Theta][1]\^2\ iyz[1] - 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[1]\ m[1] - a[1]\ d[1]\ dd\[Theta][1]\ m[1] - 4\ Cos[\[Theta][2]]\^2\ d[1]\ \((g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]] + a[1]\ dd\[Theta][1])\)\ m[2]\ Sin[\[Alpha][2]]\^2 - Cos[\[Theta][2]]\ \((4\ dd\[Theta][2]\ ixz[2] - 4\ Cos[2\ \[Alpha][2]]\ d\[Theta][1]\^2\ iyz[2] - 4\ d\[Theta][2]\^2\ iyz[2] + a[2]\ d[2]\ dd\[Theta][2]\ m[2] - 4\ d\[Theta][1]\ d\[Theta][2]\ ixx[2]\ Sin[\[Alpha][2]] + 4\ dd\[Theta][1]\ ixy[2]\ Sin[\[Alpha][2]] + 4\ d\[Theta][1]\ d\[Theta][2]\ iyy[2]\ Sin[\[Alpha][2]] - 4\ d\[Theta][1]\ d\[Theta][2]\ izz[2]\ Sin[\[Alpha][2]] - 2\ g\ Cos[\[Theta][1]]\ d[2]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + 2\ a[2]\ d[1]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]]\^2 + 2\ d[1]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^3 + 2\ d\[Theta][1]\^2\ iyy[2]\ Sin[2\ \[Alpha][2]] - 2\ d\[Theta][1]\^2\ izz[2]\ Sin[2\ \[Alpha][2]])\) + 2\ a[2]\ d[1]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Theta][2]] + Cos[\[Alpha][2]]\^3\ d\[Theta][1]\^2\ \((4\ ixz[2] + a[2]\ d[2]\ m[2])\)\ Sin[\[Theta][2]] + 4\ dd\[Theta][2]\ izz[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 2\ d[1]\ d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] + a[2]\^2\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 4\ dd\[Theta][1]\ iyz[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][2]] + 2\ a[2]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][2]] - 2\ g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][2]] + 4\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\^3\ Sin[\[Theta][2]] + 4\ d\[Theta][1]\ d\[Theta][2]\ ixy[2]\ Sin[2\ \[Alpha][2]]\ Sin[\[Theta][2]] - 2\ dd\[Theta][1]\ iyy[2]\ Sin[2\ \[Alpha][2]]\ Sin[\[Theta][2]] + 2\ dd\[Theta][1]\ izz[2]\ Sin[2\ \[Alpha][2]]\ Sin[\[Theta][2]] - 4\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[1]\ m[2]\ Sin[\[Theta][2]]\^2 - 4\ a[1]\ d[1]\ dd\[Theta][1]\ m[2]\ Sin[\[Theta][2]]\^2 - Cos[\[Alpha][2]]\ \((2\ Cos[\[Theta][2]]\^2\ d[2]\ \((g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]] + a[1]\ dd\[Theta][1])\)\ m[2] + Cos[\[Theta][2]]\ \((4\ dd\[Theta][1]\ ixz[2] - 8\ d\[Theta][1]\ d\[Theta][2]\ iyz[2] + a[2]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ a[2]\ d[1]\ dd\[Theta][2]\ m[2] + d[2]\^2\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]) \) + Sin[\[Theta][2]]\ \((\(-4\)\ d\[Theta][2]\^2\ ixz[2] - 4\ dd\[Theta][2]\ iyz[2] - 4\ a[2]\ d[1]\ d\[Theta][1]\ d\[Theta][2]\ m[2] - a[2]\ d[2]\ d\[Theta][2]\^2\ m[2] + d[2]\^2\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]] - 4\ d\[Theta][1]\^2\ ixz[2]\ Sin[\[Alpha][2]]\^2 - a[2]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2 + 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[2]\ m[2]\ Sin[\[Theta][2]] + 2\ a[1]\ d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Theta][2]])\))\) + 2\ a[1]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[2\ \[Theta][2]] - 2\ a[1]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[2\ \[Theta][2]] - 2\ g\ d[1]\ m[2]\ Sin[\[Theta][1]]\ Sin[2\ \[Theta][2]] + 2\ g\ d[1]\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][1]]\ Sin[2\ \[Theta][2]] - 2\ Cos[\[Alpha][2]]\^2\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\^2\ d[1]\ m[2] + a[2]\ Cos[\[Theta][2]]\ d[1]\ dd\[Theta][1]\ m[2] + 2\ a[1]\ Cos[\[Theta][2]]\^2\ d[1]\ dd\[Theta][1]\ m[2] + Cos[\[Theta][2]]\ d[1]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] - 4\ d\[Theta][1]\ d\[Theta][2]\ ixz[2]\ Sin[\[Theta][2]] - 2\ dd\[Theta][1]\ iyz[2]\ Sin[\[Theta][2]] - a[2]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Theta][2]] + g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Theta][2]] - 2\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] + a[1]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[2\ \[Theta][2]] - g\ d[1]\ m[2]\ Sin[\[Theta][1]]\ Sin[2\ \[Theta][2]])\)) \), 1\/4\ \((\(-4\)\ d\[Theta][1]\^2\ ixz[1] - 4\ dd\[Theta][1]\ iyz[1] - a[1]\ d[1]\ d\[Theta][1]\^2\ m[1] - Cos[\[Alpha][2]]\^3\ Cos[\[Theta][2]]\ d\[Theta][1]\^2\ \((4\ ixz[2] + a[2]\ d[2]\ m[2])\) + 2\ g\ a[1]\ Cos[\[Theta][1]]\ m[1]\ Sin[\[Alpha][1]] - 2\ a[1]\ a[2]\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2]] + 4\ g\ a[1]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]]\^2 - Cos[\[Theta][2]]\ \((2\ a[2]\ d[1]\ d\[Theta][2]\^2\ m[2] + 4\ dd\[Theta][2]\ izz[2]\ Sin[\[Alpha][2]] - 2\ d[1]\ d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]] + a[2]\^2\ dd\[Theta][2]\ m[2]\ Sin[\[Alpha][2]] - 4\ dd\[Theta][1]\ iyz[2]\ Sin[\[Alpha][2]]\^2 + 2\ a[2]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2 - 2\ g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]]\^2 + 4\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\^3 + 4\ d\[Theta][1]\ d\[Theta][2]\ ixy[2]\ Sin[2\ \[Alpha][2]] - 2\ dd\[Theta][1]\ iyy[2]\ Sin[2\ \[Alpha][2]] + 2\ dd\[Theta][1]\ izz[2]\ Sin[2\ \[Alpha][2]])\) + 2\ g\ d[1]\ m[1]\ Sin[\[Theta][1]] - 4\ Cos[\[Theta][2]]\^2\ d[1]\ m[2]\ \((a[1]\ d\[Theta][1]\^2 - g\ Sin[\[Theta][1]])\) - 4\ dd\[Theta][2]\ ixz[2]\ Sin[\[Theta][2]] + 4\ Cos[2\ \[Alpha][2]]\ d\[Theta][1]\^2\ iyz[2]\ Sin[\[Theta][2]] + 4\ d\[Theta][2]\^2\ iyz[2]\ Sin[\[Theta][2]] - a[2]\ d[2]\ dd\[Theta][2]\ m[2]\ Sin[\[Theta][2]] + 4\ d\[Theta][1]\ d\[Theta][2]\ ixx[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 4\ dd\[Theta][1]\ ixy[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 4\ d\[Theta][1]\ d\[Theta][2]\ iyy[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] + 4\ d\[Theta][1]\ d\[Theta][2]\ izz[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] + 2\ g\ Cos[\[Theta][1]]\ d[2]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 2\ a[2]\ d[1]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][2]] - 2\ d[1]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^3\ Sin[\[Theta][2]] - 2\ d\[Theta][1]\^2\ iyy[2]\ Sin[2\ \[Alpha][2]]\ Sin[\[Theta][2]] + 2\ d\[Theta][1]\^2\ izz[2]\ Sin[2\ \[Alpha][2]]\ Sin[\[Theta][2]] - 4\ a[1]\ d[1]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][2]]\^2 + 4\ g\ d[1]\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[\[Theta][1]]\ Sin[\[Theta][2]]\^2 - Cos[\[Alpha][2]]\ \((Cos[\[Theta][2]]\ \((4\ d\[Theta][2]\^2\ ixz[2] + 4\ dd\[Theta][2]\ iyz[2] + 4\ a[2]\ d[1]\ d\[Theta][1]\ d\[Theta][2]\ m[2] + a[2]\ d[2]\ d\[Theta][2]\^2\ m[2] - d[2]\^2\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]] + 4\ d\[Theta][1]\^2\ ixz[2]\ Sin[\[Alpha][2]]\^2 + a[2]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\^2)\) + 2\ Cos[\[Theta][2]]\^2\ d[2]\ m[2]\ \((a[1]\ d\[Theta][1]\^2 - g\ Sin[\[Theta][1]])\) + Sin[\[Theta][2]]\ \((4\ dd\[Theta][1]\ ixz[2] - 8\ d\[Theta][1]\ d\[Theta][2]\ iyz[2] + a[2]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ a[2]\ d[1]\ dd\[Theta][2]\ m[2] + d[2]\^2\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] + 2\ a[1]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - 2\ g\ d[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\) + 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[1]\ m[2]\ Sin[2\ \[Theta][2]] + 2\ a[1]\ d[1]\ dd\[Theta][1]\ m[2]\ Sin[2\ \[Theta][2]] - 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[1]\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[2\ \[Theta][2]] - 2\ a[1]\ d[1]\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]]\^2\ Sin[2\ \[Theta][2]] - 2\ Cos[\[Alpha][2]]\^2\ \((Cos[\[Theta][2]]\ \((4\ d\[Theta][1]\ d\[Theta][2]\ ixz[2] + 2\ dd\[Theta][1]\ iyz[2] + a[2]\ d[1]\ d\[Theta][1]\^2\ m[2] + a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2] - g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]] + 2\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]])\) + m[2]\ \(( \(-2\)\ g\ a[1]\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]] + a[2]\ d[1]\ dd\[Theta][1]\ Sin[\[Theta][2]] + d[1]\ d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] + 2\ a[1]\ d[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]]\^2 - 2\ g\ d[1]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]]\^2 + g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[1]\ Sin[2\ \[Theta][2]] + a[1]\ d[1]\ dd\[Theta][1]\ Sin[2\ \[Theta][2]])\)) \))\), 1\/16\ \((\(-16\)\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] + 8\ dd\[Theta][1]\ iyy[2] + 16\ dd\[Theta][1]\ izz[1] + 8\ dd\[Theta][1]\ izz[2] + 4\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[1] + 4\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[1] + 4\ a[1]\^2\ dd\[Theta][1]\ m[1] + 8\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[2] + 8\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]]\ m[2] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]]\ m[2] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]] \ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]] \ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]] \ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + 16\ a[1]\^2\ dd\[Theta][1]\ m[2] + 4\ a[2]\^2\ dd\[Theta][1]\ m[2] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ d[2]\^2\ dd\[Theta][1]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ Cos[\[Alpha][2]]\ dd\[Theta][2]\ \((4\ izz[2] + a[2]\^2\ m[2])\) + 2\ Cos[2\ \[Alpha][2]]\ \((8\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] - dd\[Theta][1]\ \((4\ iyy[2] - 4\ izz[2] + d[2]\^2\ m[2])\))\) - 16\ d\[Theta][2]\^2\ ixz[2]\ Sin[\[Alpha][2]] - 16\ dd\[Theta][2]\ iyz[2]\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Alpha][2]] - 16\ d\[Theta][1]\ d\[Theta][2]\ ixz[2]\ Sin[2\ \[Alpha][2]] - 16\ dd\[Theta][1]\ iyz[2]\ Sin[2\ \[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]])\)}\), SequenceForm[ "n[", 1, "] = ", { Times[ Rational[ 1, 4], Plus[ Times[ -4, dd\[Theta][ 1], ixz[ 1]], Times[ 4, Power[ d\[Theta][ 1], 2], iyz[ 1]], Times[ -2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 1], m[ 1]], Times[ -1, a[ 1], d[ 1], dd\[Theta][ 1], m[ 1]], Times[ -4, Power[ Cos[ \[Theta][ 2]], 2], d[ 1], Plus[ Times[ g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]]], Times[ a[ 1], dd\[Theta][ 1]]], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ -1, Cos[ \[Theta][ 2]], Plus[ Times[ 4, dd\[Theta][ 2], ixz[ 2]], Times[ -4, Cos[ Times[ 2, \[Alpha][ 2]]], Power[ d\[Theta][ 1], 2], iyz[ 2]], Times[ -4, Power[ d\[Theta][ 2], 2], iyz[ 2]], Times[ a[ 2], d[ 2], dd\[Theta][ 2], m[ 2]], Times[ -4, d\[Theta][ 1], d\[Theta][ 2], ixx[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, dd\[Theta][ 1], ixy[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], iyy[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, d\[Theta][ 1], d\[Theta][ 2], izz[ 2], Sin[ \[Alpha][ 2]]], Times[ -2, g, Cos[ \[Theta][ 1]], d[ 2], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 2], d[ 1], dd\[Theta][ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, d[ 1], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 3]], Times[ 2, Power[ d\[Theta][ 1], 2], iyy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -2, Power[ d\[Theta][ 1], 2], izz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]]]], Times[ 2, a[ 2], d[ 1], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ Power[ Cos[ \[Alpha][ 2]], 3], Power[ d\[Theta][ 1], 2], Plus[ Times[ 4, ixz[ 2]], Times[ a[ 2], d[ 2], m[ 2]]], Sin[ \[Theta][ 2]]], Times[ 4, dd\[Theta][ 2], izz[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -2, d[ 1], d[ 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ Power[ a[ 2], 2], dd\[Theta][ 2], m[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -4, dd\[Theta][ 1], iyz[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 2]]], Times[ 2, a[ 2], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 2]]], Times[ -2, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 2]]], Times[ 4, Power[ d\[Theta][ 1], 2], ixy[ 2], Power[ Sin[ \[Alpha][ 2]], 3], Sin[ \[Theta][ 2]]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]], Sin[ \[Theta][ 2]]], Times[ -2, dd\[Theta][ 1], iyy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]], Sin[ \[Theta][ 2]]], Times[ 2, dd\[Theta][ 1], izz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]], Sin[ \[Theta][ 2]]], Times[ -4, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 1], m[ 2], Power[ Sin[ \[Theta][ 2]], 2]], Times[ -4, a[ 1], d[ 1], dd\[Theta][ 1], m[ 2], Power[ Sin[ \[Theta][ 2]], 2]], Times[ -1, Cos[ \[Alpha][ 2]], Plus[ Times[ 2, Power[ Cos[ \[Theta][ 2]], 2], d[ 2], Plus[ Times[ g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]]], Times[ a[ 1], dd\[Theta][ 1]]], m[ 2]], Times[ Cos[ \[Theta][ 2]], Plus[ Times[ 4, dd\[Theta][ 1], ixz[ 2]], Times[ -8, d\[Theta][ 1], d\[Theta][ 2], iyz[ 2]], Times[ a[ 2], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 2], d[ 1], dd\[Theta][ 2], m[ 2]], Times[ Power[ d[ 2], 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]]]], Times[ Sin[ \[Theta][ 2]], Plus[ Times[ -4, Power[ d\[Theta][ 2], 2], ixz[ 2]], Times[ -4, dd\[Theta][ 2], iyz[ 2]], Times[ -4, a[ 2], d[ 1], d\[Theta][ 1], d\[Theta][ 2], m[ 2]], Times[ -1, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], m[ 2]], Times[ Power[ d[ 2], 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, Power[ d\[Theta][ 1], 2], ixz[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ -1, a[ 2], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ 2, a[ 1], d[ 2], dd\[Theta][ 1], m[ 2], Sin[ \[Theta][ 2]]]]]]], Times[ 2, a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, g, d[ 1], m[ 2], Sin[ \[Theta][ 1]], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ 2, g, d[ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 1]], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, Power[ Cos[ \[Alpha][ 2]], 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Power[ Cos[ \[Theta][ 2]], 2], d[ 1], m[ 2]], Times[ a[ 2], Cos[ \[Theta][ 2]], d[ 1], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 1], Power[ Cos[ \[Theta][ 2]], 2], d[ 1], dd\[Theta][ 1], m[ 2]], Times[ Cos[ \[Theta][ 2]], d[ 1], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, d\[Theta][ 1], d\[Theta][ 2], ixz[ 2], Sin[ \[Theta][ 2]]], Times[ -2, dd\[Theta][ 1], iyz[ 2], Sin[ \[Theta][ 2]]], Times[ -1, a[ 2], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -1, a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Theta][ 2]]], Times[ -2, Power[ d\[Theta][ 1], 2], ixy[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -1, g, d[ 1], m[ 2], Sin[ \[Theta][ 1]], Sin[ Times[ 2, \[Theta][ 2]]]]]]]], Times[ Rational[ 1, 4], Plus[ Times[ -4, Power[ d\[Theta][ 1], 2], ixz[ 1]], Times[ -4, dd\[Theta][ 1], iyz[ 1]], Times[ -1, a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], m[ 1]], Times[ -1, Power[ Cos[ \[Alpha][ 2]], 3], Cos[ \[Theta][ 2]], Power[ d\[Theta][ 1], 2], Plus[ Times[ 4, ixz[ 2]], Times[ a[ 2], d[ 2], m[ 2]]]], Times[ 2, g, a[ 1], Cos[ \[Theta][ 1]], m[ 1], Sin[ \[Alpha][ 1]]], Times[ -2, a[ 1], a[ 2], dd\[Theta][ 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, g, a[ 1], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ -1, Cos[ \[Theta][ 2]], Plus[ Times[ 2, a[ 2], d[ 1], Power[ d\[Theta][ 2], 2], m[ 2]], Times[ 4, dd\[Theta][ 2], izz[ 2], Sin[ \[Alpha][ 2]]], Times[ -2, d[ 1], d[ 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]]], Times[ Power[ a[ 2], 2], dd\[Theta][ 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, dd\[Theta][ 1], iyz[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, a[ 2], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ -2, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 4, Power[ d\[Theta][ 1], 2], ixy[ 2], Power[ Sin[ \[Alpha][ 2]], 3]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -2, dd\[Theta][ 1], iyy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 2, dd\[Theta][ 1], izz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]]]], Times[ 2, g, d[ 1], m[ 1], Sin[ \[Theta][ 1]]], Times[ -4, Power[ Cos[ \[Theta][ 2]], 2], d[ 1], m[ 2], Plus[ Times[ a[ 1], Power[ d\[Theta][ 1], 2]], Times[ -1, g, Sin[ \[Theta][ 1]]]]], Times[ -4, dd\[Theta][ 2], ixz[ 2], Sin[ \[Theta][ 2]]], Times[ 4, Cos[ Times[ 2, \[Alpha][ 2]]], Power[ d\[Theta][ 1], 2], iyz[ 2], Sin[ \[Theta][ 2]]], Times[ 4, Power[ d\[Theta][ 2], 2], iyz[ 2], Sin[ \[Theta][ 2]]], Times[ -1, a[ 2], d[ 2], dd\[Theta][ 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixx[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -4, dd\[Theta][ 1], ixy[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -4, d\[Theta][ 1], d\[Theta][ 2], iyy[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], izz[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ 2, g, Cos[ \[Theta][ 1]], d[ 2], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -2, a[ 2], d[ 1], dd\[Theta][ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 2]]], Times[ -2, d[ 1], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 3], Sin[ \[Theta][ 2]]], Times[ -2, Power[ d\[Theta][ 1], 2], iyy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]], Sin[ \[Theta][ 2]]], Times[ 2, Power[ d\[Theta][ 1], 2], izz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]], Sin[ \[Theta][ 2]]], Times[ -4, a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Power[ Sin[ \[Theta][ 2]], 2]], Times[ 4, g, d[ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ \[Theta][ 1]], Power[ Sin[ \[Theta][ 2]], 2]], Times[ -1, Cos[ \[Alpha][ 2]], Plus[ Times[ Cos[ \[Theta][ 2]], Plus[ Times[ 4, Power[ d\[Theta][ 2], 2], ixz[ 2]], Times[ 4, dd\[Theta][ 2], iyz[ 2]], Times[ 4, a[ 2], d[ 1], d\[Theta][ 1], d\[Theta][ 2], m[ 2]], Times[ a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], m[ 2]], Times[ -1, Power[ d[ 2], 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, Power[ d\[Theta][ 1], 2], ixz[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ a[ 2], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2]]]], Times[ 2, Power[ Cos[ \[Theta][ 2]], 2], d[ 2], m[ 2], Plus[ Times[ a[ 1], Power[ d\[Theta][ 1], 2]], Times[ -1, g, Sin[ \[Theta][ 1]]]]], Times[ Sin[ \[Theta][ 2]], Plus[ Times[ 4, dd\[Theta][ 1], ixz[ 2]], Times[ -8, d\[Theta][ 1], d\[Theta][ 2], iyz[ 2]], Times[ a[ 2], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 2], d[ 1], dd\[Theta][ 2], m[ 2]], Times[ Power[ d[ 2], 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -2, g, d[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 1], m[ 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ 2, a[ 1], d[ 1], dd\[Theta][ 1], m[ 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, a[ 1], d[ 1], dd\[Theta][ 1], m[ 2], Power[ Sin[ \[Alpha][ 2]], 2], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ -2, Power[ Cos[ \[Alpha][ 2]], 2], Plus[ Times[ Cos[ \[Theta][ 2]], Plus[ Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixz[ 2]], Times[ 2, dd\[Theta][ 1], iyz[ 2]], Times[ a[ 2], d[ 1], Power[ d\[Theta][ 1], 2], m[ 2]], Times[ a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2]], Times[ -1, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]]], Times[ 2, Power[ d\[Theta][ 1], 2], ixy[ 2], Sin[ \[Alpha][ 2]]]]], Times[ m[ 2], Plus[ Times[ -2, g, a[ 1], Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]]], Times[ a[ 2], d[ 1], dd\[Theta][ 1], Sin[ \[Theta][ 2]]], Times[ d[ 1], d[ 2], Power[ d\[Theta][ 1], 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ 2, a[ 1], d[ 1], Power[ d\[Theta][ 1], 2], Power[ Sin[ \[Theta][ 2]], 2]], Times[ -2, g, d[ 1], Sin[ \[Theta][ 1]], Power[ Sin[ \[Theta][ 2]], 2]], Times[ g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 1], Sin[ Times[ 2, \[Theta][ 2]]]], Times[ a[ 1], d[ 1], dd\[Theta][ 1], Sin[ Times[ 2, \[Theta][ 2]]]]]]]]]], Times[ Rational[ 1, 16], Plus[ Times[ -16, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2]], Times[ 8, dd\[Theta][ 1], iyy[ 2]], Times[ 16, dd\[Theta][ 1], izz[ 1]], Times[ 8, dd\[Theta][ 1], izz[ 2]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 1]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 1]], Times[ 4, Power[ a[ 1], 2], dd\[Theta][ 1], m[ 1]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 2]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], m[ 2]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 16, Power[ a[ 1], 2], dd\[Theta][ 1], m[ 2]], Times[ 4, Power[ a[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 16, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1], m[ 2]], Times[ 8, a[ 1], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ -8, a[ 1], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ 2, Power[ d[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2], m[ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2], m[ 2]], Times[ 4, Cos[ \[Alpha][ 2]], dd\[Theta][ 2], Plus[ Times[ 4, izz[ 2]], Times[ Power[ a[ 2], 2], m[ 2]]]], Times[ 2, Cos[ Times[ 2, \[Alpha][ 2]]], Plus[ Times[ 8, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2]], Times[ -1, dd\[Theta][ 1], Plus[ Times[ 4, iyy[ 2]], Times[ -4, izz[ 2]], Times[ Power[ d[ 2], 2], m[ 2]]]]]], Times[ -16, Power[ d\[Theta][ 2], 2], ixz[ 2], Sin[ \[Alpha][ 2]]], Times[ -16, dd\[Theta][ 2], iyz[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -16, d\[Theta][ 1], d\[Theta][ 2], ixz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -16, dd\[Theta][ 1], iyz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -4, a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -8, a[ 1], a[ 2], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]]}], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]\(\(( f0[1] + 1\/16\ f1[1]\ \((4\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[1] + 4\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[1] + 8\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[2] + 8\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]]\ m[2] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]]\ m[2] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2])\) + 1\/256\ f2[1]\ \((4\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[1] + 4\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[1] + 8\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[2] + 8\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]]\ m[2] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]]\ m[2] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]]\ m[2] - g\ Cos[ \[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[ \[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - g\ Cos[ \[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[ \[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[ \[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[ \[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + g\ Cos[ \[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[ \[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2])\)^2)\)\ Sign[d\[Theta][1]] + 1\/16\ \(( \(-16\)\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] + 8\ dd\[Theta][1]\ iyy[2] + 16\ dd\[Theta][1]\ izz[1] + 8\ dd\[Theta][1]\ izz[2] + 4\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[1] + 4\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[1] + 4\ a[1]\^2\ dd\[Theta][1]\ m[1] + 8\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[2] + 8\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]]\ m[2] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]]\ m[2] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]] \ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]] \ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]] \ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]] \ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + 16\ a[1]\^2\ dd\[Theta][1]\ m[2] + 4\ a[2]\^2\ dd\[Theta][1]\ m[2] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ d[2]\^2\ dd\[Theta][1]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ Cos[\[Alpha][2]]\ dd\[Theta][2]\ \((4\ izz[2] + a[2]\^2\ m[2])\) + 2\ Cos[2\ \[Alpha][2]]\ \((8\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] - dd\[Theta][1]\ \((4\ iyy[2] - 4\ izz[2] + d[2]\^2\ m[2])\))\) - 16\ d\[Theta][2]\^2\ ixz[2]\ Sin[\[Alpha][2]] - 16\ dd\[Theta][2]\ iyz[2]\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Alpha][2]] - 16\ d\[Theta][1]\ d\[Theta][2]\ ixz[2]\ Sin[2\ \[Alpha][2]] - 16\ dd\[Theta][1]\ iyz[2]\ Sin[2\ \[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)\), SequenceForm[ "\[Tau][", 1, "] = ", Plus[ Times[ Plus[ f0[ 1], Times[ Rational[ 1, 16], f1[ 1], Plus[ Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 1]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 1]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 2]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], m[ 2]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]]]], Times[ Rational[ 1, 256], f2[ 1], Power[ Plus[ Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 1]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 1]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 2]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], m[ 2]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]]], 2]]], Sign[ d\[Theta][ 1]]], Times[ Rational[ 1, 16], Plus[ Times[ -16, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2]], Times[ 8, dd\[Theta][ 1], iyy[ 2]], Times[ 16, dd\[Theta][ 1], izz[ 1]], Times[ 8, dd\[Theta][ 1], izz[ 2]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 1]], Times[ 4, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 1]], Times[ 4, Power[ a[ 1], 2], dd\[Theta][ 1], m[ 1]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]], m[ 2]], Times[ 8, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], m[ 2]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2], m[ 2]], Times[ 16, Power[ a[ 1], 2], dd\[Theta][ 1], m[ 2]], Times[ 4, Power[ a[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 16, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1], m[ 2]], Times[ 8, a[ 1], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ -8, a[ 1], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ 2, Power[ d[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2], m[ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2], m[ 2]], Times[ 4, Cos[ \[Alpha][ 2]], dd\[Theta][ 2], Plus[ Times[ 4, izz[ 2]], Times[ Power[ a[ 2], 2], m[ 2]]]], Times[ 2, Cos[ Times[ 2, \[Alpha][ 2]]], Plus[ Times[ 8, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2]], Times[ -1, dd\[Theta][ 1], Plus[ Times[ 4, iyy[ 2]], Times[ -4, izz[ 2]], Times[ Power[ d[ 2], 2], m[ 2]]]]]], Times[ -16, Power[ d\[Theta][ 2], 2], ixz[ 2], Sin[ \[Alpha][ 2]]], Times[ -16, dd\[Theta][ 2], iyz[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -16, d\[Theta][ 1], d\[Theta][ 2], ixz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -16, dd\[Theta][ 1], iyz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -4, a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -8, a[ 1], a[ 2], Power[ d\[Theta][ 2], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]]]], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("f["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]{ \(-\(1\/2\)\)\ m[2]\ \((a[2]\ Cos[\[Alpha][2]]\^2\ d\[Theta][1]\^2 + 2\ a[2]\ Cos[\[Alpha][2]]\ d\[Theta][1]\ d\[Theta][2] + a[2]\ d\[Theta][2]\^2 - d[2]\ dd\[Theta][1]\ Sin[\[Alpha][2]] + a[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]]\^2 + 2\ Cos[\[Theta][2]]\ \((a[1]\ d\[Theta][1]\^2 - g\ Sin[\[Theta][1]])\) - 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Sin[\[Theta][2]] - 2\ a[1]\ dd\[Theta][1]\ Sin[\[Theta][2]])\), 1\/2\ m[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] + a[2]\ dd\[Theta][2] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1] + d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]] - 2\ g\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\), \(-\(1\/2\)\)\ m[2]\ \((2\ g\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]] + Sin[\[Alpha][2]]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] + a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1] + d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]] - 2\ g\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\)}\), SequenceForm[ "f[", 2, "] = ", { Times[ Rational[ -1, 2], m[ 2], Plus[ Times[ a[ 2], Power[ Cos[ \[Alpha][ 2]], 2], Power[ d\[Theta][ 1], 2]], Times[ 2, a[ 2], Cos[ \[Alpha][ 2]], d\[Theta][ 1], d\[Theta][ 2]], Times[ a[ 2], Power[ d\[Theta][ 2], 2]], Times[ -1, d[ 2], dd\[Theta][ 1], Sin[ \[Alpha][ 2]]], Times[ a[ 2], Power[ d\[Theta][ 1], 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, Cos[ \[Theta][ 2]], Plus[ Times[ a[ 1], Power[ d\[Theta][ 1], 2]], Times[ -1, g, Sin[ \[Theta][ 1]]]]], Times[ -2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Sin[ \[Theta][ 2]]], Times[ -2, a[ 1], dd\[Theta][ 1], Sin[ \[Theta][ 2]]]]], Times[ Rational[ 1, 2], m[ 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ a[ 2], dd\[Theta][ 2]], Times[ -2, g, Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ a[ 2], dd\[Theta][ 1]], Times[ 2, a[ 1], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], Power[ d\[Theta][ 1], 2], Sin[ \[Theta][ 2]]], Times[ -2, g, Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ Rational[ -1, 2], m[ 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]]], Times[ Sin[ \[Alpha][ 2]], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ a[ 2], dd\[Theta][ 1]], Times[ 2, a[ 1], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], Power[ d\[Theta][ 1], 2], Sin[ \[Theta][ 2]]], Times[ -2, g, Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]]}], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("n["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]{ 1\/4\ \(( \(-4\)\ dd\[Theta][2]\ ixz[2] + 4\ Cos[2\ \[Alpha][2]]\ d\[Theta][1]\^2\ iyz[2] + 4\ d\[Theta][2]\^2\ iyz[2] - a[2]\ d[2]\ dd\[Theta][2]\ m[2] + 4\ d\[Theta][1]\ d\[Theta][2]\ ixx[2]\ Sin[\[Alpha][2]] - 4\ dd\[Theta][1]\ ixy[2]\ Sin[\[Alpha][2]] - 4\ d\[Theta][1]\ d\[Theta][2]\ iyy[2]\ Sin[\[Alpha][2]] + 4\ d\[Theta][1]\ d\[Theta][2]\ izz[2]\ Sin[\[Alpha][2]] + 2\ g\ Cos[\[Theta][1]]\ d[2]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] - 2\ d\[Theta][1]\^2\ iyy[2]\ Sin[2\ \[Alpha][2]] + 2\ d\[Theta][1]\^2\ izz[2]\ Sin[2\ \[Alpha][2]] - Cos[\[Alpha][2]]\ \((4\ dd\[Theta][1]\ ixz[2] - 8\ d\[Theta][1]\ d\[Theta][2]\ iyz[2] + 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ d[2]\ m[2] + a[2]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ a[1]\ Cos[\[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] + d[2]\^2\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] + 2\ a[1]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - 2\ g\ d[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)) \), 1\/4\ \((\(-4\)\ d\[Theta][2]\^2\ ixz[2] - 4\ dd\[Theta][2]\ iyz[2] - a[2]\ d[2]\ d\[Theta][2]\^2\ m[2] - Cos[\[Alpha][2]]\^2\ d\[Theta][1]\^2\ \((4\ ixz[2] + a[2]\ d[2]\ m[2])\) - 2\ Cos[\[Alpha][2]]\ \((4\ d\[Theta][1]\ d\[Theta][2]\ ixz[2] + 2\ dd\[Theta][1]\ iyz[2] + a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2] - g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]])\) - 8\ d\[Theta][1]\ d\[Theta][2]\ ixy[2]\ Sin[\[Alpha][2]] + 4\ dd\[Theta][1]\ iyy[2]\ Sin[\[Alpha][2]] + a[2]\^2\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]] + d[2]\^2\ dd\[Theta][1]\ m[2]\ Sin[\[Alpha][2]] - 2\ d\[Theta][1]\^2\ ixy[2]\ Sin[2\ \[Alpha][2]] + 2\ Cos[\[Theta][2]]\ m[2]\ \((\(-a[1]\)\ d[2]\ d\[Theta][1]\^2 + g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Sin[\[Alpha][2]] + a[1]\ a[2]\ dd\[Theta][1]\ Sin[\[Alpha][2]] + g\ d[2]\ Sin[\[Theta][1]])\) + 2\ g\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ d[2]\ m[2]\ Sin[\[Theta][2]] + 2\ a[1]\ d[2]\ dd\[Theta][1]\ m[2]\ Sin[\[Theta][2]] + 2\ a[1]\ a[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][2]] - 2\ g\ a[2]\ m[2]\ Sin[\[Alpha][2]]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\), 1\/4\ \(( 4\ dd\[Theta][2]\ izz[2] + a[2]\^2\ dd\[Theta][2]\ m[2] - 2\ \((2\ dd\[Theta][1]\ iyz[2] + g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]])\)\ Sin[\[Alpha][2]] + 4\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\^2 + 2\ d\[Theta][1]\^2\ ixz[2]\ Sin[2\ \[Alpha][2]] + Cos[\[Alpha][2]]\ \((4\ dd\[Theta][1]\ izz[2] + 2\ g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ m[2] + a[2]\^2\ dd\[Theta][1]\ m[2] + 2\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + a[2]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] + 2\ a[1]\ a[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - 2\ g\ a[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)) \)}\), SequenceForm[ "n[", 2, "] = ", { Times[ Rational[ 1, 4], Plus[ Times[ -4, dd\[Theta][ 2], ixz[ 2]], Times[ 4, Cos[ Times[ 2, \[Alpha][ 2]]], Power[ d\[Theta][ 1], 2], iyz[ 2]], Times[ 4, Power[ d\[Theta][ 2], 2], iyz[ 2]], Times[ -1, a[ 2], d[ 2], dd\[Theta][ 2], m[ 2]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixx[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, dd\[Theta][ 1], ixy[ 2], Sin[ \[Alpha][ 2]]], Times[ -4, d\[Theta][ 1], d\[Theta][ 2], iyy[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, d\[Theta][ 1], d\[Theta][ 2], izz[ 2], Sin[ \[Alpha][ 2]]], Times[ 2, g, Cos[ \[Theta][ 1]], d[ 2], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ -2, Power[ d\[Theta][ 1], 2], iyy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 2, Power[ d\[Theta][ 1], 2], izz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ -1, Cos[ \[Alpha][ 2]], Plus[ Times[ 4, dd\[Theta][ 1], ixz[ 2]], Times[ -8, d\[Theta][ 1], d\[Theta][ 2], iyz[ 2]], Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]], d[ 2], m[ 2]], Times[ a[ 2], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 1], Cos[ \[Theta][ 2]], d[ 2], dd\[Theta][ 1], m[ 2]], Times[ Power[ d[ 2], 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -2, g, d[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ Rational[ 1, 4], Plus[ Times[ -4, Power[ d\[Theta][ 2], 2], ixz[ 2]], Times[ -4, dd\[Theta][ 2], iyz[ 2]], Times[ -1, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], m[ 2]], Times[ -1, Power[ Cos[ \[Alpha][ 2]], 2], Power[ d\[Theta][ 1], 2], Plus[ Times[ 4, ixz[ 2]], Times[ a[ 2], d[ 2], m[ 2]]]], Times[ -2, Cos[ \[Alpha][ 2]], Plus[ Times[ 4, d\[Theta][ 1], d\[Theta][ 2], ixz[ 2]], Times[ 2, dd\[Theta][ 1], iyz[ 2]], Times[ a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], m[ 2]], Times[ -1, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]]]]], Times[ -8, d\[Theta][ 1], d\[Theta][ 2], ixy[ 2], Sin[ \[Alpha][ 2]]], Times[ 4, dd\[Theta][ 1], iyy[ 2], Sin[ \[Alpha][ 2]]], Times[ Power[ a[ 2], 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]]], Times[ Power[ d[ 2], 2], dd\[Theta][ 1], m[ 2], Sin[ \[Alpha][ 2]]], Times[ -2, Power[ d\[Theta][ 1], 2], ixy[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 2, Cos[ \[Theta][ 2]], m[ 2], Plus[ Times[ -1, a[ 1], d[ 2], Power[ d\[Theta][ 1], 2]], Times[ g, a[ 2], Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 2]]], Times[ a[ 1], a[ 2], dd\[Theta][ 1], Sin[ \[Alpha][ 2]]], Times[ g, d[ 2], Sin[ \[Theta][ 1]]]]], Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], d[ 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ 2, a[ 1], d[ 2], dd\[Theta][ 1], m[ 2], Sin[ \[Theta][ 2]]], Times[ 2, a[ 1], a[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 2]]], Times[ -2, g, a[ 2], m[ 2], Sin[ \[Alpha][ 2]], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]], Times[ Rational[ 1, 4], Plus[ Times[ 4, dd\[Theta][ 2], izz[ 2]], Times[ Power[ a[ 2], 2], dd\[Theta][ 2], m[ 2]], Times[ -2, Plus[ Times[ 2, dd\[Theta][ 1], iyz[ 2]], Times[ g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]]]], Sin[ \[Alpha][ 2]]], Times[ 4, Power[ d\[Theta][ 1], 2], ixy[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, Power[ d\[Theta][ 1], 2], ixz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ 4, dd\[Theta][ 1], izz[ 2]], Times[ 2, g, a[ 2], Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]], m[ 2]], Times[ Power[ a[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1], m[ 2]], Times[ a[ 2], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], a[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -2, g, a[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]]}], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]\(1\/4\ \((4\ dd\[Theta][2]\ izz[2] + a[2]\^2\ dd\[Theta][2]\ m[2] - 2\ \((2\ dd\[Theta][1]\ iyz[2] + g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]])\)\ Sin[\[Alpha][2]] + 4\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\^2 + 2\ d\[Theta][1]\^2\ ixz[2]\ Sin[2\ \[Alpha][2]] + Cos[\[Alpha][2]]\ \((4\ dd\[Theta][1]\ izz[2] + 2\ g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ m[2] + a[2]\^2\ dd\[Theta][1]\ m[2] + 2\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + a[2]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] + 2\ a[1]\ a[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]] - 2\ g\ a[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)) \) + Sign[d\[Theta][2]]\ \((f0[2] + 1\/4\ f1[2]\ \((\(-2\)\ g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((2\ g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ m[2] - 2\ g\ a[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\) + 1\/16\ f2[2]\ \((\(-2\)\ g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((2\ g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ m[2] - 2\ g\ a[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\)^2)\)\)\), SequenceForm[ "\[Tau][", 2, "] = ", Plus[ Times[ Rational[ 1, 4], Plus[ Times[ 4, dd\[Theta][ 2], izz[ 2]], Times[ Power[ a[ 2], 2], dd\[Theta][ 2], m[ 2]], Times[ -2, Plus[ Times[ 2, dd\[Theta][ 1], iyz[ 2]], Times[ g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]]]], Sin[ \[Alpha][ 2]]], Times[ 4, Power[ d\[Theta][ 1], 2], ixy[ 2], Power[ Sin[ \[Alpha][ 2]], 2]], Times[ 2, Power[ d\[Theta][ 1], 2], ixz[ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ 4, dd\[Theta][ 1], izz[ 2]], Times[ 2, g, a[ 2], Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]], m[ 2]], Times[ Power[ a[ 2], 2], dd\[Theta][ 1], m[ 2]], Times[ 2, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1], m[ 2]], Times[ a[ 2], d[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], a[ 2], Power[ d\[Theta][ 1], 2], m[ 2], Sin[ \[Theta][ 2]]], Times[ -2, g, a[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ Sign[ d\[Theta][ 2]], Plus[ f0[ 2], Times[ Rational[ 1, 4], f1[ 2], Plus[ Times[ -2, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ 2, g, a[ 2], Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]], m[ 2]], Times[ -2, g, a[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ Rational[ 1, 16], f2[ 2], Power[ Plus[ Times[ -2, g, a[ 2], Cos[ \[Theta][ 1]], m[ 2], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ 2, g, a[ 2], Cos[ \[Alpha][ 1]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]], m[ 2]], Times[ -2, g, a[ 2], m[ 2], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]], 2]]]]]], Editable->False]], "Print"] }, Open ]], Cell[CellGroupData[{ Cell["\<\ Extracting the force components from the resulting computation\ \>", "Subsection"], Cell[CellGroupData[{ Cell["Gravity", "Subsubsection"], Cell["\<\ The gravity component can be extracted by setting the joint \ velocity and acceleration to 0.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Gravity[\[Tau][1]]\), \(Gravity[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((4\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[1] + 4\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[1] + 8\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]]\ m[2] + 8\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]]\ m[2] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]]\ m[2] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]]\ m[2] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]\ m[2])\)\)], "Output"], Cell[BoxData[ \(1\/4\ \((\(-2\)\ g\ a[2]\ Cos[\[Theta][1]]\ m[2]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((2\ g\ a[2]\ Cos[\[Alpha][1]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]]\ m[2] - 2\ g\ a[2]\ m[2]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)) \)\)], "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Mass component", "Subsubsection"], Cell["\<\ The mass terms are found by setting the joint velocities to zero, \ as well as the gravity\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Mass[\[Tau][1]]\), \(Mass[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((8\ dd\[Theta][1]\ iyy[2] + 16\ dd\[Theta][1]\ izz[1] + 8\ dd\[Theta][1]\ izz[2] + 4\ a[1]\^2\ dd\[Theta][1]\ m[1] + 16\ a[1]\^2\ dd\[Theta][1]\ m[2] + 4\ a[2]\^2\ dd\[Theta][1]\ m[2] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1]\ m[2] + 2\ d[2]\^2\ dd\[Theta][1]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2]\ m[2] + 4\ Cos[\[Alpha][2]]\ dd\[Theta][2]\ \((4\ izz[2] + a[2]\^2\ m[2])\) - 2\ Cos[2\ \[Alpha][2]]\ dd\[Theta][1]\ \((4\ iyy[2] - 4\ izz[2] + d[2]\^2\ m[2])\) - 16\ dd\[Theta][2]\ iyz[2]\ Sin[\[Alpha][2]] - 16\ dd\[Theta][1]\ iyz[2]\ Sin[2\ \[Alpha][2]])\)\)], "Output"], Cell[BoxData[ \(1\/4\ \((4\ dd\[Theta][2]\ izz[2] + a[2]\^2\ dd\[Theta][2]\ m[2] + Cos[\[Alpha][2]]\ \((4\ dd\[Theta][1]\ izz[2] + a[2]\^2\ dd\[Theta][1]\ m[2] + 2\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1]\ m[2])\) - 4\ dd\[Theta][1]\ iyz[2]\ Sin[\[Alpha][2]])\)\)], "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Coriolis and centrifugal terms", "Subsubsection"], Cell["\<\ The combined Coriolis and centrifugal terms are found by setting \ the joint acceleration as well as the gravity to 0.\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Coriolis[\[Tau][1]]\), \(Coriolis[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(f0[1]\ Sign[d\[Theta][1]] + 1\/16\ \(( \(-16\)\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] + 16\ Cos[2\ \[Alpha][2]]\ d\[Theta][1]\ d\[Theta][2]\ ixy[2] - 16\ d\[Theta][2]\^2\ ixz[2]\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Alpha][2]] - 16\ d\[Theta][1]\ d\[Theta][2]\ ixz[2]\ Sin[2\ \[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ m[2]\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ m[2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)], "Output"], Cell[BoxData[ \(f0[2]\ Sign[d\[Theta][2]] + 1\/4\ \((4\ d\[Theta][1]\^2\ ixy[2]\ Sin[\[Alpha][2]]\^2 + 2\ d\[Theta][1]\^2\ ixz[2]\ Sin[2\ \[Alpha][2]] + Cos[\[Alpha][2]]\ \((a[2]\ d[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Alpha][2]] + 2\ a[1]\ a[2]\ d\[Theta][1]\^2\ m[2]\ Sin[\[Theta][2]])\)) \)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[{ \(Coriolis[\[Tau][1]]\), \(Coriolis[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(f0[1]\ Sign[d\[Theta][1]] - d\[Theta][2]\ Sin[\[Alpha][2]]\ \((2\ Cos[\[Alpha][2]]\ d\[Theta][1]\ ixz[2] + d\[Theta][2]\ ixz[2] + 2\ d\[Theta][1]\ ixy[2]\ Sin[\[Alpha][2]])\)\)], "Output"], Cell[BoxData[ \(f0[2]\ Sign[d\[Theta][2]] + d\[Theta][1]\^2\ Sin[\[Alpha][2]]\ \((Cos[\[Alpha][2]]\ ixz[2] + ixy[2]\ Sin[\[Alpha][2]])\)\)], "Output"] }, Open ]] }, Open ]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Example 2: 6DoF robot", "Section"], Cell[TextData[{ "We first define the number of degrees of freedom of this robot, and \ subsequently define a Denavit-Hartenberg table. \nThe below table is for the \ PUMA 560 robot. The values for ", StyleBox["a", FontSlant->"Italic"], " and ", StyleBox["d", FontSlant->"Italic"], " are given in m." }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(ClearAllVars; \nDoF\ = \ 6; \n DH\ = \ {\n\t\t{\[Theta][1], 0, 0, 0}, \n \t\t{\[Theta][2], 0, 0, \(-\[Pi]\)/2}, \n \t\t{\[Theta][3], .4318, .14909, 0}, \n \t\t{\[Theta][4], .2032, .43307, \(-\[Pi]\)/2}, \n \t\t{\[Theta][5], 0, 0, \[Pi]/2}, \n \t\t{\[Theta][6], 0, 0, \(-\[Pi]\)/2}\n\t}; \n\nDH // MatrixForm\)], "Input"], Cell[BoxData[ TagBox[ RowBox[{"(", GridBox[{ {\(\[Theta][1]\), "0", "0", "0"}, {\(\[Theta][2]\), "0", "0", \(-\(\[Pi]\/2\)\)}, {\(\[Theta][3]\), StyleBox["0.43180000000000005`", StyleBoxAutoDelete->True, PrintPrecision->4], StyleBox["0.149089999999999989`", StyleBoxAutoDelete->True, PrintPrecision->5], "0"}, {\(\[Theta][4]\), StyleBox["0.203200000000000002`", StyleBoxAutoDelete->True, PrintPrecision->4], StyleBox["0.433070000000000021`", StyleBoxAutoDelete->True, PrintPrecision->5], \(-\(\[Pi]\/2\)\)}, {\(\[Theta][5]\), "0", "0", \(\[Pi]\/2\)}, {\(\[Theta][6]\), "0", "0", \(-\(\[Pi]\/2\)\)} }], ")"}], (MatrixForm[ #]&)]], "Output"] }, Open ]], Cell["Furthermore, we define the gravity:", "Text"], Cell[BoxData[ \(\(g = 9.8; \)\)], "Input"], Cell["The masses of the links and the friction:", "Text"], Cell[BoxData[ \(For[i = 1, i <= DoF, \(i++\), \n\t\tm[i] = 1.0; \n\t\tf0[i] = 0; \n\t\t f1[i] = 0; \n\t\tf2[i] = 0; \n\t]\)], "Input"], Cell["\<\ The matrix T[i] is the inertia tensor of link i about its center of \ mass with respect to the coordinate system 0\ \>", "Text"], Cell[BoxData[ \(\(For[i = 1, \ i <= DoF, \ \(i++\), \n\t\t\t\t \(T[i]\ = \ DiagonalMatrix[{m[i] DH[\([i, 3]\)]^2, 0, m[i] DH[\([i, 2]\)]^2}]; \)\n\t]; \)\)], "Input"], Cell[BoxData[ \(\(Init; \)\)], "Input"], Cell["\<\ The best approach is to run the Newton-Euler equations for a \ specific set of joint values.\ \>", "Text"], Cell[BoxData[ \(J\ = 3; \n\n For[i = 1, \ i <= DoF, \ \(i++\), \ \[Theta][i]\ = \ 0; d\[Theta][i] = 0; dd\[Theta][i] = 0; \[Tau]List[i] = {}; ]; \n\n For[\[Theta]List = {}; \ \[Theta][J] = 0.0; \ d\[Theta][J] = 0.0; dd\[Theta][J] = 0.01, \n\t\t\t\t\[Theta][J] < Pi, \n\t\t\t\t d\[Theta][J] += dd\[Theta][J]; \ \[Theta][J]\ += \ d\[Theta][J]\ + \ dd\[Theta][J]/2, \n\t\t Forwards[False]; Backwards[False]; \n\t\t \[Theta]List = Append[\[Theta]List, \ {\[Theta][J], \ d\[Theta][J]}]; \n \t\tFor[j = 1, j <= DoF, \ \(j++\), \n\t\t\t \(\[Tau]List[j] = Append[\[Tau]List[j], {\[Theta][J], \[Tau][j]}]; \)\n\t\t]; \n]\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(ListPlot[\[Tau]List[1], \ PlotJoined -> True]; ListPlot[\[Tau]List[2], \ PlotJoined -> True]; ListPlot[\[Tau]List[3], \ PlotJoined -> True]; ListPlot[\[Tau]List[4], \ PlotJoined -> True]; ListPlot[\[Tau]List[5], \ PlotJoined -> True]; ListPlot[\[Tau]List[6], \ PlotJoined -> True]; \)], "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.30525 0.477625 9.20822 [ [.17643 .46513 -9 -9 ] [.17643 .46513 9 0 ] [.32906 .46513 -3 -9 ] [.32906 .46513 3 0 ] [.48168 .46513 -9 -9 ] [.48168 .46513 9 0 ] [.63431 .46513 -3 -9 ] [.63431 .46513 3 0 ] [.78694 .46513 -9 -9 ] [.78694 .46513 9 0 ] [.93956 .46513 -3 -9 ] [.93956 .46513 3 0 ] [.01131 .01721 -30 -4.5 ] [.01131 .01721 0 4.5 ] [.01131 .1093 -30 -4.5 ] [.01131 .1093 0 4.5 ] [.01131 .20138 -30 -4.5 ] [.01131 .20138 0 4.5 ] [.01131 .29346 -30 -4.5 ] [.01131 .29346 0 4.5 ] [.01131 .38554 -30 -4.5 ] [.01131 .38554 0 4.5 ] [.01131 .56971 -24 -4.5 ] [.01131 .56971 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 .17643 .47763 m .17643 .48388 L s [(0.5)] .17643 .46513 0 1 Mshowa .32906 .47763 m .32906 .48388 L s [(1)] .32906 .46513 0 1 Mshowa .48168 .47763 m .48168 .48388 L s [(1.5)] .48168 .46513 0 1 Mshowa .63431 .47763 m .63431 .48388 L s [(2)] .63431 .46513 0 1 Mshowa .78694 .47763 m .78694 .48388 L s [(2.5)] .78694 .46513 0 1 Mshowa .93956 .47763 m .93956 .48388 L s [(3)] .93956 .46513 0 1 Mshowa .125 Mabswid .05433 .47763 m .05433 .48138 L s .08486 .47763 m .08486 .48138 L s .11538 .47763 m .11538 .48138 L s .14591 .47763 m .14591 .48138 L s .20696 .47763 m .20696 .48138 L s .23748 .47763 m .23748 .48138 L s .26801 .47763 m .26801 .48138 L s .29853 .47763 m .29853 .48138 L s .35958 .47763 m .35958 .48138 L s .39011 .47763 m .39011 .48138 L s .42063 .47763 m .42063 .48138 L s .45116 .47763 m .45116 .48138 L s .51221 .47763 m .51221 .48138 L s .54274 .47763 m .54274 .48138 L s .57326 .47763 m .57326 .48138 L s .60379 .47763 m .60379 .48138 L s .66484 .47763 m .66484 .48138 L s .69536 .47763 m .69536 .48138 L s .72589 .47763 m .72589 .48138 L s .75641 .47763 m .75641 .48138 L s .81746 .47763 m .81746 .48138 L s .84799 .47763 m .84799 .48138 L s .87851 .47763 m .87851 .48138 L s .90904 .47763 m .90904 .48138 L s .97009 .47763 m .97009 .48138 L s .25 Mabswid 0 .47763 m 1 .47763 L s .02381 .01721 m .03006 .01721 L s [(-0.05)] .01131 .01721 1 0 Mshowa .02381 .1093 m .03006 .1093 L s [(-0.04)] .01131 .1093 1 0 Mshowa .02381 .20138 m .03006 .20138 L s [(-0.03)] .01131 .20138 1 0 Mshowa .02381 .29346 m .03006 .29346 L s [(-0.02)] .01131 .29346 1 0 Mshowa .02381 .38554 m .03006 .38554 L s [(-0.01)] .01131 .38554 1 0 Mshowa .02381 .56971 m .03006 .56971 L s [(0.01)] .01131 .56971 1 0 Mshowa .125 Mabswid .02381 .03563 m .02756 .03563 L s .02381 .05405 m .02756 .05405 L s .02381 .07246 m .02756 .07246 L s .02381 .09088 m .02756 .09088 L s .02381 .12771 m .02756 .12771 L s .02381 .14613 m .02756 .14613 L s .02381 .16455 m .02756 .16455 L s .02381 .18296 m .02756 .18296 L s .02381 .2198 m .02756 .2198 L s .02381 .23821 m .02756 .23821 L s .02381 .25663 m .02756 .25663 L s .02381 .27504 m .02756 .27504 L s .02381 .31188 m .02756 .31188 L s .02381 .33029 m .02756 .33029 L s .02381 .34871 m .02756 .34871 L s .02381 .36713 m .02756 .36713 L s .02381 .40396 m .02756 .40396 L s .02381 .42238 m .02756 .42238 L s .02381 .44079 m .02756 .44079 L s .02381 .45921 m .02756 .45921 L s .02381 .49604 m .02756 .49604 L s .02381 .51446 m .02756 .51446 L s .02381 .53287 m .02756 .53287 L s .02381 .55129 m .02756 .55129 L s .02381 .58812 m .02756 .58812 L s .02381 .60654 m .02756 .60654 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 .49378 m .02839 .49572 L .03602 .49994 L .0467 .5064 L .06044 .51495 L .07723 .52542 L .09707 .53747 L .11996 .55067 L .14591 .56437 L .17491 .57771 L .20696 .58959 L .24206 .59866 L .28022 .60332 L .32143 .60177 L .36569 .59213 L .413 .57256 L .46337 .54146 L .51679 .4978 L .57326 .4414 L .63278 .37328 L .69536 .29605 L .76099 .21418 L .82967 .13414 L .9014 .06434 L .97619 .01472 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j0000nP000?X0 003j0000nP00020000<10000e`00020000<10000e`0000P00P4400030@0000<00P4300<110000`40 003G00001`001040004800040@000@D000@100000`7@00030@0000@0000700040@000@P000@10001 1@001@4000010=000P47000000<00@400P4200040@000@P000@100010P030@@000<10000c@000`40 000700001`001040004800040@000@8000<1000010000`40003;00812P0000L000@1000120001040 004200030@0000@000<10000bP000`40000:000020020@X00P4300@10`020LT00P4=000080000`40 003700030@0000d0000P00030@000000020000<10000V`000`40000i000080000`40002J00030@0003X0000P0081V`000`40000j0000 80000`40002I00030@0003/0000P00030@0009P000<10000?000020000<10000U`000`40000m0000 80000`40002F00030@0003h0000P0081UP000`40000o000080000`40002E00030@0003l000080081 10000`40000300810`040@<000<10000U0000`40001000001`001040004800040@000@8000<10000 10000`40002C00030@000440000700040@000@P000@100010`000`40000300<1TP000`4000120000 00<00@400P4200040@000@P000@1000110000`40000200030@00094000<10000@`0000L000@10001 20001040004500050@000040TP000`40001400001`001040004800040@000@8000@100010`000`40 002@00030@0004@0000800812P020@@00P440081T0000`400015000080000`40002>00030@0004H0 000P00030@0008d000<10000A`00020000<10000S0000`400018000080020H`000<10000B@000200 00<10000R`000`400019000080000`40002:00030@0004X0000P00030@0008T000<10000B`000200 0P6900030@0004`0000P00030@0008L000<10000C@00020000<10000QP000`40001>000080000`40 002600030@0004h0000P0081QP000`40001?000080000`40002400030@000500000P00030@0008<0 00<10000D@0000P00P4400030@0000<00P4300@10`000`40002200030@000580000700040@000@P0 00@1000110000`40000200<1P@000`40001C00001`001040004800040@000@@000<100000P000`40 002100030@0005<000000`010@020@8000@1000120001040004400030@00008000<10000P0000`40 001D00001`001040004800040@000@@000<100000P000`40001o00030@0005D0000700040@000@P0 00@100010P030@@00P5o00030@0005H0000800812P020@D000<100000P000`40001m00030@0005L0 000P00030@0007`000<10000F000020000<10000N`000`40001I000080020G/000<10000FP000200 00<10000NP000`40001J000080000`40001i00030@0005/0000P00030@0007P000<10000G0000200 0P4I008110000`40000200<16@040AP0104300030@0000800`4=00030@0000P0104H00@10`000`40 000200<16P020@h0000P00030@0001L000@100012`000`40000H00030@0001T000<100002P000`40 000900030@0000T000<100006@000`40000<00030@0001H000@100013@00020000<100005`001040 004;00030@0001P000<100006@000`40000:00030@0000P000<100002`000`40000I00030@0000/0 00<100006@000`40000;000080000`40000G00040@000@P00`4K00030@0001T000<100001`030@X0 00<100003@000`40000I00030@0000L00`4J00813P0002000P4H00040@000@P000<100006`000`40 000I00030@0000L000<100002@000`40000?00030@0001T000<100001P000`40000L00030@0000/0 000P00030@0001L000@1000120000`40000I00<16@030@T000<1000020000`40000=00040@000AP0 00@1000120000`40000I00040@000@d0000P00030@0001P00P4900@16P000`40000I00030@0000L0 104600030@0000l00P4J00812@040AT00P4>000080000`40001`00030@0006@0000K0=l1000P0003 0@0000@000<1000010000`40000400030@0000<000<1000010000`40000400030@0000@000<10000 0`000`40000400030@0000@000<1000010000`40000300030@0000@000<1000010000`4000040003 0@0000<000<100000P000`400@0600030@0000@000<100000`000`40000400030@0000@000<10000 10000`40000400030@0000<000<1000010000`40000400030@0000@000<100000`000`4000040003 0@0000@000<100001@00020000<100007`000`40000O00030@0001l000<100001`000`40000D0003 0@0001l000<100007`000`40000<000080000`40001/00030@0006P0000P00<1J`000`40001Y0000 80020@03004006P000<10000JP00020000D100000@1W00030@0006/0000P00030@00008000<10000 H`000`40001/000080000`4000030081HP000`40001]000080020@H00P5O00030@0006h0000P0003 0@0000L00P5K0081L@00020000<100002@000`40001G00030@000740000P00030@0000X00P5F0003 0@000780000P00813@000`40001B00030@0007<0000P00030@0000d00P5A00030@0007@0000P0003 0@0000l00P5=0081M`00020000<100004@020DT00P5i000080020A@000<10000A0020G/0000P0003 0@0001@00P520081O@00020000<100005P020Ch00P5o000020020@@000<100000`020@<010430003 0@0001P00P4j0081P@0000L000@1000120001040004400030@0000800`4J0081=P020H<000070004 0@000@P000@1000110000`40000200030@0001`00P4b0081Q@0000L000@100012000104000440003 0@00008000<100007P030Bd00P6700001`001040004800040@000@@000<100000P000`40000Q00@1 9`020HT0000700040@000@P000@100010P030@@00P4V00@18@020H/0000800812P020@D000<10000 0P000`40000Y00@16P030Hd0000P00030@0002d01P4?00D1T000020000<10000<`0?0ID0000P0081 f000020000<10000e`00020000<10000e`00020000<10000e`000?X0003j0000nP000?X0003j0000 nP000?X00000\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.484661, -0.0561085, 0.0147899, 0.000490281}}], 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.30525 0.307768 0.0118259 [ [.17643 .29527 -9 -9 ] [.17643 .29527 9 0 ] [.32906 .29527 -3 -9 ] [.32906 .29527 3 0 ] [.48168 .29527 -9 -9 ] [.48168 .29527 9 0 ] [.63431 .29527 -3 -9 ] [.63431 .29527 3 0 ] [.78694 .29527 -9 -9 ] [.78694 .29527 9 0 ] [.93956 .29527 -3 -9 ] [.93956 .29527 3 0 ] [.01131 .07125 -18 -4.5 ] [.01131 .07125 0 4.5 ] [.01131 .18951 -18 -4.5 ] [.01131 .18951 0 4.5 ] [.01131 .42603 -12 -4.5 ] [.01131 .42603 0 4.5 ] [.01131 .54429 -12 -4.5 ] [.01131 .54429 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 .17643 .30777 m .17643 .31402 L s [(0.5)] .17643 .29527 0 1 Mshowa .32906 .30777 m .32906 .31402 L s [(1)] .32906 .29527 0 1 Mshowa .48168 .30777 m .48168 .31402 L s [(1.5)] .48168 .29527 0 1 Mshowa .63431 .30777 m .63431 .31402 L s [(2)] .63431 .29527 0 1 Mshowa .78694 .30777 m .78694 .31402 L s [(2.5)] .78694 .29527 0 1 Mshowa .93956 .30777 m .93956 .31402 L s [(3)] .93956 .29527 0 1 Mshowa .125 Mabswid .05433 .30777 m .05433 .31152 L s .08486 .30777 m .08486 .31152 L s .11538 .30777 m .11538 .31152 L s .14591 .30777 m .14591 .31152 L s .20696 .30777 m .20696 .31152 L s .23748 .30777 m .23748 .31152 L s .26801 .30777 m .26801 .31152 L s .29853 .30777 m .29853 .31152 L s .35958 .30777 m .35958 .31152 L s .39011 .30777 m .39011 .31152 L s .42063 .30777 m .42063 .31152 L s .45116 .30777 m .45116 .31152 L s .51221 .30777 m .51221 .31152 L s .54274 .30777 m .54274 .31152 L s .57326 .30777 m .57326 .31152 L s .60379 .30777 m .60379 .31152 L s .66484 .30777 m .66484 .31152 L s .69536 .30777 m .69536 .31152 L s .72589 .30777 m .72589 .31152 L s .75641 .30777 m .75641 .31152 L s .81746 .30777 m .81746 .31152 L s .84799 .30777 m .84799 .31152 L s .87851 .30777 m .87851 .31152 L s .90904 .30777 m .90904 .31152 L s .97009 .30777 m .97009 .31152 L s .25 Mabswid 0 .30777 m 1 .30777 L s .02381 .07125 m .03006 .07125 L s [(-20)] .01131 .07125 1 0 Mshowa .02381 .18951 m .03006 .18951 L s [(-10)] .01131 .18951 1 0 Mshowa .02381 .42603 m .03006 .42603 L s [(10)] .01131 .42603 1 0 Mshowa .02381 .54429 m .03006 .54429 L s [(20)] .01131 .54429 1 0 Mshowa .125 Mabswid .02381 .0949 m .02756 .0949 L s .02381 .11855 m .02756 .11855 L s .02381 .14221 m .02756 .14221 L s .02381 .16586 m .02756 .16586 L s .02381 .21316 m .02756 .21316 L s .02381 .23681 m .02756 .23681 L s .02381 .26046 m .02756 .26046 L s .02381 .28412 m .02756 .28412 L s .02381 .33142 m .02756 .33142 L s .02381 .35507 m .02756 .35507 L s .02381 .37872 m .02756 .37872 L s .02381 .40238 m .02756 .40238 L s .02381 .44968 m .02756 .44968 L s .02381 .47333 m .02756 .47333 L s .02381 .49698 m .02756 .49698 L s .02381 .52063 m .02756 .52063 L s .02381 .0476 m .02756 .0476 L s .02381 .02395 m .02756 .02395 L s .02381 .00029 m .02756 .00029 L s .02381 .56794 m .02756 .56794 L s .02381 .59159 m .02756 .59159 L s .02381 .61524 m .02756 .61524 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 .01472 m .02839 .01545 L .03602 .01683 L .0467 .01907 L .06044 .02246 L .07723 .02739 L .09707 .03432 L .11996 .04374 L .14591 .05621 L .17491 .07229 L .20696 .09253 L .24206 .11742 L .28022 .14731 L .32143 .1824 L .36569 .22261 L .413 .26756 L .46337 .31644 L .51679 .36801 L .57326 .42049 L .63278 .47163 L .69536 .51867 L .76099 .55849 L .82967 .58779 L .9014 .60332 L .97619 .60222 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j000050020N@0 000D00030@000><0000D00030@000><0000D00D1h@0001@000<100000P030Mh0000D00811P040MX0 000D00030@0000T00`7G000050000`40000<0081e@0001@000<100003P030M80000D00030@000140 0P7@000050000`40000C00<1c@0001@00P4G0081b`0001@000<1000060020LT0000D00030@0001X0 0P77000050000`40000L0081a@0000L01043008110000`40000N0081``0000L000<100000`001040 004300<180020L40000800030@00008000@100010`000`40000R0081_`0000030041008110001@40 0001008000D100000@0V00030@000;`0000:00040@000@8000D100000@0W00030@000;/000070004 0@000@8000@100010`000`40000V0081^`0000P00P44008110000`40000X00030@000;P0000D0081 :P020KP0000D00030@0002/000<10000]@0001@000<10000;0000`40002d000050000`40000]0081 ]00001@000<10000;`000`40002a000050020C4000<10000/00001@000<10000<@000`40002_0000 50000`40000b0081[`0001@000<10000=0000`40002/000050000`40000e00030@000:/0000D0003 0@0003H00P6[000050020CT000<10000Z00001@000<10000>@000`40002W000050000`40000j0003 0@000:H0000D00030@0003/00P6V000050000`40000m00030@000:<0000D0081?`000`40002R0000 50000`40000o00030@000:40000D00030@0004000P6Q000050000`40001200030@0009h0000D0003 0@0004<000<10000W@0000L01043008110000`40001400030@0009`0000900050@0000400P001040 00030DD000<10000V`0000T000D100000@0200050@000040B0000`40002J000000<00@400P440005 0@0000400P001@40000104T000<10000V@0000T000D100000@0200050@000040BP000`40002H0000 1`030@<000@100010`000`40001900030@0009L0000900030@0000800P440081B`000`40002F0000 50000`40001;00030@0009D0000D00030@0004`000<10000U00001@000<10000C@000`40002C0000 50000`40001>00030@000980000D00030@0004l000<10000T@0001@00P5A00030@000900000D0003 0@00054000<10000S`0001@000<10000DP020Hl0000D00030@0005@000<10000S00001@000<10000 E@000`40002;000050020EL000<10000RP0001@000<10000E`000`400029000050000`40001H0003 0@0008P0000D00030@0001X00P4400030@0000800`4K00@14P000`40000400@10`000`40000200<1 6`040AX0104300030@0000800`4K00813`0001@000<100006@001040004;00030@0001X000<10000 4P000`40000500030@0000X000<1000060000`40000K00030@0000`000<100005`001040004>0000 50000`40000I00040@000@/000<100006P000`40000C00030@0000@000<100002P000`40000I0003 0@0001/000<100002`000`40000J00030@0000`0000D00816P001040004800<17@000`40000D0003 0@0000<000<100001`030Ad000<100006`000`40000700<16`020@l0000D00030@0001T000@10001 20000`40000M00030@0001D00P4300030@0000L000<100007P000`40000K00030@0000H000<10000 7@000`40000<000050000`40000I00040@000@P000<100006`030AT0104900030@0001/000@10001 6P001040004800030@0001X000@100013P0001@000<100006P020@T0104L00030@0001P000<10040 2@040A/00P4L00812@040AX00P4?000050000`40001Q00030@0007l0000?0>/1000D00030@0000D0 00<1000010000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`40 000500030@0000@000<1000010000`40000400030@0000@000<1000010000`400@0400030@0000D0 00<1000010000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`40 000500030@0000@000<1000010000`40000400030@0000@000<1000010000`40000400030@0000D0 00<100001@0001@000<100008@000`40000Q00030@0001`000D100000@0S00030@00024000<10000 80000`40000=000050000`40001U00030@0007/0000D00030@0006H000<10000NP0001@000<10000 I`000`40001i000050020FT000<10000N00001@000<10000J@000`40001g000050000`40001Z0003 0@0007H0000D00030@0006/000<10000M@0001@000<10000K0000`40001d000050000`40001]0003 0@0007<0000D0081K`000`40001b000050000`40001_00030@000740000D00030@00070000<10000 L00001@000<10000L@000`40001_000050000`40001b00030@0006h0000D0081M0000`40001]0000 50000`40001d00030@0006`0000D00030@0007D000<10000J`0001@000<10000MP000`40001Z0000 50000`40001g0081JP0001@000<10000N@000`40001W000050020G/000<10000IP0001@000<10000 N`000`40001U000050000`40001l00030@0006@0000D00030@0007d000<10000H`0000L010430081 10000`40001n00030@000680000900050@0000400P00104000030Gl000<10000H@0000T000D10000 0@0200050@000040PP000`40001P00002@001@400001008000D100000@230081H00000T000D10000 0@0200050@000040Q@000`40001M00001`030@<000@100010`000`40002400030@0005`000090003 0@0000800P4400030@0008D000<10000F`0001@00P6700030@0005X0000D00030@0008L000<10000 F@0001@000<10000R0020ET0000D00030@0008X000<10000EP0001@000<10000R`000`40001E0000 50020Hd000<10000E00001@000<10000S@000`40001C000050000`40002>0081D`0001@000<10000 T0000`40001@000050000`40002A00030@0004l0000D00030@0009800P5?000050020ID000<10000 C00001@000<10000U@000`40001;000050000`40002F00030@0004X0000D00030@0009L00P5:0000 50000`40002I00030@0004L0000D0081V`000`400016000050000`40002K0081AP0001@000<10000 W@020D@0000D00030@0009l00P5200001`040@<00P4400030@000:400P5000001`000`4000030004 0@000@<000<10000X`000`40000m000020000`40000200040@000@<00`6T0081?@0000T000D10000 0@0200050@000040Z0020C/0000:00040@000@8000D100000@2Z0081>@0000L000@100010P001040 004300030@000:X00P4g000020020@@00P4400030@000:`00P4e000050020Jl00P4c000050000`40 002`00<1<00001@000<10000/`020Bh0000D00030@000;D00P4/000050000`40002g0081:P0001@0 00<10000^@040BH0000D0081_P040B80000D00030@000<40104N000050000`40003500@12P0:0@H0 000D00030@000<0003j0000nP000?X0 003j0000\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.293353, -27.6723, 0.0140216, 0.361925}}], 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.30525 0.307768 0.0118259 [ [.17643 .29527 -9 -9 ] [.17643 .29527 9 0 ] [.32906 .29527 -3 -9 ] [.32906 .29527 3 0 ] [.48168 .29527 -9 -9 ] [.48168 .29527 9 0 ] [.63431 .29527 -3 -9 ] [.63431 .29527 3 0 ] [.78694 .29527 -9 -9 ] [.78694 .29527 9 0 ] [.93956 .29527 -3 -9 ] [.93956 .29527 3 0 ] [.01131 .07125 -18 -4.5 ] [.01131 .07125 0 4.5 ] [.01131 .18951 -18 -4.5 ] [.01131 .18951 0 4.5 ] [.01131 .42603 -12 -4.5 ] [.01131 .42603 0 4.5 ] [.01131 .54429 -12 -4.5 ] [.01131 .54429 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 .17643 .30777 m .17643 .31402 L s [(0.5)] .17643 .29527 0 1 Mshowa .32906 .30777 m .32906 .31402 L s [(1)] .32906 .29527 0 1 Mshowa .48168 .30777 m .48168 .31402 L s [(1.5)] .48168 .29527 0 1 Mshowa .63431 .30777 m .63431 .31402 L s [(2)] .63431 .29527 0 1 Mshowa .78694 .30777 m .78694 .31402 L s [(2.5)] .78694 .29527 0 1 Mshowa .93956 .30777 m .93956 .31402 L s [(3)] .93956 .29527 0 1 Mshowa .125 Mabswid .05433 .30777 m .05433 .31152 L s .08486 .30777 m .08486 .31152 L s .11538 .30777 m .11538 .31152 L s .14591 .30777 m .14591 .31152 L s .20696 .30777 m .20696 .31152 L s .23748 .30777 m .23748 .31152 L s .26801 .30777 m .26801 .31152 L s .29853 .30777 m .29853 .31152 L s .35958 .30777 m .35958 .31152 L s .39011 .30777 m .39011 .31152 L s .42063 .30777 m .42063 .31152 L s .45116 .30777 m .45116 .31152 L s .51221 .30777 m .51221 .31152 L s .54274 .30777 m .54274 .31152 L s .57326 .30777 m .57326 .31152 L s .60379 .30777 m .60379 .31152 L s .66484 .30777 m .66484 .31152 L s .69536 .30777 m .69536 .31152 L s .72589 .30777 m .72589 .31152 L s .75641 .30777 m .75641 .31152 L s .81746 .30777 m .81746 .31152 L s .84799 .30777 m .84799 .31152 L s .87851 .30777 m .87851 .31152 L s .90904 .30777 m .90904 .31152 L s .97009 .30777 m .97009 .31152 L s .25 Mabswid 0 .30777 m 1 .30777 L s .02381 .07125 m .03006 .07125 L s [(-20)] .01131 .07125 1 0 Mshowa .02381 .18951 m .03006 .18951 L s [(-10)] .01131 .18951 1 0 Mshowa .02381 .42603 m .03006 .42603 L s [(10)] .01131 .42603 1 0 Mshowa .02381 .54429 m .03006 .54429 L s [(20)] .01131 .54429 1 0 Mshowa .125 Mabswid .02381 .0949 m .02756 .0949 L s .02381 .11855 m .02756 .11855 L s .02381 .14221 m .02756 .14221 L s .02381 .16586 m .02756 .16586 L s .02381 .21316 m .02756 .21316 L s .02381 .23681 m .02756 .23681 L s .02381 .26046 m .02756 .26046 L s .02381 .28412 m .02756 .28412 L s .02381 .33142 m .02756 .33142 L s .02381 .35507 m .02756 .35507 L s .02381 .37872 m .02756 .37872 L s .02381 .40238 m .02756 .40238 L s .02381 .44968 m .02756 .44968 L s .02381 .47333 m .02756 .47333 L s .02381 .49698 m .02756 .49698 L s .02381 .52063 m .02756 .52063 L s .02381 .0476 m .02756 .0476 L s .02381 .02395 m .02756 .02395 L s .02381 .00029 m .02756 .00029 L s .02381 .56794 m .02756 .56794 L s .02381 .59159 m .02756 .59159 L s .02381 .61524 m .02756 .61524 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 .01472 m .02839 .01545 L .03602 .01683 L .0467 .01907 L .06044 .02246 L .07723 .02739 L .09707 .03432 L .11996 .04374 L .14591 .05621 L .17491 .07229 L .20696 .09253 L .24206 .11742 L .28022 .14731 L .32143 .1824 L .36569 .22261 L .413 .26756 L .46337 .31644 L .51679 .36801 L .57326 .42049 L .63278 .47163 L .69536 .51867 L .76099 .55849 L .82967 .58779 L .9014 .60332 L .97619 .60222 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j000050020N@0 000D00030@000><0000D00030@000><0000D00D1h@0001@000<100000P030Mh0000D00811P040MX0 000D00030@0000T00`7G000050000`40000<0081e@0001@000<100003P030M80000D00030@000140 0P7@000050000`40000C00<1c@0001@00P4G0081b`0001@000<1000060020LT0000D00030@0001X0 0P77000050000`40000L0081a@0000L01043008110000`40000N0081``0000L000<100000`001040 004300<180020L40000800030@00008000@100010`000`40000R0081_`0000030041008110001@40 0001008000D100000@0V00030@000;`0000:00040@000@8000D100000@0W00030@000;/000070004 0@000@8000@100010`000`40000V0081^`0000P00P44008110000`40000X00030@000;P0000D0081 :P020KP0000D00030@0002/000<10000]@0001@000<10000;0000`40002d000050000`40000]0081 ]00001@000<10000;`000`40002a000050020C4000<10000/00001@000<10000<@000`40002_0000 50000`40000b0081[`0001@000<10000=0000`40002/000050000`40000e00030@000:/0000D0003 0@0003H00P6[000050020CT000<10000Z00001@000<10000>@000`40002W000050000`40000j0003 0@000:H0000D00030@0003/00P6V000050000`40000m00030@000:<0000D0081?`000`40002R0000 50000`40000o00030@000:40000D00030@0004000P6Q000050000`40001200030@0009h0000D0003 0@0004<000<10000W@0000L01043008110000`40001400030@0009`0000900050@0000400P001040 00030DD000<10000V`0000T000D100000@0200050@000040B0000`40002J000000<00@400P440005 0@0000400P001@40000104T000<10000V@0000T000D100000@0200050@000040BP000`40002H0000 1`030@<000@100010`000`40001900030@0009L0000900030@0000800P440081B`000`40002F0000 50000`40001;00030@0009D0000D00030@0004`000<10000U00001@000<10000C@000`40002C0000 50000`40001>00030@000980000D00030@0004l000<10000T@0001@00P5A00030@000900000D0003 0@00054000<10000S`0001@000<10000DP020Hl0000D00030@0005@000<10000S00001@000<10000 E@000`40002;000050020EL000<10000RP0001@000<10000E`000`400029000050000`40001H0003 0@0008P0000D00030@0001X00P4400030@0000800`4K00@14P000`40000400@10`000`40000200<1 6`040AX0104300030@0000800`4K00813`0001@000<100006@001040004;00030@0001X000<10000 4P000`40000500030@0000X000<1000060000`40000K00030@0000`000<100005`001040004>0000 50000`40000I00040@000@/000<100006P000`40000C00030@0000@000<100002P000`40000I0003 0@0001/000<100002`000`40000J00030@0000`0000D00816P001040004800<17@000`40000D0003 0@0000<000<100001`030Ad000<100006`000`40000700<16`020@l0000D00030@0001T000@10001 20000`40000M00030@0001D00P4300030@0000L000<100007P000`40000K00030@0000H000<10000 7@000`40000<000050000`40000I00040@000@P000<100006`030AT0104900030@0001/000@10001 6P001040004800030@0001X000@100013P0001@000<100006P020@T0104L00030@0001P000<10040 2@040A/00P4L00812@040AX00P4?000050000`40001Q00030@0007l0000?0>/1000D00030@0000D0 00<1000010000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`40 000500030@0000@000<1000010000`40000400030@0000@000<1000010000`400@0400030@0000D0 00<1000010000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`40 000500030@0000@000<1000010000`40000400030@0000@000<1000010000`40000400030@0000D0 00<100001@0001@000<100008@000`40000Q00030@0001`000D100000@0S00030@00024000<10000 80000`40000=000050000`40001U00030@0007/0000D00030@0006H000<10000NP0001@000<10000 I`000`40001i000050020FT000<10000N00001@000<10000J@000`40001g000050000`40001Z0003 0@0007H0000D00030@0006/000<10000M@0001@000<10000K0000`40001d000050000`40001]0003 0@0007<0000D0081K`000`40001b000050000`40001_00030@000740000D00030@00070000<10000 L00001@000<10000L@000`40001_000050000`40001b00030@0006h0000D0081M0000`40001]0000 50000`40001d00030@0006`0000D00030@0007D000<10000J`0001@000<10000MP000`40001Z0000 50000`40001g0081JP0001@000<10000N@000`40001W000050020G/000<10000IP0001@000<10000 N`000`40001U000050000`40001l00030@0006@0000D00030@0007d000<10000H`0000L010430081 10000`40001n00030@000680000900050@0000400P00104000030Gl000<10000H@0000T000D10000 0@0200050@000040PP000`40001P00002@001@400001008000D100000@230081H00000T000D10000 0@0200050@000040Q@000`40001M00001`030@<000@100010`000`40002400030@0005`000090003 0@0000800P4400030@0008D000<10000F`0001@00P6700030@0005X0000D00030@0008L000<10000 F@0001@000<10000R0020ET0000D00030@0008X000<10000EP0001@000<10000R`000`40001E0000 50020Hd000<10000E00001@000<10000S@000`40001C000050000`40002>0081D`0001@000<10000 T0000`40001@000050000`40002A00030@0004l0000D00030@0009800P5?000050020ID000<10000 C00001@000<10000U@000`40001;000050000`40002F00030@0004X0000D00030@0009L00P5:0000 50000`40002I00030@0004L0000D0081V`000`400016000050000`40002K0081AP0001@000<10000 W@020D@0000D00030@0009l00P5200001`040@<00P4400030@000:400P5000001`000`4000030004 0@000@<000<10000X`000`40000m000020000`40000200040@000@<00`6T0081?@0000T000D10000 0@0200050@000040Z0020C/0000:00040@000@8000D100000@2Z0081>@0000L000@100010P001040 004300030@000:X00P4g000020020@@00P4400030@000:`00P4e000050020Jl00P4c000050000`40 002`00<1<00001@000<10000/`020Bh0000D00030@000;D00P4/000050000`40002g0081:P0001@0 00<10000^@040BH0000D0081_P040B80000D00030@000<40104N000050000`40003500@12P0:0@H0 000D00030@000<0003j0000nP000?X0 003j0000\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.293353, -27.6723, 0.0140216, 0.361925}}], 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.30525 0.309017 0.294302 [ [.17643 .29652 -9 -9 ] [.17643 .29652 9 0 ] [.32906 .29652 -3 -9 ] [.32906 .29652 3 0 ] [.48168 .29652 -9 -9 ] [.48168 .29652 9 0 ] [.63431 .29652 -3 -9 ] [.63431 .29652 3 0 ] [.78694 .29652 -9 -9 ] [.78694 .29652 9 0 ] [.93956 .29652 -3 -9 ] [.93956 .29652 3 0 ] [.01131 .01472 -12 -4.5 ] [.01131 .01472 0 4.5 ] [.01131 .16187 -24 -4.5 ] [.01131 .16187 0 4.5 ] [.01131 .45617 -18 -4.5 ] [.01131 .45617 0 4.5 ] [.01131 .60332 -6 -4.5 ] [.01131 .60332 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 .17643 .30902 m .17643 .31527 L s [(0.5)] .17643 .29652 0 1 Mshowa .32906 .30902 m .32906 .31527 L s [(1)] .32906 .29652 0 1 Mshowa .48168 .30902 m .48168 .31527 L s [(1.5)] .48168 .29652 0 1 Mshowa .63431 .30902 m .63431 .31527 L s [(2)] .63431 .29652 0 1 Mshowa .78694 .30902 m .78694 .31527 L s [(2.5)] .78694 .29652 0 1 Mshowa .93956 .30902 m .93956 .31527 L s [(3)] .93956 .29652 0 1 Mshowa .125 Mabswid .05433 .30902 m .05433 .31277 L s .08486 .30902 m .08486 .31277 L s .11538 .30902 m .11538 .31277 L s .14591 .30902 m .14591 .31277 L s .20696 .30902 m .20696 .31277 L s .23748 .30902 m .23748 .31277 L s .26801 .30902 m .26801 .31277 L s .29853 .30902 m .29853 .31277 L s .35958 .30902 m .35958 .31277 L s .39011 .30902 m .39011 .31277 L s .42063 .30902 m .42063 .31277 L s .45116 .30902 m .45116 .31277 L s .51221 .30902 m .51221 .31277 L s .54274 .30902 m .54274 .31277 L s .57326 .30902 m .57326 .31277 L s .60379 .30902 m .60379 .31277 L s .66484 .30902 m .66484 .31277 L s .69536 .30902 m .69536 .31277 L s .72589 .30902 m .72589 .31277 L s .75641 .30902 m .75641 .31277 L s .81746 .30902 m .81746 .31277 L s .84799 .30902 m .84799 .31277 L s .87851 .30902 m .87851 .31277 L s .90904 .30902 m .90904 .31277 L s .97009 .30902 m .97009 .31277 L s .25 Mabswid 0 .30902 m 1 .30902 L s .02381 .01472 m .03006 .01472 L s [(-1)] .01131 .01472 1 0 Mshowa .02381 .16187 m .03006 .16187 L s [(-0.5)] .01131 .16187 1 0 Mshowa .02381 .45617 m .03006 .45617 L s [(0.5)] .01131 .45617 1 0 Mshowa .02381 .60332 m .03006 .60332 L s [(1)] .01131 .60332 1 0 Mshowa .125 Mabswid .02381 .04415 m .02756 .04415 L s .02381 .07358 m .02756 .07358 L s .02381 .10301 m .02756 .10301 L s .02381 .13244 m .02756 .13244 L s .02381 .1913 m .02756 .1913 L s .02381 .22073 m .02756 .22073 L s .02381 .25016 m .02756 .25016 L s .02381 .27959 m .02756 .27959 L s .02381 .33845 m .02756 .33845 L s .02381 .36788 m .02756 .36788 L s .02381 .39731 m .02756 .39731 L s .02381 .42674 m .02756 .42674 L s .02381 .4856 m .02756 .4856 L s .02381 .51503 m .02756 .51503 L s .02381 .54446 m .02756 .54446 L s .02381 .57389 m .02756 .57389 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 .30902 m .02839 .30902 L .03602 .30902 L .0467 .30902 L .06044 .30902 L .07723 .30902 L .09707 .30902 L .11996 .30902 L .14591 .30902 L .17491 .30902 L .20696 .30902 L .24206 .30902 L .28022 .30902 L .32143 .30902 L .36569 .30902 L .413 .30902 L .46337 .30902 L .51679 .30902 L .57326 .30902 L .63278 .30902 L .69536 .30902 L .76099 .30902 L .82967 .30902 L .9014 .30902 L .97619 .30902 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j0000nP0001X0 00<10000g@0001X000<10000g@0001<0104300030@000=d0000E00030@00008000<10000g@0001D0 00<100000P030Md0000=00@110000`40000200030@000=d0000E00030@00008000<10000g@0001<0 0`4400030@000=d0000E00030@00008000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40 003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M000020020@@000<100000P030@@0 00<10000g@0000L000@100012`00104000030Md0000700040@000@/000D100000@3O000000<00@40 0P4200040@000@P00`4400030@000=d0000700040@000@P000<1000010000`40003M00001`001040 004800030@0000@000<10000g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0 000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40000I008110000`40000200<16P040AT0 104300030@0000800`4I00@16@040@<000<100000P030A/00P4>00006P020AT000@100012`000`40 000I00030@0001X000<100002P000`40000F00030@0001X000<1000030000`40000G00040@000@d0 000J00030@0001P000@100012`000`40000I00030@0001X000<100002P000`40000G00030@0001X0 00<100002`000`40000J00030@0000/0000J00030@0001P000@1000120030A`000<100006P000`40 000700<16`000`40000J00030@0000L00`4K00813P0001X000<1000060001040004800030@0001`0 00<100006P000`40000700030@0001`000<100006P000`40000600030@0001d000<100002`0001X0 00<1000060001040004800030@0001X00`4J00<12@000`40000I00040@000AT000@1000120000`40 000J00040@000@d0000J00030@0001T00P4900@16`000`40000J00030@0000L0104I00816`020@T0 104J00813P0001X000<10000g@0001D0i@4001X000<1000010000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<100000`000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<1000010000`40000500006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d00008008110000`40000200<110000`40003M0000 1`001040004;00040@0000<1g@0000L000@100012`001@4000010=l0000700040@000@P00`440003 0@000=d0000700040@000@P000<1000010000`40003M00001`001040004800030@0000@000<10000 g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000C00@10`000`40003M00005@000`40000200030@000=d0000E0003 0@0000800`7M00005@000`40000200030@000=d0000E00030@00008000<10000g@0001<00`440003 0@000=d0000E00030@000>80003j0000nP000?X0003j0000nP000001\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.386456, -1.14594, 0.0143955, 0.014931}}], 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.30525 0.309017 0.294302 [ [.17643 .29652 -9 -9 ] [.17643 .29652 9 0 ] [.32906 .29652 -3 -9 ] [.32906 .29652 3 0 ] [.48168 .29652 -9 -9 ] [.48168 .29652 9 0 ] [.63431 .29652 -3 -9 ] [.63431 .29652 3 0 ] [.78694 .29652 -9 -9 ] [.78694 .29652 9 0 ] [.93956 .29652 -3 -9 ] [.93956 .29652 3 0 ] [.01131 .01472 -12 -4.5 ] [.01131 .01472 0 4.5 ] [.01131 .16187 -24 -4.5 ] [.01131 .16187 0 4.5 ] [.01131 .45617 -18 -4.5 ] [.01131 .45617 0 4.5 ] [.01131 .60332 -6 -4.5 ] [.01131 .60332 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 .17643 .30902 m .17643 .31527 L s [(0.5)] .17643 .29652 0 1 Mshowa .32906 .30902 m .32906 .31527 L s [(1)] .32906 .29652 0 1 Mshowa .48168 .30902 m .48168 .31527 L s [(1.5)] .48168 .29652 0 1 Mshowa .63431 .30902 m .63431 .31527 L s [(2)] .63431 .29652 0 1 Mshowa .78694 .30902 m .78694 .31527 L s [(2.5)] .78694 .29652 0 1 Mshowa .93956 .30902 m .93956 .31527 L s [(3)] .93956 .29652 0 1 Mshowa .125 Mabswid .05433 .30902 m .05433 .31277 L s .08486 .30902 m .08486 .31277 L s .11538 .30902 m .11538 .31277 L s .14591 .30902 m .14591 .31277 L s .20696 .30902 m .20696 .31277 L s .23748 .30902 m .23748 .31277 L s .26801 .30902 m .26801 .31277 L s .29853 .30902 m .29853 .31277 L s .35958 .30902 m .35958 .31277 L s .39011 .30902 m .39011 .31277 L s .42063 .30902 m .42063 .31277 L s .45116 .30902 m .45116 .31277 L s .51221 .30902 m .51221 .31277 L s .54274 .30902 m .54274 .31277 L s .57326 .30902 m .57326 .31277 L s .60379 .30902 m .60379 .31277 L s .66484 .30902 m .66484 .31277 L s .69536 .30902 m .69536 .31277 L s .72589 .30902 m .72589 .31277 L s .75641 .30902 m .75641 .31277 L s .81746 .30902 m .81746 .31277 L s .84799 .30902 m .84799 .31277 L s .87851 .30902 m .87851 .31277 L s .90904 .30902 m .90904 .31277 L s .97009 .30902 m .97009 .31277 L s .25 Mabswid 0 .30902 m 1 .30902 L s .02381 .01472 m .03006 .01472 L s [(-1)] .01131 .01472 1 0 Mshowa .02381 .16187 m .03006 .16187 L s [(-0.5)] .01131 .16187 1 0 Mshowa .02381 .45617 m .03006 .45617 L s [(0.5)] .01131 .45617 1 0 Mshowa .02381 .60332 m .03006 .60332 L s [(1)] .01131 .60332 1 0 Mshowa .125 Mabswid .02381 .04415 m .02756 .04415 L s .02381 .07358 m .02756 .07358 L s .02381 .10301 m .02756 .10301 L s .02381 .13244 m .02756 .13244 L s .02381 .1913 m .02756 .1913 L s .02381 .22073 m .02756 .22073 L s .02381 .25016 m .02756 .25016 L s .02381 .27959 m .02756 .27959 L s .02381 .33845 m .02756 .33845 L s .02381 .36788 m .02756 .36788 L s .02381 .39731 m .02756 .39731 L s .02381 .42674 m .02756 .42674 L s .02381 .4856 m .02756 .4856 L s .02381 .51503 m .02756 .51503 L s .02381 .54446 m .02756 .54446 L s .02381 .57389 m .02756 .57389 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 .30902 m .02839 .30902 L .03602 .30902 L .0467 .30902 L .06044 .30902 L .07723 .30902 L .09707 .30902 L .11996 .30902 L .14591 .30902 L .17491 .30902 L .20696 .30902 L .24206 .30902 L .28022 .30902 L .32143 .30902 L .36569 .30902 L .413 .30902 L .46337 .30902 L .51679 .30902 L .57326 .30902 L .63278 .30902 L .69536 .30902 L .76099 .30902 L .82967 .30902 L .9014 .30902 L .97619 .30902 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j0000nP0001X0 00<10000g@0001X000<10000g@0001<0104300030@000=d0000E00030@00008000<10000g@0001D0 00<100000P030Md0000=00@110000`40000200030@000=d0000E00030@00008000<10000g@0001<0 0`4400030@000=d0000E00030@00008000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40 003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M000020020@@000<100000P030@@0 00<10000g@0000L000@100012`00104000030Md0000700040@000@/000D100000@3O000000<00@40 0P4200040@000@P00`4400030@000=d0000700040@000@P000<1000010000`40003M00001`001040 004800030@0000@000<10000g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0 000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40000I008110000`40000200<16P040AT0 104300030@0000800`4I00@16@040@<000<100000P030A/00P4>00006P020AT000@100012`000`40 000I00030@0001X000<100002P000`40000F00030@0001X000<1000030000`40000G00040@000@d0 000J00030@0001P000@100012`000`40000I00030@0001X000<100002P000`40000G00030@0001X0 00<100002`000`40000J00030@0000/0000J00030@0001P000@1000120030A`000<100006P000`40 000700<16`000`40000J00030@0000L00`4K00813P0001X000<1000060001040004800030@0001`0 00<100006P000`40000700030@0001`000<100006P000`40000600030@0001d000<100002`0001X0 00<1000060001040004800030@0001X00`4J00<12@000`40000I00040@000AT000@1000120000`40 000J00040@000@d0000J00030@0001T00P4900@16`000`40000J00030@0000L0104I00816`020@T0 104J00813P0001X000<10000g@0001D0i@4001X000<1000010000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<100000`000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<1000010000`40000500006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d00008008110000`40000200<110000`40003M0000 1`001040004;00040@0000<1g@0000L000@100012`001@4000010=l0000700040@000@P00`440003 0@000=d0000700040@000@P000<1000010000`40003M00001`001040004800030@0000@000<10000 g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000C00@10`000`40003M00005@000`40000200030@000=d0000E0003 0@0000800`7M00005@000`40000200030@000=d0000E00030@00008000<10000g@0001<00`440003 0@000=d0000E00030@000>80003j0000nP000?X0003j0000nP000001\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.386456, -1.14594, 0.0143955, 0.014931}}], 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.30525 0.309017 0.294302 [ [.17643 .29652 -9 -9 ] [.17643 .29652 9 0 ] [.32906 .29652 -3 -9 ] [.32906 .29652 3 0 ] [.48168 .29652 -9 -9 ] [.48168 .29652 9 0 ] [.63431 .29652 -3 -9 ] [.63431 .29652 3 0 ] [.78694 .29652 -9 -9 ] [.78694 .29652 9 0 ] [.93956 .29652 -3 -9 ] [.93956 .29652 3 0 ] [.01131 .01472 -12 -4.5 ] [.01131 .01472 0 4.5 ] [.01131 .16187 -24 -4.5 ] [.01131 .16187 0 4.5 ] [.01131 .45617 -18 -4.5 ] [.01131 .45617 0 4.5 ] [.01131 .60332 -6 -4.5 ] [.01131 .60332 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 .17643 .30902 m .17643 .31527 L s [(0.5)] .17643 .29652 0 1 Mshowa .32906 .30902 m .32906 .31527 L s [(1)] .32906 .29652 0 1 Mshowa .48168 .30902 m .48168 .31527 L s [(1.5)] .48168 .29652 0 1 Mshowa .63431 .30902 m .63431 .31527 L s [(2)] .63431 .29652 0 1 Mshowa .78694 .30902 m .78694 .31527 L s [(2.5)] .78694 .29652 0 1 Mshowa .93956 .30902 m .93956 .31527 L s [(3)] .93956 .29652 0 1 Mshowa .125 Mabswid .05433 .30902 m .05433 .31277 L s .08486 .30902 m .08486 .31277 L s .11538 .30902 m .11538 .31277 L s .14591 .30902 m .14591 .31277 L s .20696 .30902 m .20696 .31277 L s .23748 .30902 m .23748 .31277 L s .26801 .30902 m .26801 .31277 L s .29853 .30902 m .29853 .31277 L s .35958 .30902 m .35958 .31277 L s .39011 .30902 m .39011 .31277 L s .42063 .30902 m .42063 .31277 L s .45116 .30902 m .45116 .31277 L s .51221 .30902 m .51221 .31277 L s .54274 .30902 m .54274 .31277 L s .57326 .30902 m .57326 .31277 L s .60379 .30902 m .60379 .31277 L s .66484 .30902 m .66484 .31277 L s .69536 .30902 m .69536 .31277 L s .72589 .30902 m .72589 .31277 L s .75641 .30902 m .75641 .31277 L s .81746 .30902 m .81746 .31277 L s .84799 .30902 m .84799 .31277 L s .87851 .30902 m .87851 .31277 L s .90904 .30902 m .90904 .31277 L s .97009 .30902 m .97009 .31277 L s .25 Mabswid 0 .30902 m 1 .30902 L s .02381 .01472 m .03006 .01472 L s [(-1)] .01131 .01472 1 0 Mshowa .02381 .16187 m .03006 .16187 L s [(-0.5)] .01131 .16187 1 0 Mshowa .02381 .45617 m .03006 .45617 L s [(0.5)] .01131 .45617 1 0 Mshowa .02381 .60332 m .03006 .60332 L s [(1)] .01131 .60332 1 0 Mshowa .125 Mabswid .02381 .04415 m .02756 .04415 L s .02381 .07358 m .02756 .07358 L s .02381 .10301 m .02756 .10301 L s .02381 .13244 m .02756 .13244 L s .02381 .1913 m .02756 .1913 L s .02381 .22073 m .02756 .22073 L s .02381 .25016 m .02756 .25016 L s .02381 .27959 m .02756 .27959 L s .02381 .33845 m .02756 .33845 L s .02381 .36788 m .02756 .36788 L s .02381 .39731 m .02756 .39731 L s .02381 .42674 m .02756 .42674 L s .02381 .4856 m .02756 .4856 L s .02381 .51503 m .02756 .51503 L s .02381 .54446 m .02756 .54446 L s .02381 .57389 m .02756 .57389 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 .30902 m .02839 .30902 L .03602 .30902 L .0467 .30902 L .06044 .30902 L .07723 .30902 L .09707 .30902 L .11996 .30902 L .14591 .30902 L .17491 .30902 L .20696 .30902 L .24206 .30902 L .28022 .30902 L .32143 .30902 L .36569 .30902 L .413 .30902 L .46337 .30902 L .51679 .30902 L .57326 .30902 L .63278 .30902 L .69536 .30902 L .76099 .30902 L .82967 .30902 L .9014 .30902 L .97619 .30902 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{250, 154.5}, ImageMargins->{{0, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg?ooojjb`i>GYMcNiEePJ@00076;YF1fS;o;ecQ5D_ooooogjMSAa/c5^YVDR`0009BD U:f][B4Q8Kfm_MkNgP3o07=cLf=SHd92@P3ooooo0?l00?l0ok34gSlo?jn_[lS8b>7QhFATI4];Bgem OIJFU/30`9T0I_ooc020P80008200820P6IVc3kOc?KWe7]cJX^3Ne]GMgMmgMgEEEENk^kQ4A4DA4A;^k^lcl1k`1Q0>o90No50>o50Nni0>ni0Nnm0>nm0@0c<`0cIP0cV@0cc00c o`1V001V<`1VIP1VV@1Vc01Vo`2I002I<`2IIP2IV@2Ic?X0003j0000nP000?X0003j0000nP0001X0 00<10000g@0001X000<10000g@0001<0104300030@000=d0000E00030@00008000<10000g@0001D0 00<100000P030Md0000=00@110000`40000200030@000=d0000E00030@00008000<10000g@0001<0 0`4400030@000=d0000E00030@00008000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40 003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X00P7N00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40003M000020020@@000<100000P030@@0 00<10000g@0000L000@100012`00104000030Md0000700040@000@/000D100000@3O000000<00@40 0P4200040@000@P00`4400030@000=d0000700040@000@P000<1000010000`40003M00001`001040 004800030@0000@000<10000g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0 000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0 000J00030@000=d0000J0081gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X0 00<10000g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40 003M00006P000`40003M00006P000`40003M00006P000`40000I008110000`40000200<16P040AT0 104300030@0000800`4I00@16@040@<000<100000P030A/00P4>00006P020AT000@100012`000`40 000I00030@0001X000<100002P000`40000F00030@0001X000<1000030000`40000G00040@000@d0 000J00030@0001P000@100012`000`40000I00030@0001X000<100002P000`40000G00030@0001X0 00<100002`000`40000J00030@0000/0000J00030@0001P000@1000120030A`000<100006P000`40 000700<16`000`40000J00030@0000L00`4K00813P0001X000<1000060001040004800030@0001`0 00<100006P000`40000700030@0001`000<100006P000`40000600030@0001d000<100002`0001X0 00<1000060001040004800030@0001X00`4J00<12@000`40000I00040@000AT000@1000120000`40 000J00040@000@d0000J00030@0001T00P4900@16`000`40000J00030@0000L0104I00816`020@T0 104J00813P0001X000<10000g@0001D0i@4001X000<1000010000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<100000`000`40000400030@0000@000<10000 10000`40000400030@0000@000<1000010000`40000400030@0000@000<1000010000`4000040003 0@0000@000<1000010000`40000400030@0000@000<1000010000`40000500006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X000<10000g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d00008008110000`40000200<110000`40003M0000 1`001040004;00040@0000<1g@0000L000@100012`001@4000010=l0000700040@000@P00`440003 0@000=d0000700040@000@P000<1000010000`40003M00001`001040004800030@0000@000<10000 g@0000P00P4900@10`000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J00030@000=d0000J0081 gP0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000g@0001X000<10000 g@0001X00P7N00006P000`40003M00006P000`40003M00006P000`40003M00006P000`40003M0000 6P000`40003M00006P000`40003M00006P020Mh0000J00030@000=d0000J00030@000=d0000J0003 0@000=d0000J00030@000=d0000C00@10`000`40003M00005@000`40000200030@000=d0000E0003 0@0000800`7M00005@000`40000200030@000=d0000E00030@00008000<10000g@0001<00`440003 0@000=d0000E00030@000>80003j0000nP000?X0003j0000nP000001\ \>"], ImageRangeCache->{{{0, 249}, {153.5, 0}} -> {-0.386456, -1.14594, 0.0143955, 0.014931}}] }, Open ]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Example from Craig's \"Introduction to Robotics\", section 6.7", "Section"], Cell[BoxData[ \(ClearAllVars; \nDoF = 2; \n DH = {\n\t{\[Theta][1], 0, l1, 0}, \n\t\t{\[Theta][2], 0, l2, 0}\n\t}; \n T[1] = DiagonalMatrix[{0, 0, 0}]; \nT[2] = DiagonalMatrix[{0, 0, 0}]; \n f0[1] = \(f0[2] = \(f1[1] = \(f1[2] = \(f2[1] = \(f2[2] = 0\)\)\)\)\); \)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Init; Forwards[True]; Backwards[True]; \)], "Input"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(\(?\[Tau]\)\)], "Input"], Cell[BoxData[ \("Global`\[Tau]"\)], "Print"], Cell[BoxData[ InterpretationBox[ StyleBox[ \(\[Tau][1]\ = \ l1^2*dd\[Theta][1]*m[1]\ + \ g*l2*Cos[\[Theta][1]\ + \ \[Theta][2]]*m[2]\ + \ l1^2*dd\[Theta][1]*m[2]\ + \ l2^2*dd\[Theta][1]*m[2]\ + \ 2*l1*l2*Cos[\[Theta][2]]*dd\[Theta][1]*m[2]\ + \ l2^2*dd\[Theta][2]*m[2]\ + \ l1*l2*Cos[\[Theta][2]]*dd\[Theta][2]*m[2]\ + \ g*l1*Cos[\[Theta][1]]*\((m[1]\ + \ m[2])\)\ - \ 2*l1*l2*d\[Theta][1]*d\[Theta][2]*m[2]*Sin[\[Theta][2]]\ - \ l1*l2*d\[Theta][2]^2*m[2]*Sin[\[Theta][2]]\n\ \n \[Tau][2]\ = \ l2*m[2]*\(( g*Cos[\[Theta][1]\ + \ \[Theta][2]]\ + \ l2*dd\[Theta][1]\ + \ l1*Cos[\[Theta][2]]*dd\[Theta][1]\ + \ l2*dd\[Theta][2]\ + \ l1*d\[Theta][1]^2*Sin[\[Theta][2]]) \)\), ShowStringCharacters->True, NumberMarks->True], InputForm[ Definition[ \[Tau]]], Editable->True, AutoDelete->True]], "Print"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Benchmark I", "Section"], Cell["\<\ For this benchmark, we simulate a robot arm for which the inertia \ matrix is 0 (we assume point masses in the links), the gravity can be \ neglected, and no friction is present. We show the simulation of such a robot \ arm with 2 links.\ \>", "Text"], Cell[BoxData[ RowBox[{ \(ClearAllVars; \nDoF\ = \ 2; \n DH\ = Table[{\[Theta][i], d[i], a[i], \[Alpha][i]}, \ {i, 1, DoF}]; \), " ", StyleBox[\( (*\ general\ two - link\ robot*) \), "Commentary"]}]], "Input"], Cell[BoxData[{ \(For\ [i = 1, \ i <= DoF, \ \(i++\), \n\t T[i]\ = \ {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}; \n\tf0[i] = 0; \n\t f1[i] = 0; \n\tf2[i] = 0; \n\tm[i] = 1; \n\t]\), \(\(g = 0; \)\n\)}], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Init; Forwards[True]\ ; Backwards[True]; \)], "Input"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell["The resulting torques:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(For[i = 1, \ i <= DoF, \ \(i++\), \ \n\t \(Print["\<\[Tau][\>", i, "\<] = \>", \ \[Tau][i]]; \)\n]\)], "Input"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]\(1\/2\ \((4\ a[1]\^2\ dd\[Theta][1] + 2\ a[2]\^2\ dd\[Theta][1] + 4\ a[1]\ d[1]\ dd\[Theta][1] + 2\ d[1]\^2\ dd\[Theta][1] + 4\ a[2]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] + 4\ a[1]\ Cos[\[Theta][2]]\ \((a[2] + d[2])\)\ dd\[Theta][1] + a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2] + a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][2] + a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][2] + 2\ Cos[\[Alpha][2]]\ \((a[2] + d[2])\)\^2\ dd\[Theta][2] + 2\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] + 2\ a[1]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] - 2\ a[1]\ a[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 2\ a[1]\ d[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 2\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]] - 2\ a[1]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)\), SequenceForm[ "\[Tau][", 1, "] = ", Times[ Rational[ 1, 2], Plus[ Times[ 4, Power[ a[ 1], 2], dd\[Theta][ 1]], Times[ 2, Power[ a[ 2], 2], dd\[Theta][ 1]], Times[ 4, a[ 1], d[ 1], dd\[Theta][ 1]], Times[ 2, Power[ d[ 1], 2], dd\[Theta][ 1]], Times[ 4, a[ 2], d[ 2], dd\[Theta][ 1]], Times[ 2, Power[ d[ 2], 2], dd\[Theta][ 1]], Times[ 4, a[ 1], Cos[ \[Theta][ 2]], Plus[ a[ 2], d[ 2]], dd\[Theta][ 1]], Times[ a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2]], Times[ a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2]], Times[ a[ 1], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 2]], Times[ a[ 1], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 2]], Times[ 2, Cos[ \[Alpha][ 2]], Power[ Plus[ a[ 2], d[ 2]], 2], dd\[Theta][ 2]], Times[ 2, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ 2, a[ 1], d[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -2, a[ 1], a[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Theta][ 2]]], Times[ -2, a[ 1], d[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Theta][ 2]]], Times[ -2, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]], Times[ -2, a[ 1], d[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]]], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]\(\((a[2] + d[2])\)\ \((\((a[2] + d[2])\)\ dd\[Theta][2] + Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1] + d[2]\ dd\[Theta][1] + a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]])\))\)\)\), SequenceForm[ "\[Tau][", 2, "] = ", Times[ Plus[ a[ 2], d[ 2]], Plus[ Times[ Plus[ a[ 2], d[ 2]], dd\[Theta][ 2]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ a[ 2], dd\[Theta][ 1]], Times[ a[ 1], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ d[ 2], dd\[Theta][ 1]], Times[ a[ 1], Power[ d\[Theta][ 1], 2], Sin[ \[Theta][ 2]]]]]]]], Editable->False]], "Print"] }, Open ]], Cell["The gravity is 0:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Gravity[\[Tau][1]]\), \(Gravity[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(0\)], "Output"], Cell[BoxData[ \(0\)], "Output"] }, Open ]], Cell["The mass matrix:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Mass[\[Tau][1]]\), \(Mass[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/2\ \((4\ a[1]\^2\ dd\[Theta][1] + 2\ a[2]\^2\ dd\[Theta][1] + 4\ a[1]\ d[1]\ dd\[Theta][1] + 2\ d[1]\^2\ dd\[Theta][1] + 4\ a[2]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] + 4\ a[1]\ Cos[\[Theta][2]]\ \((a[2] + d[2])\)\ dd\[Theta][1] + a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2] + a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][2] + a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][2] + 2\ Cos[\[Alpha][2]]\ \((a[2] + d[2])\)\^2\ dd\[Theta][2])\)\)], "Output"], Cell[BoxData[ \(\((a[2] + d[2])\)\ \((Cos[\[Alpha][2]]\ \((a[2] + a[1]\ Cos[\[Theta][2]] + d[2])\)\ dd\[Theta][1] + \((a[2] + d[2])\)\ dd\[Theta][2])\)\)], "Output"] }, Open ]], Cell["The Coriolis and centrifugal forces:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Coriolis[\[Tau][1]]\), \(Coriolis[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(\(-a[1]\)\ \((a[2] + d[2])\)\ d\[Theta][2]\ \((2\ Cos[\[Alpha][2]]\ d\[Theta][1] + d\[Theta][2])\)\ Sin[\[Theta][2]]\)], "Output"], Cell[BoxData[ \(a[1]\ Cos[\[Alpha][2]]\ \((a[2] + d[2])\)\ d\[Theta][1]\^2\ Sin[\[Theta][2]]\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Benchmark II", "Section"], Cell["\<\ For this benchmark, we simulate a robot arm for which the inertia \ matrix is 0 (we assume point masses in the links), no friction is present, \ but gravity is. We show the simulation of such a robot arm with 2 links.\ \>", "Text"], Cell[BoxData[ RowBox[{ \(ClearAllVars; \nDoF\ = \ 2; \n DH\ = Table[{\[Theta][i], d[i], a[i], \[Alpha][i]}, \ {i, 1, DoF}]; \), " ", StyleBox[\( (*\ general\ two - link\ robot*) \), "Commentary"]}]], "Input"], Cell[BoxData[ \(For\ [i = 1, \ i <= DoF, \ \(i++\), \n\t T[i]\ = \ {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}; \n\tf0[i] = 0; \n\t f1[i] = 0; \n\tf2[i] = 0; \n\tm[i] = 1; \n\t]\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Init; Forwards[True]\ ; Backwards[True]; \)], "Input"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell["The resulting torques:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(For[i = 1, \ i <= DoF, \ \(i++\), \ \n\t \(Print["\<\[Tau][\>", i, "\<] = \>", \ \[Tau][i]]; \)\n]\)], "Input"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]\(1\/16\ \((12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] + 20\ a[1]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ dd\[Theta][1] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] - 2\ Cos[2\ \[Alpha][2]]\ d[2]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ Cos[\[Alpha][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2] - 4\ a[2]\ d[2]\ d\[Theta][2]\^2\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)\), SequenceForm[ "\[Tau][", 1, "] = ", Times[ Rational[ 1, 16], Plus[ Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]]], Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ 20, Power[ a[ 1], 2], dd\[Theta][ 1]], Times[ 4, Power[ a[ 2], 2], dd\[Theta][ 1]], Times[ 16, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ 8, a[ 1], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 1]], Times[ -8, a[ 1], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 1]], Times[ 2, Power[ d[ 2], 2], dd\[Theta][ 1]], Times[ -2, Cos[ Times[ 2, \[Alpha][ 2]]], Power[ d[ 2], 2], dd\[Theta][ 1]], Times[ 4, Power[ a[ 2], 2], Cos[ \[Alpha][ 2]], dd\[Theta][ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2]], Times[ -4, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Alpha][ 2]]], Times[ -4, a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -8, a[ 1], a[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Theta][ 2]]], Times[ -8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]]], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]\(1\/4\ a[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] + a[2]\ dd\[Theta][2] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1] + d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]] - 2\ g\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\)\)\), SequenceForm[ "\[Tau][", 2, "] = ", Times[ Rational[ 1, 4], a[ 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ a[ 2], dd\[Theta][ 2]], Times[ -2, g, Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ a[ 2], dd\[Theta][ 1]], Times[ 2, a[ 1], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], Power[ d\[Theta][ 1], 2], Sin[ \[Theta][ 2]]], Times[ -2, g, Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]]], Editable->False]], "Print"] }, Open ]], Cell["The gravity:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Gravity[\[Tau][1]]\), \(Gravity[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]) \)\)], "Output"], Cell[BoxData[ \(1\/4\ a[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] - 2\ g\ Cos[\[Alpha][2]]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)\)], "Output"] }, Open ]], Cell["The mass matrix:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Mass[\[Tau][1]]\), \(Mass[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((20\ a[1]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ dd\[Theta][1] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] - 2\ Cos[2\ \[Alpha][2]]\ d[2]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ Cos[\[Alpha][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2])\)\)], "Output"], Cell[BoxData[ \(1\/4\ a[2]\ \((Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1]) \) + a[2]\ dd\[Theta][2])\)\)], "Output"] }, Open ]], Cell["The Coriolis and centrifugal forces:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Coriolis[\[Tau][1]]\), \(Coriolis[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((\(-4\)\ a[2]\ d[2]\ d\[Theta][2]\^2\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)], "Output"], Cell[BoxData[ \(1\/4\ a[2]\ Cos[\[Alpha][2]]\ \((d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]])\)\)], "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Benchmark III", "Section"], Cell["\<\ For this benchmark, we simulate a robot arm for which the inertia \ matrix is 0 (we assume point masses in the links), with friction and gravity \ present. We show the simulation of such a robot arm with 2 links.\ \>", "Text"], Cell[BoxData[ RowBox[{ \(ClearAllVars; \nDoF\ = \ 2; \n DH\ = Table[{\[Theta][i], d[i], a[i], \[Alpha][i]}, \ {i, 1, DoF}]; \), " ", StyleBox[\( (*\ general\ two - link\ robot*) \), "Commentary"]}]], "Input"], Cell[BoxData[ \(For\ [i = 1, \ i <= DoF, \ \(i++\), \n\t T[i]\ = \ {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}}; \n\tm[i] = 1; \n\t]\)], "Input"], Cell[CellGroupData[{ Cell[BoxData[ \(Init; Forwards[True]\ ; Backwards[True]; \)], "Input"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Forwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Forwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]1 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 1, " of ", 2, " finished."], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("Backwards: Iteration "\[InvisibleSpace]2 \[InvisibleSpace]" of "\[InvisibleSpace]2 \[InvisibleSpace]" finished."\), SequenceForm[ "Backwards: Iteration ", 2, " of ", 2, " finished."], Editable->False]], "Print"] }, Open ]], Cell["The resulting torques:", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(For[i = 1, \ i <= DoF, \ \(i++\), \ \n\t \(Print["\<\[Tau][\>", i, "\<] = \>", \ \[Tau][i]]; \)\n]\)], "Input"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]1 \[InvisibleSpace]"] = "\[InvisibleSpace]\(\(( f0[1] + 1\/16\ \((12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2])\)\ f1[1] + 1\/256\ \(( 12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[ \[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[ \[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] - g\ Cos[ \[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[ \[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[ \[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[ \[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + g\ Cos[ \[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[ \[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2])\)^2\ f2[1])\)\ Sign[d\[Theta][1]] + 1\/16\ \(( 12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]] \ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]] \ d[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]] \ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]] \ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]] \ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]] \ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]] \ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]] \ d[2] + 20\ a[1]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ dd\[Theta][1] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] - 2\ Cos[2\ \[Alpha][2]]\ d[2]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ Cos[\[Alpha][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2] - 4\ a[2]\ d[2]\ d\[Theta][2]\^2\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)\), SequenceForm[ "\[Tau][", 1, "] = ", Plus[ Times[ Plus[ f0[ 1], Times[ Rational[ 1, 16], Plus[ Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]]], Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]]], f1[ 1]], Times[ Rational[ 1, 256], Power[ Plus[ Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]]], Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]]], 2], f2[ 1]]], Sign[ d\[Theta][ 1]]], Times[ Rational[ 1, 16], Plus[ Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]]]]], Times[ 12, g, a[ 1], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]]], Times[ -4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]]], Times[ 4, g, a[ 2], Cos[ Plus[ \[Theta][ 1], \[Theta][ 2]]]], Times[ 2, g, a[ 2], Cos[ Plus[ \[Alpha][ 1], \[Theta][ 1], \[Theta][ 2]]]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], Times[ -1, \[Theta][ 2]]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ 2, g, Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], Times[ -1, \[Theta][ 1]], \[Theta][ 2]]], d[ 2]], Times[ g, Cos[ Plus[ \[Alpha][ 1], Times[ -1, \[Alpha][ 2]], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -2, g, Cos[ Plus[ \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ -1, g, Cos[ Plus[ \[Alpha][ 1], \[Alpha][ 2], \[Theta][ 1], \[Theta][ 2]]], d[ 2]], Times[ 20, Power[ a[ 1], 2], dd\[Theta][ 1]], Times[ 4, Power[ a[ 2], 2], dd\[Theta][ 1]], Times[ 16, a[ 1], a[ 2], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ 8, a[ 1], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], d[ 2], dd\[Theta][ 1]], Times[ -8, a[ 1], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], d[ 2], dd\[Theta][ 1]], Times[ 2, Power[ d[ 2], 2], dd\[Theta][ 1]], Times[ -2, Cos[ Times[ 2, \[Alpha][ 2]]], Power[ d[ 2], 2], dd\[Theta][ 1]], Times[ 4, Power[ a[ 2], 2], Cos[ \[Alpha][ 2]], dd\[Theta][ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]], dd\[Theta][ 2]], Times[ 4, a[ 1], a[ 2], Cos[ Plus[ \[Alpha][ 2], \[Theta][ 2]]], dd\[Theta][ 2]], Times[ -4, a[ 2], d[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Alpha][ 2]]], Times[ -4, a[ 2], d[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Times[ 2, \[Alpha][ 2]]]], Times[ 8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], Times[ -1, \[Theta][ 2]]]]], Times[ -8, a[ 1], a[ 2], Power[ d\[Theta][ 2], 2], Sin[ \[Theta][ 2]]], Times[ -8, a[ 1], a[ 2], d\[Theta][ 1], d\[Theta][ 2], Sin[ Plus[ \[Alpha][ 2], \[Theta][ 2]]]]]]]], Editable->False]], "Print"], Cell[BoxData[ InterpretationBox[ \("\[Tau]["\[InvisibleSpace]2 \[InvisibleSpace]"] = "\[InvisibleSpace]\(1\/4\ a[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] + a[2]\ dd\[Theta][2] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] + Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1] + d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]] - 2\ g\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\))\) + Sign[d\[Theta][2]]\ \((f0[2] + 1\/4\ a[2]\ f1[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] - 2\ g\ Cos[\[Alpha][2]]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\) + 1\/16\ a[2]\^2\ f2[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] - 2\ g\ Cos[\[Alpha][2]]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)^2)\)\)\), SequenceForm[ "\[Tau][", 2, "] = ", Plus[ Times[ Rational[ 1, 4], a[ 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ a[ 2], dd\[Theta][ 2]], Times[ -2, g, Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ Cos[ \[Alpha][ 2]], Plus[ Times[ a[ 2], dd\[Theta][ 1]], Times[ 2, a[ 1], Cos[ \[Theta][ 2]], dd\[Theta][ 1]], Times[ d[ 2], Power[ d\[Theta][ 1], 2], Sin[ \[Alpha][ 2]]], Times[ 2, a[ 1], Power[ d\[Theta][ 1], 2], Sin[ \[Theta][ 2]]], Times[ -2, g, Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]]]], Times[ Sign[ d\[Theta][ 2]], Plus[ f0[ 2], Times[ Rational[ 1, 4], a[ 2], f1[ 2], Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ -2, g, Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ -2, g, Cos[ \[Alpha][ 2]], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]]], Times[ Rational[ 1, 16], Power[ a[ 2], 2], f2[ 2], Power[ Plus[ Times[ 2, g, Cos[ \[Alpha][ 1]], Cos[ \[Alpha][ 2]], Cos[ \[Theta][ 1]], Cos[ \[Theta][ 2]]], Times[ -2, g, Cos[ \[Theta][ 1]], Sin[ \[Alpha][ 1]], Sin[ \[Alpha][ 2]]], Times[ -2, g, Cos[ \[Alpha][ 2]], Sin[ \[Theta][ 1]], Sin[ \[Theta][ 2]]]], 2]]]]]], Editable->False]], "Print"] }, Open ]], Cell["The gravity:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Gravity[\[Tau][1]]\), \(Gravity[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((12\ g\ a[1]\ Cos[\[Alpha][1] - \[Theta][1]] + 12\ g\ a[1]\ Cos[\[Alpha][1] + \[Theta][1]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] - \[Theta][2]] - 4\ g\ a[2]\ Cos[\[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] - \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] - \[Theta][1] + \[Theta][2]] + 4\ g\ a[2]\ Cos[\[Theta][1] + \[Theta][2]] + 2\ g\ a[2]\ Cos[\[Alpha][1] + \[Theta][1] + \[Theta][2]] - g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] - \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] - \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + 2\ g\ Cos[\[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] - \[Theta][1] + \[Theta][2]]\ d[2] + g\ Cos[\[Alpha][1] - \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - 2\ g\ Cos[\[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2] - g\ Cos[\[Alpha][1] + \[Alpha][2] + \[Theta][1] + \[Theta][2]]\ d[2]) \)\)], "Output"], Cell[BoxData[ \(1\/4\ a[2]\ \((2\ g\ Cos[\[Alpha][1]]\ Cos[\[Alpha][2]]\ Cos[\[Theta][1]]\ Cos[\[Theta][2]] - 2\ g\ Cos[\[Theta][1]]\ Sin[\[Alpha][1]]\ Sin[\[Alpha][2]] - 2\ g\ Cos[\[Alpha][2]]\ Sin[\[Theta][1]]\ Sin[\[Theta][2]])\)\)], "Output"] }, Open ]], Cell["The mass matrix:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Mass[\[Tau][1]]\), \(Mass[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(1\/16\ \((20\ a[1]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ dd\[Theta][1] + 16\ a[1]\ a[2]\ Cos[\[Theta][2]]\ dd\[Theta][1] + 8\ a[1]\ Cos[\[Alpha][2] - \[Theta][2]]\ d[2]\ dd\[Theta][1] - 8\ a[1]\ Cos[\[Alpha][2] + \[Theta][2]]\ d[2]\ dd\[Theta][1] + 2\ d[2]\^2\ dd\[Theta][1] - 2\ Cos[2\ \[Alpha][2]]\ d[2]\^2\ dd\[Theta][1] + 4\ a[2]\^2\ Cos[\[Alpha][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] - \[Theta][2]]\ dd\[Theta][2] + 4\ a[1]\ a[2]\ Cos[\[Alpha][2] + \[Theta][2]]\ dd\[Theta][2])\)\)], "Output"], Cell[BoxData[ \(1\/4\ a[2]\ \((Cos[\[Alpha][2]]\ \((a[2]\ dd\[Theta][1] + 2\ a[1]\ Cos[\[Theta][2]]\ dd\[Theta][1]) \) + a[2]\ dd\[Theta][2])\)\)], "Output"] }, Open ]], Cell["The Coriolis and centrifugal forces:", "Text"], Cell[CellGroupData[{ Cell[BoxData[{ \(Coriolis[\[Tau][1]]\), \(Coriolis[\[Tau][2]]\)}], "Input"], Cell[BoxData[ \(f0[1]\ Sign[d\[Theta][1]] + 1\/16\ \(( \(-4\)\ a[2]\ d[2]\ d\[Theta][2]\^2\ Sin[\[Alpha][2]] - 4\ a[2]\ d[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[2\ \[Alpha][2]] + 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] - \[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][2]\^2\ Sin[\[Theta][2]] - 8\ a[1]\ a[2]\ d\[Theta][1]\ d\[Theta][2]\ Sin[\[Alpha][2] + \[Theta][2]])\)\)], "Output"], Cell[BoxData[ \(f0[2]\ Sign[d\[Theta][2]] + 1\/4\ a[2]\ Cos[\[Alpha][2]]\ \((d[2]\ d\[Theta][1]\^2\ Sin[\[Alpha][2]] + 2\ a[1]\ d\[Theta][1]\^2\ Sin[\[Theta][2]])\)\)], "Output"] }, Open ]] }, Closed]] }, FrontEndVersion->"4.0 for X", ScreenRectangle->{{0, 1280}, {0, 1024}}, AutoGeneratedPackage->Automatic, WindowSize->{732, 834}, WindowMargins->{{156, Automatic}, {0, Automatic}}, PrintingPageRange->{Automatic, Automatic}, PrintingOptions->{"PaperSize"->{597.562, 842.375}, "PaperOrientation"->"Portrait", "Magnification"->1}, CellLabelAutoDelete->True, StyleDefinitions -> "Classroom.nb" ] (*********************************************************************** 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[1717, 49, 265, 6, 170, "Subtitle"], Cell[1985, 57, 145, 4, 28, "Text"], Cell[CellGroupData[{ Cell[2155, 65, 49, 1, 66, "Section"], Cell[CellGroupData[{ Cell[2229, 70, 53, 1, 45, "Subsection"], Cell[2285, 73, 2762, 100, 248, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[5084, 178, 46, 1, 45, "Subsection"], Cell[5133, 181, 2783, 46, 573, "Text"], Cell[7919, 229, 260, 7, 27, "Input", InitializationCell->True] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[8228, 242, 75, 1, 46, "Section"], Cell[8306, 245, 147, 4, 29, "Text"], Cell[8456, 251, 1432, 28, 239, "Input", InitializationCell->True], Cell[9891, 281, 708, 18, 97, "Text"], Cell[10602, 301, 376, 8, 159, "Input", InitializationCell->True], Cell[10981, 311, 368, 6, 83, "Text"], Cell[11352, 319, 412, 9, 127, "Input", InitializationCell->True], Cell[11767, 330, 160, 5, 95, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[11964, 340, 83, 1, 46, "Section"], Cell[12050, 343, 205, 5, 43, "Text"], Cell[CellGroupData[{ Cell[12280, 352, 61, 1, 49, "Subsection"], Cell[12344, 355, 1497, 32, 335, "Input", InitializationCell->True] }, Open ]], Cell[CellGroupData[{ Cell[13878, 392, 62, 1, 40, "Subsection"], Cell[13943, 395, 2151, 47, 288, "Input", InitializationCell->True] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[16143, 448, 75, 1, 46, "Section"], Cell[16221, 451, 634, 11, 143, "Input", InitializationCell->True], Cell[16858, 464, 460, 11, 79, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[17355, 480, 64, 0, 46, "Section"], Cell[17422, 482, 201, 4, 43, "Text"], Cell[17626, 488, 434, 10, 79, "Input"], Cell[18063, 500, 70, 0, 29, "Text"], Cell[18136, 502, 262, 4, 79, "Input"], Cell[18401, 508, 43, 1, 31, "Input"], Cell[CellGroupData[{ Cell[18469, 513, 766, 27, 31, "Input"], Cell[19238, 542, 283, 6, 23, "Print"], Cell[19524, 550, 283, 6, 23, "Print"] }, Open ]], Cell[CellGroupData[{ Cell[19844, 561, 48, 1, 31, "Input"], Cell[19895, 564, 285, 6, 23, "Print"], Cell[20183, 572, 285, 6, 23, "Print"] }, Open ]], Cell[20483, 581, 630, 27, 107, "Text"], Cell[CellGroupData[{ Cell[21138, 612, 237, 4, 95, "Input"], Cell[21378, 618, 8716, 280, 335, "Print"], Cell[30097, 900, 56977, 1703, 1692, "Print"], Cell[87077, 2605, 34906, 963, 833, "Print"], Cell[121986, 3570, 6084, 189, 246, "Print"], Cell[128073, 3761, 14052, 436, 502, "Print"], Cell[142128, 4199, 7187, 202, 288, "Print"] }, Open ]], Cell[CellGroupData[{ Cell[149352, 4406, 95, 3, 40, "Subsection"], Cell[CellGroupData[{ Cell[149472, 4413, 32, 0, 36, "Subsubsection"], Cell[149507, 4415, 117, 3, 29, "Text"], Cell[CellGroupData[{ Cell[149649, 4422, 82, 2, 47, "Input"], Cell[149734, 4426, 1820, 31, 226, "Output"], Cell[151557, 4459, 362, 8, 82, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[151968, 4473, 39, 0, 36, "Subsubsection"], Cell[152010, 4475, 114, 3, 29, "Text"], Cell[CellGroupData[{ Cell[152149, 4482, 76, 2, 47, "Input"], Cell[152228, 4486, 1040, 18, 184, "Output"], Cell[153271, 4506, 342, 6, 107, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[153662, 4518, 55, 0, 36, "Subsubsection"], Cell[153720, 4520, 142, 3, 29, "Text"], Cell[CellGroupData[{ Cell[153887, 4527, 84, 2, 47, "Input"], Cell[153974, 4531, 806, 14, 141, "Output"], Cell[154783, 4547, 384, 7, 87, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[155204, 4559, 84, 2, 47, "Input"], Cell[155291, 4563, 237, 4, 62, "Output"], Cell[155531, 4569, 170, 3, 49, "Output"] }, Open ]] }, Open ]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[155774, 4580, 40, 0, 46, "Section"], Cell[155817, 4582, 331, 10, 55, "Text"], Cell[CellGroupData[{ Cell[156173, 4596, 393, 8, 207, "Input"], Cell[156569, 4606, 927, 22, 183, "Output"] }, Open ]], Cell[157511, 4631, 51, 0, 29, "Text"], Cell[157565, 4633, 46, 1, 31, "Input"], Cell[157614, 4636, 57, 0, 29, "Text"], Cell[157674, 4638, 144, 2, 111, "Input"], Cell[157821, 4642, 138, 3, 29, "Text"], Cell[157962, 4647, 193, 4, 63, "Input"], Cell[158158, 4653, 43, 1, 31, "Input"], Cell[158204, 4656, 116, 3, 29, "Text"], Cell[158323, 4661, 702, 12, 223, "Input"], Cell[CellGroupData[{ Cell[159050, 4677, 340, 6, 63, "Input"], Cell[CellGroupData[{ Cell[159415, 4687, 11368, 394, 171, 4228, 301, "GraphicsData", "PostScript", \ "Graphics"], Cell[170786, 5083, 10094, 359, 171, 3854, 277, "GraphicsData", "PostScript", \ "Graphics"], Cell[180883, 5444, 10094, 359, 171, 3854, 277, "GraphicsData", "PostScript", \ "Graphics"], Cell[190980, 5805, 8560, 324, 171, 3649, 259, "GraphicsData", "PostScript", \ "Graphics"], Cell[199543, 6131, 8560, 324, 171, 3649, 259, "GraphicsData", "PostScript", \ "Graphics"], Cell[208106, 6457, 8560, 324, 171, 3649, 259, "GraphicsData", "PostScript", \ "Graphics"] }, Open ]] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[216727, 6788, 84, 1, 46, "Section"], Cell[216814, 6791, 296, 5, 155, "Input"], Cell[CellGroupData[{ Cell[217135, 6800, 72, 1, 27, "Input"], Cell[217210, 6803, 283, 6, 23, "Print"], Cell[217496, 6811, 283, 6, 23, "Print"], Cell[217782, 6819, 285, 6, 23, "Print"], Cell[218070, 6827, 285, 6, 23, "Print"] }, Open ]], Cell[CellGroupData[{ Cell[218392, 6838, 44, 1, 27, "Input"], Cell[218439, 6841, 48, 1, 23, "Print"], Cell[218490, 6844, 1072, 24, 119, "Print"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[219611, 6874, 30, 0, 46, "Section"], Cell[219644, 6876, 261, 5, 43, "Text"], Cell[219908, 6883, 246, 6, 79, "Input"], Cell[220157, 6891, 223, 4, 159, "Input"], Cell[CellGroupData[{ Cell[220405, 6899, 74, 1, 31, "Input"], Cell[220482, 6902, 283, 6, 23, "Print"], Cell[220768, 6910, 283, 6, 23, "Print"], Cell[221054, 6918, 285, 6, 23, "Print"], Cell[221342, 6926, 285, 6, 23, "Print"] }, Open ]], Cell[221642, 6935, 38, 0, 29, "Text"], Cell[CellGroupData[{ Cell[221705, 6939, 137, 2, 63, "Input"], Cell[221845, 6943, 4809, 153, 172, "Print"], Cell[226657, 7098, 1323, 42, 48, "Print"] }, Open ]], Cell[227995, 7143, 33, 0, 29, "Text"], Cell[CellGroupData[{ Cell[228053, 7147, 82, 2, 47, "Input"], Cell[228138, 7151, 35, 1, 46, "Output"], Cell[228176, 7154, 35, 1, 46, "Output"] }, Open ]], Cell[228226, 7158, 32, 0, 29, "Text"], Cell[CellGroupData[{ Cell[228283, 7162, 76, 2, 47, "Input"], Cell[228362, 7166, 676, 11, 123, "Output"], Cell[229041, 7179, 189, 3, 46, "Output"] }, Open ]], Cell[229245, 7185, 52, 0, 29, "Text"], Cell[CellGroupData[{ Cell[229322, 7189, 84, 2, 47, "Input"], Cell[229409, 7193, 164, 3, 46, "Output"], Cell[229576, 7198, 117, 2, 49, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[229742, 7206, 31, 0, 46, "Section"], Cell[229776, 7208, 244, 5, 43, "Text"], Cell[230023, 7215, 246, 6, 79, "Input"], Cell[230272, 7223, 197, 3, 127, "Input"], Cell[CellGroupData[{ Cell[230494, 7230, 74, 1, 31, "Input"], Cell[230571, 7233, 283, 6, 23, "Print"], Cell[230857, 7241, 283, 6, 23, "Print"], Cell[231143, 7249, 285, 6, 23, "Print"], Cell[231431, 7257, 285, 6, 23, "Print"] }, Open ]], Cell[231731, 7266, 38, 0, 29, "Text"], Cell[CellGroupData[{ Cell[231794, 7270, 137, 2, 63, "Input"], Cell[231934, 7274, 10525, 325, 285, "Print"], Cell[242462, 7601, 2173, 66, 102, "Print"] }, Open ]], Cell[244650, 7670, 28, 0, 29, "Text"], Cell[CellGroupData[{ Cell[244703, 7674, 82, 2, 47, "Input"], Cell[244788, 7678, 1536, 25, 194, "Output"], Cell[246327, 7705, 295, 6, 82, "Output"] }, Open ]], Cell[246637, 7714, 32, 0, 29, "Text"], Cell[CellGroupData[{ Cell[246694, 7718, 76, 2, 47, "Input"], Cell[246773, 7722, 624, 11, 121, "Output"], Cell[247400, 7735, 195, 4, 64, "Output"] }, Open ]], Cell[247610, 7742, 52, 0, 29, "Text"], Cell[CellGroupData[{ Cell[247687, 7746, 84, 2, 47, "Input"], Cell[247774, 7750, 445, 8, 105, "Output"], Cell[248222, 7760, 172, 3, 64, "Output"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[248443, 7769, 32, 0, 46, "Section"], Cell[248478, 7771, 236, 4, 46, "Text"], Cell[248717, 7777, 246, 6, 95, "Input"], Cell[248966, 7785, 148, 3, 75, "Input"], Cell[CellGroupData[{ Cell[249139, 7792, 74, 1, 27, "Input"], Cell[249216, 7795, 283, 6, 26, "Print"], Cell[249502, 7803, 283, 6, 26, "Print"], Cell[249788, 7811, 285, 6, 26, "Print"], Cell[250076, 7819, 285, 6, 26, "Print"] }, Open ]], Cell[250376, 7828, 38, 0, 24, "Text"], Cell[CellGroupData[{ Cell[250439, 7832, 137, 2, 59, "Input"], Cell[250579, 7836, 27990, 759, 792, "Print"], Cell[278572, 8597, 5112, 146, 221, "Print"] }, Open ]], Cell[283699, 8746, 28, 0, 24, "Text"], Cell[CellGroupData[{ Cell[283752, 8750, 82, 2, 43, "Input"], Cell[283837, 8754, 1536, 25, 169, "Output"], Cell[285376, 8781, 295, 6, 57, "Output"] }, Open ]], Cell[285686, 8790, 32, 0, 24, "Text"], Cell[CellGroupData[{ Cell[285743, 8794, 76, 2, 43, "Input"], Cell[285822, 8798, 624, 11, 91, "Output"], Cell[286449, 8811, 195, 4, 39, "Output"] }, Open ]], Cell[286659, 8818, 52, 0, 24, "Text"], Cell[CellGroupData[{ Cell[286736, 8822, 84, 2, 43, "Input"], Cell[286823, 8826, 496, 9, 76, "Output"], Cell[287322, 8837, 211, 4, 39, "Output"] }, Open ]] }, Closed]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)