(************** Content-type: application/mathematica ************** CreatedBy='Mathematica 4.2' 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[ 21334, 605]*) (*NotebookOutlinePosition[ 22023, 629]*) (* CellTagsIndexPosition[ 21979, 625]*) (*WindowFrame->Normal*) Notebook[{ Cell[BoxData[ \(\(\( (*\ \(:\)\(Title : Arrow\ 3 D\)*) \)\( (*\ \(:\)\(Context : Graphics`Arrow3D`\)*) \)\( (*\ \(:\)\(Author : John\ M . Novak\)*) \)\( (*\ \(:\)\(Summary : crude\ 3 D\ arrow\ primitive\)*) \)\( (*\ \(\(:\)\(Copyright : Copyright\ 1996\ Wolfram\ Research\)\), \(\(Inc\)\(.\)\)*) \)\( (*\ \ \(:\)\(Package\ \(Version : 1.0\)\)*) \)\( (*\ \(:\)\(Mathematica\ \(Version : 3.0\)\)*) \)\( (*\ \(:\)\(History : V1 \( .0--\)\ March\ 1996\ by\ John\ M . Novak\)*) \)\( (*\ \(\(:\)\(Keywords : arrow\)\), Graphics3D*) \)\( (*\ \(\(:\)\(Sources : Tom\ Wickham - Jones\)\), "\"*) \)\( (*\ \ \(\(:\)\(Discussion : This\ is\ a\ package\ to\ add\ crude\ 3 D\ arrows\ by\ using\ 3 D\ graphics\ primitives . The\ main\ problem\ with\ this\ approach\ is\ that\ arrows\ \ don' t\ have\ an\ optimal\ appearance\)\), and\ distinction\ between\ \((e . g . )\)\ arrows\ point\ toward\ vs . away\ from\ the\ user\ is\ difficult\ to\ make . On\ the\ other\ hand, it\ is\ readily\ implementable, which\ is\ far\ superior\ to\ any\ other\ approach\ available\ at\ this\ \ time . \((The\ PostScript\ used\ in\ 2 D\ arrows\ won' t\ layer\ correctly\ in\ 3 D, nor\ would\ 2 D\ primitives; placing\ 3 D\ planar\ primitives\ with\ the\ correct\ orientation\ has\ \ problems\ with\ perspective\ transforms\ as\ well\ as\ design\ problems\ with\ \ things\ like\ arrows\ with\ a\ small\ angle\ w . r . t . the\ \(\(user\)\(.\)\))\)\ Because\ of\ the\ essentially\ \ different\ approach\ from\ 2 D\ arrows, the\ package\ is\ being\ made\ independent\ of\ the\ 2 D\ package\ for\ the\ time\ \(\(being\)\(.\)\)*) \ \)\(BeginPackage["\"]\n\[IndentingNewLine] \(Arrow3D::usage = "\";\)\[IndentingNewLine]\n Begin["\<`Private`\>"]\[IndentingNewLine]\[IndentingNewLine] (*The\ \ following\ routine\ is\ based\ on\ OrthogonalVectors\ from\ Tom\ Wickham - Jones'\ Mathematica\ Graphics\ \ \(\(book\)\(.\)\)*) \[IndentingNewLine]\n anOrthogonalVector[norm : {_, _, _}] := Block[{pos, a, b, v1}, pos = If[VectorQ[norm, NumberQ], Abs[N[norm]], norm]; \[IndentingNewLine]pos = Sort[Transpose[{pos, Range[3]}]]; \[IndentingNewLine]{pos, a, b} = Map[Last, pos]; \[IndentingNewLine]v1 = ReplacePart[{0, 0, 0}, \(-Part[norm, a]\), b]; \[IndentingNewLine]ReplacePart[v1, Part[norm, b], a]]\[IndentingNewLine]\n normalize[vec_] := vec/Sqrt[vec . vec]\[IndentingNewLine]\[IndentingNewLine] (*The\ following\ \ routine' rotationmatrix'\ was\ borrowed\ from\ the\ standard\ package\ \ \(\(Graphics`SurfaceOfRevolution`\)\(.\)\)*) \[IndentingNewLine]\n rotationmatrix[axis_, theta_] := Module[{n1, n2, n3}, {n1, n2, n3} = normalize[axis] // N; \[IndentingNewLine]{{n1^2 + \((1 - n1^2)\)\ Cos[theta], n1\ n2\ \((1 - Cos[theta])\) + n3\ Sin[theta], n1\ n3\ \((1 - Cos[theta])\) - n2\ Sin[theta]}, {n1\ n2\ \((1 - Cos[theta])\) - n3\ Sin[theta], n2^2 + \((1 - n2^2)\)\ Cos[theta], n2\ n3\ \((1 - Cos[theta])\) + n1\ Sin[theta]}, {n1\ n3\ \((1 - Cos[theta])\) + n2\ Sin[theta], n2\ n3\ \((1 - Cos[theta])\) - n1\ Sin[theta], n3^2 + \((1 - n3^2)\)\ Cos[theta]}} // N]\[IndentingNewLine]\n Arrow3D[base : {_, _, _}, tip : {_, _, _}, polys_: 10, len_: 0.8] := {Line[{base, tip}], mycone[tip - base, base, tip, polys, len]}\[IndentingNewLine]\n Arrow3D[base : {_, _, _}, tip : {_, _, _}, ___] := Point[base] /; base \[Equal] tip\[IndentingNewLine]\n mycone[vec_, base_, tip_, polys_, len_] := Block[{norm = anOrthogonalVector[vec], theta}, Map[Polygon[Append[#, tip]] &, Partition[ Table[base + len\ vec + \((1 - len)\)/2\ norm . rotationmatrix[vec, theta], {theta, 0, 2\ Pi, 2\ Pi/polys}] // N, 2, 1]]]\[IndentingNewLine]\n End[]\[IndentingNewLine]\n EndPackage[]\n\[IndentingNewLine]\n \("\";\)\n \("\";\)\n \("\";\)\n \("\";\)\[IndentingNewLine] \)\)\)], "Input", Editable->True, CellOpen->False, InitializationCell->True], Cell[TextData[{ Cell[BoxData[{ StyleBox[\(MATH\ 257\ Calculus\ III\t\t\t\tWeek\ of\ May\ 26, \ 2003\), FontSize->14], "\n", StyleBox[\(Lab\ 9 : \ Wector\ Functions\), "Title"], "\n", StyleBox[\(Name\ 1\), "Section"], "\n", StyleBox[\(Name\ 2\), "Section"], "\n", StyleBox[\(\(Section\)\(:\)\), "Section"]}], "Input"], "\n" }], "Text", FontColor->GrayLevel[1], Background->RGBColor[0, 0, 1]], Cell[TextData[{ StyleBox["Before you begin", FontWeight->"Bold"], " execute the following command. Click ", StyleBox["YES", FontWeight->"Bold"], " when asked to execute any initialization cells:" }], "Text", FontFamily->"Helvetica", FontSize->14], Cell[BoxData[ \(<< Graphics`Arrow`\)], "Input"], Cell[TextData[{ StyleBox["Be sure to read everything and ", FontFamily->"Helvetica"], StyleBox["execute", FontFamily->"Helvetica", FontWeight->"Bold"], StyleBox[" all the commands as you go along.", FontFamily->"Helvetica"] }], "Text", FontSize->14], Cell[CellGroupData[{ Cell[TextData[StyleBox[" Graphing Space Curves", FontWeight->"Bold", FontColor->RGBColor[0, 0, 1]]], "Subtitle"], Cell[TextData[{ "If you're given a vector function or a parameterized set of 3D equations, \ use the ", StyleBox["ParametricPlot3D[]", "Input"], " command to graph them.\n\nFor example, here's the graph of the \"twisted \ cubic\":" }], "Text", FontSize->14], Cell[BoxData[ \(\(\(\[IndentingNewLine]\)\(cubic = ParametricPlot3D[{t, t^2, t^3}, \ {t, \(-2\), 2}, \ AspectRatio \[Rule] 1]\)\)\)], "Input"], Cell[TextData[{ "\n", StyleBox["Question 1:", FontWeight->"Bold"], " Graph the space curve for the vector function r(t)= < t*cos(t), t*sin(t), \ t>. Make sure you take a big range of t, like at least -10 \[LessEqual] t \ \[LessEqual] 10. If it doesn't look right, try using the ", StyleBox["PlotPoints", "Input"], " option in the plot." }], "Text", FontSize->14, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ \(\[IndentingNewLine]\)], "Input"], Cell[TextData[{ "How do we plot vectors along with our space curves? Vectors need the", StyleBox[" Arrow3D[]", "Input"], " command, and these have to be inside a ", StyleBox["Graphics3D[] ", "Input"], "command. But the plot of the space curve has to be in a ", StyleBox["ParametricPlot3D[]", "Input"], " command! You can put these things together with the ", StyleBox["Show[]", "Input"], " command. Here's an example for the vector function ." }], "Text", FontSize->14], Cell[BoxData[ \(Show[\[IndentingNewLine]ParametricPlot3D[{Sin[t], \ 3, \ Cos[t], \ Thickness[ .01]}, \ {t, 0, \ 2 \[Pi]}, \ \[IndentingNewLine]PlotRange \[Rule] {{\(-1.5\), 1.5}, \ {0, 3}, \ {\(-1.5\), 1.5}}], \[IndentingNewLine]Graphics3D[ Table[Arrow3D[{0, 0, 0}, \ {Sin[t], \ 3, \ Cos[t]}], {t, .2, 2 \[Pi], 1}]]\[IndentingNewLine]]\)], "Input"], Cell[TextData[{ "\n", StyleBox["Question 2:", FontWeight->"Bold"], " Draw the space curve for the vector function r(t)= together with some of its vectors in the same graph. You don't have \ to draw tons of vectors. Just do a sample, like make ", StyleBox["t", "Input"], " go from 1.5 to 2.5 with step size of .1. (I recommend using ", StyleBox["ViewPoint->{3,2,1}", "Input"], ")" }], "Text", FontSize->14, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ \(\[IndentingNewLine]\)], "Input"], Cell[TextData[{ "For what follows, it would be very useful to help ", StyleBox["Mathematica", FontSlant->"Italic"], " out a bit. See, ", StyleBox["Mathematica", FontSlant->"Italic"], " does not have a built-in function that gives you the ", StyleBox["magnitude", FontWeight->"Bold"], " of a vector. So let's make one ourselves! The following should do the \ trick:" }], "Text", FontSize->14], Cell[BoxData[ \(\(\(\[IndentingNewLine]\)\(mag[ v_] := \@\(v[\([1]\)]^2\ + \ v[\([2]\)]^2\ + \ \ v[\([3]\)]^2\)\)\)\)], "Input"], Cell[TextData[{ "The brackets tell ", StyleBox["Mathematica", FontSlant->"Italic"], " to look at that part of the list ", StyleBox["v", "Input"], ". This will work just fine. Try it:" }], "Text", FontSize->14], Cell[BoxData[ \(mag[{1, 1, 1}]\)], "Input"], Cell[TextData[{ "Now, the next question asks you to draw some ", StyleBox["tangent vectors", FontWeight->"Bold"], " of a space curve. Make you know know the difference between the space \ curve vectors and the tangent vectors, since they are drawn differently. \n\n\ To draw a ", StyleBox["space curve vector", FontWeight->"Bold"], ", all we had to do was make an arrow from the origin to a point on the \ curve:\n\t", StyleBox["Arrow3D[{0,0,0}, {", "Input"], StyleBox["point on the curve", FontColor->RGBColor[0, 0, 1]], StyleBox["}]", "Input"], "\nBut to draw a ", StyleBox["tangent vector", FontWeight->"Bold"], " on a space curve, the tail of the vector needs to be on the curve and the \ head has to be pointing in the direction of the derivative, right? So we'd \ need something like:\n\t", StyleBox["Arrow3D[{", "Input"], StyleBox["point on the curve", FontColor->RGBColor[0, 0, 1]], StyleBox["}, {", "Input"], StyleBox["point on the curve", FontColor->RGBColor[0, 0, 1]], StyleBox["} + {", "Input"], StyleBox["tangent (derivative) vector", FontColor->RGBColor[0, 0, 1]], StyleBox["}]", "Input"] }], "Text", FontSize->14], Cell[TextData[{ StyleBox["Question 3a: ", FontWeight->"Bold"], "Now, you know how to take derivatives, and you know how to draw 3D \ vectors. So make a graph of the vector function r(t)= (just like the previous problem), but ", StyleBox["this time", FontWeight->"Bold"], " draw with it some of the ", StyleBox["tangent", FontWeight->"Bold"], " vectors along the curve. These tangent vectors should be drawn properly \ on the curve to look, well, like tangent vectors. " }], "Text", FontSize->14, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ \(\[IndentingNewLine]\)], "Input"], Cell[TextData[{ "Here's a ", StyleBox["definition", FontWeight->"Bold"], ": we let a ", StyleBox["unit tangent vector", FontWeight->"Bold"], " be a tangent vector that is of unit length. In other words, if r(t) is \ our vector function, then the unit tangent vector function is just:\n\t\t\t", StyleBox["T(t) = r'(t)/|r'(t)|", "Input"], ".\nBut remember, ", StyleBox["Mathematica", FontSlant->"Italic"], " doesn't have let you use", StyleBox[" ", FontSize->16], StyleBox["|r(t)|", FontSize->16, FontWeight->"Bold"], StyleBox[" ", FontSize->16], "to compute the magniture of ", StyleBox["r(t)", FontWeight->"Bold"], ". So you'll have to use the ", StyleBox["mag[]", "Input"], " command defined above: ", StyleBox["T(t) = r'(t)/mag[r'(t)]", "Input"], ".\n" }], "Text", FontSize->14], Cell[TextData[{ StyleBox["Question 3b: ", FontWeight->"Bold"], "Do the same thing as in question 3a, only this time use ", StyleBox["unit tangent vectors", FontWeight->"Bold"], " in your graph. (This should make the picture look a lot more tame.)" }], "Text", FontSize->14, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ \(\[IndentingNewLine]\)], "Input"] }, Open ]], Cell[CellGroupData[{ Cell[TextData[StyleBox["Parameterizing Surface Intersections", FontWeight->"Bold", FontColor->RGBColor[0, 0, 1]]], "Subtitle"], Cell[TextData[{ "(Make sure you ", StyleBox["read through", FontWeight->"Bold"], " this part and execute all the command. It'll make the last question much \ easier.)\n", "\nLastly, let's do some problems that we'd NEVER want to do by hand. \ Consider the surface equations\n\t\t\t", Cell[BoxData[ FormBox[ StyleBox[\(z = 4 - x\^2 - y\^2\), FontSize->16], TraditionalForm]]], " and ", Cell[BoxData[ FormBox[ StyleBox[\(z = 2 - x\/5 + y\/2\), FontSize->16], TraditionalForm]]], "\nLet's plot these surfaces together:" }], "Text", FontSize->14], Cell[BoxData[ \(\(\(\(f[x_, y_] := 4 - x^2 - y^2;\)\n \(g[x_, y_] := 2 - x/5 + y/2;\)\n \(surf1 = Plot3D[f[x, y], \ {x, \ \(-2\), 2}, \ {y, \(-2\), 2}, \ PlotRange \[Rule] {0, 4}, \ DisplayFunction \[Rule] Identity];\)\ (*\ That\ last\ command\ just\ suppresses\ drawing\ the\ graph\ \ *) \[IndentingNewLine] \(surf2 = Plot3D[g[x, y], \ {x, \(-2\), 2}, \ {y, \(-2\), 2}, \ PlotRange \[Rule] {0, 4}, \ \ \ DisplayFunction \[Rule] Identity];\)\n Show[surf1, surf2, \ \ ViewPoint \[Rule] {3, 1, 1.5}, \ \ BoxRatios \[Rule] Automatic, \ DisplayFunction \[Rule] $DisplayFunction]\)\(\ \)\( (*\ That\ last\ command\ turns\ "\"\ back\ on\ *) \ \)\)\)], "Input"], Cell[TextData[{ StyleBox["Our Goal", FontWeight->"Bold"], " is to find a parameterization for the intersection curve between these \ surfaces. As you'll soon see, doing this is YUCKY, but ", StyleBox["Mathematica", FontSlant->"Italic"], " doesn't care!\n\nLet's first try something that", StyleBox[" doesn't work", FontWeight->"Bold"], " very well. Clearly we should just set f[x,y]=g[x,y] and solve, right? \ Try it:" }], "Text", FontSize->14], Cell[BoxData[ \(Solve[f[x, y] \[Equal] g[x, y]]\)], "Input"], Cell["\<\ I don't like the look of those radicals. If they're negative, we \ won't get a real solution. Soooo...\ \>", "Text", FontSize->14], Cell[BoxData[ \(Solve[201 - 50\ y - 100\ y\^2 == 0] // N\)], "Input"], Cell[TextData[{ "Ah! So we should try graphing this for -1.68962 \[LessEqual] y \ \[LessEqual] 1.18962. We're ready to go! If we just let y be the parameter, \ then we should use x = ", Cell[BoxData[ \(\(1\/10\) \((1 - \@\(201 - 50\ y - 100\ y\^2\))\)\)]], " and can use z=g[x,y] for the z coordinate. Here we go..." }], "Text", FontSize->14], Cell[BoxData[ \(ParametricPlot3D[{1\/10\ \((1 - \@\(201 - 50\ y - 100\ y\^2\))\), \ y, \ g[1\/10\ \((1 - \@\(201 - 50\ y - 100\ y\^2\))\), \ y]}, \ {y, \(-1.689\), 1.189}]\)], "Input"], Cell[TextData[{ "Hey! This only gave us part of the intersection curve! No fair! We \ could fix this by also parameterizing the other solution for x that we got, \ but dealing with more than one parameterization is getting too yucky!\n\nA \ better way to approach this is to use ", StyleBox["cylindrical coordinates", FontWeight->"Bold"], "! (Betcha didn't think we'd ever use those again, eh?) That is, set\n\t\t\ \tx = r*cos(t)\ty = r*sin(t) \tand\tz = z\nHow do we use this? Well, we \ still need to set f[x,y]=g[x,y] and solve, but let's put our cylindrical \ coordinates in as well and solve for r:" }], "Text", FontSize->14], Cell[BoxData[ \(Solve[\ \ f[r\ Cos[\[Theta]], \ r\ Sin[\[Theta]]] \[Equal] g[r\ Cos[\[Theta]], r\ Sin[\[Theta]]], \ r\ \ ]\)], "Input"], Cell["\<\ Huh! Let's take the first one and let it be r[\[Theta]]:\ \>", \ "Text", FontSize->14], Cell[BoxData[ \(\(\(\[IndentingNewLine]\)\(r[\[Theta]_] := \(2\ Cos[\[Theta]] - 5\ Sin[\ \[Theta]] - \@\(804\ Cos[\[Theta]]\^2 - 20\ Cos[\[Theta]]\ Sin[\[Theta]] + \ 825\ Sin[\[Theta]]\^2\)\)\/\(2\ \((10\ Cos[\[Theta]]\^2 + 10\ \ Sin[\[Theta]]\^2)\)\)\)\)\)], "Input"], Cell["\<\ Now we're ready to go! This time we'll let \[Theta] be our \ parameter, and let \tx = r[\[Theta]]Cos[\[Theta]],\t y = r[\[Theta]]Sin[\[Theta]], and \ z = g[x,y] = g[r[\[Theta]]Cos[\[Theta]], r[\[Theta]]Sin[\[Theta]]] Let's go:\ \>", "Text", FontSize->14], Cell[BoxData[ \(\(\(intcurve1 = ParametricPlot3D[\[IndentingNewLine]{r[\[Theta]]\ Cos[\[Theta]], \ r[\[Theta]]\ Sin[\[Theta]], \ g[r[\[Theta]]\ Cos[\[Theta]], \ r[\[Theta]]\ Sin[\[Theta]]], \ Thickness[ .02]}, \[IndentingNewLine]{\[Theta], \ 0, \ 2 \[Pi]}, \ ViewPoint \[Rule] {3, 1, 1.5}, \ PlotRange \[Rule] {0, 4}]\)\(\[IndentingNewLine]\) \)\)], "Input"], Cell["\<\ That's the ticket! Of course, we're not done until we test it by \ graphing it with the surfaces:\ \>", "Text", FontSize->14], Cell[BoxData[ \(\(\(Show[surf1, \ surf2, \ intcurve1, \ \ ViewPoint \[Rule] {3, 1, 1.5}, \ BoxRatios \[Rule] Automatic, \ DisplayFunction -> $DisplayFunction]\)\(\ \)\(\[IndentingNewLine]\) \)\)], "Input"], Cell["Oh yeah! (said in a very deep, deep voice)", "Text", FontSize->14], Cell[TextData[{ StyleBox["Question 4:", FontWeight->"Bold"], " Follow the above procedure to find and plot a parameterization of the \ intersection of the surfaces\n\t\t\t", Cell[BoxData[ \(TraditionalForm\`z = 4 - x\^2 - y\^2\)]], " \tand ", Cell[BoxData[ \(TraditionalForm\`\(\(\t\)\(z = x\^2 + 2 y\^2 - x\ y\)\)\)]], "\nMake sure you plot your curve by itself AND with the two curves, so you \ can see if you did it correctly or not. (", StyleBox["Tip:", FontWeight->"Bold"], " it's a good idea to clear all your variables first, like below)" }], "Text", FontSize->14, FontColor->RGBColor[1, 0, 0]], Cell[BoxData[ \(\(\(Clear[f, g, surf1, surf2, incurve1, r, x, y, \[Theta]]\)\(\[IndentingNewLine]\) \)\)], "Input"], Cell[TextData[{ StyleBox["Now that you're done, ", FontSize->18], "\n\t(1) \t", StyleBox["Clean up your work", FontWeight->"Bold"], " by deleting everything that's not needed. \n\t\tThere should only be the \ title, your names, section number, and the questions and your answers\n\t\t\ (with any needed explanations, graphs, etc.).\n\t(2) \tSave this to your \ disk.\n\t(3)\tGo back to Blackboard and upload your final lab report to the \ ", StyleBox["Digital Drop Box", FontWeight->"Bold"], ", located\n\t\tin the ", StyleBox["User Tools", FontWeight->"Bold"], " area. Remember that you have to first ", StyleBox["ADD", FontWeight->"Bold"], " your file to your digital drop box and \n\t\tthen ", StyleBox["SEND it to me!", FontWeight->"Bold"] }], "Text", CellFrame->{{0, 0}, {0, 2}}, FontSize->12] }, Open ]] }, FrontEndVersion->"4.2 for Macintosh", ScreenRectangle->{{0, 750}, {0, 578}}, AutoGeneratedPackage->None, WindowToolbars->"EditBar", WindowSize->{671, 545}, WindowMargins->{{1, Automatic}, {Automatic, 0}} ] (******************************************************************* 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[1754, 51, 5120, 96, 19, "Input", CellOpen->False, InitializationCell->True], Cell[6877, 149, 472, 15, 154, "Text"], Cell[7352, 166, 267, 9, 54, "Text"], Cell[7622, 177, 51, 1, 27, "Input"], Cell[7676, 180, 273, 9, 34, "Text"], Cell[CellGroupData[{ Cell[7974, 193, 116, 2, 66, "Subtitle"], Cell[8093, 197, 265, 7, 94, "Text"], Cell[8361, 206, 162, 3, 43, "Input"], Cell[8526, 211, 412, 11, 74, "Text"], Cell[8941, 224, 52, 1, 43, "Input"], Cell[8996, 227, 512, 11, 94, "Text"], Cell[9511, 240, 428, 7, 91, "Input"], Cell[9942, 249, 488, 13, 94, "Text"], Cell[10433, 264, 52, 1, 43, "Input"], Cell[10488, 267, 422, 13, 74, "Text"], Cell[10913, 282, 142, 3, 47, "Input"], Cell[11058, 287, 227, 8, 34, "Text"], Cell[11288, 297, 47, 1, 27, "Input"], Cell[11338, 300, 1197, 32, 174, "Text"], Cell[12538, 334, 584, 15, 94, "Text"], Cell[13125, 351, 52, 1, 43, "Input"], Cell[13180, 354, 856, 30, 135, "Text"], Cell[14039, 386, 324, 9, 54, "Text"], Cell[14366, 397, 52, 1, 43, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[14455, 403, 130, 2, 66, "Subtitle"], Cell[14588, 407, 618, 19, 116, "Text"], Cell[15209, 428, 789, 17, 171, "Input"], Cell[16001, 447, 472, 13, 114, "Text"], Cell[16476, 462, 64, 1, 27, "Input"], Cell[16543, 465, 144, 4, 34, "Text"], Cell[16690, 471, 73, 1, 31, "Input"], Cell[16766, 474, 360, 8, 77, "Text"], Cell[17129, 484, 208, 3, 76, "Input"], Cell[17340, 489, 649, 12, 174, "Text"], Cell[17992, 503, 148, 2, 27, "Input"], Cell[18143, 507, 99, 4, 34, "Text"], Cell[18245, 513, 272, 4, 69, "Input"], Cell[18520, 519, 279, 7, 74, "Text"], Cell[18802, 528, 425, 8, 75, "Input"], Cell[19230, 538, 138, 4, 34, "Text"], Cell[19371, 544, 234, 5, 59, "Input"], Cell[19608, 551, 74, 1, 34, "Text"], Cell[19685, 554, 647, 17, 94, "Text"], Cell[20335, 573, 130, 3, 43, "Input"], Cell[20468, 578, 850, 24, 174, "Text"] }, Open ]] } ] *) (******************************************************************* End of Mathematica Notebook file. *******************************************************************)