608 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Mathematica
		
	
	
			
		
		
	
	
			608 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Mathematica
		
	
	
| (* Content-type: application/vnd.wolfram.mathematica *)
 | |
| 
 | |
| (*** Wolfram Notebook File ***)
 | |
| (* http://www.wolfram.com/nb *)
 | |
| 
 | |
| (* CreatedBy='Mathematica 8.0' *)
 | |
| 
 | |
| (*CacheID: 234*)
 | |
| (* Internal cache information:
 | |
| NotebookFileLineBreakTest
 | |
| NotebookFileLineBreakTest
 | |
| NotebookDataPosition[       157,          7]
 | |
| NotebookDataLength[     18933,        598]
 | |
| NotebookOptionsPosition[     18110,        565]
 | |
| NotebookOutlinePosition[     18464,        581]
 | |
| CellTagsIndexPosition[     18421,        578]
 | |
| WindowFrame->Normal*)
 | |
| 
 | |
| (* Beginning of Notebook Content *)
 | |
| Notebook[{
 | |
| Cell[TextData[{
 | |
|  "The \[OpenCurlyQuote]right trivialised\[CloseCurlyQuote] tangent of the \
 | |
| exponential map, ",
 | |
|  Cell[BoxData[
 | |
|   FormBox["dexpR", TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  ", according to Iserles05an, formula 2.42, pg. 32 can be written as\n\t",
 | |
|  Cell[BoxData[
 | |
|   FormBox[GridBox[{
 | |
|      {"\t"},
 | |
|      {
 | |
|       RowBox[{
 | |
|        RowBox[{
 | |
|         RowBox[{"g", "'"}], 
 | |
|         SuperscriptBox["g", 
 | |
|          RowBox[{"-", "1"}]]}], "=", 
 | |
|        RowBox[{
 | |
|         SubscriptBox["dexpR", "\[Omega]"], "(", 
 | |
|         RowBox[{"\[Omega]", "'"}], ")"}]}]}
 | |
|     }], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  "\nwhere ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    RowBox[{"g", "=", 
 | |
|     RowBox[{"exp", "(", "\[Omega]", ")"}]}], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  ", and ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    RowBox[{
 | |
|     RowBox[{"g", "'"}], "=", 
 | |
|     RowBox[{
 | |
|      RowBox[{"exp", "'"}], 
 | |
|      RowBox[{"(", "\[Omega]", ")"}]}]}], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  ".\nCompare this to the left Jacobian matrix ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SubscriptBox["J", "l"], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " in Chirikjian11book2, pg. 26, we see that ",
 | |
|  Cell[BoxData[
 | |
|   FormBox["dexpR", TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " and ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SubscriptBox["J", "l"], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " are the same.\n\nHence, be careful, Iserles\[CloseCurlyQuote]s \
 | |
| \[OpenCurlyQuote]",
 | |
|  StyleBox["right",
 | |
|   FontWeight->"Bold"],
 | |
|  " trivialised\[CloseCurlyQuote] tangent of the exponential map ",
 | |
|  Cell[BoxData[
 | |
|   FormBox["dexpR", TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " is in fact Chirikjian\[CloseCurlyQuote]s ",
 | |
|  StyleBox["left",
 | |
|   FontWeight->"Bold"],
 | |
|  " Jacobian matrix ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SubscriptBox["J", "l"], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  "!!!\n\nWe want to compute the s \[OpenCurlyQuote]",
 | |
|  StyleBox["left",
 | |
|   FontWeight->"Bold"],
 | |
|  " trivialised\[CloseCurlyQuote] tangent of the exponential map, ",
 | |
|  Cell[BoxData[
 | |
|   FormBox["dexpL", TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  ", for SE2, hence, we need to use Chirikjian\[CloseCurlyQuote]s ",
 | |
|  StyleBox["right",
 | |
|   FontWeight->"Bold"],
 | |
|  " Jacobian matrix ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SubscriptBox["J", "r"], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " formula in Chirikjian11book2, pg. 36."
 | |
| }], "Text",
 | |
|  CellChangeTimes->{{3.6279967389044943`*^9, 3.6279968865058002`*^9}, {
 | |
|    3.6279969695759087`*^9, 3.6279974871811028`*^9}, 3.62799757389325*^9}],
 | |
| 
 | |
| Cell[BoxData[{
 | |
|  RowBox[{"Clear", "[", "J", "]"}], "\[IndentingNewLine]", 
 | |
|  RowBox[{
 | |
|   RowBox[{"J", "[", "\[Alpha]_", "]"}], ":=", 
 | |
|   RowBox[{"{", 
 | |
|    RowBox[{
 | |
|     RowBox[{"{", 
 | |
|      RowBox[{
 | |
|       RowBox[{
 | |
|        RowBox[{"Sin", "[", "\[Alpha]", "]"}], "/", "\[Alpha]"}], ",", 
 | |
|       RowBox[{
 | |
|        RowBox[{"(", 
 | |
|         RowBox[{"1", "-", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], ")"}], "/", "\[Alpha]"}], 
 | |
|       ",", " ", 
 | |
|       RowBox[{
 | |
|        RowBox[{"(", 
 | |
|         RowBox[{
 | |
|          RowBox[{"\[Alpha]", " ", 
 | |
|           SubscriptBox["v", "1"]}], "-", 
 | |
|          SubscriptBox["v", "2"], "+", 
 | |
|          RowBox[{
 | |
|           SubscriptBox["v", "2"], 
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], "-", 
 | |
|          RowBox[{
 | |
|           SubscriptBox["v", "1"], 
 | |
|           RowBox[{"Sin", "[", "\[Alpha]", "]"}]}]}], ")"}], "/", 
 | |
|        SuperscriptBox["\[Alpha]", "2"]}]}], "}"}], ",", 
 | |
|     RowBox[{"{", 
 | |
|      RowBox[{
 | |
|       RowBox[{
 | |
|        RowBox[{"-", 
 | |
|         RowBox[{"(", 
 | |
|          RowBox[{"1", "-", 
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], ")"}]}], "/", "\[Alpha]"}],
 | |
|        ",", 
 | |
|       RowBox[{
 | |
|        RowBox[{"Sin", "[", "\[Alpha]", "]"}], "/", "\[Alpha]"}], ",", " ", 
 | |
|       RowBox[{
 | |
|        RowBox[{"(", 
 | |
|         RowBox[{
 | |
|          SubscriptBox["v", "1"], "+", 
 | |
|          RowBox[{"\[Alpha]", " ", 
 | |
|           SubscriptBox["v", "2"]}], "-", 
 | |
|          RowBox[{
 | |
|           SubscriptBox["v", "1"], 
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], "-", 
 | |
|          RowBox[{
 | |
|           SubscriptBox["v", "2"], 
 | |
|           RowBox[{"Sin", "[", "\[Alpha]", "]"}]}]}], ")"}], "/", 
 | |
|        SuperscriptBox["\[Alpha]", "2"]}]}], "}"}], ",", 
 | |
|     RowBox[{"{", 
 | |
|      RowBox[{"0", ",", "0", ",", "1"}], "}"}]}], "}"}]}]}], "Input",
 | |
|  CellChangeTimes->{{3.627993817228732*^9, 3.6279939547434673`*^9}, {
 | |
|    3.627993986274671*^9, 3.6279940386007967`*^9}, {3.627995391081044*^9, 
 | |
|    3.627995412846286*^9}, 3.6279954452391644`*^9, {3.627995531089571*^9, 
 | |
|    3.6279955341932592`*^9}, {3.627996429604282*^9, 3.62799643077184*^9}}],
 | |
| 
 | |
| Cell[CellGroupData[{
 | |
| 
 | |
| Cell[BoxData[
 | |
|  RowBox[{
 | |
|   RowBox[{
 | |
|    RowBox[{"Jinv", "[", "\[Alpha]_", "]"}], "=", 
 | |
|    RowBox[{"Inverse", "[", 
 | |
|     RowBox[{"J", "[", "\[Alpha]", "]"}], "]"}]}], 
 | |
|   "\[IndentingNewLine]"}]], "Input",
 | |
|  CellChangeTimes->{
 | |
|   3.627995475343099*^9, {3.627995548533964*^9, 3.627995559455151*^9}, {
 | |
|    3.627996438504909*^9, 3.6279964431657553`*^9}}],
 | |
| 
 | |
| Cell[BoxData[
 | |
|  RowBox[{"{", 
 | |
|   RowBox[{
 | |
|    RowBox[{"{", 
 | |
|     RowBox[{
 | |
|      FractionBox[
 | |
|       RowBox[{"Sin", "[", "\[Alpha]", "]"}], 
 | |
|       RowBox[{"\[Alpha]", " ", 
 | |
|        RowBox[{"(", 
 | |
|         RowBox[{
 | |
|          FractionBox["1", 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|          FractionBox[
 | |
|           RowBox[{"2", " ", 
 | |
|            RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|          FractionBox[
 | |
|           SuperscriptBox[
 | |
|            RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|          FractionBox[
 | |
|           SuperscriptBox[
 | |
|            RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]]}], ")"}]}]], ",", 
 | |
|      FractionBox[
 | |
|       RowBox[{
 | |
|        RowBox[{"-", 
 | |
|         FractionBox["1", "\[Alpha]"]}], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{"Cos", "[", "\[Alpha]", "]"}], "\[Alpha]"]}], 
 | |
|       RowBox[{
 | |
|        FractionBox["1", 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]]}]], ",", 
 | |
|      FractionBox[
 | |
|       RowBox[{
 | |
|        FractionBox[
 | |
|         SubscriptBox["v", "1"], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "1"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          SuperscriptBox[
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], " ", 
 | |
|          SubscriptBox["v", "1"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "1"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          SuperscriptBox[
 | |
|           RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], " ", 
 | |
|          SubscriptBox["v", "1"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "+", 
 | |
|        FractionBox[
 | |
|         SubscriptBox["v", "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "2"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]]}], 
 | |
|       RowBox[{
 | |
|        FractionBox["1", 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]]}]]}], "}"}], ",", 
 | |
|    RowBox[{"{", 
 | |
|     RowBox[{
 | |
|      FractionBox[
 | |
|       RowBox[{
 | |
|        FractionBox["1", "\[Alpha]"], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"Cos", "[", "\[Alpha]", "]"}], "\[Alpha]"]}], 
 | |
|       RowBox[{
 | |
|        FractionBox["1", 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]]}]], ",", 
 | |
|      FractionBox[
 | |
|       RowBox[{"Sin", "[", "\[Alpha]", "]"}], 
 | |
|       RowBox[{"\[Alpha]", " ", 
 | |
|        RowBox[{"(", 
 | |
|         RowBox[{
 | |
|          FractionBox["1", 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|          FractionBox[
 | |
|           RowBox[{"2", " ", 
 | |
|            RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|          FractionBox[
 | |
|           SuperscriptBox[
 | |
|            RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|          FractionBox[
 | |
|           SuperscriptBox[
 | |
|            RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|           SuperscriptBox["\[Alpha]", "2"]]}], ")"}]}]], ",", 
 | |
|      FractionBox[
 | |
|       RowBox[{
 | |
|        RowBox[{"-", 
 | |
|         FractionBox[
 | |
|          SubscriptBox["v", "1"], 
 | |
|          SuperscriptBox["\[Alpha]", "2"]]}], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "1"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SubscriptBox["v", "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "2"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          SuperscriptBox[
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], " ", 
 | |
|          SubscriptBox["v", "2"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], " ", 
 | |
|          SubscriptBox["v", "2"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         RowBox[{
 | |
|          SuperscriptBox[
 | |
|           RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], " ", 
 | |
|          SubscriptBox["v", "2"]}], 
 | |
|         SuperscriptBox["\[Alpha]", "3"]]}], 
 | |
|       RowBox[{
 | |
|        FractionBox["1", 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "-", 
 | |
|        FractionBox[
 | |
|         RowBox[{"2", " ", 
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Cos", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]], "+", 
 | |
|        FractionBox[
 | |
|         SuperscriptBox[
 | |
|          RowBox[{"Sin", "[", "\[Alpha]", "]"}], "2"], 
 | |
|         SuperscriptBox["\[Alpha]", "2"]]}]]}], "}"}], ",", 
 | |
|    RowBox[{"{", 
 | |
|     RowBox[{"0", ",", "0", ",", "1"}], "}"}]}], "}"}]], "Output",
 | |
|  CellChangeTimes->{
 | |
|   3.627995560030972*^9, {3.627996412919798*^9, 3.627996444306521*^9}}]
 | |
| }, Open  ]],
 | |
| 
 | |
| Cell[CellGroupData[{
 | |
| 
 | |
| Cell[BoxData[
 | |
|  RowBox[{
 | |
|   RowBox[{
 | |
|    RowBox[{"Jinv", "[", "\[Alpha]", "]"}], "//", "Simplify"}], "//", 
 | |
|   "MatrixForm"}]], "Input",
 | |
|  CellChangeTimes->{{3.627993835637863*^9, 3.627993839233502*^9}, {
 | |
|   3.627994046108457*^9, 3.627994058781851*^9}, {3.627995546842499*^9, 
 | |
|   3.6279955664940767`*^9}}],
 | |
| 
 | |
| Cell[BoxData[
 | |
|  TagBox[
 | |
|   RowBox[{"(", "\[NoBreak]", GridBox[{
 | |
|      {
 | |
|       RowBox[{
 | |
|        FractionBox["1", "2"], " ", "\[Alpha]", " ", 
 | |
|        RowBox[{"Cot", "[", 
 | |
|         FractionBox["\[Alpha]", "2"], "]"}]}], 
 | |
|       RowBox[{"-", 
 | |
|        FractionBox["\[Alpha]", "2"]}], 
 | |
|       FractionBox[
 | |
|        RowBox[{
 | |
|         RowBox[{
 | |
|          RowBox[{"(", 
 | |
|           RowBox[{
 | |
|            RowBox[{"-", "2"}], "+", 
 | |
|            RowBox[{"2", " ", 
 | |
|             RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], "+", 
 | |
|            RowBox[{"\[Alpha]", " ", 
 | |
|             RowBox[{"Sin", "[", "\[Alpha]", "]"}]}]}], ")"}], " ", 
 | |
|          SubscriptBox["v", "1"]}], "+", 
 | |
|         RowBox[{"\[Alpha]", " ", 
 | |
|          RowBox[{"(", 
 | |
|           RowBox[{
 | |
|            RowBox[{"-", "1"}], "+", 
 | |
|            RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], ")"}], " ", 
 | |
|          SubscriptBox["v", "2"]}]}], 
 | |
|        RowBox[{"2", " ", "\[Alpha]", " ", 
 | |
|         RowBox[{"(", 
 | |
|          RowBox[{
 | |
|           RowBox[{"-", "1"}], "+", 
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], ")"}]}]]},
 | |
|      {
 | |
|       FractionBox["\[Alpha]", "2"], 
 | |
|       RowBox[{
 | |
|        FractionBox["1", "2"], " ", "\[Alpha]", " ", 
 | |
|        RowBox[{"Cot", "[", 
 | |
|         FractionBox["\[Alpha]", "2"], "]"}]}], 
 | |
|       FractionBox[
 | |
|        RowBox[{
 | |
|         RowBox[{
 | |
|          RowBox[{"(", 
 | |
|           RowBox[{"\[Alpha]", "-", 
 | |
|            RowBox[{"\[Alpha]", " ", 
 | |
|             RowBox[{"Cos", "[", "\[Alpha]", "]"}]}]}], ")"}], " ", 
 | |
|          SubscriptBox["v", "1"]}], "+", 
 | |
|         RowBox[{
 | |
|          RowBox[{"(", 
 | |
|           RowBox[{
 | |
|            RowBox[{"-", "2"}], "+", 
 | |
|            RowBox[{"2", " ", 
 | |
|             RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], "+", 
 | |
|            RowBox[{"\[Alpha]", " ", 
 | |
|             RowBox[{"Sin", "[", "\[Alpha]", "]"}]}]}], ")"}], " ", 
 | |
|          SubscriptBox["v", "2"]}]}], 
 | |
|        RowBox[{"2", " ", "\[Alpha]", " ", 
 | |
|         RowBox[{"(", 
 | |
|          RowBox[{
 | |
|           RowBox[{"-", "1"}], "+", 
 | |
|           RowBox[{"Cos", "[", "\[Alpha]", "]"}]}], ")"}]}]]},
 | |
|      {"0", "0", "1"}
 | |
|     },
 | |
|     GridBoxAlignment->{
 | |
|      "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
 | |
|       "RowsIndexed" -> {}},
 | |
|     GridBoxSpacings->{"Columns" -> {
 | |
|         Offset[0.27999999999999997`], {
 | |
|          Offset[0.7]}, 
 | |
|         Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
 | |
|         Offset[0.2], {
 | |
|          Offset[0.4]}, 
 | |
|         Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
 | |
|   Function[BoxForm`e$, 
 | |
|    MatrixForm[BoxForm`e$]]]], "Output",
 | |
|  CellChangeTimes->{
 | |
|   3.627993840513033*^9, {3.62799404156531*^9, 3.6279940592345743`*^9}, 
 | |
|    3.627995567356995*^9, 3.627996415136314*^9, 3.6279964490074778`*^9}]
 | |
| }, Open  ]],
 | |
| 
 | |
| Cell[TextData[{
 | |
|  "In case ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    RowBox[{"\[Alpha]", "=", "0"}], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  ", we compute the limits of ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SubscriptBox["J", "r"], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " and ",
 | |
|  Cell[BoxData[
 | |
|   FormBox[
 | |
|    SuperscriptBox[
 | |
|     SubscriptBox["J", "r"], 
 | |
|     RowBox[{"-", "1"}]], TraditionalForm]],
 | |
|   FormatType->"TraditionalForm"],
 | |
|  " as follows"
 | |
| }], "Text",
 | |
|  CellChangeTimes->{{3.627997495449997*^9, 3.627997524522543*^9}}],
 | |
| 
 | |
| Cell[CellGroupData[{
 | |
| 
 | |
| Cell[BoxData[
 | |
|  RowBox[{
 | |
|   RowBox[{
 | |
|    RowBox[{"Limit", "[", 
 | |
|     RowBox[{
 | |
|      RowBox[{"Jinv", "[", "\[Alpha]", "]"}], ",", 
 | |
|      RowBox[{"\[Alpha]", "\[Rule]", "0"}]}], "]"}], "//", "Simplify"}], "//", 
 | |
|   "MatrixForm"}]], "Input",
 | |
|  CellChangeTimes->{{3.627995572179821*^9, 3.627995606373824*^9}}],
 | |
| 
 | |
| Cell[BoxData[
 | |
|  TagBox[
 | |
|   RowBox[{"(", "\[NoBreak]", GridBox[{
 | |
|      {"1", "0", 
 | |
|       FractionBox[
 | |
|        SubscriptBox["v", "2"], "2"]},
 | |
|      {"0", "1", 
 | |
|       RowBox[{"-", 
 | |
|        FractionBox[
 | |
|         SubscriptBox["v", "1"], "2"]}]},
 | |
|      {"0", "0", "1"}
 | |
|     },
 | |
|     GridBoxAlignment->{
 | |
|      "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
 | |
|       "RowsIndexed" -> {}},
 | |
|     GridBoxSpacings->{"Columns" -> {
 | |
|         Offset[0.27999999999999997`], {
 | |
|          Offset[0.7]}, 
 | |
|         Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
 | |
|         Offset[0.2], {
 | |
|          Offset[0.4]}, 
 | |
|         Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
 | |
|   Function[BoxForm`e$, 
 | |
|    MatrixForm[BoxForm`e$]]]], "Output",
 | |
|  CellChangeTimes->{{3.627995585954463*^9, 3.627995606858135*^9}, 
 | |
|    3.6279964178087473`*^9, 3.6279964634008904`*^9}]
 | |
| }, Open  ]],
 | |
| 
 | |
| Cell[CellGroupData[{
 | |
| 
 | |
| Cell[BoxData[
 | |
|  RowBox[{
 | |
|   RowBox[{
 | |
|    RowBox[{"Limit", "[", 
 | |
|     RowBox[{
 | |
|      RowBox[{"J", "[", "\[Alpha]", "]"}], ",", 
 | |
|      RowBox[{"\[Alpha]", "\[Rule]", "0"}]}], "]"}], "//", "Simplify"}], "//", 
 | |
|   "MatrixForm"}]], "Input",
 | |
|  CellChangeTimes->{{3.6279956527343893`*^9, 3.627995660697241*^9}}],
 | |
| 
 | |
| Cell[BoxData[
 | |
|  TagBox[
 | |
|   RowBox[{"(", "\[NoBreak]", GridBox[{
 | |
|      {"1", "0", 
 | |
|       RowBox[{"-", 
 | |
|        FractionBox[
 | |
|         SubscriptBox["v", "2"], "2"]}]},
 | |
|      {"0", "1", 
 | |
|       FractionBox[
 | |
|        SubscriptBox["v", "1"], "2"]},
 | |
|      {"0", "0", "1"}
 | |
|     },
 | |
|     GridBoxAlignment->{
 | |
|      "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
 | |
|       "RowsIndexed" -> {}},
 | |
|     GridBoxSpacings->{"Columns" -> {
 | |
|         Offset[0.27999999999999997`], {
 | |
|          Offset[0.7]}, 
 | |
|         Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
 | |
|         Offset[0.2], {
 | |
|          Offset[0.4]}, 
 | |
|         Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
 | |
|   Function[BoxForm`e$, 
 | |
|    MatrixForm[BoxForm`e$]]]], "Output",
 | |
|  CellChangeTimes->{{3.627995653969245*^9, 3.627995661346282*^9}, 
 | |
|    3.627996419383007*^9, 3.627996465705708*^9}]
 | |
| }, Open  ]],
 | |
| 
 | |
| Cell[BoxData[""], "Input",
 | |
|  CellChangeTimes->{{3.627995694633294*^9, 3.627995695945466*^9}}]
 | |
| },
 | |
| WindowSize->{654, 852},
 | |
| WindowMargins->{{Automatic, 27}, {Automatic, 0}},
 | |
| FrontEndVersion->"8.0 for Mac OS X x86 (32-bit, 64-bit Kernel) (October 5, \
 | |
| 2011)",
 | |
| StyleDefinitions->"Default.nb"
 | |
| ]
 | |
| (* End of Notebook Content *)
 | |
| 
 | |
| (* Internal cache information *)
 | |
| (*CellTagsOutline
 | |
| CellTagsIndex->{}
 | |
| *)
 | |
| (*CellTagsIndex
 | |
| CellTagsIndex->{}
 | |
| *)
 | |
| (*NotebookFileOutline
 | |
| Notebook[{
 | |
| Cell[557, 20, 2591, 84, 197, "Text"],
 | |
| Cell[3151, 106, 2022, 56, 68, "Input"],
 | |
| Cell[CellGroupData[{
 | |
| Cell[5198, 166, 343, 9, 43, "Input"],
 | |
| Cell[5544, 177, 6519, 190, 290, "Output"]
 | |
| }, Open  ]],
 | |
| Cell[CellGroupData[{
 | |
| Cell[12100, 372, 298, 7, 27, "Input"],
 | |
| Cell[12401, 381, 2665, 76, 99, "Output"]
 | |
| }, Open  ]],
 | |
| Cell[15081, 460, 535, 20, 29, "Text"],
 | |
| Cell[CellGroupData[{
 | |
| Cell[15641, 484, 297, 8, 27, "Input"],
 | |
| Cell[15941, 494, 863, 25, 91, "Output"]
 | |
| }, Open  ]],
 | |
| Cell[CellGroupData[{
 | |
| Cell[16841, 524, 296, 8, 27, "Input"],
 | |
| Cell[17140, 534, 859, 25, 91, "Output"]
 | |
| }, Open  ]],
 | |
| Cell[18014, 562, 92, 1, 27, "Input"]
 | |
| }
 | |
| ]
 | |
| *)
 | |
| 
 | |
| (* End of internal cache information *)
 |