(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 7.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 38260, 1155] NotebookOptionsPosition[ 23953, 787] NotebookOutlinePosition[ 32343, 996] CellTagsIndexPosition[ 30731, 957] WindowTitle->Lecture 02 MIT 3.016 (Fall 2011) \251 W. Craig Carter \ 2003--2011 WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell["Mathematical Tools for Materials Scientists and Engineers", "Title"], Cell[CellGroupData[{ Cell["Learning to use Mathematica as a tool.", "Section"], Cell[TextData[{ "Mathematica is a tool for exploring mathematics and solving problems that \ can be posed as a mathematical problem. Mathematica's coverage of \ mathematics and its applications is both very wide and very deep. The depth \ of Mathematica is such that years must be invested before it can wielded \ masterfully. However, students must begin to use Mathematica immediately. \ This means that you must use this tool before you can master it. Don't \ worry\[LongDash]you can't master this tool unless you use it!\n\nThere are \ several software programs like Mathematica (Maple, Matlab, Macsyma, to \ mention a few). These programs allow you to solve equations, perform \ mathematical operations, and visualize mathematics and data. Each one has it \ benefits. Mathematica, perhaps, has a steep learning curve because it \ integrates so many aspects of mathematics. Nevertheless, I believe that your \ intellectual and time investment in learning Mathematica will be have very \ profitable returns on both your future intellect and your future time.\n\n\ Finally, just as there are many good ways to solve a mathematics problem, \ there are many different ways to solve a particular problem using ", StyleBox["Mathematica. ", FontSlant->"Italic"], "Some methods are perhaps more elegant than others; some methods are perhaps \ more clever than others\[LongDash]these judgements are subjective. What is \ important, in the end, is 1) that the solution method works, 2) the method \ and solution can be communicated to others, and 3) the solution or the \ knowledged obtained is as valuable as the time spent acquiring it." }], "Text", CellChangeTimes->{{3.39496441888391*^9, 3.3949644247577868`*^9}}] }, Closed]], Cell[CellGroupData[{ Cell["Starting up Mathematica", "Subsubtitle"], Cell[TextData[{ "First you must locate or obtain Mathematica and permission to use it.\n \ \n As an MIT student, you have an Athena account from which you can run \ Mathematica. There are a number of\nways to open and run a Mathematica \ session. Of course,you must first login, and then one method would be to:\n\t\ 1. open a shell\n\t2. Add the ", StyleBox["Mathematica", FontSlant->"Italic"], " locker by typing: ", StyleBox["add math", FontFamily->"Courier", FontWeight->"Bold"], "\n\t 2. At the shell prompt, type ", StyleBox["mathematica", FontFamily->"Courier", FontWeight->"Bold"], ". (An interface to mathematica's software (properly known as Mathematica's \ kernel) called the Front End will open as well as menus and palettes).\n\t \ 3. Solve problems by defining symbols, performing mathematical operations, \ employing Mathematica's functions,defining your own functions, and \ graphically displaying results.\n \n Also, as an MIT student, you are \ entitled to download a copy and license for Mathematica on your own \ computer. Instructions can be found at this URL: ", "http://ist.mit.edu/services/software/mathematica/obtain", "\n The colors on your sceen may not appear to be the same as what is \ presented in the lectures. I use my own style sheet, you may download my \ style sheet from ", Cell[BoxData[ FormBox[ ButtonBox[ RowBox[{"here", "."}], BaseStyle->"Hyperlink", ButtonData->{ URL["http://pruffle.mit.edu/3.016/3016-Carter.nb"], None}], TraditionalForm]]], " Information on where to put the style sheet can be found below. Let's \ get started with some simple ", StyleBox["Mathematica", FontSlant->"Italic"], " commands.\n If you are reading this in the ", StyleBox["Mathematica", FontSlant->"Italic"], " FrontEnd, then you can go ahead and familiarize yourself with some basics \ by executing the following lines which are ", StyleBox["Mathematica", FontSlant->"Italic"], " Input. Typically, ", StyleBox["Mathematica", FontSlant->"Italic"], "'s FrontEnd asks ", StyleBox["Mathematica", FontSlant->"Italic"], "'s Kernal to do its job of evaluating by hitting \[ShiftKey]\[LongDash]\ \[EnterKey] while the mouse in an \"Input Cell.\" Input Cells can be \ identified with the ", StyleBox[" ", FontWeight->"Bold", FontColor->RGBColor[1, 0, 0]], StyleBox["\[LeftDownTeeVector]-", FontWeight->"Bold", FontColor->RGBColor[0, 0, 1]], StyleBox["thingy at the right.", FontVariations->{"CompatibilityType"->0}], StyleBox[" ", FontVariations->{"CompatibilityType"->0}, FontColor->RGBColor[0, 0, 1]], StyleBox["One can evaluate one or more cells by selecting their ", FontVariations->{"CompatibilityType"->0}], StyleBox[" ", FontVariations->{"CompatibilityType"->0}, FontColor->RGBColor[0, 0, 1]], StyleBox["\[LeftDownTeeVector]-", FontWeight->"Bold", FontColor->RGBColor[0, 0, 1]], StyleBox["thingies and hitting ", FontVariations->{"CompatibilityType"->0}], "\[ShiftKey]\[LongDash]\[EnterKey].\n\n Try executing the cells below. \ Try to guess what the output might be or represent\[LongDash]and observe \ carefully whether ", StyleBox["Mathematica", FontSlant->"Italic"], " is doing what you would anticipate. Notice that answers can depend on the \ history of commands that precede it." }], "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}] }, Closed]], Cell[CellGroupData[{ Cell["Variable Assignment and Variable Types", "Subtitle", CellChangeTimes->{{3.394879146740212*^9, 3.394879170855698*^9}}, TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:assignment_to_symbols"], Cell["Assigning values to symbols", "Section", CellChangeTimes->{3.394879149101808*^9}, TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:assignment_to_symbols"], Cell[BoxData[ RowBox[{"a", " ", "=", FractionBox[ RowBox[{" ", RowBox[{"4", " ", "\[Pi]"}]}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{"UnitSphereVolume", " ", "=", " ", "a"}]], "Input"], Cell[BoxData[ RowBox[{"2", " ", "a"}]], "Input"], Cell[BoxData[ RowBox[{"ANewVariable", " ", "=", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"2", " ", "a"}], " ", "+", " ", "b"}], ")"}], "^", "2"}]}]], "Input"], Cell[BoxData[ RowBox[{"ANewVariable", "^", "2"}]], "Input"], Cell[BoxData[ RowBox[{"b", " ", "=", " ", FractionBox[ RowBox[{"4", " ", RowBox[{"(", "3.14159265358979323846264338327950288419716939937", ")"}]}], "3"]}]], "Input", CellChangeTimes->{{3.394944305995823*^9, 3.394944350908411*^9}}], Cell[BoxData[ RowBox[{"UnitSphereNumericalVolume", " ", "=", " ", "b"}]], "Input"], Cell[BoxData["ANewVariable"], "Input"], Cell["\<\ Differences between exact expressions and numerical expressions\ \>", "Section", TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:exact_and_numerical_representations"], Cell[BoxData[ RowBox[{"UnitSphereVolume", " ", "-", " ", "UnitSphereNumericalVolume"}]], "Input"], Cell[BoxData[ RowBox[{"a", "-", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1"}], "]"}]}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{"a", "-", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1.0"}], "]"}]}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"2", " ", "Pi"}], " ", "-", " ", RowBox[{"2", " ", RowBox[{"(", "3.141519", ")"}]}]}]], "Input"], Cell[BoxData[ RowBox[{"N", "[", RowBox[{"5", "/", "6"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"FullForm", "[", RowBox[{"2", "/", "6"}], "]"}]], "Input"], Cell["Distinction between Equality (= = ) and Assignment (=)", "Section", TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:equality(==)_and_assignment(=)"], Cell[BoxData[ RowBox[{"a", " ", "\[Equal]", " ", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1"}], "]"}]}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{"a", " ", "\[Equal]", " ", FractionBox[ RowBox[{"4", " ", "3.14"}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{"a", " ", "\[Equal]", " ", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1.0"}], "]"}]}], "3"]}]], "Input"], Cell[BoxData[ RowBox[{"a", " ", "===", " ", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1.0"}], "]"}]}], "3"]}]], "Input"], Cell["Clearing Variables", "Section", TextAlignment->Center, TextJustification->0, CellTags->{"mmtag:02:clearing_assignments_or_variables", "mmtag:02:Clear[]"}], Cell[BoxData[ RowBox[{"?", "a"}]], "Input"], Cell[BoxData[ RowBox[{"Clear", "[", "a", "]"}]], "Input"], Cell[BoxData[ RowBox[{"?", "a"}]], "Input"], Cell[BoxData[ RowBox[{"a", "-", FractionBox[ RowBox[{"4", RowBox[{"ArcCos", "[", RowBox[{"-", "1"}], "]"}]}], "3"]}]], "Input"], Cell["clearing all defined variables", "Text"], Cell[BoxData[ RowBox[{"Clear", "[", "\"\\"", "]"}]], "Input"] }, Open ]], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Mathematica", FontSlant->"Italic"], " Functions and Basic Operations on Expressions" }], "Subtitle", CellChangeTimes->{{3.394879146740212*^9, 3.394879170855698*^9}, { 3.394879774171504*^9, 3.39487980140282*^9}}, TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:assignment_to_symbols"], Cell["Mathematica Functions", "Section", TextAlignment->Center, TextJustification->0], Cell[BoxData[ RowBox[{"a", " ", "=", " ", RowBox[{"1", "/", RowBox[{"Exp", "[", "x", "]"}]}]}]], "Input"], Cell[BoxData[ RowBox[{"b", " ", "=", RowBox[{"Cos", "[", "x", "]"}]}]], "Input"], Cell[BoxData[ RowBox[{"c", " ", "=", " ", RowBox[{ RowBox[{"(", RowBox[{"a", "+", "b"}], ")"}], "^", "2"}]}]], "Input"], Cell["\<\ Alternative Syntax for Functions (There are many ways to do the same thing)\ \>", "Section", CellChangeTimes->{{3.394877486063353*^9, 3.3948774996212673`*^9}}, TextAlignment->Center, TextJustification->0, CellTags->{ "mmtag:02:alternative_syntax_for_functions(//)", "mmtag:02:functions__alternative_syntax_for_application(//)"}], Cell[BoxData[ RowBox[{"AnotherVersionofb", " ", "=", " ", RowBox[{"x", "//", "Cos"}]}]], "Input"], Cell[BoxData[ RowBox[{"YetAnotherVersionofb", " ", "=", " ", RowBox[{"Cos", "@", "x"}]}]], "Input", CellChangeTimes->{{3.394876949190427*^9, 3.394876958944542*^9}}], Cell[BoxData[ RowBox[{"YetEvenAnotherVersionofb", " ", "=", RowBox[{ RowBox[{"Function", "[", RowBox[{"z", ",", RowBox[{"Cos", "[", "z", "]"}]}], "]"}], "[", "x", "]"}]}]], "Input", CellChangeTimes->{{3.39487742499615*^9, 3.394877428361137*^9}}], Cell[BoxData[ RowBox[{"YetStillAnotherVersionofb", " ", "=", RowBox[{ RowBox[{"Function", "[", RowBox[{"Cos", "[", "#", "]"}], "]"}], "[", "x", "]"}]}]], "Input", CellChangeTimes->{{3.394876949190427*^9, 3.394876992814743*^9}, { 3.3948770535265417`*^9, 3.394877061958171*^9}, {3.39487720708388*^9, 3.394877308267128*^9}, 3.394877350392384*^9, {3.394877464650866*^9, 3.394877465874743*^9}}], Cell[BoxData[ RowBox[{"FinallyAnotherVersionofb", " ", "=", RowBox[{ RowBox[{"(", RowBox[{ RowBox[{"Cos", "[", "#", "]"}], "&"}], ")"}], "[", "x", "]"}]}]], "Input",\ CellChangeTimes->{{3.394876949190427*^9, 3.394876992814743*^9}, { 3.3948770535265417`*^9, 3.394877061958171*^9}, {3.39487720708388*^9, 3.394877308267128*^9}, 3.394877350392384*^9, {3.394877464650866*^9, 3.394877465874743*^9}, {3.394877523342309*^9, 3.394877533326603*^9}, { 3.394877596154584*^9, 3.3948776202275953`*^9}}], Cell[BoxData[ RowBox[{"ANewVariable", "[", "x", "]"}]], "Input"], Cell["Mathematica Operations on expressions", "Section", TextAlignment->Center, TextJustification->0], Cell[BoxData[{"c", "\[IndentingNewLine]", RowBox[{"AnotherVersionofC", " ", "=", RowBox[{"Expand", "[", "c", "]"}]}]}], "Input"], Cell[BoxData[{"c", "\[IndentingNewLine]", RowBox[{"Simplify", "[", "AnotherVersionofC", "]"}]}], "Input"], Cell["Calculus", "Section", TextAlignment->Center, TextJustification->0], Cell[BoxData[ RowBox[{"IntegralofC", " ", "=", RowBox[{"Integrate", "[", RowBox[{"c", ",", "x"}], "]"}]}]], "Input", CellTags->"mmtag:02:Integrate[]"], Cell[BoxData[ RowBox[{"Integrate", "[", RowBox[{ RowBox[{"c", "/", "x"}], ",", "x"}], "]"}]], "Input"], Cell["Getting information (part 1)", "Section", TextAlignment->Center, TextJustification->0], Cell[BoxData[ RowBox[{"?", "ExpIntegralEi"}]], "Input"] }, Open ]], Cell[CellGroupData[{ Cell["Basic Calculus and Plotting", "Subtitle", CellChangeTimes->{{3.394880085653088*^9, 3.394880098607019*^9}, { 3.394880166093032*^9, 3.3948801721703997`*^9}}, TextAlignment->Center, TextJustification->0, CellTags->{"mmtag:02:derivatives_D[]", "mmtag:02:D[]_derivatives"}], Cell[BoxData[ RowBox[{"D", "[", RowBox[{ RowBox[{"ANewVariable", "[", "x", "]"}], ",", "x"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"Integrate", "[", RowBox[{ RowBox[{"ANewVariable", "[", "x", "]"}], ",", "x"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"D", "[", RowBox[{ RowBox[{"ANewVariable", "[", "x", "]"}], ",", "z"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"tempvar", " ", "=", " ", RowBox[{"Integrate", "[", RowBox[{ RowBox[{"ANewVariable", "[", "x", "]"}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "y"}], "}"}]}], "]"}]}]], "Input"], Cell[BoxData[ RowBox[{"D", "[", RowBox[{"tempvar", ",", "x"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"D", "[", RowBox[{"tempvar", ",", "y"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"Clear", "[", "tempvar", "]"}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"Factor", "[", "IntegralofC", "]"}]], "Input"], Cell[BoxData[{"c", "\[IndentingNewLine]", "IntegralofC"}], "Input"], Cell[BoxData[{"c", "\[IndentingNewLine]", RowBox[{"D", "[", RowBox[{"IntegralofC", ",", "x"}], "]"}]}], "Input"], Cell[BoxData[{ RowBox[{"Factor", "[", "c", "]"}], "\[IndentingNewLine]", RowBox[{"Simplify", "[", RowBox[{"D", "[", RowBox[{"IntegralofC", ",", "x"}], "]"}], "]"}]}], "Input"], Cell["Plotting Functions", "Section", TextAlignment->Center, TextJustification->0], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{"IntegralofC", ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "10"}], "}"}]}], "]"}]], "Input", CellTags->"mmtag:02:Plot[]"], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{ RowBox[{"{", RowBox[{"IntegralofC", ",", "c"}], "}"}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "10"}], "}"}]}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{"c", ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "10"}], "}"}], ",", RowBox[{"PlotRange", "\[Rule]", RowBox[{"{", RowBox[{"0", ",", "1"}], "}"}]}]}], "]"}]], "Input", CellChangeTimes->{{3.39496494076493*^9, 3.394964997139928*^9}}], Cell[BoxData[ RowBox[{"Options", "[", "Plot", "]"}]], "Input", CellTags->"mmtag:02:Options[]"], Cell[BoxData[ RowBox[{"Plot", "[", RowBox[{ RowBox[{"{", RowBox[{"IntegralofC", ",", "c"}], "}"}], ",", RowBox[{"{", RowBox[{"x", ",", "0", ",", "10"}], "}"}], ",", RowBox[{"PlotStyle", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"{", RowBox[{"Red", ",", RowBox[{"Thickness", "[", "0.005", "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{ RowBox[{"RGBColor", "[", RowBox[{"0.2", ",", "0.56", ",", "1"}], "]"}], ",", RowBox[{"Thickness", "[", "0.0075", "]"}]}], "}"}]}], "}"}]}], ",", RowBox[{"BaseStyle", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"FontFamily", "\[Rule]", "\"\\""}], ",", RowBox[{"FontSize", "\[Rule]", "24"}]}], "}"}]}], ",", RowBox[{ "PlotLabel", "\[Rule]", "\"\< A Function (Pretty Sky Blue)\\nand Its Integral (Red)\\n\>\""}], ",", RowBox[{"AxesLabel", "\[Rule]", RowBox[{"{", RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}], ",", RowBox[{"ImageSize", "\[Rule]", "800"}]}], "]"}]], "Input", CellChangeTimes->{{3.394877970668495*^9, 3.3948780666549597`*^9}}, CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}] }, Open ]], Cell[CellGroupData[{ Cell["Lists {} and Matrices {{}} (Lists of Lists)", "Subtitle", TextAlignment->Center, TextJustification->0, CellTags->{ "mmtag:02:matrices", "mmtag:02:lists__manipulating", "mmtag:02:lists_{}"}], Cell["\<\ Note that we have already used lists in Plot and in Integrate\ \>", "Text"], Cell[BoxData[ RowBox[{"Clear", "[", "\"\\"", "]"}]], "Input"], Cell[BoxData[ RowBox[{"AList", " ", "=", " ", RowBox[{"{", RowBox[{ "a", ",", " ", "b", ",", "2", ",", "7", ",", "9", ",", " ", "1.3", ",", " ", FractionBox["\[Pi]", "2"], ",", " ", "0"}], "}"}]}]], "Input"], Cell[BoxData[ RowBox[{"Length", "[", "AList", "]"}]], "Input"], Cell[BoxData[ RowBox[{"Cos", "[", "AList", "]"}]], "Input"], Cell[BoxData[{"AList", "\[IndentingNewLine]", RowBox[{"AList", "[", RowBox[{"[", "2", "]"}], "]"}]}], "Input"], Cell[BoxData[{"AList", "\[IndentingNewLine]", RowBox[{"AList", "[", RowBox[{"[", RowBox[{"{", RowBox[{"3", ",", "6"}], "}"}], "]"}], "]"}]}], "Input"], Cell[BoxData[{"AList", "\[IndentingNewLine]", RowBox[{"AList", "[", RowBox[{"[", RowBox[{"-", "2"}], "]"}], "]"}]}], "Input"], Cell[BoxData[ RowBox[{"Sort", "[", "AList", "]"}]], "Input", CellTags->"mmtag:02:Sort[]"], Cell[BoxData[ RowBox[{"Select", "[", RowBox[{"AList", ",", "NumberQ"}], "]"}]], "Input", CellTags->"mmtag:02:Select[]"], Cell[BoxData[ RowBox[{"Reverse", "[", RowBox[{"Sort", "[", RowBox[{"Select", "[", RowBox[{"AList", ",", "NumberQ"}], "]"}], "]"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"Select", "[", RowBox[{"AList", ",", "EvenQ"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"Select", "[", RowBox[{"AList", ",", "PrimeQ"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"Perms", " ", "=", " ", RowBox[{"Permutations", "[", RowBox[{"Select", "[", RowBox[{"AList", ",", "ExactNumberQ"}], "]"}], "]"}]}]], "Input", CellTags->"mmtag:02:Permutations[]"], Cell[BoxData[ RowBox[{"Dimensions", "[", "Perms", "]"}]], "Input", CellTags->"mmtag:02:Dimensions[]"], Cell[BoxData[ RowBox[{ RowBox[{"Transpose", "[", "Perms", "]"}], "//", "MatrixForm"}]], "Input", CellTags->"mmtag:02:Transpose[]"], Cell[BoxData[ RowBox[{ RowBox[{"TranPerms", "=", " ", RowBox[{"Transpose", "[", "Perms", "]"}]}], ";"}]], "Input"], Cell[BoxData[ RowBox[{"TranPerms", "[", RowBox[{"[", "3", "]"}], "]"}]], "Input"], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"TranPerms", "[", RowBox[{"[", RowBox[{"3", ",", "3"}], "]"}], "]"}]], "Input"], Cell[BoxData[ RowBox[{"TranPerms", "[", RowBox[{"[", RowBox[{"{", RowBox[{"1", ",", "2"}], "}"}], "]"}], "]"}]], "Input"] }, Open ]], Cell[BoxData[ RowBox[{"IntList", " ", "=", " ", RowBox[{"Table", "[", RowBox[{"i", ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", RowBox[{"Length", "[", RowBox[{"TranPerms", "[", RowBox[{"[", "1", "]"}], "]"}], "]"}]}], "}"}]}], "]"}]}]], "Input"], Cell["Selecting the odd numbered columns from a matrix", "Text"], Cell[BoxData[{ RowBox[{"TranPerms", "//", "MatrixForm"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"TranPerms", "[", RowBox[{"[", RowBox[{"All", ",", RowBox[{"Select", "[", RowBox[{"IntList", ",", "OddQ"}], "]"}]}], "]"}], "]"}], "//", "MatrixForm"}]}], "Input", CellTags->"mmtag:02:MatrixForm[]"] }, Open ]], Cell[CellGroupData[{ Cell["\<\ Rules \[Rule] and Replacement /. Getting Help...\ \>", "Subtitle", CellChangeTimes->{{3.394882165362886*^9, 3.394882171920279*^9}}, TextAlignment->Center, TextJustification->0, CellTags->"mmtag:02:rules_(->)_and_replacement_(/.)"], Cell[BoxData[ RowBox[{"ARule", " ", "=", " ", RowBox[{"a", "\[Rule]", FractionBox["\[Pi]", "3"]}]}]], "Input", CellChangeTimes->{3.394880549335618*^9}, CellTags->"mmtag:02:Rule_(->)"], Cell[BoxData["a"], "Input"], Cell[BoxData[{"AList", "\[IndentingNewLine]", RowBox[{"AList", "/.", "ARule"}]}], "Input", CellTags->"mmtag:02:replacement_(/.)"], Cell[BoxData[ RowBox[{"SomeRules", " ", "=", " ", RowBox[{"{", RowBox[{"ARule", ",", RowBox[{"b", "->", FractionBox["\[Pi]", "12"]}]}], "}"}]}]], "Input", CellChangeTimes->{3.394880539617671*^9}], Cell[BoxData[ RowBox[{"AList", "/.", "SomeRules"}]], "Input"], Cell[BoxData[ RowBox[{ RowBox[{"a", " ", "=", " ", "SomeOtherSymbol"}], ";"}]], "Input", CellChangeTimes->{3.394880531202855*^9}], Cell[BoxData["AList"], "Input"], Cell[BoxData[ RowBox[{"StrangeRule", " ", "=", " ", RowBox[{"{", RowBox[{ RowBox[{"Rational", "[", RowBox[{"x_", ",", "y_"}], "]"}], " ", "\[RuleDelayed]", " ", RowBox[{"y", "/", "x"}]}], "}"}]}]], "Input", CellChangeTimes->{3.394880527759157*^9}], Cell[BoxData[ RowBox[{ RowBox[{"(", RowBox[{"AList", "/.", "SomeRules"}], ")"}], "/.", "StrangeRule"}]], "Input"], Cell[CellGroupData[{ Cell["Getting Help", "Title"], Cell[CellGroupData[{ Cell[TextData[{ "Several methods of getting help are available.\n \n 1. Typing ", StyleBox["?ExpIntegralEi", FontFamily->"Courier"], " returned information about the symbol ", StyleBox["ExpIntegralEi. ", FontFamily->"Courier"], "Typing", StyleBox[" ??FunctionName ", FontFamily->"Courier"], "gives even more information\[LongDash]try", StyleBox[" ??Plot. ", FontFamily->"Courier"], "Wildcards can also by used as demonstrated below. You can click on the \ resulting grid-list to pull up documentation." }], "Text", CellChangeTimes->{{3.394878216586862*^9, 3.394878249801901*^9}, { 3.394882337188983*^9, 3.39488236813853*^9}}, CellTags->{"mmtag:02:help", "mmtag:02:Help_Browser"}], Cell[BoxData[ RowBox[{"\[IndentingNewLine]", RowBox[{"?", "*Exp*"}]}]], "Input"], Cell[TextData[{ "Each of the above is linked to Mathematica's Help Browser.\n\n2. Typing \ Options[Plot] returned a list of options that can be adjusted by the user \ until the result (in this case the appearance) of the plot is satisfactory.\n\ \n", StyleBox["Mathematica", FontSlant->"Italic"], "'s Help Browser is a very useful tool and will probably become a primary \ resource for students. It contains good tutorials and demonstrations that \ can be copied and pasted. It has very good and concise descriptions of \ mathematics; in fact, exploring the Help Browser is a good way to explore \ mathematics as well as ", StyleBox["Mathematica", FontSlant->"Italic"], ". For instance , the discussion of \"Combinatorial Functions\" by typing \ \"Combinatorial\" at the help browser---you will get a list of results that \ points to tutorials and overvies. " }], "Text", CellChangeTimes->{{3.394878394503982*^9, 3.394878454970954*^9}, { 3.3948823759773607`*^9, 3.394882376325598*^9}}, CellTags->"mmtag:02:Options[]"] }, Open ]] }, Open ]] }, Open ]] }, PrintingStyleEnvironment->"FullPageColorPrint", WindowToolbars->{}, Evaluator->"Local", CellGrouping->Manual, WindowSize->{1404, 763}, WindowMargins->{{94, Automatic}, {Automatic, 48}}, WindowTitle->"Lecture 02 MIT 3.016 (Fall 2011) \[Copyright] W. Craig Carter \ 2003--2011", PrintingCopies->1, PrintingPageRange->{1, Automatic}, PrintingOptions->{"PaperOrientation"->"Portrait", "PrintCellBrackets"->False, "PrintMultipleHorizontalPages"->False, "PrintRegistrationMarks"->False, "PrintingMargins"->36}, ShowSelection->True, CellLabelAutoDelete->True, FrontEndVersion->"8.0 for Mac OS X x86 (32-bit, 64-bit Kernel) (November 6, \ 2010)", StyleDefinitions->"Default.nb" ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{ "mmtag:02:Mathematica_on_Athena"->{ Cell[2604, 60, 3517, 86, 495, "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}]}, "mmtag:02:command_execution"->{ Cell[2604, 60, 3517, 86, 495, "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}]}, "mmtag:02:executing_commands"->{ Cell[2604, 60, 3517, 86, 495, "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}]}, "mmtag:02:Athena__using_Mathematica_on"->{ Cell[2604, 60, 3517, 86, 495, "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}]}, "mmtag:02:assignment_to_symbols"->{ Cell[6158, 151, 216, 4, 46, "Subtitle", CellTags->"mmtag:02:assignment_to_symbols"], Cell[6377, 157, 181, 4, 67, "Section", CellTags->"mmtag:02:assignment_to_symbols"], Cell[9761, 299, 336, 9, 70, "Subtitle", CellTags->"mmtag:02:assignment_to_symbols"]}, "mmtag:02:exact_and_numerical_representations"->{ Cell[7436, 199, 197, 6, 89, "Section", CellTags->"mmtag:02:exact_and_numerical_representations"]}, "mmtag:02:equality(==)_and_assignment(=)"->{ Cell[8345, 239, 174, 3, 67, "Section", CellTags->"mmtag:02:equality(==)_and_assignment(=)"]}, "mmtag:02:clearing_assignments_or_variables"->{ Cell[9133, 270, 163, 3, 67, "Section", CellTags->{ "mmtag:02:clearing_assignments_or_variables", "mmtag:02:Clear[]"}]}, "mmtag:02:Clear[]"->{ Cell[9133, 270, 163, 3, 67, "Section", CellTags->{ "mmtag:02:clearing_assignments_or_variables", "mmtag:02:Clear[]"}]}, "mmtag:02:alternative_syntax_for_functions(//)"->{ Cell[10527, 329, 348, 8, 77, "Section", CellTags->{ "mmtag:02:alternative_syntax_for_functions(//)", "mmtag:02:functions__alternative_syntax_for_application(//)"}]}, "mmtag:02:functions__alternative_syntax_for_application(//)"->{ Cell[10527, 329, 348, 8, 77, "Section", CellTags->{ "mmtag:02:alternative_syntax_for_functions(//)", "mmtag:02:functions__alternative_syntax_for_application(//)"}]}, "mmtag:02:Integrate[]"->{ Cell[12858, 397, 159, 4, 74, "Input", CellTags->"mmtag:02:Integrate[]"]}, "mmtag:02:derivatives_D[]"->{ Cell[13322, 418, 280, 5, 70, "Subtitle", CellTags->{"mmtag:02:derivatives_D[]", "mmtag:02:D[]_derivatives"}]}, "mmtag:02:D[]_derivatives"->{ Cell[13322, 418, 280, 5, 70, "Subtitle", CellTags->{"mmtag:02:derivatives_D[]", "mmtag:02:D[]_derivatives"}]}, "mmtag:02:Plot[]"->{ Cell[14997, 479, 180, 5, 74, "Input", CellTags->"mmtag:02:Plot[]"]}, "mmtag:02:Options[]"->{ Cell[15689, 504, 96, 2, 74, "Input", CellTags->"mmtag:02:Options[]"], Cell[22878, 762, 1035, 20, 195, "Text", CellTags->"mmtag:02:Options[]"]}, "mmtag:02:PlotLabel"->{ Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}]}, "mmtag:02:PlotStyle"->{ Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}]}, "mmtag:02:TextStyle"->{ Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}]}, "mmtag:02:AxesLabel"->{ Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}]}, "mmtag:02:plots__modifying_and_annotating"->{ Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}]}, "mmtag:02:matrices"->{ Cell[17133, 547, 200, 4, 70, "Subtitle", CellTags->{ "mmtag:02:matrices", "mmtag:02:lists__manipulating", "mmtag:02:lists_{}"}]}, "mmtag:02:lists__manipulating"->{ Cell[17133, 547, 200, 4, 70, "Subtitle", CellTags->{ "mmtag:02:matrices", "mmtag:02:lists__manipulating", "mmtag:02:lists_{}"}]}, "mmtag:02:lists_{}"->{ Cell[17133, 547, 200, 4, 70, "Subtitle", CellTags->{ "mmtag:02:matrices", "mmtag:02:lists__manipulating", "mmtag:02:lists_{}"}]}, "mmtag:02:Sort[]"->{ Cell[18283, 589, 91, 2, 74, "Input", CellTags->"mmtag:02:Sort[]"]}, "mmtag:02:Select[]"->{ Cell[18377, 593, 124, 3, 74, "Input", CellTags->"mmtag:02:Select[]"]}, "mmtag:02:Permutations[]"->{ Cell[18854, 612, 214, 5, 74, "Input", CellTags->"mmtag:02:Permutations[]"]}, "mmtag:02:Dimensions[]"->{ Cell[19071, 619, 103, 2, 74, "Input", CellTags->"mmtag:02:Dimensions[]"]}, "mmtag:02:Transpose[]"->{ Cell[19177, 623, 134, 3, 74, "Input", CellTags->"mmtag:02:Transpose[]"]}, "mmtag:02:MatrixForm[]"->{ Cell[20169, 663, 327, 9, 105, "Input", CellTags->"mmtag:02:MatrixForm[]"]}, "mmtag:02:rules_(->)_and_replacement_(/.)"->{ Cell[20533, 677, 250, 7, 122, "Subtitle", CellTags->"mmtag:02:rules_(->)_and_replacement_(/.)"]}, "mmtag:02:Rule_(->)"->{ Cell[20786, 686, 193, 5, 103, "Input", CellTags->"mmtag:02:Rule_(->)"]}, "mmtag:02:replacement_(/.)"->{ Cell[21012, 695, 132, 2, 105, "Input", CellTags->"mmtag:02:replacement_(/.)"]}, "mmtag:02:help"->{ Cell[22076, 738, 712, 18, 103, "Text", CellTags->{"mmtag:02:help", "mmtag:02:Help_Browser"}]}, "mmtag:02:Help_Browser"->{ Cell[22076, 738, 712, 18, 103, "Text", CellTags->{"mmtag:02:help", "mmtag:02:Help_Browser"}]} } *) (*CellTagsIndex CellTagsIndex->{ {"mmtag:02:Mathematica_on_Athena", 24762, 813}, {"mmtag:02:command_execution", 24999, 818}, {"mmtag:02:executing_commands", 25237, 823}, {"mmtag:02:Athena__using_Mathematica_on", 25485, 828}, {"mmtag:02:assignment_to_symbols", 25726, 833}, {"mmtag:02:exact_and_numerical_representations", 26047, 840}, {"mmtag:02:equality(==)_and_assignment(=)", 26197, 843}, {"mmtag:02:clearing_assignments_or_variables", 26345, 846}, {"mmtag:02:Clear[]", 26497, 850}, {"mmtag:02:alternative_syntax_for_functions(//)", 26678, 854}, {"mmtag:02:functions__alternative_syntax_for_application(//)", 26924, 859}, {"mmtag:02:Integrate[]", 27132, 864}, {"mmtag:02:derivatives_D[]", 27242, 867}, {"mmtag:02:D[]_derivatives", 27389, 870}, {"mmtag:02:Plot[]", 27527, 873}, {"mmtag:02:Options[]", 27626, 876}, {"mmtag:02:PlotLabel", 27805, 881}, {"mmtag:02:PlotStyle", 28033, 886}, {"mmtag:02:TextStyle", 28261, 891}, {"mmtag:02:AxesLabel", 28489, 896}, {"mmtag:02:plots__modifying_and_annotating", 28739, 901}, {"mmtag:02:matrices", 28966, 906}, {"mmtag:02:lists__manipulating", 29146, 911}, {"mmtag:02:lists_{}", 29315, 916}, {"mmtag:02:Sort[]", 29482, 921}, {"mmtag:02:Select[]", 29579, 924}, {"mmtag:02:Permutations[]", 29685, 927}, {"mmtag:02:Dimensions[]", 29795, 930}, {"mmtag:02:Transpose[]", 29902, 933}, {"mmtag:02:MatrixForm[]", 30009, 936}, {"mmtag:02:rules_(->)_and_replacement_(/.)", 30137, 939}, {"mmtag:02:Rule_(->)", 30265, 942}, {"mmtag:02:replacement_(/.)", 30375, 945}, {"mmtag:02:help", 30480, 948}, {"mmtag:02:Help_Browser", 30608, 951} } *) (*NotebookFileOutline Notebook[{ Cell[628, 22, 74, 0, 76, "Title"], Cell[CellGroupData[{ Cell[727, 26, 57, 0, 67, "Section"], Cell[787, 28, 1731, 25, 310, "Text"] }, Closed]], Cell[CellGroupData[{ Cell[2555, 58, 46, 0, 26, "Subsubtitle"], Cell[2604, 60, 3517, 86, 495, "Text", CellTags->{ "mmtag:02:Mathematica_on_Athena", "mmtag:02:command_execution", "mmtag:02:executing_commands", "mmtag:02:Athena__using_Mathematica_on"}] }, Closed]], Cell[CellGroupData[{ Cell[6158, 151, 216, 4, 46, "Subtitle", CellTags->"mmtag:02:assignment_to_symbols"], Cell[6377, 157, 181, 4, 67, "Section", CellTags->"mmtag:02:assignment_to_symbols"], Cell[6561, 163, 123, 4, 41, "Input"], Cell[6687, 169, 74, 1, 27, "Input"], Cell[6764, 172, 49, 1, 27, "Input"], Cell[6816, 175, 177, 6, 27, "Input"], Cell[6996, 183, 60, 1, 27, "Input"], Cell[7059, 186, 247, 6, 47, "Input"], Cell[7309, 194, 83, 1, 27, "Input"], Cell[7395, 197, 38, 0, 27, "Input"], Cell[7436, 199, 197, 6, 89, "Section", CellTags->"mmtag:02:exact_and_numerical_representations"], Cell[7636, 207, 101, 2, 21, "Input"], Cell[7740, 211, 145, 5, 47, "Input"], Cell[7888, 218, 147, 5, 47, "Input"], Cell[8038, 225, 137, 4, 27, "Input"], Cell[8178, 231, 77, 2, 27, "Input"], Cell[8258, 235, 84, 2, 27, "Input"], Cell[8345, 239, 174, 3, 67, "Section", CellTags->"mmtag:02:equality(==)_and_assignment(=)"], Cell[8522, 244, 162, 5, 41, "Input"], Cell[8687, 251, 114, 3, 47, "Input"], Cell[8804, 256, 164, 5, 47, "Input"], Cell[8971, 263, 159, 5, 47, "Input"], Cell[9133, 270, 163, 3, 67, "Section", CellTags->{"mmtag:02:clearing_assignments_or_variables", "mmtag:02:Clear[]"}], Cell[9299, 275, 44, 1, 21, "Input"], Cell[9346, 278, 58, 1, 27, "Input"], Cell[9407, 281, 44, 1, 27, "Input"], Cell[9454, 284, 145, 5, 88, "Input"], Cell[9602, 291, 46, 0, 34, "Text"], Cell[9651, 293, 73, 1, 54, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[9761, 299, 336, 9, 70, "Subtitle", CellTags->"mmtag:02:assignment_to_symbols"], Cell[10100, 310, 87, 2, 77, "Section"], Cell[10190, 314, 113, 3, 54, "Input"], Cell[10306, 319, 84, 2, 54, "Input"], Cell[10393, 323, 131, 4, 54, "Input"], Cell[10527, 329, 348, 8, 77, "Section", CellTags->{ "mmtag:02:alternative_syntax_for_functions(//)", "mmtag:02:functions__alternative_syntax_for_application(//)"}], Cell[10878, 339, 101, 2, 54, "Input"], Cell[10982, 343, 169, 3, 54, "Input"], Cell[11154, 348, 264, 6, 54, "Input"], Cell[11421, 356, 413, 8, 54, "Input"], Cell[11837, 366, 521, 11, 54, "Input"], Cell[12361, 379, 65, 1, 74, "Input"], Cell[12429, 382, 103, 2, 77, "Section"], Cell[12535, 386, 133, 2, 105, "Input"], Cell[12671, 390, 107, 1, 105, "Input"], Cell[12781, 393, 74, 2, 77, "Section"], Cell[12858, 397, 159, 4, 74, "Input", CellTags->"mmtag:02:Integrate[]"], Cell[13020, 403, 109, 3, 74, "Input"], Cell[13132, 408, 94, 2, 77, "Section"], Cell[13229, 412, 56, 1, 74, "Input"] }, Open ]], Cell[CellGroupData[{ Cell[13322, 418, 280, 5, 70, "Subtitle", CellTags->{"mmtag:02:derivatives_D[]", "mmtag:02:D[]_derivatives"}], Cell[13605, 425, 117, 3, 74, "Input"], Cell[13725, 430, 125, 3, 74, "Input"], Cell[13853, 435, 117, 3, 74, "Input"], Cell[13973, 440, 227, 6, 74, "Input"], Cell[14203, 448, 83, 2, 74, "Input"], Cell[14289, 452, 83, 2, 74, "Input"], Cell[14375, 456, 82, 2, 74, "Input"], Cell[14460, 460, 69, 1, 74, "Input"], Cell[14532, 463, 67, 0, 105, "Input"], Cell[14602, 465, 117, 2, 105, "Input"], Cell[14722, 469, 185, 4, 105, "Input"], Cell[14910, 475, 84, 2, 77, "Section"], Cell[14997, 479, 180, 5, 74, "Input", CellTags->"mmtag:02:Plot[]"], Cell[15180, 486, 199, 6, 74, "Input"], Cell[15382, 494, 304, 8, 74, "Input"], Cell[15689, 504, 96, 2, 74, "Input", CellTags->"mmtag:02:Options[]"], Cell[15788, 508, 1308, 34, 195, "Input", CellTags->{ "mmtag:02:PlotLabel", "mmtag:02:PlotStyle", "mmtag:02:TextStyle", "mmtag:02:AxesLabel", "mmtag:02:plots__modifying_and_annotating"}] }, Open ]], Cell[CellGroupData[{ Cell[17133, 547, 200, 4, 70, "Subtitle", CellTags->{ "mmtag:02:matrices", "mmtag:02:lists__manipulating", "mmtag:02:lists_{}"}], Cell[17336, 553, 86, 2, 34, "Text"], Cell[17425, 557, 73, 1, 74, "Input"], Cell[17501, 560, 228, 6, 102, "Input"], Cell[17732, 568, 63, 1, 74, "Input"], Cell[17798, 571, 60, 1, 74, "Input"], Cell[17861, 574, 115, 2, 105, "Input"], Cell[17979, 578, 164, 4, 85, "Input"], Cell[18146, 584, 134, 3, 105, "Input"], Cell[18283, 589, 91, 2, 74, "Input", CellTags->"mmtag:02:Sort[]"], Cell[18377, 593, 124, 3, 74, "Input", CellTags->"mmtag:02:Select[]"], Cell[18504, 598, 160, 4, 74, "Input"], Cell[18667, 604, 90, 2, 74, "Input"], Cell[18760, 608, 91, 2, 74, "Input"], Cell[18854, 612, 214, 5, 74, "Input", CellTags->"mmtag:02:Permutations[]"], Cell[19071, 619, 103, 2, 74, "Input", CellTags->"mmtag:02:Dimensions[]"], Cell[19177, 623, 134, 3, 74, "Input", CellTags->"mmtag:02:Transpose[]"], Cell[19314, 628, 121, 3, 74, "Input"], Cell[19438, 633, 85, 2, 74, "Input"], Cell[CellGroupData[{ Cell[19548, 639, 109, 3, 74, "Input"], Cell[19660, 644, 134, 4, 74, "Input"] }, Open ]], Cell[19809, 651, 289, 8, 74, "Input"], Cell[20101, 661, 65, 0, 34, "Text"], Cell[20169, 663, 327, 9, 105, "Input", CellTags->"mmtag:02:MatrixForm[]"] }, Open ]], Cell[CellGroupData[{ Cell[20533, 677, 250, 7, 122, "Subtitle", CellTags->"mmtag:02:rules_(->)_and_replacement_(/.)"], Cell[20786, 686, 193, 5, 103, "Input", CellTags->"mmtag:02:Rule_(->)"], Cell[20982, 693, 27, 0, 74, "Input"], Cell[21012, 695, 132, 2, 105, "Input", CellTags->"mmtag:02:replacement_(/.)"], Cell[21147, 699, 215, 6, 102, "Input"], Cell[21365, 707, 62, 1, 74, "Input"], Cell[21430, 710, 133, 3, 74, "Input"], Cell[21566, 715, 31, 0, 74, "Input"], Cell[21600, 717, 271, 7, 74, "Input"], Cell[21874, 726, 123, 4, 74, "Input"], Cell[CellGroupData[{ Cell[22022, 734, 29, 0, 96, "Title"], Cell[CellGroupData[{ Cell[22076, 738, 712, 18, 103, "Text", CellTags->{"mmtag:02:help", "mmtag:02:Help_Browser"}], Cell[22791, 758, 84, 2, 85, "Input"], Cell[22878, 762, 1035, 20, 195, "Text", CellTags->"mmtag:02:Options[]"] }, Open ]] }, Open ]] }, Open ]] } ] *) (* End of internal cache information *)