(************** 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[ 29411, 771]*) (*NotebookOutlinePosition[ 30352, 801]*) (* CellTagsIndexPosition[ 30308, 797]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["\<\ SimpleFit[ ] routine (a modified version of the standard \ Mathematica Fit[] routine)\ \>", "Subsection", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell["\<\ David Withoff at Wolfram Associates (WRI) has provided me with a \ modified version of the Mathematica Fit[ ] routine for doing a least-squares \ fit of a set of basis functions to a list of data values. This modified \ version, which he named SimpleFit[], is so useful that I would like to pass \ it along to to others; and so I'm posting it here with his permission. A \ short illustration of the application of SimpleFit to a \ Hermite-gaussian-squared mode expansion is given below. Withoff's alternative to the standard Mathematic Fit[] command is defined as:\ \ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(SimpleFit[data_, basis_, vars_] := Block[{purebasis, designmatrix, designinverse, response, fitcoefficients}, purebasis = Function[Evaluate[vars], Evaluate[basis]]; designmatrix = Apply[purebasis, data, 1]; designinverse = PseudoInverse[designmatrix]; response = Last /@ data; fitcoefficients = designinverse . response; fitcoefficients]\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell["\<\ Let's apply this to a test function in which the data points which we want to \ match to be on a broadened unit-area gaussian function with gaussian spot \ size w0=2 between x=0 and x = 3\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(w0 = 2; g[x_] := Sqrt[2. /\((Pi\ w0^2)\)]\ Exp[\(-2\)\ x^2/w0^2]; hgData = Table[{x, N[g[x]]}, {x, 0, 3, 0.3}];\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \({{0, 0.3989422804014327`}, {0.3`, 0.38138781546052414`}, {0.6`, 0.33322460289179967`}, {0.8999999999999999`, 0.26608524989875487`}, {1.2`, 0.19418605498321295`}, {1.5`, 0.12951759566589174`}, {1.7999999999999998`, 0.07895015830089418`}, {2.1`, 0.04398359598042719`}, {2.4`, 0.0223945302948429`}, {2.6999999999999997`, 0.010420934814422605`}, {3.`, 0.0044318484119380075`}}\)], "Output"] }, Open ]], Cell["\<\ We want to match this data to a basis set of Hermite-gaussian \ squared functions h[n,x] in the form c[0] h[0,x] + c[1] h[1,x] + c[2] h[2,x] where the h[n,x] are normalized Hermite-gaussian (HG) squared intensity \ profiles with spot size w = Sqrt[2]. (These correspond to the intensity \ profiles of lowest and higher order modes in a stable-cavity laser device.) \ Note that the HG functions themselves are orthogonal, but the HG-squared \ functions h[n,x] are not. These functions as defined as follows:\ \>", "Text",\ PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[{ \(\(dum = Sqrt[1. /N[Pi]];\)\), "\n", \(h[n_, x_] = \((dum/\((2^n\ \(n!\))\))\)\ HermiteH[n, x]^2\ Exp[\(-x^2\)]; h[n, x]\)}], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(\(0.5641895835477563`\ 2\^\(-n\)\ \[ExponentialE]\^\(-x\^2\)\ \ HermiteH[n, x]\^2\)\/\(n!\)\)], "Output"] }, Open ]], Cell["\<\ One way to do this expansion would be to use the Fit[] command from \ Mathematica as follows. We'll use three basis functions in this example, and \ call the result hgStandardFit:\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[{ \(\(hgBasis = Table[h[n, x], {n, 0, 2}];\)\n\), "\\[IndentingNewLine]", \(hgStandardFit[x_] = Fit[hgData, hgBasis, x]\)}], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(0.37654699770794764`\ \[ExponentialE]\^\(-x\^2\) + 0.2579758947125718`\ \[ExponentialE]\^\(-x\^2\)\ x\^2 + 0.006311757206902178`\ \[ExponentialE]\^\(-x\^2\)\ \((\(-2\) + 4\ x\^2)\ \)\^2\)], "Output"] }, Open ]], Cell["\<\ The problem with this result is that the expansion is expressed not \ in the normalized functions we want, but rather in terms of the underlying \ algebraic form of the Hermite functions. As a result the numerical \ coefficients are not the c[n] values that we want. Applying Withoff's SimpleFit[] command to the same data and basis set, \ produces a list hgCoefficients which do contain the desired expansion \ coefficients:\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(hgCoefficients = SimpleFit[hgData, hgBasis, x]\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \({0.6674121761343624`, 0.22862518401204707`, 0.08949838693883516`}\)], "Output"] }, Open ]], Cell["\<\ These are the expansion coefficients c[n] that we want. At least \ in simple cases like this one, applying a normalized basis set to a \ normalized (i.e., unity area) input function as above should yield a \"total \ power\" given by the sum of the c[n] coefficients which is close to unity \ (though this will not always happen, especially if some of the c[n] turn out \ to be negative):\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(pwr = Apply[Plus, hgCoefficients]\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(0.9855357470852447`\)], "Output"] }, Open ]], Cell["\<\ This is not bad, and gets closer to unity if you use more functions in the \ basis set. The fitting function (call it hgSimpleFit) is then given by the dot product \ of the hgCoefficients and the hgBasis, and has the expanded form:\ \>", "Text",\ PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(hgSimpleFit[x_] = Expand[hgCoefficients . hgBasis]\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(0.4017940265355564`\ \[ExponentialE]\^\(-x\^2\) + 0.15698777940213726`\ \[ExponentialE]\^\(-x\^2\)\ x\^2 + 0.10098811531043472`\ \[ExponentialE]\^\(-x\^2\)\ x\^4\)], "Output"] }, Open ]], Cell["\<\ To check that this hgSimpleFit result is OK, compare it with the \ expanded hgStandardFit result:\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(Expand[hgStandardFit[x]]\)], "Input", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[BoxData[ \(0.40179402653555635`\ \[ExponentialE]\^\(-x\^2\) + 0.15698777940213698`\ \[ExponentialE]\^\(-x\^2\)\ x\^2 + 0.10098811531043485`\ \[ExponentialE]\^\(-x\^2\)\ x\^4\)], "Output"] }, Open ]], Cell["\<\ The expanded versions of hgStandardFit and hgSimpleFit agree, as \ they should.\ \>", "Text", PageWidth->WindowWidth, InitializationCell->True, ShowSpecialCharacters->False], Cell[CellGroupData[{ Cell[BoxData[ \(\(Plot[{g[x], hgSimpleFit[x]}, {x, 0, 2}];\)\)], "Input"], Cell[GraphicsData["PostScript", "\<\ %! %%Creator: Mathematica %%AspectRatio: .61803 MathPictureStart /Mabs { Mgmatrix idtransform Mtmatrix dtransform } bind def /Mabsadd { Mabs 3 -1 roll add 3 1 roll add exch } bind def %% Graphics %%IncludeResource: font Courier %%IncludeFont: Courier /Courier findfont 10 scalefont setfont % Scaling calculations 0.0238095 0.47619 0.0147151 1.46494 [ [.2619 .00222 -9 -9 ] [.2619 .00222 9 0 ] [.5 .00222 -3 -9 ] [.5 .00222 3 0 ] [.7381 .00222 -9 -9 ] [.7381 .00222 9 0 ] [.97619 .00222 -3 -9 ] [.97619 .00222 3 0 ] [.01131 .16121 -18 -4.5 ] [.01131 .16121 0 4.5 ] [.01131 .3077 -18 -4.5 ] [.01131 .3077 0 4.5 ] [.01131 .4542 -18 -4.5 ] [.01131 .4542 0 4.5 ] [.01131 .60069 -18 -4.5 ] [.01131 .60069 0 4.5 ] [ 0 0 0 0 ] [ 1 .61803 0 0 ] ] MathScale % Start of Graphics 1 setlinecap 1 setlinejoin newpath 0 g .25 Mabswid [ ] 0 setdash .2619 .01472 m .2619 .02097 L s [(0.5)] .2619 .00222 0 1 Mshowa .5 .01472 m .5 .02097 L s [(1)] .5 .00222 0 1 Mshowa .7381 .01472 m .7381 .02097 L s [(1.5)] .7381 .00222 0 1 Mshowa .97619 .01472 m .97619 .02097 L s [(2)] .97619 .00222 0 1 Mshowa .125 Mabswid .07143 .01472 m .07143 .01847 L s .11905 .01472 m .11905 .01847 L s .16667 .01472 m .16667 .01847 L s .21429 .01472 m .21429 .01847 L s .30952 .01472 m .30952 .01847 L s .35714 .01472 m .35714 .01847 L s .40476 .01472 m .40476 .01847 L s .45238 .01472 m .45238 .01847 L s .54762 .01472 m .54762 .01847 L s .59524 .01472 m .59524 .01847 L s .64286 .01472 m .64286 .01847 L s .69048 .01472 m .69048 .01847 L s .78571 .01472 m .78571 .01847 L s .83333 .01472 m .83333 .01847 L s .88095 .01472 m .88095 .01847 L s .92857 .01472 m .92857 .01847 L s .25 Mabswid 0 .01472 m 1 .01472 L s .02381 .16121 m .03006 .16121 L s [(0.1)] .01131 .16121 1 0 Mshowa .02381 .3077 m .03006 .3077 L s [(0.2)] .01131 .3077 1 0 Mshowa .02381 .4542 m .03006 .4542 L s [(0.3)] .01131 .4542 1 0 Mshowa .02381 .60069 m .03006 .60069 L s [(0.4)] .01131 .60069 1 0 Mshowa .125 Mabswid .02381 .04401 m .02756 .04401 L s .02381 .07331 m .02756 .07331 L s .02381 .10261 m .02756 .10261 L s .02381 .13191 m .02756 .13191 L s .02381 .19051 m .02756 .19051 L s .02381 .21981 m .02756 .21981 L s .02381 .24911 m .02756 .24911 L s .02381 .2784 m .02756 .2784 L s .02381 .337 m .02756 .337 L s .02381 .3663 m .02756 .3663 L s .02381 .3956 m .02756 .3956 L s .02381 .4249 m .02756 .4249 L s .02381 .4835 m .02756 .4835 L s .02381 .51279 m .02756 .51279 L s .02381 .54209 m .02756 .54209 L s .02381 .57139 m .02756 .57139 L s .25 Mabswid .02381 0 m .02381 .61803 L s 0 0 m 1 0 L 1 .61803 L 0 .61803 L closepath clip newpath .5 Mabswid .02381 .59914 m .02499 .59914 L .02605 .59913 L .02729 .59913 L .02846 .59911 L .03053 .59908 L .03279 .59904 L .03527 .59897 L .0379 .59889 L .04262 .59869 L .04749 .59842 L .05205 .59811 L .06244 .59722 L .07305 .59603 L .08274 .59468 L .10458 .59079 L .12357 .58646 L .14429 .58073 L .18493 .56663 L .22406 .54968 L .26565 .52843 L .30571 .5052 L .34426 .48072 L .38527 .45286 L .42475 .42472 L .46273 .39688 L .50315 .36684 L .54206 .33796 L .58342 .3077 L .62326 .27933 L .66159 .25306 L .70238 .22645 L .74164 .20234 L .77939 .18068 L .8196 .15936 L .85828 .14058 L .89942 .12249 L .93905 .10688 L .97619 .09381 L s .02381 .60332 m .02499 .60332 L .02605 .60331 L .02729 .6033 L .02846 .60328 L .03053 .60325 L .03279 .60319 L .03527 .60311 L .0379 .60301 L .04262 .60276 L .04749 .60243 L .05205 .60206 L .06244 .60097 L .07305 .59951 L .08274 .59788 L .10458 .59317 L .14429 .5812 L .18248 .56595 L .22313 .54635 L .26226 .5249 L .30384 .50003 L .34391 .47469 L .38246 .44948 L .42346 .42211 L .46295 .39545 L .50092 .36965 L .54134 .34209 L .58025 .31553 L .62161 .28738 L .66146 .26049 L .69979 .23504 L .74057 .20866 L .77984 .18424 L .81759 .16194 L .85779 .13974 L .89648 .12011 L .93762 .10131 L .97619 .0857 L s % End of Graphics MathPictureEnd \ \>"], "Graphics", ImageSize->{288, 177.938}, ImageMargins->{{43, 0}, {0, 0}}, ImageRegion->{{0, 1}, {0, 1}}, ImageCache->GraphicsData["Bitmap", "\<\ CF5dJ6E]HGAYHf4PAg9QL6QYHg0?ooo`030000003oool0oooo00d0oooo00<000000?ooo`3oool03@3oool00`000000oooo0?oo o`0=0?ooo`030000003oool0oooo00h0oooo00<000000?ooo`3oool03@3oool00`000000oooo0?oo o`0=0?ooo`030000003oool0oooo00d0oooo00<000000?ooo`3oool03@3oool00`000000oooo0?oo o`0>0?ooo`030000003oool0oooo00d0oooo00<000000?ooo`3oool03@3oool00`000000oooo0?oo o`0=0?ooo`030000003oool0oooo00d0oooo00<000000?ooo`3oool01`3oool001X0oooo00<00000 0?ooo`3oool0CP3oool00`000000oooo0?ooo`1>0?ooo`030000003oool0oooo04h0oooo00<00000 0?ooo`3oool0CP3oool00`000000oooo0?ooo`070?ooo`006P3oool00`000000oooo0?ooo`3o0?oo od`0oooo000J0?ooo`030000003oool0oooo0?l0ooooC03oool001X0oooo00<000000?ooo`3oool0 o`3ooom<0?ooo`006P3oool00`000000oooo0?ooo`3o0?oood`0oooo000J0?ooo`030000003oool0 oooo0?l0ooooC03oool001X0oooo00<000000?ooo`3oool0o`3ooom<0?ooo`006P3oool00`000000 oooo0?ooo`3o0?oood`0oooo000J0?ooo`<00000o`3ooom<0?ooo`006P3oool00`000000oooo0?oo o`3o0?oood`0oooo000J0?ooo`030000003oool0oooo0?l0ooooC03oool001X0oooo00<000000?oo o`3oool0o`3ooom<0?ooo`006P3oool00`000000oooo0?ooo`3o0?oood`0oooo000J0?ooo`030000 003oool0oooo0?l0ooooC03oool001X0oooo00<000000?ooo`3oool0o`3ooom<0?ooo`006P3oool0 0`000000oooo0?ooo`3o0?oood`0oooo000J0?ooo`030000003oool0oooo0?l0ooooC03oool001X0 oooo00<000000?ooo`3oool0o`3ooom<0?ooo`006P3oool300000?l0ooooC03oool001X0oooo00<0 00000?ooo`3oool0o`3ooom<0?ooo`006P3oool00`000000oooo0?ooo`3o0?oood`0oooo000J0?oo o`030000003oool0oooo0?l0ooooC03oool001X0oooo00<000000?ooo`3oool0o`3ooom10?ooo`80 00002@3oool001X0oooo00<000000?ooo`3oool0o`3oooln0?ooo`<000002`3oool001X0oooo00<0 00000?ooo`3oool0o`3ooolk0?ooo`<000003P3oool001X0oooo00<000000?ooo`3oool0o`3oooli 0?ooo`8000001P3oool2000000T0oooo000J0?ooo`030000003oool0oooo0?l0oooo=P3oool30000 00D0oooo0`00000;0?ooo`006P3oool00`000000oooo0?ooo`3o0?oooc@0oooo0P0000050?ooo`<0 00003P3oool001X0oooo0`00003o0?oooc80oooo0P0000040?ooo`<000004@3oool001X0oooo00<0 00000?ooo`3oool0o`3oool`0?ooo`8000000`3oool3000001@0oooo000J0?ooo`030000003oool0 oooo0?l0oooo;P3oool200000080oooo0`00000G0?ooo`006P3oool00`000000oooo0?ooo`3o0?oo ob`0oooo0P0000020?ooo`8000006P3oool001X0oooo00<000000?ooo`3oool0o`3ooolZ0?ooo`80 00000P3oool2000001`0oooo000J0?ooo`030000003oool0oooo0?l0oooo:03oool2000000040?oo o`0000000000000001h0oooo000J0?ooo`030000003oool0oooo0?l0oooo9P3oool2000000030?oo o`00000000000240oooo000J0?ooo`030000003oool0oooo0?l0oooo903oool2000000030?ooo`00 0000000002<0oooo000J0?ooo`030000003oool0oooo0?l0oooo8P3oool5000002D0oooo000J0?oo o`030000003oool0oooo0?l0oooo7`3oool5000002P0oooo000J0?ooo`<00000o`3ooolM0?ooo`80 000000<0oooo000000000000:P3oool001X0oooo00<000000?ooo`3oool0o`3ooolK0?ooo`D00000 ;03oool001X0oooo00<000000?ooo`3oool0o`3ooolI0?ooo`@00000;`3oool001X0oooo00<00000 0?ooo`3oool0o`3ooolG0?ooo`@00000<@3oool001X0oooo00<000000?ooo`3oool0o`3ooolF0?oo o`<00000<`3oool001X0oooo00<000000?ooo`3oool0o`3ooolD0?ooo`<00000=@3oool001X0oooo 00<000000?ooo`3oool0o`3ooolB0?ooo`<00000=`3oool000<000001P3oool2000000D0oooo1@00 00050?ooo`030000003oool0oooo0?l0oooo403oool2000003X0oooo00030?ooo`030000003oool0 oooo00<0oooo0P0000070?ooo`030000003oool0oooo00D0oooo00<000000?ooo`3oool0o`3oool> 0?ooo`800000?03oool000<0oooo00<000000?ooo`3oool0303oool00`000000oooo0?ooo`050?oo o`030000003oool0oooo0?l0oooo303oool3000003d0oooo00030?ooo`030000003oool0oooo00`0 oooo00<000000?ooo`3oool01@3oool300000?l0oooo2P3oool3000003l0oooo00030?ooo`030000 003oool0oooo00`0oooo00<000000?ooo`3oool01@3oool00`000000oooo0?ooo`3o0?ooo`P0oooo 0`0000110?ooo`000`3oool00`000000oooo0?ooo`0<0?ooo`030000003oool0oooo00D0oooo00<0 00000?ooo`3oool0o`3oool60?ooo`@00000@P3oool000<0oooo00<000000?ooo`3oool0303oool0 0`000000oooo0?ooo`050?ooo`030000003oool0oooo0?l0oooo103oool2000000030?ooo`000000 oooo04<0oooo0003000000d0oooo0`0000070?ooo`030000003oool0oooo0?l0oooo0P3oool20000 00030?ooo`000000000004D0oooo000J0?ooo`030000003oool0oooo0?l0oooo0P0000020?ooo`03 0000003oool0oooo04D0oooo000J0?ooo`030000003oool0oooo0?d0oooo0P0000020?ooo`800000 B03oool001X0oooo00<000000?ooo`3oool0o03oool01@000000oooo0?ooo`3oool0000004X0oooo 000J0?ooo`030000003oool0oooo0?X0oooo0P0000020?ooo`800000B`3oool001X0oooo00<00000 0?ooo`3oool0n@3oool00`000000oooo0?ooo`02000004d0oooo000J0?ooo`<00000m`3oool20000 0080oooo00<000000?ooo`3oool0C@3oool001X0oooo00<000000?ooo`3oool0mP3oool00`000000 oooo0?ooo`0200000500oooo000J0?ooo`030000003oool0oooo0?@0oooo0P0000000`3oool00000 0000001B0?ooo`006P3oool00`000000oooo0?ooo`3c0?ooo`040000003oool00000000005@0oooo 000J0?ooo`030000003oool0oooo0?40oooo0P0000000`3oool000000?ooo`1E0?ooo`006P3oool0 0`000000oooo0?ooo`3_0?ooo`80000000<0oooo000000000000E`3oool001X0oooo00<000000?oo o`3oool0kP3oool010000000oooo00000000001I0?ooo`006P3oool00`000000oooo0?ooo`3/0?oo o`80000000<0oooo0000003oool0FP3oool001X0oooo00<000000?ooo`3oool0jP3oool200000003 0?ooo`000000000005`0oooo000J0?ooo`030000003oool0oooo0>P0oooo0P0000020?ooo`030000 003oool0oooo05`0oooo000J0?ooo`<00000i`3oool00`000000oooo0?ooo`02000005l0oooo000J 0?ooo`030000003oool0oooo0>D0oooo0P0000000`3oool000000000001Q0?ooo`006P3oool00`00 0000oooo0?ooo`3S0?ooo`8000000P3oool00`000000oooo0?ooo`1Q0?ooo`006P3oool00`000000 oooo0?ooo`3R0?ooo`030000003oool0oooo00800000I03oool001X0oooo00<000000?ooo`3oool0 h03oool200000080oooo00<000000?ooo`3oool0I03oool001X0oooo00<000000?ooo`3oool0g`3o ool00`000000oooo0?ooo`02000006L0oooo000J0?ooo`030000003oool0oooo0=d0oooo0P000002 0?ooo`030000003oool0oooo06L0oooo000J0?ooo`030000003oool0oooo0=/0oooo0P0000020?oo o`800000JP3oool001X0oooo00<000000?ooo`3oool0fP3oool01@000000oooo0?ooo`3oool00000 06`0oooo000J0?ooo`030000003oool0oooo0=P0oooo0P0000020?ooo`800000K@3oool001X0oooo 0`00003G0?ooo`050000003oool0oooo0?ooo`000000K`3oool001X0oooo00<000000?ooo`3oool0 e@3oool2000000<0oooo00<000000?ooo`3oool0KP3oool001X0oooo00<000000?ooo`3oool0e03o ool010000000oooo0?ooo`3oool200000740oooo000J0?ooo`030000003oool0oooo0=80oooo0P00 00030?ooo`030000003oool0oooo0740oooo000J0?ooo`030000003oool0oooo0=40oooo00@00000 0?ooo`3oool0oooo0P00001d0?ooo`006P3oool00`000000oooo0?ooo`3?0?ooo`8000000`3oool0 0`000000oooo0?ooo`1d0?ooo`006P3oool00`000000oooo0?ooo`3>0?ooo`040000003oool0oooo 0?ooo`800000M`3oool001X0oooo00<000000?ooo`3oool0c@3oool01@000000oooo0?ooo`3oool0 000007T0oooo000J0?ooo`030000003oool0oooo080oooo000J0?ooo`030000 003oool0oooo06<0oooo0P0000000`3oool000000000003S0?ooo`006P3oool00`000000oooo0?oo o`1R0?ooo`040000003oool0oooo00000>D0oooo000J0?ooo`030000003oool0oooo0640oooo00@0 00000?ooo`0000000000iP3oool001X0oooo00<000000?ooo`3oool0G`3oool2000000030?ooo`00 0000oooo0>L0oooo000J0?ooo`030000003oool0oooo05h0oooo00@000000?ooo`3oool00000j@3o ool001X0oooo00<000000?ooo`3oool0G03oool2000000030?ooo`00000000000>X0oooo000J0?oo o`030000003oool0oooo05X0oooo0P0000020?ooo`030000003oool0oooo0>X0oooo000J0?ooo`03 0000003oool0oooo05T0oooo00<000000?ooo`3oool00P00003]0?ooo`006P3oool00`000000oooo 0?ooo`1G0?ooo`8000000P3oool00`000000oooo0?ooo`3]0?ooo`006P3oool3000005D0oooo0P00 00020?ooo`800000l03oool001X0oooo00<000000?ooo`3oool0E03oool00`000000oooo0?ooo`02 00000?80oooo000J0?ooo`030000003oool0oooo0580oooo0P0000020?ooo`030000003oool0oooo 0?80oooo000J0?ooo`030000003oool0oooo0500oooo0P0000020?ooo`800000m@3oool001X0oooo 00<000000?ooo`3oool0C`3oool00`000000oooo0?ooo`0200000?L0oooo000J0?ooo`030000003o ool0oooo04d0oooo0P0000020?ooo`030000003oool0oooo0?L0oooo000J0?ooo`030000003oool0 oooo04/0oooo0P0000020?ooo`800000nP3oool001X0oooo00<000000?ooo`3oool0B@3oool20000 0080oooo0P00003l0?ooo`006P3oool00`000000oooo0?ooo`170?ooo`8000000P3oool200000?h0 oooo000J0?ooo`030000003oool0oooo04H0oooo00<000000?ooo`0000000P00003o0?ooo`40oooo 000J0?ooo`<00000A03oool400000?l0oooo103oool001X0oooo00<000000?ooo`3oool0@P3oool4 00000?l0oooo1P3oool001X0oooo00<000000?ooo`3oool0@03oool400000?l0oooo203oool001X0 oooo00<000000?ooo`3oool0?P3oool400000?l0oooo2P3oool001X0oooo00<000000?ooo`3oool0 ?03oool400000?l0oooo303oool001X0oooo00<000000?ooo`3oool0>P3oool400000?l0oooo3P3o ool001X0oooo00<000000?ooo`3oool0>03oool400000?l0oooo403oool001X0oooo00<000000?oo o`3oool0=P3oool300000?l0oooo4`3oool001X0oooo00<000000?ooo`3oool0=03oool300000?l0 oooo5@3oool001X0oooo00<000000?ooo`3oool0"], ImageRangeCache->{{{0, 359}, {221.375, 0}} -> {-0.165089, -0.0316313, \ 0.00771275, 0.00250709}}] }, Open ]] }, Open ]] }, FrontEndVersion->"4.2 for Macintosh", ScreenRectangle->{{0, 1024}, {0, 748}}, AutoGeneratedPackage->None, WindowSize->{914, 699}, WindowMargins->{{9, Automatic}, {-1, Automatic}}, CellLabelAutoDelete->True, Magnification->1.25, StyleDefinitions -> "HTML.nb", MacintoshSystemPageSetup->"\<\ 00<0001804P000000]P2:?oQon82n@960dL5:0?l0080001804P000000]P2:001 0000I00000400`<300000Gd000400@0000000000000004P801T1T00000000000 00000000000000000000000000000000\>" ] (******************************************************************* Cached data follows. If you edit this Notebook file directly, not using Mathematica, you must remove the line containing CacheID at the top of the file. The cache data will then be recreated when you save this file from within Mathematica. *******************************************************************) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[1776, 53, 202, 6, 58, "Subsection", InitializationCell->True], Cell[1981, 61, 683, 14, 131, "Text", InitializationCell->True], Cell[2667, 77, 519, 11, 109, "Input", InitializationCell->True], Cell[3189, 90, 298, 8, 74, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[3512, 102, 235, 5, 52, "Input", InitializationCell->True], Cell[3750, 109, 460, 7, 71, "Output"] }, Open ]], Cell[4225, 119, 631, 15, 150, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[4881, 138, 259, 7, 71, "Input", InitializationCell->True], Cell[5143, 147, 125, 2, 58, "Output"] }, Open ]], Cell[5283, 152, 290, 7, 55, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[5598, 163, 241, 5, 71, "Input", InitializationCell->True], Cell[5842, 170, 233, 4, 40, "Output"] }, Open ]], Cell[6090, 177, 538, 12, 112, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[6653, 193, 165, 4, 33, "Input", InitializationCell->True], Cell[6821, 199, 106, 2, 33, "Output"] }, Open ]], Cell[6942, 204, 502, 10, 74, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[7469, 218, 152, 4, 33, "Input", InitializationCell->True], Cell[7624, 224, 53, 1, 33, "Output"] }, Open ]], Cell[7692, 228, 345, 11, 112, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[8062, 243, 169, 4, 33, "Input", InitializationCell->True], Cell[8234, 249, 209, 3, 40, "Output"] }, Open ]], Cell[8458, 255, 207, 6, 36, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[8690, 265, 143, 4, 33, "Input", InitializationCell->True], Cell[8836, 271, 210, 3, 40, "Output"] }, Open ]], Cell[9061, 277, 189, 6, 36, "Text", InitializationCell->True], Cell[CellGroupData[{ Cell[9275, 287, 77, 1, 33, "Input"], Cell[9355, 290, 20028, 477, 233, 3905, 273, "GraphicsData", "PostScript", \ "Graphics"] }, Open ]] }, Open ]] } ] *) (******************************************************************* End of Mathematica Notebook file. *******************************************************************)