(*********************************************************************** 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[ 22250, 625]*) (*NotebookOutlinePosition[ 23232, 662]*) (* CellTagsIndexPosition[ 23141, 655]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["\<\ Games of Chance: Exploring the Monte Carlo Technique for Numerical Integration and Computing \ Probabilities with Improper Integrals\ \>", "Title"], Cell[TextData[StyleBox["Chapter 7, Sections 5 & 7", FontFamily->"Arial", FontSize->16, FontWeight->"Bold"]], "Text"], Cell[CellGroupData[{ Cell["Introduction", "Section"], Cell["\<\ OBJECTIVE: Learn the Monte Carlo method for approximating an integral that \ cannot be integrated symbolically, and see an application of improper \ integrals.\ \>", "Text"], Cell["\<\ How can you use a game of chance to evaluate an integral, and what do games \ of chance have to do with improper integrals? This module will give you \ insight into both of these issues. 1. You will generate random points within a fixed region and then estimate \ the area of the desired portion by considering the percentage of random \ points that fall within the boundaries of the desired portion. 2. You will consider a probability density function defined over an infinite \ interval and explore the computation of means, moments, and probabilities \ associated with the density function.\ \>", "Text"], Cell[CellGroupData[{ Cell["Technology Guidelines", "Subsection", CellDingbat->"\[LightBulb]"], Cell[TextData[{ StyleBox["NOTE: If you have just finished a module, restart ", CellFrame->True, Background->None], StyleBox["Mathematica", CellFrame->True, FontSlant->"Italic", Background->None], StyleBox[" before executing a new module.\nTO OPEN CELLS, put your cursor \ on the right cell bracket and double click.", CellFrame->True, Background->None], "\nTO STOP AN EXECUTION\n\tSelect the ", StyleBox["Kernel", FontSlant->"Italic"], " pull-down menu and click on ", StyleBox["Abort Evaluation.\n", FontSlant->"Italic"], "ORDER OF EXECUTION\n\tExecute cells in the order given. Do not skip any \ Input cells within a given notebook.\nSAVING NOTEBOOKS\n\tYou can save \ anytime to any directory you choose, and it is wise to save often.\n\t\ However, before you do your final save, delete all your output by selecting \ the \n\t ", StyleBox["Delete All Output", FontSlant->"Italic"], " selection under the ", StyleBox["Kernel", FontSlant->"Italic"], " pull-down menu.\nEXPERIENCING MAJOR PROBLEMS\n\tSave if appropriate, and \ then shut down ", StyleBox["Mathematica", FontSlant->"Italic"], " and start it up again." }], "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Part I: The Monte Carlo Method", "Section"], Cell[TextData[{ "Following is an example of a numerical integration technique called the \ Monte Carlo method. In this method, the area between a curve (with \ nonnegative y-values) and the x-axis is completely enclosed in a rectangle, \ and points are randomly selected within that rectangular region. Then the \ number of points that land under the curve is determined, and the area under \ the curve (down to the x-axis) is approximated as the percentage of generated \ points that lie under the curve times the area of the entire rectangle. The \ function we use here as an example cannot be integrated symbolically, so we \ are using ", StyleBox["Mathematica's", FontSlant->"Italic"], " numerical integrator to come up with an answer that we would expect to be \ very close to the actual one." }], "Text"], Cell["\<\ The following commands will make the dimensions of the box selected 4 by 1, \ giving an area of 4. First we will graph our function.\ \>", "Text"], Cell[BoxData[{ \(Off[General::spell]\ \), "\n", \(Off[General::spell1]\ \), "\n", \(Clear[x, y, f]\), "\n", \(f[x_] := \(1\/\@\(2 \[Pi]\)\) E\^\(\(- .5\) x\^2\)\), "\n", \(\(xmin = \(-2\);\)\), "\n", \(\(xmax = 2;\)\), "\n", \(\(ymin = 0;\)\), "\n", \(\(ymax = .5;\)\), "\n", \(\(pf = Plot[f[x], {x, xmin, xmax}, PlotRange -> {{xmin, xmax}, {ymin, ymax}}, AxesLabel -> {x, y}];\)\)}], "Input"], Cell[TextData[{ "In utilizing the ", StyleBox["Random ", FontWeight->"Bold"], "command in ", StyleBox["Mathematica", FontSlant->"Italic"], ", we specify the type of numbers we want and the interval over which we \ want those numbers randomly selected. Next we will generate 500 points and \ see how they fall." }], "Text"], Cell[BoxData[ ButtonBox[ ButtonBox[ RowBox[{ StyleBox["\[MathematicaIcon]", FontSize->14, FontWeight->"Bold", FontColor->RGBColor[0.792981, 0.777356, 0.144533], FontVariations->{"CompatibilityType"->0}], StyleBox[" ", FontSize->14, FontWeight->"Bold", FontSlant->"Italic"], StyleBox["About", FontSize->14, FontWeight->"Bold", FontColor->RGBColor[0.500008, 0, 0.500008]], StyleBox[" ", FontSize->14, FontWeight->"Bold", FontSlant->"Italic"], StyleBox["Mathematica", FontSize->14, FontWeight->"Bold", FontSlant->"Italic", FontColor->RGBColor[0.500008, 0, 0.500008]]}], ButtonStyle->"Paste"], ButtonData:>"h1", ButtonStyle->"Hyperlink"]], "Input", Evaluatable->False, CellTags->"hb1"], Cell[BoxData[{ \(\(numberofpoints = 500;\)\), "\n", \(\(areaofbox = \((xmax - xmin)\)\ \((ymax - ymin)\);\)\), "\n", \(\(count = 0;\)\), "\n", \(\(listout = {};\)\), "\n", \(\(listin = {};\)\), "\n", \(Do[{Clear[x, y], x = Random[Real, {xmin, xmax}], y = Random[Real, {ymin, ymax}], \n\t\ \ If[ y < f[x], {count = count + 1, AppendTo[listin, {x, y}]}, AppendTo[listout, {x, y}]]}, {numberofpoints}]\), "\n", \(\(pout = ListPlot[listout, DisplayFunction -> Identity, PlotStyle -> PointSize[ .01]];\)\), "\n", \(\(pin = ListPlot[listin, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity, PlotStyle -> PointSize[ .03]];\)\), "\n", \(\(Show[pin, pout, DisplayFunction -> $DisplayFunction, AxesLabel -> {"\", "\"}];\)\)}], "Input"], Cell["\<\ The red points are those that are under our curve. Do they look right?\ \>", "Text"], Cell[BoxData[{ \(\(Show[pin, pout, pf, DisplayFunction -> $DisplayFunction, AxesLabel -> {"\", "\"}];\)\), "\n", \(\(actual = NIntegrate[f[x], {x, xmin, xmax}];\)\), "\n", \(Print["\", actual]\), "\n", \(\(estimate = N[areaofbox\ \ count/numberofpoints];\)\), "\n", \(Print["\", estimate]\), "\n", \(\(error = estimate - actual;\)\), "\n", \(Print["\", error]\), "\n", \(\(percenterror = error/actual;\)\), "\n", \(Print["\", percenterror]\)}], "Input"], Cell["\<\ We have given the actual value as determined by the software and have \ computed the error. How does your error compare to those of your classmates? \ Each time you run this, you will get a different answer. It might be better \ or it might be worse. Does this method seem very accurate? In a later module \ on using Monte Carlo techniques for approximating volumes, we analyze the \ error involved in such an approximation . In the You Try It exercises below, \ see if your error gets smaller when you select more random points. You will \ also check out the technique for a function of your own choosing.\ \>", "Text"] }, Closed]], Cell[CellGroupData[{ Cell["You Try It: Part I", "Section"], Cell[CellGroupData[{ Cell["Generating 1000 Random Points", "Subsection"], Cell["\<\ Redo the Monte Carlo method above, but generate twice as many random points. \ Compare your error to the results above. Change the number in red.\ \>", "Text"], Cell[BoxData[{ RowBox[{ RowBox[{"numberofpoints", "=", StyleBox["500", FontColor->RGBColor[1, 0, 0]]}], ";", "\n", \(areaofbox = \((xmax - xmin)\)\ \((ymax - ymin)\)\), ";", "\n", \(count = 0\), ";", "\n", \(listout = {}\), ";", "\n", \(listin = {}\), ";", "\n", \(Do[{Clear[x, y], x = Random[Real, {xmin, xmax}], y = Random[Real, {ymin, ymax}], \n\t\ \ If[ y < f[x], {count = count + 1, AppendTo[listin, {x, y}]}, AppendTo[ listout, {x, y}]]}, {numberofpoints}]\)}], "\n", \(pout = ListPlot[listout, DisplayFunction -> Identity, PlotStyle -> PointSize[ .01]];\), "\n", \(pin = ListPlot[listin, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity, PlotStyle -> PointSize[ .03]];\), "\n", \(Show[pin, pout, pf, DisplayFunction -> $DisplayFunction, AxesLabel -> {"\", "\"}];\), "\n", \(actual = NIntegrate[f[x], {x, xmin, xmax}];\), "\n", \(Print["\", actual]\), "\n", \(estimate = N[areaofbox\ \ count/ numberofpoints];\), "\n", \(Print["\", estimate]\), "\n", \(error = estimate - actual;\), "\n", \(Print["\", error]\), "\n", \(percenterror = error/actual;\), "\n", \(Print["\", percenterror]\)}], "Input"], Cell["\<\ How does your percentage error compare to that when only 500 points were \ generated?\ \>", "Text"] }, Closed]], Cell[CellGroupData[{ Cell["Selecting a different function", "Subsection"], Cell[TextData[{ "When applying a function of your own to this procedure, be certain to \ determine carefully the size of the rectangular box in which you enclose your \ desired area (values of", Cell[BoxData[ \(TraditionalForm\`\(\(\ \)\(xmin, \ xmax, \ ymin, \ ymax\)\)\)]], "). In choosing a function, choose one that is not negative in the \ specified domain, and note that you are finding the area between the surface \ and the ", Cell[BoxData[ \(TraditionalForm\`\(\(x\)\(-\)\(y\)\(\ \)\)\)]], "plane. The only commands that you need to enter in the following template \ are the ones in red, your function and minimum and maximum values for your \ variables, except for leaving your ", StyleBox["ymin", FontSlant->"Italic"], " at 0. You should realize that the bigger your rectangular region, the \ more points you will need to generate (red value in the second cell) to get \ an answer that is reasonably accurate. Why?" }], "Text"], Cell[BoxData[{\(Clear[x, y, f]\), "\n", RowBox[{\(f[x_]\), ":=", StyleBox[\(1 - Sin[x\^2]\), FontColor->RGBColor[1, 0, 0]]}], "\n", RowBox[{ RowBox[{"xmin", "=", StyleBox[\(-3\), FontColor->RGBColor[1, 0, 0]]}], StyleBox[";", FontColor->RGBColor[1, 0, 0]], "\n", RowBox[{"xmax", "=", StyleBox["3", FontColor->RGBColor[1, 0, 0]]}], StyleBox[";", FontColor->RGBColor[1, 0, 0]], "\n", \(ymin = 0\), ";", "\n", RowBox[{"ymax", "=", StyleBox["2", FontColor->RGBColor[1, 0, 0]]}], StyleBox[";", FontColor->RGBColor[1, 0, 0]], "\n", \(pf = Plot[f[x], {x, xmin, xmax}, AxesLabel -> {x, y}]\), ";"}]}], "Input"], Cell[BoxData[{ RowBox[{ RowBox[{"numberofpoints", "=", StyleBox["500", FontColor->RGBColor[1, 0, 0]]}], ";", "\n", \(areaofbox = \((xmax - xmin)\)\ \((ymax - ymin)\)\), ";", "\n", \(count = 0\), ";", "\n", \(listout = {}\), ";", "\n", \(listin = {}\), ";", "\n", \(Do[{Clear[x, y], x = Random[Real, {xmin, xmax}], y = Random[Real, {ymin, ymax}], \n\t\ \ If[ y < f[x], {count = count + 1, AppendTo[listin, {x, y}]}, AppendTo[ listout, {x, y}]]}, {numberofpoints}]\)}], "\n", \(pout = ListPlot[listout, DisplayFunction -> Identity, PlotStyle -> PointSize[ .01]];\), "\n", \(pin = ListPlot[listin, PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity, PlotStyle -> PointSize[ .03]];\), "\n", \(Show[pin, pout, DisplayFunction -> $DisplayFunction, AxesLabel -> {"\", "\"}];\)}], "Input"], Cell[BoxData[{ \(\(Show[pin, pout, pf, DisplayFunction -> $DisplayFunction, AxesLabel -> {"\", "\"}];\)\), "\n", \(\(actual = NIntegrate[f[x], {x, xmin, xmax}];\)\), "\n", \(Print["\", actual]\), "\n", \(\(estimate = N[areaofbox\ \ count/numberofpoints];\)\), "\n", \(Print["\", estimate]\), "\n", \(\(error = estimate - actual;\)\), "\n", \(Print["\", error]\), "\n", \(\(percenterror = error/actual;\)\), "\n", \(Print["\", 100 percenterror, "\<%\>"]\)}], "Input"], Cell["\<\ How does your percentage error compare with the others you've done? If it is \ larger, is your rectangle larger? If it is smaller, is your rectangle \ smaller?\ \>", "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["\<\ Part II: Probability Density Functions and Improper Integrals\ \>", "Section"], Cell[CellGroupData[{ Cell["The Standard Normal Distribution", "Subsection"], Cell[TextData[{ "The function that we looked at above, ", Cell[BoxData[ \(TraditionalForm\`\(\(f(x)\)\(\ \)\(=\)\)\)]], Cell[BoxData[ \(TraditionalForm\`1\/\@\(2 \[Pi]\)\)]], " ", Cell[BoxData[ \(TraditionalForm\`e\^\(-\(x\^2\/2\)\)\)]], ", happens to represent the probability density function for the standard \ normal distribution, a distribution that is used extensively in \ experimentation and in probability and statistics. We will use our \ computational tool to find:\n\t\tthe total mass, which is the area under this \ curve from ", Cell[BoxData[ \(TraditionalForm\`\(-\[Infinity]\)\)]], " to ", Cell[BoxData[ \(TraditionalForm\`\(+\[Infinity]\)\)]], ",\n\t\tthe mean value of ", StyleBox["x", FontSlant->"Italic"], ", which is the first moment about 0,\n\t\tthe variance of ", StyleBox["x", FontSlant->"Italic"], ", which is the second moment about the mean, and\n\t\tthe standard \ deviation, which is the square root of the variance." }], "Text"], Cell[BoxData[{ \(Off[General::spell]\ \), "\n", \(Off[General::spell1]\ \), "\n", \(Clear[x, y, f]\), "\n", \(f[x_] := \(1\/\@\(2 \[Pi]\)\) E\^\(-\(x\^2\/2\)\)\), "\n", \(\(pf = Plot[f[x], {x, \(-3\), 3}, AxesLabel -> {x, y}];\)\), "\n", \(Print["\", Integrate[f[x], {x, \(-\[Infinity]\), \(+\[Infinity]\)}]]\), "\n", \(Print["\", Integrate[x\ f[x], {x, \(-\[Infinity]\), \(+\[Infinity]\)}]]\), "\n", \(Print["\", var = Integrate[\((x)\)\^2\ f[ x], {x, \(-\[Infinity]\), \(+\[Infinity]\)}]]\), "\n", \(Print["\", Sqrt[var]]\)}], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Computing Probabilities for the Normal Distribution", "Subsection"], Cell[TextData[{ "The bell-shaped curve above is used extensively in applied problems, \ including error analysis. To compute the probability that ", StyleBox["x ", FontSlant->"Italic"], "is greater than 0.5, we would find the area under the density function \ from 0.5 to \[Infinity]." }], "Text"], Cell[BoxData[ \(Print["\", prob1 = Integrate[f[x], {x, .5, \(+\[Infinity]\)}]]\)], "Input"], Cell[TextData[{ "Similarly, to find the probability that ", StyleBox["x ", FontSlant->"Italic"], " is less than ", Cell[BoxData[ \(TraditionalForm\`\(-0.67\)\)]], ", we find the area under the density function from ", Cell[BoxData[ \(TraditionalForm\`\(-\[Infinity]\)\)]], " to ", Cell[BoxData[ \(TraditionalForm\`\(-0.67\)\)]], " ." }], "Text"], Cell[BoxData[ \(Print["\", prob2 = Integrate[f[x], {x, \(-\[Infinity]\), \(- .67\)}]]\)], "Input"], Cell[TextData[{ "Therefore the ", Cell[BoxData[ \(TraditionalForm\`\(-0.67\)\)]], " value of x represents approximately the 25th percentile for this \ distribution. What does the term percentile mean to you? Does it correspond \ to this interpretation?" }], "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["You Try It: Part II", "Section"], Cell[TextData[{ "What if you wished to examine the length of time that people spend waiting \ in line at a drive-up fastfood restaurant. Frequently, the waiting times \ follow what is called an exponential distribution, whose density function is \ written as ", Cell[BoxData[ \(TraditionalForm\`\(\(f(t)\)\(=\)\)\)]], "\[Lambda] ", Cell[BoxData[ \(TraditionalForm\`e\^\(-\[Lambda]t\), \ for\ certain\ values\ of\ \[Lambda]\)]], ". You should note that this function will be defined only for values of ", StyleBox["t", FontSlant->"Italic"], " greater than 0, since it would make no sense to talk about waiting a \ negative amount of time. Assume that time is measured in minutes." }], "Text"], Cell[BoxData[{\(Clear[t, \[Lambda], f]\), "\n", StyleBox[\(\[Lambda]\ = .25\), FontColor->RGBColor[1, 0, 0]], "\n", \(f[ t_] := \[Lambda]\ E\^\(\(-\[Lambda]\)\ t\)\), "\n", \(pf = Plot[f[x], {x, 0, 10}, {AxesLabel -> {time, probability}, AxesOrigin -> {0, 0}}, PlotRange -> {{0, 10}, {0, f[0]}}];\), "\n", \(Print["\", Integrate[ f[x], {x, 0, \(+\[Infinity]\)}]]\), "\n", \(Print["\", mean = Integrate[ x\ f[x], {x, 0, \(+\[Infinity]\)}], "\< minutes.\>"]\), "\n", \ \(Print["\", var = Integrate[\((x - mean)\)\^2\ f[x], {x, 0, \(+\[Infinity]\)}]]\), "\n", \(Print["\", Sqrt[var], "\< minutes\>"]\)}], "Input"], Cell["\<\ Consider the shape of the exponential distribution. Observe that the \ horizontal axis represents waiting times, while the vertical axis represents \ the relative frequency of those waiting times. This distribution applies to \ many waiting time scenarios for which most people wait a shorter period of \ time and only a few wait a longer period of time.\ \>", "Text"], Cell["\<\ Compute the probability of waiting more than 6 minutes. Compute the probability of waiting less than 3 minutes. Change the numbers in red to the appropriate values to answer each of the \ questions posed.\ \>", "Text"], Cell[BoxData[ RowBox[{"Integrate", "[", RowBox[{\(f[x]\), ",", RowBox[{"{", RowBox[{"x", ",", StyleBox["1", FontColor->RGBColor[1, 0, 0]], ",", StyleBox["5", FontColor->RGBColor[1, 0, 0]]}], "}"}]}], "]"}]], "Input"], Cell["\<\ Now go back to the set of commands and change the value of \[Lambda] (lambda) \ (in red). See what happens to the mean and standard deviation. What does the \ value of lambda mean in the context of the problem?\ \>", "Text"] }, Closed]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["\[MathematicaIcon]", FontWeight->"Bold", FontColor->RGBColor[0.792981, 0.777356, 0.144533], FontVariations->{"CompatibilityType"->0}], StyleBox[" ", FontWeight->"Bold", FontSlant->"Italic"], StyleBox["About", FontWeight->"Bold", FontColor->RGBColor[0.500008, 0, 0.500008]], StyleBox[" ", FontWeight->"Bold", FontSlant->"Italic"], StyleBox["Mathematica", FontWeight->"Bold", FontSlant->"Italic", FontColor->RGBColor[0.500008, 0, 0.500008]] }], "Section", CellDingbat->None], Cell[TextData[{ "In ", StyleBox["Mathematica", FontSlant->"Italic"], ", plots can be suppressed when first defined and then shown later with the \ ", StyleBox["Show", FontWeight->"Bold"], " command. To do this, call on the option ", StyleBox["DisplayFunction\[Rule]Identity ", FontWeight->"Bold"], "within the command that defines the plot, and then call on the option ", StyleBox["DisplayFunction\[Rule]$DisplayFunction", FontWeight->"Bold"], " when you are ready to ", StyleBox["Show", FontWeight->"Bold"], " the plot. \n", Cell[BoxData[ FormBox[ ButtonBox[\(Go\ \(\(back\)\(.\)\)\), ButtonData:>"hb1", ButtonStyle->"Hyperlink"], TraditionalForm]]] }], "Text", CellTags->"h1"] }, Closed]] }, Open ]] }, FrontEndVersion->"4.0 for Microsoft Windows", ScreenRectangle->{{0, 1024}, {0, 695}}, WindowSize->{537, 364}, WindowMargins->{{87, Automatic}, {Automatic, 132}}, PrintingCopies->1, PrintingPageRange->{Automatic, Automatic}, StyleDefinitions -> "Default.nb" ] (*********************************************************************** 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->{ "hb1"->{ Cell[6093, 177, 981, 30, 41, "Input", Evaluatable->False, CellTags->"hb1"]}, "h1"->{ Cell[21464, 597, 758, 24, 110, "Text", CellTags->"h1"]} } *) (*CellTagsIndex CellTagsIndex->{ {"hb1", 22946, 644}, {"h1", 23049, 648} } *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[1739, 51, 157, 4, 330, "Title"], Cell[1899, 57, 122, 3, 37, "Text"], Cell[CellGroupData[{ Cell[2046, 64, 31, 0, 53, "Section"], Cell[2080, 66, 183, 4, 52, "Text"], Cell[2266, 72, 620, 10, 147, "Text"], Cell[CellGroupData[{ Cell[2911, 86, 74, 1, 47, "Subsection"], Cell[2988, 89, 1206, 33, 242, "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[4243, 128, 49, 0, 33, "Section"], Cell[4295, 130, 820, 14, 166, "Text"], Cell[5118, 146, 156, 3, 52, "Text"], Cell[5277, 151, 470, 12, 232, "Input"], Cell[5750, 165, 340, 10, 71, "Text"], Cell[6093, 177, 981, 30, 41, "Input", Evaluatable->False, CellTags->"hb1"], Cell[7077, 209, 878, 18, 310, "Input"], Cell[7958, 229, 94, 2, 33, "Text"], Cell[8055, 233, 573, 10, 210, "Input"], Cell[8631, 245, 631, 9, 147, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[9299, 259, 37, 0, 33, "Section"], Cell[CellGroupData[{ Cell[9361, 263, 51, 0, 47, "Subsection"], Cell[9415, 265, 169, 3, 52, "Text"], Cell[9587, 270, 1436, 28, 470, "Input"], Cell[11026, 300, 109, 3, 33, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[11172, 308, 52, 0, 47, "Subsection"], Cell[11227, 310, 968, 19, 166, "Text"], Cell[12198, 331, 763, 21, 151, "Input"], Cell[12964, 354, 974, 19, 310, "Input"], Cell[13941, 375, 587, 10, 210, "Input"], Cell[14531, 387, 183, 4, 52, "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[14763, 397, 88, 2, 33, "Section"], Cell[CellGroupData[{ Cell[14876, 403, 54, 0, 47, "Subsection"], Cell[14933, 405, 1026, 27, 166, "Text"], Cell[15962, 434, 681, 13, 218, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[16680, 452, 73, 0, 47, "Subsection"], Cell[16756, 454, 307, 7, 71, "Text"], Cell[17066, 463, 148, 2, 50, "Input"], Cell[17217, 467, 385, 14, 52, "Text"], Cell[17605, 483, 153, 2, 50, "Input"], Cell[17761, 487, 277, 7, 52, "Text"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[18087, 500, 38, 0, 33, "Section"], Cell[18128, 502, 728, 16, 109, "Text"], Cell[18859, 520, 852, 18, 272, "Input"], Cell[19714, 540, 378, 6, 90, "Text"], Cell[20095, 548, 230, 7, 109, "Text"], Cell[20328, 557, 301, 8, 30, "Input"], Cell[20632, 567, 234, 4, 71, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[20903, 576, 558, 19, 33, "Section"], Cell[21464, 597, 758, 24, 110, "Text", CellTags->"h1"] }, Closed]] }, Open ]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)