(*********************************************************************** 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[ 32149, 1228]*) (*NotebookOutlinePosition[ 46835, 1764]*) (* CellTagsIndexPosition[ 46791, 1760]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["Similarity transforms", "Title", Evaluatable->False, PageBreakAbove->True, AspectRatioFixed->True], Cell[TextData[{ "This notebook has been written in ", StyleBox["Mathematica ", FontSlant->"Italic"], "by \n\n", StyleBox["Mark J. McCready\nProfessor and Chair of Chemical Engineering\n\ University of Notre Dame\nNotre Dame IN 46556\nUSA", FontSize->14], "\n\nMark.J.McCready.1@nd.edu\n", ButtonBox["http://www.nd.edu/~mjm/", ButtonData:>{ URL[ "http://www.nd.edu/~mjm/"], None}, ButtonStyle->"Hyperlink"], "\n\n\nIt is copyrighted to the extent allowed by whatever laws pertain to \ the World Wide Web and the Internet.\n\nI would hope that as a professional \ courtesy, this notice remain visible to other users. \nThere is no charge for \ copying and dissemination \n\nVersion: 10/98\nMore recent versions of this \ notebook should be available at the web site:\n", Cell[BoxData[ FormBox[ ButtonBox[\(\(\(http\)\(:\)\) // \(www . nd . edu/\(\(~\)\(mjm\)\)\)/ similarity . transforms . nb\), ButtonData:>{ URL[ "http://www.nd.edu/~mjm/similarity.transforms.nb"], None}, ButtonStyle->"Hyperlink"], TraditionalForm]]] }], "Text"], Cell["\<\ Suppose that we have our favorite matrix aa. It is real and will \ have distinct real eigen values. We see that from the linear ODE problem, it \ would be nice to transform this problem into a simpler problem that has only \ diagonal elements. Can we do this? What values will be on the diagonal of \ the simpler matrix?\ \>", "Text"], Cell[CellGroupData[{ Cell["A typical matrix", "Subsection"], Cell[CellGroupData[{ Cell[BoxData[ \(aa = N[{{2, \(-1\), 3}, {2, \(-4\), \(-3\)}, {1, 2, 7}}]\)], "Input", CellLabel->"In[88]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2.`", \(-1.`\), "3.`"}, {"2.`", \(-4.`\), \(-3.`\)}, {"1.`", "2.`", "7.`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[88]="], Cell[CellGroupData[{ Cell[BoxData[ \(evals = Eigenvalues[aa]\)], "Input", CellLabel->"In[89]:=", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm \`{7.27889627440465503`, \(-2.4473061019122424`\), 0.168409827507588705`} \)], "Output", CellLabel->"Out[89]="], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = Eigenvectors[aa]\)], "Input", CellLabel->"In[90]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.508836326977452646`", \(-0.135877158624260552`\), "0.850072344046253824`"}, {"0.358301291456873727`", "0.904956957222108471`", \(-0.229506187532360916`\)}, {\(-0.771134351342613744`\), \(-0.571678891745418749`\), "0.280241069281674182`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[90]="] }, Open ]] }, Open ]], Cell["\<\ We should verify that these are linearly independent and check to \ see if they happen to be orthogonal. First, they are linearly independent.\ \>", "Text"], Cell[CellGroupData[{ Cell["Det[evecs]", "Input", CellLabel->"In[91]:="], Cell[BoxData[ \(TraditionalForm\`0.470972950142297719`\)], "Output", CellLabel->"Out[91]="] }, Open ]], Cell["Now check the orthogonality", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(evecs\[LeftDoubleBracket]2\[RightDoubleBracket] . evecs\[LeftDoubleBracket]2\[RightDoubleBracket]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm\`0.999999999999999822`\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[1]].evecs[[2]]", "Input"], Cell[BoxData[ \(TraditionalForm\`\(-0.135743129737156409`\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[3]].evecs[[1]]", "Input"], Cell[BoxData[ \(TraditionalForm\`\(-0.0764778848251808973`\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[2]].evecs[[3]]", "Input", CellLabel->"In[92]:="], Cell[BoxData[ \(TraditionalForm\`\(-0.857960283755687669`\)\)], "Output", CellLabel->"Out[92]="] }, Open ]], Cell[TextData[{ "Now we understand that this transformation can be accomplished using a \ similarity transform where the form is ", Cell[BoxData[ \(TraditionalForm\`P\^\(-1\)\)]], Cell[BoxData[ \(TraditionalForm\`A\ P\)]], ". The matrix P is composed of column vectors that are the eigenvectors of \ A. " }], "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[evecs]\)], "Input", CellLabel->"In[93]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.508836326977452646`", "0.358301291456873727`", \(-0.771134351342613744`\)}, {\(-0.135877158624260552`\), "0.904956957222108471`", \(-0.571678891745418749`\)}, {"0.850072344046253824`", \(-0.229506187532360916`\), "0.280241069281674182`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[93]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(pinv = Inverse[p]\)], "Input", CellLabel->"In[94]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.259892340678197042`", "0.162576997226422559`", "1.04679071449959559`"}, {\(-0.950988916006005524`\), "1.69461286840525442`", "0.840113072193912735`"}, {\(-1.56716905507030617`\), "0.894665190556698952`", "1.08108105878759497`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[94]="] }, Open ]], Cell["We can then get back the eigenvalues of aa", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[BoxData[ \(Chop[pinv . aa . p]\)], "Input", CellLabel->"In[95]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"7.27889627440465503`", "0", "0"}, {"0", \(-2.44730610191224329`\), "0"}, {"0", "0", "0.168409827507588616`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[95]="] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Now try a symmetric matrix", "Subsection", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[BoxData[ \(aa = N[{{1, 2, 3}, {2, 0, \(-3\)}, {3, \(-3\), 1}}]\)], "Input", CellLabel->"In[96]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1.`", "2.`", "3.`"}, {"2.`", "0", \(-3.`\)}, {"3.`", \(-3.`\), "1.`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[96]="], Cell[CellGroupData[{ Cell[BoxData[ \(evals = Eigenvalues[aa]\)], "Input", CellLabel->"In[97]:=", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm \`{\(-4.69526516569046137`\), 4.2254700405786183`, 2.46979512511184706`} \)], "Output", CellLabel->"Out[97]="], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = Eigenvectors[aa]\)], "Input", CellLabel->"In[98]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.526836805976518895`", \(-0.605524773209880606`\), \(-0.59647525422064449`\)}, {"0.543659739542165976`", \(-0.299369890822918769`\), "0.784099327935956136`"}, {\(-0.653358299457046598`\), \(-0.737371966851056992`\), "0.171480363402926965`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[98]="] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[1]].evecs[[1]]", "Input", CellLabel->"In[99]:="], Cell[BoxData[ \(TraditionalForm\`1.00000000000000022`\)], "Output", CellLabel->"Out[99]="] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[1]].evecs[[2]]", "Input", CellLabel->"In[100]:="], Cell[BoxData[ \(TraditionalForm\`\(-4.44089209850062616`*^-16\)\)], "Output", CellLabel->"Out[100]="] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[1]].evecs[[3]]", "Input", CellLabel->"In[101]:="], Cell[BoxData[ \(TraditionalForm\`9.71445146547011972`*^-17\)], "Output", CellLabel->"Out[101]="] }, Open ]], Cell[CellGroupData[{ Cell["evecs[[2]].evecs[[3]]", "Input", CellLabel->"In[102]:="], Cell[BoxData[ \(TraditionalForm\`\(-2.77555756156289135`*^-17\)\)], "Output", CellLabel->"Out[102]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[evecs]\)], "Input", CellLabel->"In[103]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.526836805976518895`", "0.543659739542165976`", \(-0.653358299457046598`\)}, {\(-0.605524773209880606`\), \(-0.299369890822918769`\), \(-0.737371966851056992`\)}, {\(-0.59647525422064449`\), "0.784099327935956136`", "0.171480363402926965`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[103]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Inverse[p]\)], "Input", CellLabel->"In[108]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.526836805976519073`", \(-0.605524773209880518`\), \(-0.596475254220644224`\)}, {"0.543659739542166153`", \(-0.299369890822919018`\), "0.784099327935955869`"}, {\(-0.653358299457046687`\), \(-0.737371966851056992`\), "0.171480363402927142`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[108]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Chop[Inverse[p] . aa . p]\)], "Input", CellLabel->"In[106]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-4.69526516569046314`\), "0", "0"}, {"0", "4.22547004057861741`", "0"}, {"0", "0", "2.46979512511184662`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[106]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Chop[Transpose[p] . aa . p]\)], "Input", CellLabel->"In[107]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-4.69526516569046492`\), "0", "0"}, {"0", "4.2254700405786183`", "0"}, {"0", "0", "2.46979512511184617`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[107]="] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["The eigenvalues do not have to be real", "Subsection", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[BoxData[ \(aa = N[{{1, \(-1\), 3}, {2, 0, \(-3\)}, {1, 1, 1}}]\)], "Input", CellLabel->"In[109]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1.`", \(-1.`\), "3.`"}, {"2.`", "0", \(-3.`\)}, {"1.`", "1.`", "1.`"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[109]="], Cell[CellGroupData[{ Cell[BoxData[ \(evals = Eigenvalues[aa]\)], "Input", CellLabel->"In[110]:=", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm \`{2.75530715327964692`, \(-0.377653576639823373`\) + 2.22226933075310384`\ \[ImaginaryI], \(-0.377653576639823373`\) - 2.22226933075310384`\ \[ImaginaryI]}\)], "Output", CellLabel->"Out[110]="], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = Eigenvectors[aa]\)], "Input", CellLabel->"In[111]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.853585789074739231`", "0.0556189755254315087`", "0.517974739008724505`"}, { \(\(-0.143160896988785157`\) + 0.448654504605531467`\ \[ImaginaryI]\), \(\(0.825076212646267137`\[InvisibleSpace]\) + 0.`\ \[ImaginaryI]\), \(\(0.00842372957624361262`\[InvisibleSpace]\) - 0.312077517895553269`\ \[ImaginaryI]\)}, { \(\(-0.143160896988785157`\) - 0.448654504605531467`\ \[ImaginaryI]\), \(\(0.825076212646267137`\[InvisibleSpace]\) + 0.`\ \[ImaginaryI]\), \(\(0.00842372957624361262`\[InvisibleSpace]\) + 0.312077517895553269`\ \[ImaginaryI]\)} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[111]="] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[evecs]\)], "Input", CellLabel->"In[112]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0.853585789074739231`", \(\(-0.143160896988785157`\) + 0.448654504605531467`\ \[ImaginaryI]\), \(\(-0.143160896988785157`\) - 0.448654504605531467`\ \[ImaginaryI]\)}, {"0.0556189755254315087`", \(\(0.825076212646267137`\[InvisibleSpace]\) + 0.`\ \[ImaginaryI]\), \(\(0.825076212646267137`\[InvisibleSpace]\) + 0.`\ \[ImaginaryI]\)}, {"0.517974739008724505`", \(\(0.00842372957624361262`\[InvisibleSpace]\) - 0.312077517895553269`\ \[ImaginaryI]\), \(\(0.00842372957624361262`\[InvisibleSpace]\) + 0.312077517895553269`\ \[ImaginaryI]\)} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[112]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(pinv = Inverse[p]\)], "Input", CellLabel->"In[113]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ { \(\(0.622246488250918883`\[InvisibleSpace]\) + 4.21067431638189315`*^-18\ \[ImaginaryI]\), \(\(0.0988342516118897229`\[InvisibleSpace]\) + 0.`\ \[ImaginaryI]\), \(\(0.894565208706197445`\[InvisibleSpace]\) - 6.93889390390722837`*^-18\ \[ImaginaryI]\)}, { \(\(-0.0209730396237051985`\) - 0.515824757408916756`\ \[ImaginaryI]\), \(\(0.602673380310440975`\[InvisibleSpace]\) - 0.0982883375491894994`\ \[ImaginaryI]\), \(\(-0.0301516391372828174`\) + 0.860596754333711899`\ \[ImaginaryI]\)}, { \(\(-0.0209730396237051985`\) + 0.515824757408916756`\ \[ImaginaryI]\), \(\(0.602673380310440975`\[InvisibleSpace]\) + 0.0982883375491894994`\ \[ImaginaryI]\), \(\(-0.0301516391372828174`\) - 0.860596754333711899`\ \[ImaginaryI]\)} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[113]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Chop[pinv . aa . p]\)], "Input", CellLabel->"In[114]:=", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2.75530715327964514`", "0", "0"}, {"0", \(\(-0.377653576639822796`\) + 2.22226933075310295`\ \[ImaginaryI]\), "0"}, {"0", "0", \(\(-0.377653576639822796`\) - 2.22226933075310295`\ \[ImaginaryI]\)} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[114]="] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["\<\ Now, what will happen if we do not have distinct eigenvalues.?\ \>", "Subsection"], Cell["\<\ Recall our matrix that we used to calculate the generalized \ eigenvectors\ \>", "Text"], Cell[CellGroupData[{ Cell[BoxData[ \(aa = {{2, \(-1\), 2, 0}, {0, 3, \(-1\), 0}, {0, 1, 1, 0}, {0, 1, \(-3\), 5}}\)], "Input", CellLabel->"In[115]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", \(-1\), "2", "0"}, {"0", "3", \(-1\), "0"}, {"0", "1", "1", "0"}, {"0", "1", \(-3\), "5"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[115]="] }, Open ]], Cell["The row matrix of the eigenvectors is", "Text"], Cell[CellGroupData[{ Cell[BoxData[ FormBox[ RowBox[{"R", " ", "=", " ", RowBox[{"(", GridBox[{ {"1", "0", "0", "0"}, {"0", "1", "1", \(2\/3\)}, {"0", "2", "1", \(5\/9\)}, {"0", "0", "0", "1"} }, ColumnAlignments->{Decimal}], ")"}]}], TraditionalForm]], "Input",\ CellLabel->"In[116]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "0", "0", "0"}, {"0", "1", "1", \(2\/3\)}, {"0", "2", "1", \(5\/9\)}, {"0", "0", "0", "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[116]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[R]\)], "Input", CellLabel->"In[117]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "0", "0", "0"}, {"0", "1", "2", "0"}, {"0", "1", "1", "0"}, {"0", \(2\/3\), \(5\/9\), "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[117]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(pinv = Inverse[p]\)], "Input", CellLabel->"In[118]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "0", "0", "0"}, {"0", \(-1\), "2", "0"}, {"0", "1", \(-1\), "0"}, {"0", \(1\/9\), \(-\(7\/9\)\), "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[118]="] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(simans = pinv . aa . p\)], "Input", CellLabel->"In[119]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", "1", "0", "0"}, {"0", "2", "1", "0"}, {"0", "0", "2", "0"}, {"0", "0", "0", "5"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[119]="] }, Open ]], Cell["\<\ We see that the new matrix is much simpler that the original aa, \ but not exactly diagonal. This is the expected result for a matrix with \ repeated eigenvalues However, there is a caveat. Recall this matrix \ \>", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["mat={{2,2,1},{1,3,1},{1,2,2}}", "Input", CellLabel->"In[1]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", "2", "1"}, {"1", "3", "1"}, {"1", "2", "2"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[1]="], Cell["We see that there is a repeated eigenvalue.", "Text"], Cell[CellGroupData[{ Cell["Eigenvalues[mat]", "Input", CellLabel->"In[3]:="], Cell[BoxData[ \(TraditionalForm\`{1, 1, 5}\)], "Output", CellLabel->"Out[3]="] }, Open ]], Cell["However, just calculate the eigenvectors and we have:", "Text"], Cell[CellGroupData[{ Cell["evs=Eigenvectors[mat]", "Input", CellLabel->"In[4]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), "0", "1"}, {\(-2\), "1", "0"}, {"1", "1", "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[4]="] }, Open ]], Cell["\<\ Thus there was no need to construct a generalized eigen vector. \ Now try a similarity transform.\ \>", "Text"], Cell[CellGroupData[{ Cell["p=Transpose[%]", "Input", CellLabel->"In[5]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), \(-2\), "1"}, {"0", "1", "1"}, {"1", "0", "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[5]="] }, Open ]], Cell[CellGroupData[{ Cell["Inverse[p].mat.p", "Input", CellLabel->"In[6]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "0", "0"}, {"0", "1", "0"}, {"0", "0", "5"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[6]="] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["mat", "Input", CellLabel->"In[7]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", "2", "1"}, {"1", "3", "1"}, {"1", "2", "2"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[7]="] }, Open ]], Cell[CellGroupData[{ Cell["tt=Transpose[mat]", "Input", CellLabel->"In[8]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", "1", "1"}, {"2", "3", "2"}, {"1", "1", "2"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[8]="] }, Open ]], Cell[CellGroupData[{ Cell["Eigensystem[tt]", "Input", CellLabel->"In[11]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "1", "5"}, {\({\(-1\), 0, 1}\), \({\(-1\), 1, 0}\), \({1, 2, 1}\)} }], ")"}], TraditionalForm]], "Output", CellLabel->"Out[11]="] }, Open ]], Cell[CellGroupData[{ Cell["Eigenvectors[tt]", "Input", CellLabel->"In[12]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), "0", "1"}, {\(-1\), "1", "0"}, {"1", "2", "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[12]="] }, Open ]], Cell[CellGroupData[{ Cell["Eigensystem[mat]", "Input", CellLabel->"In[14]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "1", "5"}, {\({\(-1\), 0, 1}\), \({\(-2\), 1, 0}\), \({1, 1, 1}\)} }], ")"}], TraditionalForm]], "Output", CellLabel->"Out[14]="] }, Open ]], Cell[CellGroupData[{ Cell["Table[Table[%13[[i]].%12[[j]],{j,1,3}],{i,1,3}]", "Input", CellLabel->"In[16]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"2", "1", "0"}, {"2", "3", "0"}, {"0", "0", "4"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[16]="] }, Open ]], Cell[CellGroupData[{ Cell["Eigenvectors[mat]", "Input", CellLabel->"In[13]:="], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), "0", "1"}, {\(-2\), "1", "0"}, {"1", "1", "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output", CellLabel->"Out[13]="] }, Open ]], Cell[CellGroupData[{ Cell["Here is a bonus, the matrix from the Lorenz equations.", "Section"], Cell[CellGroupData[{ Cell[BoxData[ \(aa = {{\(-s\), s, 0}, {1, \(-1\), 0}, {0, 0, \(-b\)}}\)], "Input", PageBreakAbove->True, AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-s\), "s", "0"}, {"1", \(-1\), "0"}, {"0", "0", \(-b\)} }], ")"}], TraditionalForm]], "Output"], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ TagBox[ RowBox[{"(", GridBox[{ {\(-s\), "s", "0"}, {"1", \(-1\), "0"}, {"0", "0", \(-b\)} }], ")"}], (MatrixForm[ #]&)], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(evals = Eigenvalues[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm\`{0, \(-b\), \(-s\) - 1}\)], "Output"], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = Eigenvectors[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "1", "0"}, {"0", "0", "1"}, {\(-s\), "1", "0"} }], ")"}], TraditionalForm]], "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = {{1, 1, 0}, {\(-s\), 1, 0}, {0, 0, 1}}\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", "1", "0"}, {\(-s\), "1", "0"}, {"0", "0", "1"} }], ")"}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(evecs\[LeftDoubleBracket]2\[RightDoubleBracket] . evecs\[LeftDoubleBracket]1\[RightDoubleBracket]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm\`1 - s\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[evecs]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"1", \(-s\), "0"}, {"1", "1", "0"}, {"0", "0", "1"} }], ")"}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(pinv = Inverse[p]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(1\/\(s + 1\)\), \(s\/\(s + 1\)\), "0"}, {\(-\(1\/\(s + 1\)\)\), \(1\/\(s + 1\)\), "0"}, {"0", "0", "1"} }], ")"}], TraditionalForm]], "Output"] }, Open ]], Cell["We can hen get back the eigenvalues of aa", "Text", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell[BoxData[ \(pinv . aa . p\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0", "0", "0"}, {"0", \(\(-\((s\/\(s + 1\) + 1\/\(s + 1\))\)\)\ s - s\/\(s + 1\) - 1\/\(s + 1\)\), "0"}, {"0", "0", \(-b\)} }], ")"}], TraditionalForm]], "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Simplify[%]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"0", "0", "0"}, {"0", \(\(-s\) - 1\), "0"}, {"0", "0", \(-b\)} }], ")"}], TraditionalForm]], "Output"] }, Closed]], Cell[CellGroupData[{ Cell[BoxData[ \(aa = {{5, 4, 3}, {\(-1\), 0, \(-3\)}, {1, \(-2\), 1}}\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {"5", "4", "3"}, {\(-1\), "0", \(-3\)}, {"1", \(-2\), "1"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output"], Cell[CellGroupData[{ Cell[BoxData[ \(Det[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm\`\(-32\)\)], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(MatrixForm[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ TagBox[ RowBox[{"(", GridBox[{ {"5", "4", "3"}, {\(-1\), "0", \(-3\)}, {"1", \(-2\), "1"} }, ColumnAlignments->{Decimal}], ")"}], (MatrixForm[ #]&)], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(evals = Eigenvalues[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ \(TraditionalForm\`{\(-2\), 4, 4}\)], "Output"], Cell[CellGroupData[{ Cell[BoxData[ \(evecs = Eigenvectors[aa]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), "1", "1"}, {"1", \(-1\), "1"}, {"0", "0", "0"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(p = Transpose[evecs]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(-1\), "1", "0"}, {"1", \(-1\), "0"}, {"1", "1", "0"} }, ColumnAlignments->{Decimal}], ")"}], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(pinv = Inverse[p]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{ \(Inverse::"sing"\), \( : \ \), "\<\"Matrix \\!\\(TraditionalForm\\`\\((\\*GridBox[{{\\(-1\\), \ \\\"1\\\", \\\"0\\\"}, {\\\"1\\\", \\(-1\\), \\\"0\\\"}, {\\\"1\\\", \ \\\"1\\\", \\\"0\\\"}}, ColumnAlignments -> Decimal])\\)\\) is \ singular.\"\>"}], TraditionalForm]], "Message"], Cell[BoxData[ FormBox[ SuperscriptBox[ RowBox[{"(", GridBox[{ {\(-1\), "1", "0"}, {"1", \(-1\), "0"}, {"1", "1", "0"} }, ColumnAlignments->{Decimal}], ")"}], TagBox[\(-1\), Inverse]], TraditionalForm]], "Output"] }, Open ]], Cell[CellGroupData[{ Cell[BoxData[ \(Chop[pinv . aa . p]\)], "Input", AspectRatioFixed->True], Cell[BoxData[ FormBox[ RowBox[{ SuperscriptBox[ RowBox[{"(", GridBox[{ {\(-1\), "1", "0"}, {"1", \(-1\), "0"}, {"1", "1", "0"} }, ColumnAlignments->{Decimal}], ")"}], TagBox[\(-1\), Inverse]], ".", RowBox[{"(", GridBox[{ {"2", "4", "0"}, {\(-2\), \(-4\), "0"}, {\(-2\), "4", "0"} }, ColumnAlignments->{Decimal}], ")"}]}], TraditionalForm]], "Output"] }, Open ]] }, Closed]] }, Closed]] }, Open ]] }, FrontEndVersion->"4.0 for Macintosh", ScreenRectangle->{{0, 1152}, {0, 850}}, CellGrouping->Manual, WindowSize->{520, 740}, WindowMargins->{{211, Automatic}, {34, Automatic}}, PrintingCopies->1, PrintingPageRange->{8, 9}, StyleDefinitions -> Notebook[{ Cell[CellGroupData[{ Cell["Style Definitions", "Subtitle"], Cell["\<\ Modify the definitions below to change the default appearance of \ all cells in a given style. Make modifications to any definition using commands in the Format menu.\ \>", "Text"], Cell[CellGroupData[{ Cell["Style Environment Names", "Section"], Cell[StyleData[All, "Working"], ScriptMinSize->9], Cell[StyleData[All, "Printout"], PageWidth->PaperWidth, ShowCellLabel->False, ImageSize->{200, 200}, PrivateFontOptions->{"FontType"->"Outline"}] }, Closed]], Cell[CellGroupData[{ Cell["Notebook Options", "Section"], Cell["\<\ The options defined for the style below will be used at the \ Notebook level.\ \>", "Text"], Cell[StyleData["Notebook"], PageHeaders->{{Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"], None, Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"]}, {Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"], None, Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"]}}, PageHeaderLines->{True, True}, PrintingOptions->{"FirstPageHeader"->False, "FacingPages"->True}, CellLabelAutoDelete->False, CellFrameLabelMargins->6, StyleMenuListing->None] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headings", "Section"], Cell[CellGroupData[{ Cell[StyleData["Title"], CellFrame->{{0, 0}, {0, 0.25}}, CellMargins->{{18, 30}, {4, 20}}, CellGroupingRules->{"TitleGrouping", 0}, PageBreakBelow->False, CellFrameMargins->9, LineSpacing->{0.95, 0}, CounterIncrements->"Title", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontSize->36, Background->RGBColor[0.750011, 1, 0.750011]], Cell[StyleData["Title", "Printout"], CellMargins->{{18, 30}, {4, 0}}, CellFrameMargins->4, FontSize->30] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subtitle"], CellMargins->{{18, 30}, {0, 10}}, CellGroupingRules->{"TitleGrouping", 10}, PageBreakBelow->False, LineSpacing->{1, 0}, CounterIncrements->"Subtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontSize->24, FontSlant->"Italic", Background->RGBColor[0.8, 0.920012, 0.920012]], Cell[StyleData["Subtitle", "Printout"], CellMargins->{{18, 30}, {0, 10}}, FontSize->18] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["SectionFirst"], CellFrame->{{0, 0}, {0, 3}}, CellMargins->{{18, 30}, {4, 30}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CellFrameMargins->3, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontSize->18, FontWeight->"Bold"], Cell[StyleData["SectionFirst", "Printout"], FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Section"], CellMargins->{{18, 30}, {4, 30}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontSize->18, FontWeight->"Bold", Background->RGBColor[0.920012, 0.870024, 0.770016]], Cell[StyleData["Section", "Printout"], FontSize->14] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsection"], CellDingbat->"\[FilledSquare]", CellMargins->{{18, 30}, {4, 20}}, CellGroupingRules->{"SectionGrouping", 50}, PageBreakBelow->False, CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontSize->14, FontWeight->"Bold", Background->RGBColor[0.970001, 0.890013, 0.850004]], Cell[StyleData["Subsection", "Printout"], FontSize->12] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsubsection"], CellDingbat->"\[FilledSmallSquare]", CellMargins->{{18, 30}, {4, 12}}, CellGroupingRules->{"SectionGrouping", 60}, PageBreakBelow->False, CounterIncrements->"Subsubsection", FontSize->12, FontWeight->"Bold", Background->RGBColor[0.870008, 1, 0.960006]], Cell[StyleData["Subsubsection", "Printout"], FontSize->10] }, Closed]] }, Open ]], Cell[CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[CellGroupData[{ Cell[StyleData["Text"], CellMargins->{{18, 10}, {Inherited, 6}}, TextJustification->1, LineSpacing->{1, 2}, CounterIncrements->"Text", Background->RGBColor[0.900008, 1, 0.940002]], Cell[StyleData["Text", "Printout"], CellMargins->{{18, 30}, {Inherited, 4}}, LineSpacing->{1, 3}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Caption"], CellMargins->{{55, 50}, {5, 5}}, PageBreakAbove->False, FontSize->10], Cell[StyleData["Caption", "Printout"], CellMargins->{{55, 55}, {5, 2}}, FontSize->8] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Input/Output", "Section"], Cell["\<\ The cells in this section define styles used for input and output \ to the kernel. Be careful when modifying, renaming, or removing these \ styles, because the front end associates special meanings with these style \ names.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Input"], CellMargins->{{55, 10}, {5, 8}}, Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelMargins->{{26, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultInputFormatType, AutoItalicWords->{}, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontSize->12, FontWeight->"Bold"], Cell[StyleData["Input", "Printout"], CellMargins->{{55, 55}, {0, 10}}, ShowCellLabel->False, FontSize->9.5] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Output"], CellMargins->{{55, 10}, {8, 5}}, CellEditDuplicate->True, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, CellLabelPositioning->Left, CellLabelMargins->{{26, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, AutoItalicWords->{}, FormatType->InputForm, CounterIncrements->"Output", Background->RGBColor[0.940017, 0.890013, 0.990005]], Cell[StyleData["Output", "Printout"], CellMargins->{{55, 55}, {10, 10}}, ShowCellLabel->False, FontSize->9.5] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Message"], CellDingbat->"\[LongDash]", CellMargins->{{55, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{26, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, AutoItalicWords->{}, FormatType->InputForm, CounterIncrements->"Message", StyleMenuListing->None, FontSize->10, FontSlant->"Italic"], Cell[StyleData["Message", "Printout"], CellMargins->{{55, 55}, {0, 3}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Print"], CellMargins->{{55, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{26, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, TextAlignment->Left, AutoItalicWords->{}, FormatType->InputForm, CounterIncrements->"Print", StyleMenuListing->None], Cell[StyleData["Print", "Printout"], CellMargins->{{54, 72}, {2, 10}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Graphics"], CellMargins->{{55, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Graphics", StyleMenuListing->None, Background->RGBColor[0.780011, 0.920012, 1], ButtonBoxOptions->{Background->RGBColor[0.750011, 0.630014, 0.760021]}], Cell[StyleData["Graphics", "Printout"], CellMargins->{{55, 55}, {0, 15}}, ImageSize->{0.0625, 0.0625}, ImageMargins->{{35, Inherited}, {Inherited, 0}}, FontSize->8] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["CellLabel"], CellMargins->{{9, Inherited}, {Inherited, Inherited}}, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9, FontSlant->"Oblique"], Cell[StyleData["CellLabel", "Printout"], CellMargins->{{0, Inherited}, {Inherited, Inherited}}, FontSize->8] }, Closed]] }, Open ]], Cell[CellGroupData[{ Cell["Unique Styles", "Section"], Cell[CellGroupData[{ Cell[StyleData["Author"], CellMargins->{{45, Inherited}, {2, 20}}, CellGroupingRules->{"TitleGrouping", 20}, PageBreakBelow->False, CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontSize->14, FontWeight->"Bold"], Cell[StyleData["Author", "Printout"], CellMargins->{{36, Inherited}, {2, 30}}, FontSize->12] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Address"], CellMargins->{{45, Inherited}, {2, 2}}, CellGroupingRules->{"TitleGrouping", 30}, PageBreakBelow->False, LineSpacing->{1, 1}, CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontSize->12, FontSlant->"Italic"], Cell[StyleData["Address", "Printout"], CellMargins->{{36, Inherited}, {2, 2}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Abstract"], CellMargins->{{45, 75}, {Inherited, 30}}, LineSpacing->{1, 0}], Cell[StyleData["Abstract", "Printout"], CellMargins->{{36, 67}, {Inherited, 50}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Reference"], CellMargins->{{18, 40}, {2, 2}}, TextJustification->1, LineSpacing->{1, 0}], Cell[StyleData["Reference", "Printout"], CellMargins->{{18, 40}, {Inherited, 0}}, FontSize->8] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Automatic Numbering", "Section"], Cell["\<\ The following styles are useful for numbered equations, figures, \ etc. They automatically give the cell a FrameLabel containing a reference to \ a particular counter, and also increment that counter.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["NumberedEquation"], CellMargins->{{55, 10}, {0, 10}}, CellFrameLabels->{{None, Cell[ TextData[ {"(", CounterBox[ "NumberedEquation"], ")"}]]}, {None, None}}, DefaultFormatType->DefaultInputFormatType, CounterIncrements->"NumberedEquation", FormatTypeAutoConvert->False], Cell[StyleData["NumberedEquation", "Printout"], CellMargins->{{55, 55}, {0, 10}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedFigure"], CellMargins->{{55, 145}, {2, 10}}, CellHorizontalScrolling->True, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Figure ", CounterBox[ "NumberedFigure"]}], FontWeight -> "Bold"], None}}, CounterIncrements->"NumberedFigure", FormatTypeAutoConvert->False], Cell[StyleData["NumberedFigure", "Printout"], FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["NumberedTable"], CellMargins->{{55, 145}, {2, 10}}, CellFrameLabels->{{None, None}, {Cell[ TextData[ {"Table ", CounterBox[ "NumberedTable"]}], FontWeight -> "Bold"], None}}, TextAlignment->Center, CounterIncrements->"NumberedTable", FormatTypeAutoConvert->False], Cell[StyleData["NumberedTable", "Printout"], CellMargins->{{18, Inherited}, {Inherited, Inherited}}, FontSize->10] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Formulas and Programming", "Section"], Cell[CellGroupData[{ Cell[StyleData["DisplayFormula"], CellMargins->{{55, 10}, {2, 10}}, CellHorizontalScrolling->True, DefaultFormatType->DefaultInputFormatType, ScriptLevel->0, SingleLetterItalics->True, UnderoverscriptBoxOptions->{LimitsPositioning->True}], Cell[StyleData["DisplayFormula", "Printout"], FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["ChemicalFormula"], CellMargins->{{55, 10}, {2, 10}}, DefaultFormatType->DefaultInputFormatType, AutoSpacing->False, ScriptLevel->1, ScriptBaselineShifts->{0.6, Automatic}, SingleLetterItalics->False, ZeroWidthTimes->True], Cell[StyleData["ChemicalFormula", "Printout"], FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Program"], CellMargins->{{18, 10}, {Inherited, 6}}, FontFamily->"Courier"], Cell[StyleData["Program", "Printout"], CellMargins->{{18, 30}, {Inherited, 4}}, FontSize->9.5] }, Closed]] }, Closed]] }, Open ]] }], MacintoshSystemPageSetup->"\<\ 00<0004/0B`000002mT8o?mooh<" ] (*********************************************************************** 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[CellGroupData[{ Cell[1739, 51, 110, 3, 78, "Title", Evaluatable->False, PageBreakAbove->True], Cell[1852, 56, 1130, 25, 340, "Text"], Cell[2985, 83, 348, 6, 82, "Text"], Cell[CellGroupData[{ Cell[3358, 93, 38, 0, 58, "Subsection"], Cell[CellGroupData[{ Cell[3421, 97, 140, 3, 28, "Input"], Cell[3564, 102, 284, 8, 74, "Output"], Cell[CellGroupData[{ Cell[3873, 114, 107, 3, 28, "Input"], Cell[3983, 119, 159, 4, 43, "Output"], Cell[CellGroupData[{ Cell[4167, 127, 108, 3, 28, "Input"], Cell[4278, 132, 494, 11, 74, "Output"] }, Open ]] }, Open ]], Cell[4799, 147, 167, 5, 82, "Text"], Cell[CellGroupData[{ Cell[4991, 156, 52, 1, 28, "Input"], Cell[5046, 159, 97, 2, 43, "Output"] }, Open ]], Cell[5158, 164, 43, 0, 40, "Text"], Cell[CellGroupData[{ Cell[5226, 168, 163, 3, 28, "Input"], Cell[5392, 173, 72, 1, 43, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5501, 179, 38, 0, 27, "Input"], Cell[5542, 181, 77, 1, 26, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5656, 187, 38, 0, 27, "Input"], Cell[5697, 189, 78, 1, 48, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[5812, 195, 63, 1, 38, "Input"], Cell[5878, 198, 102, 2, 48, "Output"] }, Open ]], Cell[5995, 203, 342, 9, 50, "Text"], Cell[CellGroupData[{ Cell[6362, 216, 104, 3, 38, "Input"], Cell[6469, 221, 494, 11, 77, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[7000, 237, 101, 3, 38, "Input"], Cell[7104, 242, 484, 11, 77, "Output"] }, Open ]], Cell[7603, 256, 106, 2, 37, "Text", Evaluatable->False], Cell[CellGroupData[{ Cell[7734, 262, 103, 3, 38, "Input"], Cell[7840, 267, 318, 8, 74, "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[8219, 282, 96, 2, 53, "Subsection", Evaluatable->False], Cell[CellGroupData[{ Cell[8340, 288, 135, 3, 38, "Input"], Cell[8478, 293, 279, 8, 74, "Output"], Cell[CellGroupData[{ Cell[8782, 305, 107, 3, 38, "Input"], Cell[8892, 310, 158, 4, 48, "Output"], Cell[CellGroupData[{ Cell[9075, 318, 108, 3, 38, "Input"], Cell[9186, 323, 496, 11, 77, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[9731, 340, 63, 1, 38, "Input"], Cell[9797, 343, 96, 2, 48, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[9930, 350, 64, 1, 38, "Input"], Cell[9997, 353, 107, 2, 49, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10141, 360, 64, 1, 38, "Input"], Cell[10208, 363, 102, 2, 49, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10347, 370, 64, 1, 38, "Input"], Cell[10414, 373, 107, 2, 49, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[10558, 380, 105, 3, 38, "Input"], Cell[10666, 385, 497, 11, 77, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[11200, 401, 95, 3, 38, "Input"], Cell[11298, 406, 498, 11, 77, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[11833, 422, 110, 3, 38, "Input"], Cell[11946, 427, 318, 8, 76, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[12301, 440, 112, 3, 38, "Input"], Cell[12416, 445, 317, 8, 76, "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[12794, 460, 108, 2, 53, "Subsection", Evaluatable->False], Cell[CellGroupData[{ Cell[12927, 466, 136, 3, 38, "Input"], Cell[13066, 471, 280, 8, 74, "Output"], Cell[CellGroupData[{ Cell[13371, 483, 108, 3, 38, "Input"], Cell[13482, 488, 253, 6, 48, "Output"], Cell[CellGroupData[{ Cell[13760, 498, 109, 3, 38, "Input"], Cell[13872, 503, 954, 21, 77, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[14875, 530, 105, 3, 38, "Input"], Cell[14983, 535, 939, 20, 77, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[15959, 560, 102, 3, 38, "Input"], Cell[16064, 565, 1217, 26, 79, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[17318, 596, 104, 3, 38, "Input"], Cell[17425, 601, 471, 12, 77, "Output"] }, Open ]] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[17957, 620, 95, 3, 53, "Subsection"], Cell[18055, 625, 98, 3, 37, "Text"], Cell[CellGroupData[{ Cell[18178, 632, 146, 3, 38, "Input"], Cell[18327, 637, 316, 9, 89, "Output"] }, Open ]], Cell[18658, 649, 53, 0, 40, "Text"], Cell[CellGroupData[{ Cell[18736, 653, 369, 11, 109, "Input"], Cell[19108, 666, 317, 9, 107, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[19462, 680, 75, 2, 44, "Input"], Cell[19540, 684, 317, 9, 98, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[19894, 698, 76, 2, 44, "Input"], Cell[19973, 702, 328, 9, 98, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[20338, 716, 81, 2, 44, "Input"], Cell[20422, 720, 307, 9, 89, "Output"] }, Open ]], Cell[20744, 732, 236, 6, 82, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[21017, 743, 70, 1, 44, "Input"], Cell[21090, 746, 256, 8, 73, "Output"], Cell[21349, 756, 59, 0, 40, "Text"], Cell[CellGroupData[{ Cell[21433, 760, 57, 1, 44, "Input"], Cell[21493, 763, 84, 2, 43, "Output"] }, Open ]], Cell[21592, 768, 69, 0, 40, "Text"], Cell[CellGroupData[{ Cell[21686, 772, 62, 1, 44, "Input"], Cell[21751, 775, 262, 8, 73, "Output"] }, Open ]], Cell[22028, 786, 122, 3, 40, "Text"], Cell[CellGroupData[{ Cell[22175, 793, 55, 1, 44, "Input"], Cell[22233, 796, 262, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[22532, 809, 57, 1, 44, "Input"], Cell[22592, 812, 256, 8, 73, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[22897, 826, 44, 1, 44, "Input"], Cell[22944, 829, 256, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[23237, 842, 58, 1, 44, "Input"], Cell[23298, 845, 256, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[23591, 858, 57, 1, 44, "Input"], Cell[23651, 861, 229, 6, 57, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[23917, 872, 58, 1, 44, "Input"], Cell[23978, 875, 263, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[24278, 888, 58, 1, 44, "Input"], Cell[24339, 891, 229, 6, 57, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[24605, 902, 89, 1, 44, "Input"], Cell[24697, 905, 257, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[24991, 918, 59, 1, 44, "Input"], Cell[25053, 921, 263, 8, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[25353, 934, 73, 0, 73, "Section"], Cell[CellGroupData[{ Cell[25451, 938, 136, 3, 43, "Input", PageBreakAbove->True], Cell[25590, 943, 202, 6, 74, "Output"], Cell[CellGroupData[{ Cell[25817, 953, 73, 2, 43, "Input"], Cell[25893, 957, 254, 8, 74, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[26184, 970, 82, 2, 43, "Input"], Cell[26269, 974, 74, 1, 43, "Output"], Cell[CellGroupData[{ Cell[26368, 979, 83, 2, 43, "Input"], Cell[26454, 983, 196, 6, 74, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[26699, 995, 105, 2, 43, "Input"], Cell[26807, 999, 196, 6, 74, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[27040, 1010, 163, 3, 43, "Input"], Cell[27206, 1015, 56, 1, 43, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[27299, 1021, 79, 2, 43, "Input"], Cell[27381, 1025, 196, 6, 74, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[27614, 1036, 76, 2, 43, "Input"], Cell[27693, 1040, 250, 6, 88, "Output"] }, Open ]], Cell[27958, 1049, 105, 2, 40, "Text", Evaluatable->False], Cell[CellGroupData[{ Cell[28088, 1055, 72, 2, 43, "Input"], Cell[28163, 1059, 300, 8, 81, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[28512, 1073, 70, 2, 43, "Input"], Cell[28585, 1077, 207, 6, 73, "Output"] }, Closed]], Cell[CellGroupData[{ Cell[28829, 1088, 112, 2, 39, "Input"], Cell[28944, 1092, 241, 7, 73, "Output"], Cell[CellGroupData[{ Cell[29210, 1103, 66, 2, 44, "Input"], Cell[29279, 1107, 58, 1, 43, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[29374, 1113, 73, 2, 44, "Input"], Cell[29450, 1117, 295, 9, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[29782, 1131, 82, 2, 44, "Input"], Cell[29867, 1135, 65, 1, 43, "Output"], Cell[CellGroupData[{ Cell[29957, 1140, 83, 2, 44, "Input"], Cell[30043, 1144, 238, 7, 73, "Output"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[30330, 1157, 79, 2, 44, "Input"], Cell[30412, 1161, 238, 7, 73, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[30687, 1173, 76, 2, 44, "Input"], Cell[30766, 1177, 337, 7, 47, "Message"], Cell[31106, 1186, 317, 10, 75, "Output"] }, Open ]], Cell[CellGroupData[{ Cell[31460, 1201, 78, 2, 44, "Input"], Cell[31541, 1205, 556, 17, 75, "Output"] }, Open ]] }, Closed]] }, Closed]] }, Open ]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)