(*********************************************************************** Mathematica-Compatible Notebook This notebook can be used on any computer system with Mathematica 3.0, MathReader 3.0, or any compatible application. The data for the notebook starts with the line of 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[ 13135, 462]*) (*NotebookOutlinePosition[ 25991, 933]*) (* CellTagsIndexPosition[ 25947, 929]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell[TextData[StyleBox["Reading and Writing Files", FontSlant->"Italic"]], "Title", Evaluatable->False, AspectRatioFixed->True], Cell[CellGroupData[{ Cell["sample files to be used", "Subsubsection"], Cell[TextData[{ "To create a set of 5 files used below to illustrate the use of the \ \"read\" commands, execute the Unix command (on newton clients) ", StyleBox["/scratch/bin/mkdatafiles", FontFamily->"Courier", FontWeight->"Bold"], ". This will create five plain text files in your computer's ", StyleBox["/tmp", FontFamily->"Courier"], " directory; ", StyleBox["/tmp/sample*.dat", FontFamily->"Courier"] }], "Text"], Cell[BoxData[ \(\(Run["\"]; \)\)], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["\<\ Data files: ReadList\ \>", "Section", Evaluatable->False, AspectRatioFixed->True], Cell[TextData[{ "A simple yet powerful file-reading command, for reading an array of data \ from the top of a text file, is ", StyleBox["ReadList", FontWeight->"Bold"], ". This is the command to use to read in a list or rectangular array of \ numbers (perhaps results of an experiment or the output of a computer \ program) from an external file." }], "Text"], Cell[CellGroupData[{ Cell["Example 1: a simple list of numbers", "Subsection"], Cell[TextData[{ "The command ", StyleBox["ReadList[\"filename\", Number]", FontWeight->"Bold"], " yields a single list of all the numbers in a file, separated by blank \ space or newlines. It can handle numbers which are given in Fortran-like \ \"E\" notation; for example, it will interpret 2.5E+5 as ", Cell[BoxData[ \(TraditionalForm\`2.5\[Times]10\^5\)]], ". It does not, however, like commas or other punctuation. (There are \ options to get around that...)\n\nFile \"", StyleBox["/tmp/sample1.dat", FontFamily->"Courier"], "\" consists of 30 numbers arranged on several lines." }], "Text"], Cell[BoxData[{ \(MyData\ = \ ReadList["\", \ Number]\n\), \(\(ListPlot[\ \ MyData, \ \ PlotJoined -> True]; \)\)}], "Input"], Cell["\<\ A variation of the command, adding a third parameter, limits how \ many numbers to read:\ \>", "Text"], Cell[BoxData[{ \(MyData\ = \ ReadList["\", \ Number, \ \ 8]\), \(\(ListPlot[\ \ MyData, \ \ PlotJoined -> True]; \)\)}], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Example 2: x-y pairs", "Subsection"], Cell[TextData[{ "The data in file \"", StyleBox["sample2.dat", FontFamily->"Courier"], "\" consists of 300 lines of ", StyleBox["x-y", FontSlant->"Italic"], " pairs. To keep the structure of the data, we want ", StyleBox["ReadList", FontWeight->"Bold"], " to read in ", StyleBox["pairs", FontSlant->"Italic"], " of numbers, yielding a list of doublets." }], "Text"], Cell[BoxData[{ \(xyData\ = \ ReadList["\", \ {Number, Number}]; \n\n Dimensions[xyData]\), \(\(ListPlot[\ \ xyData\ ]; \)\)}], "Input"], Cell["\<\ Again, one can add a third parameter to limit the number of list \ items to read:\ \>", "Text"], Cell[BoxData[{ \(xyData\ = \ ReadList["\", \ {Number, Number}, \ \ 17]; \n\n Dimensions[xyData]\), \(\(ListPlot[\ \ xyData\ ]; \)\)}], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Example 3: 4-column data", "Subsection"], Cell[TextData[{ "Data file \"", StyleBox["sample3.dat", FontFamily->"Courier"], "\" contains 4 columns of numbers. On each line, the first number \ represents time ", StyleBox["t", FontSlant->"Italic"], ", while the other three numbers are ", StyleBox["f(t)", FontSlant->"Italic"], ", ", StyleBox["g(t)", FontSlant->"Italic"], ", and ", StyleBox["h(t)", FontSlant->"Italic"], ". It is not possible to read in only some of the columns; rather, one \ reads the entire ", Cell[BoxData[ \(TraditionalForm\`N\[Times]4\)]], " array of numbers, then extracts the desired columns using \ list-manipulation functions.\n\nTo read the data in \"gulps\" of 4 numbers \ each, one can specify that each list item is of the type ", StyleBox["{Number,Number,Number,Number}", FontWeight->"Bold"], ", or use the equivalent expression ", StyleBox["Table[Number,{4}]", FontWeight->"Bold"], "." }], "Text"], Cell[BoxData[ \(TFGHdata\ \ = \ ReadList["\", \ \ \ Table[Number, {4}]\ \ \ ]; \n\n column4\ = \ \(Transpose[TFGHdata]\)[\([4]\)]; \n ListPlot[column4, \ PlotJoined -> True, AxesLabel -> {"\<\>", "\"}]; \)], "Input"], Cell[TextData[{ "To plot data points ", StyleBox["(t, h(t))", FontSlant->"Italic"], ", extract columns 1 and 4, then merge them into a single ", Cell[BoxData[ \(TraditionalForm\`N\[Times]2\)]], " array:" }], "Text"], Cell[BoxData[ \(column1\ = \ \(Transpose[TFGHdata]\)[\([1]\)]; \n THpairs\ = \ Transpose[\ {column1, column4}\ ]; \n ListPlot[THpairs, \ PlotJoined -> True, AxesLabel -> {"\", "\"}]; \)], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["Example 4: data on a rectangular grid", "Subsection"], Cell[TextData[{ "File \"sample4.dat\" consists of 620 numbers, representing values on a ", Cell[BoxData[ \(TraditionalForm\`20\[Times]31\)]], " rectangular grid. The numbers are split irregularly across lines, but \ are separated by blank space and are in order: 31 values along the first row, \ followed by 31 values along the second row, etc." }], "Text"], Cell[BoxData[ \(griddata\ = \ ReadList["\", \ Table[Number, {31}]\ ]; \n\n ListPlot3D[\ griddata\ ]; \)], "Input"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["\<\ Generalized input: OpenRead, Read\ \>", "Section"], Cell[TextData[{ "Some data files are a bit messier than the examples above. A single data \ file may contain several sets of data, or a single number (representing row \ size) followed by an array, or strings. For greater control over how ", StyleBox["Mathematica", FontSlant->"Italic"], " reads from a data file, open a \"data stream\" using ", StyleBox["OpenRead", FontWeight->"Bold"], ", then read the file a bit at a time using ", StyleBox["Read", FontWeight->"Bold"], " and ", StyleBox["ReadList", FontWeight->"Bold"], "." }], "Text"], Cell[BoxData[ \(strm\ \ = \ \ OpenRead["\"]\)], "Input"], Cell["\<\ The first line in this data file includes the dimensions of an \ array, followed by a description of the array. Read is used to get that \ information only:\ \>", "Text"], Cell[BoxData[ \({m, n, descr} = Read[strm, \ \ {Number, Number, String}\ ]\)], "Input"], Cell["\<\ Using this information, continue to read from the file using \ ReadList. The title can be used in the plot.\ \>", "Text"], Cell[BoxData[ \(data\ \ = \ \ ReadList[strm, \ \ \ Table[Number, {n}], \ \ \ m\ ]; \n\n ListPlot3D[data, \ \ PlotLabel -> descr]; \)], "Input"], Cell["Another data set follows right behind, in the same file.", "Text"], Cell[BoxData[{ \({m, n, descr} = Read[strm, \ \ {Number, Number, String}\ ]\), \(data\ \ = \ \ ReadList[strm, \ \ \ Table[Number, {n}], \ \ \ m\ ]; \n ListPlot3D[data, \ \ PlotLabel -> descr]; \)}], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["\<\ Directory, SetDirectory, FileNames\ \>", "Section"], Cell[TextData[{ "If students are to read data into a ", StyleBox["Mathematica", FontSlant->"Italic"], " session, they may need help with finding particular directories and files \ from within the notebook. The following functions help." }], "Text"], Cell[BoxData[{ \(Directory[] \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (*\ current\ working\ directory\ *) \), \(FileNames[] \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (*\ all\ of\ them\ *) \)}], "Input"], Cell[BoxData[{ \(SetDirectory["\"]\), \(FileNames["\"]\), \(ResetDirectory[]\)}], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["\<\ Shortcuts for saving, appending, reading, displaying\ \>", "Section"], Cell[TextData[{ "To write a ", StyleBox["Mathematica", FontSlant->"Italic"], " expression to a file, use double arrows, like this:" }], "Text"], Cell[BoxData[{ \(expr\ = \ Integrate[Log[x]/x, \ {x, 1, 17}]\n\), \(expr\ \ >> \ \ /tmp/results\)}], "Input"], Cell[TextData[{ "To ", StyleBox["append", FontWeight->"Bold"], " to a file, rather than creating/rewriting a file, use triple arrows." }], "Text"], Cell[BoxData[ \(N[expr, \ 35]\ \ \ >>> \ \ \ /tmp/results\)], "Input"], Cell["\<\ The quick way to display the contents of a (short?!) text file is \ with double exclamation marks:\ \>", "Text"], Cell[BoxData[ \(\(!! \ \ /tmp/results\)\)], "Input"], Cell[TextData[{ "(It is also possible to write the definition of a symbol to a file, using \ ", StyleBox["Save", FontWeight->"Bold"], ".)" }], "Text"], Cell[BoxData[ \(\(Save["\", \ \ expr]; \)\)], "Input"], Cell["View the revised contents of the file:", "Text"], Cell[BoxData[ \(\(!! \ \ \ /tmp/results\)\)], "Input"], Cell[TextData[{ "\nTo read and execute the ", StyleBox["Mathematica", FontSlant->"Italic"], " expressions/commands in a file, use double left arrows. Each line of the \ file is read and executed, although ", StyleBox["only the output from the final line", FontSlant->"Italic"], " will be displayed." }], "Text"], Cell[BoxData[ \(<< \ \ /tmp/results\)], "Input"], Cell[TextData[{ "Equivalent to using double left arrows (<<) is the function ", StyleBox["Get", FontWeight->"Bold"], ", though with this function you must put the name of the file in quotes." }], "Text"], Cell[BoxData[ \(Get["\"]\)], "Input"] }, Closed]], Cell[CellGroupData[{ Cell["\<\ Writing numbers to a text file\ \>", "Section"], Cell[TextData[{ "A simple command which writes a numerical array to a file will also write \ the curly brackets and commas which are part of the ", StyleBox["Mathematica", FontSlant->"Italic"], " list syntax:" }], "Text"], Cell[BoxData[ \(mdat\ = \ DiagonalMatrix[{2.5, 4.1, 0.9}]; \nmdat\ \ >> \ i3.dat\)], "Input"], Cell[BoxData[ \(\(!! i3.dat\)\)], "Input"], Cell[TextData[{ "To write only numbers separated by white space, no commas or brackets, so \ that the data can be read by ", StyleBox["ReadList", FontWeight->"Bold"], " or by a Fortran or C program, a more complicated command will work:" }], "Text"], Cell[BoxData[ \(OutputForm[MatrixForm[mdat]]\ >> \ i3.dat\)], "Input"], Cell[BoxData[ \(\(!! i3.dat\)\)], "Input"], Cell["\<\ If the blank lines between rows of numbers is unwanted, a yet more \ complicated set of commands is\ \>", "Text"], Cell[BoxData[ \(outfile\ = \ OpenWrite[\ "\", \ FormatType -> OutputForm, \n \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ PageWidth -> 255]; \n Write[\ outfile, \ TableForm[mdat, \ TableSpacing -> {0}]\ ]; \n Close[outfile]; \)], "Input"], Cell[BoxData[ \(\(!! i3.dat\)\)], "Input"] }, Closed]] }, Open ]] }, FrontEndVersion->"X 3.0", ScreenRectangle->{{0, 1152}, {0, 900}}, WindowToolbars->{}, CellGrouping->Automatic, WindowSize->{658, 600}, WindowMargins->{{Automatic, 56}, {Automatic, 95}}, PrivateNotebookOptions->{"ColorPalette"->{RGBColor, 128}}, ShowCellLabel->True, ShowCellTags->False, RenderingOptions->{"ObjectDithering"->True, "RasterDithering"->False}, CharacterEncoding->"MacintoshAutomaticEncoding", 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"], CellBracketOptions->{"Color"->RGBColor[0.771908, 0.399634, 0.262867]}, ScriptMinSize->9], Cell[StyleData[All, "Printout"], PageWidth->PaperWidth, PrivateFontOptions->{"FontType"->"Outline"}], Cell[StyleData[All, "ColorPrintout"], PageWidth->PaperWidth, 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"]}}, StyleMenuListing->None] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headings", "Section"], Cell[CellGroupData[{ Cell[StyleData["Title"], CellMargins->{{36, 20}, {2, 10}}, CellGroupingRules->{"TitleGrouping", 0}, PageBreakBelow->False, CellFrameMargins->{{100, 4}, {8, 10}}, TextAlignment->Center, LineSpacing->{1, -5}, CounterIncrements->"Title", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subtitle", 0}, {"Subsubtitle", 0}}, FontFamily->"New century schoolbook", FontSize->34, FontWeight->"Bold", FontSlant->"Italic", FontColor->RGBColor[0, 0, 1]], Cell[StyleData["Title", "Printout"], TextAlignment->Center, FontFamily->"New century schoolbook", FontSize->33, FontColor->RGBColor[0, 0, 1]], Cell[StyleData["Title", "ColorPrintout"], TextAlignment->Center, FontFamily->"New century schoolbook", FontSize->33, FontColor->RGBColor[0, 0, 1]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subtitle"], CellFrame->{{0, 0}, {0.5, 0}}, CellMargins->{{144, 20}, {2, 10}}, CellGroupingRules->{"TitleGrouping", 10}, PageBreakBelow->False, TextAlignment->Center, CounterIncrements->"Subtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subsubtitle", 0}}, FontSize->24, FontSlant->"Italic", FontColor->RGBColor[1, 0, 1]], Cell[StyleData["Subtitle", "Printout"], CellFrame->{{0, 0}, {0.5, 0}}, TextAlignment->Center, FontColor->RGBColor[1, 0, 1]], Cell[StyleData["Subtitle", "ColorPrintout"], CellFrame->{{0, 0}, {0.5, 0}}, TextAlignment->Center, FontColor->RGBColor[1, 0, 1]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsubtitle"], CellFrame->{{0, 0}, {0.5, 0}}, CellMargins->{{144, 20}, {2, 2}}, CellGroupingRules->{"TitleGrouping", 20}, PageBreakBelow->False, TextAlignment->Center, CounterIncrements->"Subsubtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Helvetica", FontSize->18, FontSlant->"Italic", FontColor->RGBColor[1, 0, 0]], Cell[StyleData["Subsubtitle", "Printout"], CellFrame->{{0, 0}, {0.5, 0}}, TextAlignment->Center, FontSize->18, FontColor->RGBColor[1, 0, 0]], Cell[StyleData["Subsubtitle", "ColorPrintout"], CellFrame->{{0, 0}, {0.5, 0}}, TextAlignment->Center, FontSize->18, FontColor->RGBColor[1, 0, 0]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Section"], CellFrame->{{0, 0}, {0, 0.25}}, CellMargins->{{36, 20}, {10, 20}}, CellGroupingRules->{"SectionGrouping", 30}, PageBreakBelow->False, CellFrameMargins->{{10, 4}, {6, 2}}, CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontSize->18, FontWeight->"Bold", FontColor->RGBColor[1, 0, 0]], Cell[StyleData["Section", "Printout"], FontSize->18, FontColor->RGBColor[1, 0, 0]], Cell[StyleData["Section", "ColorPrintout"], FontSize->18, FontColor->RGBColor[1, 0, 0]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsection"], CellFrame->{{0, 0}, {0, 0.5}}, CellDingbat->"\[FilledSmallSquare]", CellMargins->{{36, 20}, {Inherited, 18}}, CellGroupingRules->{"SectionGrouping", 40}, PageBreakBelow->False, CellFrameMargins->{{2, 12}, {0, 12}}, CellFrameLabelMargins->6, TextAlignment->Center, CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontSize->18, FontWeight->"Bold", FontColor->RGBColor[1, 0, 1]], Cell[StyleData["Subsection", "Printout"], CellFrame->{{0, 0}, {0, 0.5}}, TextAlignment->Center, FontSize->18, FontColor->RGBColor[1, 0, 1]], Cell[StyleData["Subsection", "ColorPrintout"], CellFrame->{{0, 0}, {0, 0.5}}, TextAlignment->Center, FontSize->18, FontColor->RGBColor[1, 0, 1]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsubsection"], CellDingbat->"\[EmptySquare]", CellMargins->{{36, Inherited}, {Inherited, 12}}, CellGroupingRules->{"SectionGrouping", 50}, PageBreakBelow->False, CellFrameLabelMargins->6, CounterIncrements->"Subsubsection", FontFamily->"Helvetica", FontSize->16], Cell[StyleData["Subsubsection", "Printout"], FontSize->16], Cell[StyleData["Subsubsection", "ColorPrintout"], FontSize->16] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[CellGroupData[{ Cell[StyleData["Text"], CellFrame->False, CellMargins->{{36, 20}, {4, 4}}, CellFrameMargins->{{4, 10}, {6, 0}}, CellFrameLabelMargins->4, LineSpacing->{1, 2}, CounterIncrements->"Text", FontSize->14], Cell[StyleData["Text", "Printout"], LineSpacing->{1, 1}, FontSize->14], Cell[StyleData["Text", "ColorPrintout"], LineSpacing->{1, 1}, FontSize->14] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["SmallText"], CellMargins->{{100, 38}, {4, 4}}, LineSpacing->{1.1, 1}, CounterIncrements->"SmallText", FontSize->14], Cell[StyleData["SmallText", "Printout"], LineSpacing->{1.1, 1}, FontSize->14], Cell[StyleData["SmallText", "ColorPrintout"], LineSpacing->{1.1, 1}, FontSize->14] }, Open ]] }, Open ]], 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->{{36, 0}, {0, Inherited}}, Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, CellLabelMargins->{{3, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultInputFormatType, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontSize->14, FontWeight->"Bold", FontColor->GrayLevel[0], Background->RGBColor[0.95021, 0.934356, 0.499062]], Cell[StyleData["Input", "Printout"], FontSize->14, Background->GrayLevel[0.900008]], Cell[StyleData["Input", "ColorPrintout"], FontSize->14] }, Open ]], Cell[StyleData["InlineInput"], Evaluatable->True, CellGroupingRules->"InputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, DefaultFormatType->DefaultInputFormatType, AutoItalicWords->{}, FormatType->InputForm, ShowStringCharacters->True, NumberMarks->True, CounterIncrements->"Input", FontSize->14, FontWeight->"Bold"], Cell[CellGroupData[{ Cell[StyleData["Output"], CellFrame->True, CellMargins->{{36, 0}, {Inherited, 0}}, CellEditDuplicate->True, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, CellLabelMargins->{{3, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, TextAlignment->Center, FormatType->InputForm, CounterIncrements->"Output", FontSize->14, FontColor->GrayLevel[0], Background->RGBColor[0, 1, 1]], Cell[StyleData["Output", "Printout"], CellFrame->True, TextAlignment->Center, FontSize->14, Background->RGBColor[0, 1, 1]], Cell[StyleData["Output", "ColorPrintout"], CellFrame->True, TextAlignment->Center, FontSize->14, Background->RGBColor[0, 1, 1]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Message"], CellDingbat->"\[LongDash]", CellMargins->{{64, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{3, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Message", StyleMenuListing->None, FontFamily->"Helvetica", FontSize->10, FontSlant->"Oblique"], Cell[StyleData["Message", "Printout"], FontSize->8], Cell[StyleData["Message", "ColorPrintout"], FontSize->8] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Print"], CellMargins->{{36, 20}, {3, 3}}, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, CellLabelMargins->{{3, Inherited}, {Inherited, Inherited}}, DefaultFormatType->DefaultOutputFormatType, TextAlignment->Left, FormatType->InputForm, CounterIncrements->"Print", StyleMenuListing->None, FontFamily->"Courier", FontSize->12, Background->RGBColor[0.967727, 0.972747, 0.534508]], Cell[StyleData["Print", "Printout"], FontFamily->"Courier", Background->GrayLevel[0.900008]], Cell[StyleData["Print", "ColorPrintout"], FontFamily->"Courier"] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Graphics"], CellMargins->{{36, 0}, {0, 0}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, FormatType->InputForm, CounterIncrements->"Graphics", ImageMargins->{{35, Inherited}, {Inherited, 0}}, Background->RGBColor[0, 1, 1]], Cell[StyleData["Graphics", "Printout"], FontSize->10, Background->GrayLevel[0.8]], Cell[StyleData["Graphics", "ColorPrintout"], FontSize->10, Background->RGBColor[0, 1, 1]] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["CellLabel"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->10, FontColor->RGBColor[0.551492, 0.231144, 0.313466]], Cell[StyleData["CellLabel", "Printout"], FontColor->GrayLevel[0]], Cell[StyleData["CellLabel", "ColorPrintout"]] }, Open ]] }, Open ]] }, Open ]] }] ] (*********************************************************************** 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[1731, 51, 133, 3, 46, "Title"], Cell[CellGroupData[{ Cell[1889, 58, 48, 0, 36, "Subsubsection"], Cell[1940, 60, 453, 12, 60, "Text"], Cell[2396, 74, 74, 1, 37, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[2507, 80, 96, 5, 74, "Section"], Cell[2606, 87, 370, 8, 59, "Text"], Cell[CellGroupData[{ Cell[3001, 99, 58, 0, 55, "Subsection"], Cell[3062, 101, 630, 14, 110, "Text"], Cell[3695, 117, 153, 2, 75, "Input"], Cell[3851, 121, 112, 3, 25, "Text"], Cell[3966, 126, 158, 2, 56, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[4161, 133, 43, 0, 55, "Subsection"], Cell[4207, 135, 400, 14, 42, "Text"], Cell[4610, 151, 168, 3, 94, "Input"], Cell[4781, 156, 105, 3, 25, "Text"], Cell[4889, 161, 183, 4, 94, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[5109, 170, 47, 0, 55, "Subsection"], Cell[5159, 172, 958, 30, 127, "Text"], Cell[6120, 204, 265, 5, 94, "Input"], Cell[6388, 211, 237, 8, 25, "Text"], Cell[6628, 221, 223, 4, 75, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[6888, 230, 61, 0, 55, "Subsection"], Cell[6952, 232, 370, 7, 59, "Text"], Cell[7325, 241, 149, 3, 75, "Input"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell[7523, 250, 62, 3, 58, "Section"], Cell[7588, 255, 575, 16, 76, "Text"], Cell[8166, 273, 80, 1, 37, "Input"], Cell[8249, 276, 181, 4, 42, "Text"], Cell[8433, 282, 91, 1, 37, "Input"], Cell[8527, 285, 132, 3, 25, "Text"], Cell[8662, 290, 152, 2, 75, "Input"], Cell[8817, 294, 72, 0, 25, "Text"], Cell[8892, 296, 221, 3, 75, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[9150, 304, 62, 3, 58, "Section"], Cell[9215, 309, 260, 6, 42, "Text"], Cell[9478, 317, 294, 6, 56, "Input"], Cell[9775, 325, 121, 3, 75, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[9933, 333, 80, 3, 58, "Section"], Cell[10016, 338, 153, 5, 25, "Text"], Cell[10172, 345, 120, 2, 75, "Input"], Cell[10295, 349, 156, 5, 25, "Text"], Cell[10454, 356, 75, 1, 37, "Input"], Cell[10532, 359, 122, 3, 25, "Text"], Cell[10657, 364, 56, 1, 37, "Input"], Cell[10716, 367, 160, 6, 25, "Text"], Cell[10879, 375, 73, 1, 37, "Input"], Cell[10955, 378, 54, 0, 25, "Text"], Cell[11012, 380, 58, 1, 37, "Input"], Cell[11073, 383, 330, 9, 59, "Text"], Cell[11406, 394, 52, 1, 37, "Input"], Cell[11461, 397, 213, 5, 42, "Text"], Cell[11677, 404, 56, 1, 37, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[11770, 410, 58, 3, 58, "Section"], Cell[11831, 415, 231, 6, 42, "Text"], Cell[12065, 423, 102, 2, 56, "Input"], Cell[12170, 427, 46, 1, 37, "Input"], Cell[12219, 430, 259, 6, 42, "Text"], Cell[12481, 438, 75, 1, 37, "Input"], Cell[12559, 441, 46, 1, 37, "Input"], Cell[12608, 444, 123, 3, 25, "Text"], Cell[12734, 449, 324, 6, 94, "Input"], Cell[13061, 457, 46, 1, 37, "Input"] }, Closed]] }, Open ]] } ] *) (*********************************************************************** End of Mathematica Notebook file. ***********************************************************************)