(************** Content-type: application/mathematica ************** CreatedBy='Mathematica 5.0' Mathematica-Compatible Notebook This notebook can be used with any Mathematica-compatible application, such as Mathematica, MathReader or Publicon. 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[ 21535, 753]*) (*NotebookOutlinePosition[ 22191, 776]*) (* CellTagsIndexPosition[ 22147, 772]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["\<\ Math 461 Professor Eduardo Cattani By Yuval Sivan\ \>", "Subsubtitle"], Cell[CellGroupData[{ Cell[TextData[{ "Lab 2: ParametricPlot, ImplicitPlot", StyleBox[" and ", FontWeight->"Plain"], StyleBox["Mathematica", FontSlant->"Italic"], " packages" }], "Section"], Cell["\<\ \tIn this lab you'll learn how to use some more advanced plotting methods as \ well as how to load and use packages.\ \>", "Text"], Cell[CellGroupData[{ Cell["ParametricPlot and ParametricPlot3D", "Subsection"], Cell[TextData[{ "\tIn the last lab we used ", Cell[BoxData[ \(Plot\)], "Input"], " to draw a circle, but in the least natural way, splitting up the circle \ into two branches. We usually think of a circle as either being the path of a \ circular orbit or as the locus of points that are the same distance from a \ given point. Those ways correspond to ", Cell[BoxData[ \(ParametricPlot\)], "Input"], " and ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], ". Execute the following line:" }], "Text"], Cell[BoxData[ \(\(ParametricPlot[{Cos[\[Theta]], Sin[\[Theta]]}, {\[Theta], 0, 2 \[Pi]}, AspectRatio \[Rule] Automatic];\)\)], "Input"], Cell[TextData[{ "\t(The theta and pi symbols are on the BasicInput palette to the right; if \ it's not there, open it up through the File menu). ", Cell[BoxData[ \(ParametricPlot\)], "Input"], " expects a list of two expressions in a single variable; these will be the \ ", Cell[BoxData[ \(TraditionalForm\`x\)], "Input"], " and ", Cell[BoxData[ \(TraditionalForm\`y\)], "Input"], " coordinates of the 'plotter'. This method is particularly useful for \ displaying curves in polar coordinates where ", Cell[BoxData[ \(TraditionalForm\`x = r\ cos\ \[Theta]\)], "Input"], " and ", Cell[BoxData[ \(TraditionalForm\`y = r\ sin\ \[Theta]\)], "Input"], "; here's ", Cell[BoxData[ \(TraditionalForm\`r = sin(2 \[Theta])\)], "Input"], ":" }], "Text"], Cell[BoxData[ \(\(ParametricPlot[ Sin[2 \[Theta]] {Cos[\[Theta]], Sin[\[Theta]]}, {\[Theta], 0, 2 \[Pi]}, AspectRatio \[Rule] Automatic];\)\)], "Input"], Cell[TextData[{ "\tNote that ", StyleBox["Mathematica", FontSlant->"Italic"], " treats the first expression as the vector ", Cell[BoxData[ FormBox[ RowBox[{"(", GridBox[{ {\(cos\ \[Theta]\)}, {\(sin\ \[Theta]\)} }], ")"}], TraditionalForm]], "Input"], " multiplied by the scalar ", Cell[BoxData[ \(TraditionalForm\`sin(2 \[Theta])\)], "Input"], ". The result is a list of two expressions in one variable, just like ", Cell[BoxData[ \(ParametricPlot\)], "Input"], " expects. ", StyleBox["Mathematica", FontSlant->"Italic"], " also supports 3 dimensional parametric plots with the method ", Cell[BoxData[ \(ParametricPlot3D\)], "Input"], ". You use it the same way as ", Cell[BoxData[ \(ParametricPlot\)], "Input"], " except with three coordinate functions instead of two:" }], "Text"], Cell[BoxData[ \(\(ParametricPlot3D[{t, t\^2, t\^3}, {t, 0, 1}];\)\)], "Input"], Cell[BoxData[ \(\(ParametricPlot3D[{Cos[5 t], Sin[3 t], Sin[t]}, {t, 0, 2 \[Pi]}];\)\)], "Input"], Cell[TextData[{ "\tBy the way, most plotting functions have an option called ", Cell[BoxData[ \(PlotPoints\)], "Input"], " which you can set if the graph is too rough:" }], "Text"], Cell[BoxData[ \(\(ParametricPlot3D[{Cos[5 t], Sin[3 t], Sin[t]}, {t, 0, 2 \[Pi]}, PlotPoints \[Rule] 200];\)\)], "Input"], Cell[TextData[{ "\tIf you think about it, parametric plotting essentially takes a time \ interval and warps it into a 3 dimensional shape with the coordinate \ functions. There's another way to use ", Cell[BoxData[ \(ParametricPlot3D\)], "Input"], ", though, with a time rectangle instead of a time interval. Execute the \ following lines:" }], "Text"], Cell[BoxData[ \(\(ParametricPlot3D[{u - v, u + v, v}, {u, \(-1\), 1}, {v, \(-1\), 1}];\)\)], "Input"], Cell[BoxData[ \(\(ParametricPlot3D[{Cos[\[Theta]] Cosh[\[Phi]], Sin[\[Theta]] Cosh[\[Phi]], Sinh[\[Phi]]}, {\[Phi], \(-1\), 1}, {\[Theta], 0, 2 \[Pi]}];\)\)], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["Exercises", "Subsection"], Cell["\<\ With these methods, you should be able to plot the figures from the exercises \ for chapter 1, section 3 of Cox, Little and O'Shea.\ \>", "Text"], Cell[CellGroupData[{ Cell["1", "Subsubsection"], Cell["Exercise 2", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["2", "Subsubsection"], Cell["Exercise 4", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["3", "Subsubsection"], Cell["Exercise 5", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["4", "Subsubsection"], Cell["Exercise 6", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["5", "Subsubsection"], Cell[TextData[{ "E", "xercis", "e 8 with ", Cell[BoxData[ \(TraditionalForm\`c = 2\)], "Input"] }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["6", "Subsubsection"], Cell["Exercise 11", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["7", "Subsubsection"], Cell["Exercise 12", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["8", "Subsubsection"], Cell["Exercise 13", "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["ImplicitPlot and ContourPlot3D", "Subsection"], Cell[TextData[{ "\tSince varieties are the zeroes of polynomial equations in the \ coordinates, the most natural way to display them is through the equations \ that define them. The easiest way to do this in ", StyleBox["Mathematica", FontSlant->"Italic"], " is to use ImplicitPlot. That method has its own package, though, so let's \ load it up:" }], "Text"], Cell[BoxData[ \(Needs["\"]\)], "Input"], Cell[TextData[{ "\t(Note that [`] is a backquote; you can find below [Escape] on the same \ button as the tilde [~]). There are other ways to load packages, but this \ assures that nothing will go wrong if you try to load a package that's \ already loaded. You use ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " by simply giving it an equation and a drawing rectangle:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 + y\^2 \[Equal] 1, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[BoxData[ \(\(ImplicitPlot[ x\ y\^2 + x\^3 + y\^2 \[Equal] x\^2, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tYou have to be careful here: the equality symbol is ", Cell[BoxData[ \(TraditionalForm\` \[Equal] \)], "Input"], ", which you can enter by typing two normal equal signs [=]. A single equal \ sign is the assignment operator - this distinction should be familiar to \ those of you who've programmed in C, C++ or Java before." }], "Text"], Cell[TextData[{ "\tWhat if a variety is defined by multiple polynomials? If you enter a \ list of more than one equations, ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " will simply draw them all at once:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[{x\^3 - 2\ y - 3\ x\^2\ y - 3\ x\ y\^2 + y\^3 == 0, x\^3 + 2 x + 3\ x\^2\ y - 3\ x\ y\^2 - y\^3 == 0}, {x, \(-2\), 2}, {y, \(-2\), 2}];\)\)], "Input"], Cell["\<\ \tThe variety consists of the points where the curves intersect. Let's make \ this a bit more colorful so that we can see the two curves separately. First \ we'll load up the package with color names:\ \>", "Text"], Cell[BoxData[ \(Needs["\"]\)], "Input"], Cell[TextData[{ "\tNow we'll use the ", Cell[BoxData[ \(PlotStyle\)], "Input"], " option:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[\[IndentingNewLine]{x\^3 - 2\ y - 3\ x\^2\ y - 3\ x\ y\^2 + y\^3 == 0, \[IndentingNewLine]x\^3 + 2 x + 3\ x\^2\ y - 3\ x\ y\^2 - y\^3 == 0}, \[IndentingNewLine]{x, \(-2\), 2}, {y, \(-2\), 2}, PlotStyle \[Rule] {Red, Blue}];\)\)], "Input"], Cell["\<\ \t(Those of you who've taken complex analysis have seen curves like these \ before; they're the real and imaginary components of a complex cubic). Note \ that extra spacing between symbols doesn't matter.\ \>", "Text"], Cell[TextData[{ "\tYou can also use this method to plot a unions of varieties: just plot \ them simultaneously without using different colors. But there's another way: \ ", Cell[BoxData[ \(TraditionalForm\`\[DoubleStruckCapitalV]( f) \[Union] \[DoubleStruckCapitalV](g) = \[DoubleStruckCapitalV]( f\[CenterDot]g)\)], "Input"], ". Let's use that identity to plot a branch of a hyperbola with a tangent \ line:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[\((y\ x - 1)\) \((x + y - 2)\) \[Equal] 0, {x, 0, 2}, {y, 0, 2}];\)\)], "Input"], Cell[TextData[{ "\tWhat just happened? To find out, we'll have to take a look at how ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " actually works. In the mode we've been using, ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " treats the equation you give it (", Cell[BoxData[ \(TraditionalForm\`f = g\)], "Input"], ") like a function (", Cell[BoxData[ \(TraditionalForm\`f - g\)], "Input"], ") and, after eliminating any repeated factors it can find, makes a contour \ plot of where that function switches from being positive to negative. Let's \ take a look at those contours:" }], "Text"], Cell[BoxData[ \(\(ContourPlot[x\^2 - y\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, Contours \[Rule] 15];\)\)], "Input"], Cell[TextData[{ "\t(I used the ", Cell[BoxData[ \(Contours\)], "Input"], " option to increase the number of contours from the default). One way to \ interpret these is to imagine the surface ", Cell[BoxData[ \(TraditionalForm\`z = x\^2 - y\^2\)], "Input"], " in ", Cell[BoxData[ \(TraditionalForm\`\[DoubleStruckCapitalR]\^3\)], "Input"], " and think of the contours as representing change in ", Cell[BoxData[ \(TraditionalForm\`z\)], "Input"], "; the more contours in an area, the faster the 'elevation' is rising. The \ brighter the shade of white, the higher the elevation. Let's actually see \ that in 3D:" }], "Text"], Cell[BoxData[ \(\(Plot3D[x\^2 - y\^2, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tNote that ", Cell[BoxData[ \(ContourPlot\)], "Input"], " and ", Cell[BoxData[ \(Plot3D\)], "Input"], " use the same arguments, just with different options. Let's use an option \ that only applies to 3D graphics:" }], "Text"], Cell[BoxData[ \(\(Plot3D[x\^2 - y\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, BoxRatios \[Rule] {1, 1, 1}];\)\)], "Input"], Cell[TextData[{ "\tThat tells ", StyleBox["Mathematica", FontSlant->"Italic"], " to keep the lengths of the ", Cell[BoxData[ \(TraditionalForm\`x\)], "Input"], ", ", Cell[BoxData[ \(TraditionalForm\`y\)], "Input"], " and ", Cell[BoxData[ \(TraditionalForm\`z\)], "Input"], " sides of the viewing rectangle in a ", Cell[BoxData[ \(TraditionalForm\`1 : \(1 : 1\)\)], "Input"], " ratio. To understand how this relates to varieties in ", Cell[BoxData[ \(TraditionalForm\`\[DoubleStruckCapitalR]\^2\)], "Input"], ", we'll use the family of planes ", Cell[BoxData[ \(TraditionalForm\`z = a\)], "Input"], ". First picture the plane ", Cell[BoxData[ \(TraditionalForm\`z = \(a = 1\)\)], "Input"], " at the top of the box. It'll hit the saddle at only two points, ", Cell[BoxData[ \(TraditionalForm\`\((\(\[PlusMinus]1\), 0, 1)\)\)], "Input"], ". Now imagine ", Cell[BoxData[ \(TraditionalForm\`a\)], "Input"], " getting smaller. At first, it'll only hit the very top in a couple of \ arches:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 - y\^2 \[Equal] .9, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tAs ", Cell[BoxData[ \(TraditionalForm\`a\)], "Input"], " goes down, the plane hits the saddle in larger and larger arches:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 - y\^2 \[Equal] .5, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tWhen ", Cell[BoxData[ \(TraditionalForm\`a\)], "Input"], " small but still greater than zero, the cross section of the hyperbola \ that it intersects looks like the usual picture of a hyperbola:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 - y\^2 \[Equal] .1, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tWhen ", Cell[BoxData[ \(TraditionalForm\`a = 0\)], "Input"], ", the plane hits the saddle in two lines only:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 - y\^2 \[Equal] 0, {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell["\<\ If you're having trouble visualizing that, run the following cell (I made it \ small because it's code goes beyond what you'll learn in this course):\ \>", "Text"], Cell[BoxData[ RowBox[{\(pg = Plot3D[x\^2 - y\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, BoxRatios \[Rule] {1, 1, 1}, DisplayFunction \[Rule] Identity]\), ";", RowBox[{"Show", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"Graphics3D", "[", RowBox[{"{", RowBox[{"Red", ",", RowBox[{"Line", "[", RowBox[{"(", GridBox[{ {"1", "1", "0"}, {\(-1\), \(-1\), "0"} }], ")"}], "]"}], ",", RowBox[{"Line", "[", RowBox[{"(", GridBox[{ {"1", \(-1\), "0"}, {\(-1\), "1", "0"} }], ")"}], "]"}]}], "}"}], "]"}], ",", "pg"}], "}"}], ",", \(DisplayFunction \[Rule] $DisplayFunction\)}], "]"}], ";"}]], "Input", FontSize->3], Cell[TextData[{ "\tLastly, if you let ", Cell[BoxData[ \(TraditionalForm\`a\)], "Input"], " become negative, the hyperbola flips sideways:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 - y\^2 \[Equal] \(- .1\), {x, \(-1\), 1}, {y, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tBecause it uses this method, ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " has a lot of problems with functions that switch between positive and \ negative values over a small area: the contours might miss those areas \ entirely. That's what caused the problems in this one:" }], "Text"], Cell[BoxData[ \(\(Plot3D[\((y\ x - 1)\) \((x + y - 2)\), {x, 0, 2}, {y, 0, 2}, BoxRatios \[Rule] {1, 1, 1}];\)\)], "Input"], Cell[TextData[{ "\tThat's also why ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " can't show point varieties:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 + y\^2 \[Equal] 0, {x, \(-2\), 2}, {y, \(-2\), 2}];\)\)], "Input"], Cell[TextData[{ "\tThe origin satisfies this equation, but it doesn't show up, since ", Cell[BoxData[ \(TraditionalForm\`x\^2 + y\^2 - 0\)], "Input"], " is always positive. One solution to this problem is to add a tiny bit of \ leeway to the equation:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[ x\^2 + y\^2 \[Equal] 0.0001, {x, \(-2\), 2}, {y, \(-2\), 2}];\)\)], "Input"], Cell[TextData[{ "\tOf course, if the leeway went in the other direction, you wouldn't have \ seen anything. As for the problems with infinite varieties, you can try \ giving ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " only one variable range:" }], "Text"], Cell[BoxData[ \(\(ImplicitPlot[\((y\ x - 1)\) \((x + y - 2)\) \[Equal] 0, {x, 0, 2}];\)\)], "Input"], Cell[TextData[{ "\tWhen you do this, ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], " algebraically solves for the variable whose range you didn't specify (in \ this case, ", Cell[BoxData[ \(TraditionalForm\`y\)], "Input"], ") and uses ", Cell[BoxData[ \(Plot\)], "Input"], " to show the result. This has its own problems (it can't draw verticle \ lines, for instance) but it can be worth a try.\n\tLater in the course you'll \ learn ways to separate varieties into different components and figure out \ where the isolated points are. For now, let's look at 3 dimensional contour \ plotting. We'll need another package for this:" }], "Text"], Cell[BoxData[ \(Needs["\"]\)], "Input"], Cell[TextData[{ "\tThere's no ", Cell[BoxData[ \(ImplicitPlot3D\)], "Input"], ", so if we want to plot ", Cell[BoxData[ \(TraditionalForm\`f = g\)], "Input"], " then we'll have to use the default contour at ", Cell[BoxData[ \(TraditionalForm\`0\)], "Input"], " for ", Cell[BoxData[ \(TraditionalForm\`f - g\)], "Input"], ". Let's try it:" }], "Text"], Cell[BoxData[ \(\(ContourPlot3D[ x\^2 + y\^2 - z\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, {z, \(-1\), 1}];\)\)], "Input"], Cell[BoxData[ \(\(ContourPlot3D[ x\^3 + y\^2 - z\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, {z, \(-1\), 1}];\)\)], "Input"], Cell[BoxData[ \(\(ContourPlot3D[ x\^2\ \((y - 1)\) + z\^2, {x, \(-1\), 1}, {y, \(-1\), 1}, {z, \(-1\), 1}];\)\)], "Input"], Cell[TextData[{ "\tBe aware that this method is ", StyleBox["much", FontSlant->"Italic"], " worse at handling self-intersecting curves than ", Cell[BoxData[ \(ImplicitPlot\)], "Input"], ":" }], "Text"], Cell[BoxData[ \(\(ContourPlot3D[ y\^2 + z\^3 - \(x\^2\) z\^2, {x, \(-3\), 3}, {y, \(-3\), 3}, {z, \(-2\), 4}];\)\)], "Input"], Cell[TextData[{ "\tYou can raise the resolution with ", Cell[BoxData[ \(PlotPoints\)], "Input"], ":" }], "Text"], Cell[BoxData[ \(\(ContourPlot3D[ y\^2 + z\^3 - \(x\^2\) z\^2, {x, \(-3\), 3}, {y, \(-3\), 3}, {z, \(-2\), 4}, PlotPoints \[Rule] 6];\)\)], "Input"], Cell[TextData[{ "\t(", Cell[BoxData[ \(ContourPlot3D\)], "Input"], " uses ", Cell[BoxData[ \(PlotPoints\)], "Input"], " in a slightly different way than most methods, so use small numbers). As \ the above plot shows, raising the resolution doesn't always help and it can \ take an enormous amount of time. Unfortunately, there's no way to draw a 3D \ curve defined by two polynomials short of parametrizing it. Still, you should \ be able to use the methods you've learned so far to display many kinds of \ varieties." }], "Text"] }, Open ]], Cell[CellGroupData[{ Cell["Exercises", "Subsection"], Cell["\<\ Display the curves from the following exercises for chapter 1, section 2 of \ Cox, Little and O'Shea.\ \>", "Text"], Cell[CellGroupData[{ Cell["1", "Subsubsection"], Cell["Exercise 1.a", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["2", "Subsubsection"], Cell["Exercise 1.b", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["3", "Subsubsection"], Cell["Exercise 1.c", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["4", "Subsubsection"], Cell["Exercise 2", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["5", "Subsubsection"], Cell["Exercise 1.a", "Text"] }, Open ]], Cell[CellGroupData[{ Cell["6", "Subsubsection"], Cell["Exercise 1.b", "Text"], Cell["Copyright \[Copyright] 2004 by Yuval Sivan. All rights reserved.", \ "Text", TextAlignment->Center, TextJustification->0] }, Open ]] }, Open ]] }, Open ]] }, Open ]] }, FrontEndVersion->"5.0 for Macintosh", ScreenRectangle->{{0, 1280}, {0, 960}}, WindowSize->{876, 647}, WindowMargins->{{18, Automatic}, {Automatic, 0}}, Magnification->1.5 ] (******************************************************************* 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[1776, 53, 80, 4, 105, "Subsubtitle"], Cell[CellGroupData[{ Cell[1881, 61, 183, 7, 138, "Section"], Cell[2067, 70, 140, 3, 73, "Text"], Cell[CellGroupData[{ Cell[2232, 77, 57, 0, 53, "Subsection"], Cell[2292, 79, 527, 14, 125, "Text"], Cell[2822, 95, 151, 2, 62, "Input"], Cell[2976, 99, 805, 23, 125, "Text"], Cell[3784, 124, 177, 3, 62, "Input"], Cell[3964, 129, 902, 27, 167, "Text"], Cell[4869, 158, 82, 1, 43, "Input"], Cell[4954, 161, 115, 2, 42, "Input"], Cell[5072, 165, 192, 5, 73, "Text"], Cell[5267, 172, 137, 2, 68, "Input"], Cell[5407, 176, 364, 8, 125, "Text"], Cell[5774, 186, 116, 2, 42, "Input"], Cell[5893, 190, 194, 3, 68, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[6124, 198, 31, 0, 56, "Subsection"], Cell[6158, 200, 155, 3, 73, "Text"], Cell[CellGroupData[{ Cell[6338, 207, 26, 0, 40, "Subsubsection"], Cell[6367, 209, 26, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6430, 214, 26, 0, 40, "Subsubsection"], Cell[6459, 216, 26, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6522, 221, 26, 0, 40, "Subsubsection"], Cell[6551, 223, 26, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6614, 228, 26, 0, 40, "Subsubsection"], Cell[6643, 230, 26, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6706, 235, 26, 0, 40, "Subsubsection"], Cell[6735, 237, 121, 6, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6893, 248, 26, 0, 40, "Subsubsection"], Cell[6922, 250, 27, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[6986, 255, 26, 0, 40, "Subsubsection"], Cell[7015, 257, 27, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[7079, 262, 26, 0, 40, "Subsubsection"], Cell[7108, 264, 27, 0, 47, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[7184, 270, 52, 0, 56, "Subsection"], Cell[7239, 272, 369, 8, 99, "Text"], Cell[7611, 282, 68, 1, 42, "Input"], Cell[7682, 285, 394, 8, 125, "Text"], Cell[8079, 295, 115, 2, 43, "Input"], Cell[8197, 299, 139, 3, 43, "Input"], Cell[8339, 304, 366, 7, 99, "Text"], Cell[8708, 313, 230, 6, 73, "Text"], Cell[8941, 321, 208, 3, 69, "Input"], Cell[9152, 326, 224, 4, 99, "Text"], Cell[9379, 332, 62, 1, 42, "Input"], Cell[9444, 335, 114, 5, 47, "Text"], Cell[9561, 342, 326, 5, 120, "Input"], Cell[9890, 349, 228, 4, 99, "Text"], Cell[10121, 355, 455, 10, 99, "Text"], Cell[10579, 367, 126, 2, 42, "Input"], Cell[10708, 371, 633, 16, 151, "Text"], Cell[11344, 389, 124, 2, 43, "Input"], Cell[11471, 393, 664, 17, 125, "Text"], Cell[12138, 412, 89, 1, 43, "Input"], Cell[12230, 415, 265, 9, 73, "Text"], Cell[12498, 426, 127, 2, 43, "Input"], Cell[12628, 430, 1096, 33, 125, "Text"], Cell[13727, 465, 128, 3, 43, "Input"], Cell[13858, 470, 166, 5, 47, "Text"], Cell[14027, 477, 128, 3, 43, "Input"], Cell[14158, 482, 238, 6, 73, "Text"], Cell[14399, 490, 128, 3, 43, "Input"], Cell[14530, 495, 152, 5, 47, "Text"], Cell[14685, 502, 115, 2, 43, "Input"], Cell[14803, 506, 173, 3, 73, "Text"], Cell[14979, 511, 994, 24, 32, "Input"], Cell[15976, 537, 163, 5, 47, "Text"], Cell[16142, 544, 133, 3, 43, "Input"], Cell[16278, 549, 320, 7, 99, "Text"], Cell[16601, 558, 136, 2, 68, "Input"], Cell[16740, 562, 135, 5, 47, "Text"], Cell[16878, 569, 115, 2, 43, "Input"], Cell[16996, 573, 277, 6, 73, "Text"], Cell[17276, 581, 131, 3, 43, "Input"], Cell[17410, 586, 271, 7, 99, "Text"], Cell[17684, 595, 115, 2, 42, "Input"], Cell[17802, 599, 672, 16, 177, "Text"], Cell[18477, 617, 69, 1, 42, "Input"], Cell[18549, 620, 392, 14, 73, "Text"], Cell[18944, 636, 139, 3, 43, "Input"], Cell[19086, 641, 139, 3, 43, "Input"], Cell[19228, 646, 145, 3, 43, "Input"], Cell[19376, 651, 221, 8, 73, "Text"], Cell[19600, 661, 148, 3, 43, "Input"], Cell[19751, 666, 124, 5, 47, "Text"], Cell[19878, 673, 170, 3, 69, "Input"], Cell[20051, 678, 552, 13, 151, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[20640, 696, 31, 0, 56, "Subsection"], Cell[20674, 698, 125, 3, 47, "Text"], Cell[CellGroupData[{ Cell[20824, 705, 26, 0, 40, "Subsubsection"], Cell[20853, 707, 28, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[20918, 712, 26, 0, 40, "Subsubsection"], Cell[20947, 714, 28, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[21012, 719, 26, 0, 40, "Subsubsection"], Cell[21041, 721, 28, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[21106, 726, 26, 0, 40, "Subsubsection"], Cell[21135, 728, 26, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[21198, 733, 26, 0, 40, "Subsubsection"], Cell[21227, 735, 28, 0, 47, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[21292, 740, 26, 0, 40, "Subsubsection"], Cell[21321, 742, 28, 0, 47, "Text"], Cell[21352, 744, 131, 3, 47, "Text"] }, Open ]] }, Open ]] }, Open ]] }, Open ]] } ] *) (******************************************************************* End of Mathematica Notebook file. *******************************************************************)