Removed obsolete document.
parent
f64d17f4f0
commit
39024aab16
|
|
@ -1,384 +0,0 @@
|
|||
(* Content-type: application/vnd.wolfram.mathematica *)
|
||||
|
||||
(*** Wolfram Notebook File ***)
|
||||
(* http://www.wolfram.com/nb *)
|
||||
|
||||
(* CreatedBy='Mathematica 10.0' *)
|
||||
|
||||
(*CacheID: 234*)
|
||||
(* Internal cache information:
|
||||
NotebookFileLineBreakTest
|
||||
NotebookFileLineBreakTest
|
||||
NotebookDataPosition[ 158, 7]
|
||||
NotebookDataLength[ 13070, 375]
|
||||
NotebookOptionsPosition[ 12606, 355]
|
||||
NotebookOutlinePosition[ 12963, 371]
|
||||
CellTagsIndexPosition[ 12920, 368]
|
||||
WindowFrame->Normal*)
|
||||
|
||||
(* Beginning of Notebook Content *)
|
||||
Notebook[{
|
||||
|
||||
Cell[CellGroupData[{
|
||||
Cell[TextData[{
|
||||
"Similarity Group\n",
|
||||
StyleBox["Representation", "Chapter"],
|
||||
"\n",
|
||||
StyleBox["Exponential and Logmap\nRetract and localCoordinate", "Chapter"]
|
||||
}], "Title",
|
||||
CellChangeTimes->{{3.6442457705813923`*^9, 3.644245851964954*^9}, {
|
||||
3.644245883900199*^9, 3.644245897451631*^9}, {3.644246409411936*^9,
|
||||
3.6442464411218433`*^9}, {3.644246632965823*^9, 3.644246721355283*^9},
|
||||
3.644339337635804*^9, {3.6443397539003696`*^9, 3.644339805690949*^9}, {
|
||||
3.6443398507824793`*^9, 3.644339940436355*^9}, {3.644339982058689*^9,
|
||||
3.64434014492003*^9}, {3.644340183085711*^9, 3.64434030003795*^9}, {
|
||||
3.644340442268632*^9, 3.644340457502075*^9}, {3.644340502643257*^9,
|
||||
3.644340517682786*^9}, {3.644340590324332*^9, 3.644340590748303*^9}, {
|
||||
3.6443655095926237`*^9, 3.644365512168627*^9}}],
|
||||
|
||||
Cell[BoxData[
|
||||
RowBox[{"\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
Cell["Lie group generators for similarity transform:"],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G1", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "1"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G2", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "1"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G3", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "1"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G4", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",",
|
||||
RowBox[{"-", "1"}], ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "1", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G5", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "1", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"-", "1"}], ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G6", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",",
|
||||
RowBox[{"-", "1"}], ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"1", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "1"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]}],
|
||||
"\[IndentingNewLine]",
|
||||
RowBox[{"G7", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0", ",",
|
||||
RowBox[{"-", "1"}]}], "}"}]}], "}"}]}]}]}]], "Input",
|
||||
CellChangeTimes->{{3.644340621916498*^9, 3.644340623238144*^9}, {
|
||||
3.64434081043055*^9, 3.644340996367342*^9}, {3.6443410615657*^9,
|
||||
3.644341237564106*^9}, {3.644341297291617*^9, 3.6443413676185513`*^9}, {
|
||||
3.644341671605256*^9, 3.64434167330084*^9}, {3.644345191055595*^9,
|
||||
3.644345216636923*^9}}],
|
||||
|
||||
Cell[BoxData[""], "Input",
|
||||
CellChangeTimes->{{3.644369249242889*^9, 3.644369249253479*^9}}],
|
||||
|
||||
Cell[BoxData[{Cell["Lie vectors similarity3 can be described as:"], "\
|
||||
\[IndentingNewLine]",
|
||||
RowBox[{"u", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{"x", ",", "y", ",", "z"}], "}"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"v", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{"w1", ",", "w2", ",", "w3"}], "}"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simLieVector", " ", "=", " ",
|
||||
RowBox[{"{",
|
||||
RowBox[{"u", ",", "v", ",", "lambda"}], "}"}]}],
|
||||
"\[IndentingNewLine]"}], "\[IndentingNewLine]",
|
||||
RowBox[{"simMatrix", " ", "=", " ",
|
||||
RowBox[{"Table", "[",
|
||||
RowBox[{"0", ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"i", ",", "4"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"j", ",", "4"}], "}"}]}], "]"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simMatrix", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{
|
||||
RowBox[{"1", ";;", "3"}], ",",
|
||||
RowBox[{"1", ";;", "3"}]}], "]"}], "]"}], " ", "=", " ",
|
||||
RowBox[{"SkewSym", "[", "v", "]"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simMatrix", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{
|
||||
RowBox[{"1", ";;", "3"}], ",", "4"}], "]"}], "]"}], " ", "=", " ",
|
||||
"u"}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simMatrix", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{"4", ",", "4"}], "]"}], "]"}], " ", "=", " ",
|
||||
"lambda"}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"MatrixForm", "[", "simMatrix", "]"}], "\[IndentingNewLine]",
|
||||
RowBox[{"(*",
|
||||
RowBox[{"simExponetialMap", " ", "=", " ",
|
||||
RowBox[{"Series", "[",
|
||||
RowBox[{"simMatrix", ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"u", ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"0", ",", "0", ",", "0"}], "}"}], ",", "2"}], "}"}]}],
|
||||
"]"}]}], "*)"}],
|
||||
"\[IndentingNewLine]"}], "\[IndentingNewLine]", Cell["Exponential map, \
|
||||
refer to Ethan Eade"], "\[IndentingNewLine]",
|
||||
RowBox[{"v_skew", " ", "=", " ",
|
||||
RowBox[{"SkewSym",
|
||||
RowBox[{"(", "v", ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"theta", " ", "=",
|
||||
RowBox[{"sqrt",
|
||||
RowBox[{"(",
|
||||
RowBox[{"Transpose",
|
||||
RowBox[{
|
||||
RowBox[{"(", "v", ")"}], ".", "v"}]}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"X", " ", "=", " ",
|
||||
RowBox[{"sin",
|
||||
RowBox[{
|
||||
RowBox[{"(", "theta", ")"}], "/", "theta"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"Y", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"1", "-",
|
||||
RowBox[{"cos",
|
||||
RowBox[{"(", "theta", ")"}]}]}], ")"}], "/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"theta", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"Z", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"1", "-", "X"}], ")"}], "/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"theta", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"W", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"0.5", " ", "-", " ", "Y"}], ")"}], "/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"theta", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"alpha", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"lambda", "^", "2"}], " ", "/", " ",
|
||||
RowBox[{"(",
|
||||
RowBox[{
|
||||
RowBox[{"lambda", "^", "2"}], " ", "+", " ",
|
||||
RowBox[{"theta", "^", "2"}]}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"beta", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{
|
||||
RowBox[{"exp",
|
||||
RowBox[{"(",
|
||||
RowBox[{"-", "lambda"}], ")"}]}], "-", "1", "+", "lambda"}], ")"}],
|
||||
"/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"lambda", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"gamma", " ", "=", " ",
|
||||
RowBox[{"Y", " ", "-", " ",
|
||||
RowBox[{"lambda", ".", "Z"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"mu", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"1", "-", "lambda", " ", "+", " ",
|
||||
RowBox[{"0.5", "*",
|
||||
RowBox[{"lambda", "^", "2"}]}], " ", "-", " ",
|
||||
RowBox[{"exp",
|
||||
RowBox[{"(",
|
||||
RowBox[{"-", "lambda"}], ")"}]}]}], ")"}], "/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"lambda", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"nu", " ", "=", " ",
|
||||
RowBox[{"Z", "-",
|
||||
RowBox[{"lambda", " ", "W"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"Av", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"1", "-",
|
||||
RowBox[{"exp",
|
||||
RowBox[{"(",
|
||||
RowBox[{"-", "lambda"}], ")"}]}]}], ")"}], "/",
|
||||
"lambda"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"Bv", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"alpha", " ", ".",
|
||||
RowBox[{"(",
|
||||
RowBox[{"beta", " ", "-", " ", "lambda"}], ")"}]}], " ", "+", " ",
|
||||
"lambda"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"Cv", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"alpha", " ", ".",
|
||||
RowBox[{"(",
|
||||
RowBox[{"mu", " ", "-", " ", "nv"}], ")"}]}], " ", "+", " ",
|
||||
"nv"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"a", " ", "=", " ",
|
||||
RowBox[{"sin",
|
||||
RowBox[{
|
||||
RowBox[{"(", "theta", ")"}], "/", "theta"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"b", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"(",
|
||||
RowBox[{"1", "-",
|
||||
RowBox[{"cos",
|
||||
RowBox[{"(", "theta", ")"}]}]}], ")"}], "/",
|
||||
RowBox[{"(",
|
||||
RowBox[{"theta", "^", "2"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"R", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"IdentityMatrix", "[", "3", "]"}], "+", " ",
|
||||
RowBox[{"a", ".", "v_skew"}], " ", "+", " ",
|
||||
RowBox[{"b", ".", "v_skew", ".", "v_skew"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"V", " ", "=", " ",
|
||||
RowBox[{
|
||||
RowBox[{"Av", ".",
|
||||
RowBox[{"IdentityMatrix", "[", "3", "]"}]}], "+",
|
||||
RowBox[{"Bv", ".", "v_skew"}], " ", "+", " ",
|
||||
RowBox[{
|
||||
"Cv", ".", " ", "v_skew", ".", "v_skew"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{"simExponetialMap", " ", "=", " ",
|
||||
RowBox[{"Table", "[",
|
||||
RowBox[{"0", ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"i", ",", "4"}], "}"}], ",",
|
||||
RowBox[{"{",
|
||||
RowBox[{"j", ",", "4"}], "}"}]}], "]"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simExponetialMap", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{
|
||||
RowBox[{"1", ";;", "3"}], ",",
|
||||
RowBox[{"1", ";;", "3"}]}], "]"}], "]"}], " ", "=", " ",
|
||||
"R"}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simExponetialMap", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{
|
||||
RowBox[{"1", ";;", "3"}], ",", "4"}], "]"}], "]"}], " ", "=", " ",
|
||||
RowBox[{"V", ".", "u"}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"simExponetialMap", "[",
|
||||
RowBox[{"[",
|
||||
RowBox[{"4", ",", "4"}], "]"}], "]"}], " ", "=", " ",
|
||||
RowBox[{"exp",
|
||||
RowBox[{"(",
|
||||
RowBox[{"-", "lambda"}], ")"}]}]}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"MatrixForm", "[", "simExponetialMap", "]"}],
|
||||
"\[IndentingNewLine]"}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"f", "[", "lambda_", "]"}], " ", "=", " ",
|
||||
"simExponetialMap"}], "\[IndentingNewLine]",
|
||||
RowBox[{
|
||||
RowBox[{"f", "'"}], "[", "lambda", "]"}], "\[IndentingNewLine]"}], "Input",
|
||||
CellChangeTimes->CompressedData["
|
||||
1:eJwl0l1Ik3EUBvCZsrU2x7CtlFpoGaN3iiauLlpgBGJtqFntInGshlqBTX2x
|
||||
bOUQsUnsQiizBB312sfLZvkxRSM0yYkxyJwSFtXaxvADIW3pkqHYnr8Xhx8H
|
||||
DufhwEm5Yiwq3cHhcNKjBeN9Oc08+dIpk970HO4fNzggK54agbreFxNwReL/
|
||||
BGc7XR44J3r4ZdurXpjPyhZg753quZ1R7eaSRWjlr/2GudzqMHzrexeBef4n
|
||||
G3DoYh2Xj5zJzL0wKGvaB9lK5jBsLNVSUJV1IAP+Cf1SQrfQeAy2D9IG2M1z
|
||||
lsNLKnkVfGTOJPadCdfArXvBZjhEfW+BTk9qG7xJF9qguFzzFE7ffvyK5Nvd
|
||||
DpJrOzIAhauGcZi2RgehyGQhMoHLgl3Iq1cIodj2/nVC1NEPxYMwQJ2cgKr0
|
||||
eR8sKzs9D9mBkiXo3sxbgXYlG4Ipz+6GYfxGfszuqJPtXi482+Hgk/5lbCLU
|
||||
NYaIe9alMvhgrDAZ9l04r9ie8+RCTUu2Bcp5gSaYulVvg5ITGgYyumsOskff
|
||||
Skyixf3Qb+2ZgXoL/RU6zwl+wOSu439hYqyZyPZXrMPKVm+cBPd1WAXw4Ge1
|
||||
CB5ixhLgt9phBRQVZx+FacY6JWxQF6kgdf9fDpy6IVVDifN6AXzzcWYZal3U
|
||||
KhyNKCOwVttAdP2c5kjxBxW34uB/2UIzug==
|
||||
"]],
|
||||
|
||||
Cell[BoxData[""], "Input",
|
||||
CellChangeTimes->{{3.644369188660811*^9, 3.644369188678254*^9}}]
|
||||
}, Open ]]
|
||||
},
|
||||
WindowSize->{812, 579},
|
||||
WindowMargins->{{Automatic, 17}, {Automatic, 31}},
|
||||
FrontEndVersion->"10.0 for Mac OS X x86 (32-bit, 64-bit Kernel) (December 4, \
|
||||
2014)",
|
||||
StyleDefinitions->"Default.nb"
|
||||
]
|
||||
(* End of Notebook Content *)
|
||||
|
||||
(* Internal cache information *)
|
||||
(*CellTagsOutline
|
||||
CellTagsIndex->{}
|
||||
*)
|
||||
(*CellTagsIndex
|
||||
CellTagsIndex->{}
|
||||
*)
|
||||
(*NotebookFileOutline
|
||||
Notebook[{
|
||||
Cell[CellGroupData[{
|
||||
Cell[580, 22, 808, 14, 224, "Title"],
|
||||
Cell[1391, 38, 3597, 96, 166, "Input"],
|
||||
Cell[4991, 136, 92, 1, 28, InheritFromParent],
|
||||
Cell[5086, 139, 7409, 210, 696, "Input"],
|
||||
Cell[12498, 351, 92, 1, 28, InheritFromParent]
|
||||
}, Open ]]
|
||||
}
|
||||
]
|
||||
*)
|
||||
|
||||
(* End of internal cache information *)
|
||||
Loading…
Reference in New Issue