(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 6.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 26708, 660] NotebookOptionsPosition[ 25280, 611] NotebookOutlinePosition[ 25698, 627] CellTagsIndexPosition[ 25655, 624] WindowFrame->Normal ContainsDynamic->False*) (* Beginning of Notebook Content *) Notebook[{ Cell[BoxData[ StyleBox[ RowBox[{"Complex", " ", "Chemical", " ", "Reactions"}], "Title"]], "Input", Evaluatable->False, InitializationCell->True, CellChangeTimes->{{3.4521125582422733`*^9, 3.45211257012901*^9}, { 3.4521194496110506`*^9, 3.452119472082691*^9}, {3.452267721126402*^9, 3.4522677365581303`*^9}, {3.452268081123283*^9, 3.452268090346269*^9}, { 3.4522686242179685`*^9, 3.45226863042671*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"\[Copyright]", " ", "Copyright", " ", "2005"}], "-", RowBox[{"2009", " ", "Plenum", " ", RowBox[{"software", ".", " ", "Guy"}], " ", "Yosiphon", " ", "and", " ", "Eric", " ", RowBox[{"Mjolsness", ".", " ", "All"}], " ", "rights", " ", RowBox[{"reserved", "."}]}]}]], "Input", Evaluatable->False, InitializationCell->True, CellChangeTimes->{{3.4521125582422733`*^9, 3.45211257012901*^9}}], Cell[CellGroupData[{ Cell["Prerequisite: load the package:", "Section", CellChangeTimes->{3.4521193824665103`*^9}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"<<", "Plenum.m"}], ";"}]], "Input"], Cell[BoxData["\<\"Plenum: version 23\"\>"], "Print", CellChangeTimes->{3.4521137977975855`*^9, 3.452119392941259*^9, 3.4521196643634253`*^9, 3.452268105888152*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"obspkg\"\>"}], RowBox[{ ":", " "}], "\<\"\\!\\(\\\"Statistics`ContinuousDistributions`\\\"\\) is \ now obsolete. The legacy version being loaded may conflict with current \ Mathematica functionality. See the Compatibility Guide for updating \ information. \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", \ ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:Compatibility/Tutorials/Statistics/\ ContinuousDistributions\\\", ButtonNote -> \ \\\"General::obspkg\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.4522681099138203`*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"obspkg\"\>"}], RowBox[{ ":", " "}], "\<\"\\!\\(\\\"Statistics`DiscreteDistributions`\\\"\\) is now \ obsolete. The legacy version being loaded may conflict with current \ Mathematica functionality. See the Compatibility Guide for updating \ information. \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", \ ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:Compatibility/Tutorials/Statistics/\ DiscreteDistributions\\\", ButtonNote -> \\\"General::obspkg\\\"]\\)\"\>"}]], \ "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.452268110995343*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"obspkg\"\>"}], RowBox[{ ":", " "}], "\<\"\\!\\(\\\"Graphics`Graphics3D`\\\"\\) is now obsolete. The \ legacy version being loaded may conflict with current Mathematica \ functionality. See the Compatibility Guide for updating information. \ \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", \ ButtonFrame->None, \ ButtonData:>\\\"paclet:Compatibility/Tutorials/Graphics/Graphics3D\\\", \ ButtonNote -> \\\"General::obspkg\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.4522681112957664`*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"stop\"\>"}], RowBox[{ ":", " "}], "\<\"Further output of \\!\\(General :: \\\"obspkg\\\"\\) will \ be suppressed during this calculation. \ \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", \ ButtonFrame->None, ButtonData:>\\\"paclet:ref/message/General/stop\\\", \ ButtonNote -> \\\"General::stop\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.4522681115260906`*^9}], Cell[BoxData[ RowBox[{ RowBox[{"ListSurfacePlot3D", "::", "\<\"shdw\"\>"}], RowBox[{ ":", " "}], "\<\"Symbol \\!\\(\\\"ListSurfacePlot3D\\\"\\) appears in \ multiple contexts \\!\\({\\\"Graphics`Graphics3D`\\\", \\\"System`\\\"}\\); \ definitions in context \\!\\(\\\"Graphics`Graphics3D`\\\"\\) may shadow or be \ shadowed by other definitions. \\!\\(\\*ButtonBox[\\\"\[RightSkeleton]\\\", \ ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:ref/message/General/shdw\\\", ButtonNote -> \ \\\"Graphics`Graphics3D`ListSurfacePlot3D::shdw\\\"]\\)\"\>"}]], "Message", \ "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.4522681119566965`*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"newpkg\"\>"}], RowBox[{ ":", " "}], "\<\"\\!\\(\\\"Statistics`MultinormalDistribution`\\\"\\) is \ now available as the \\!\\(\\\"Multivariate Statistics Package\\\"\\). See \ the Compatibility Guide for updating information. \\!\\(\\*ButtonBox[\\\"\ \[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:Compatibility/Tutorials/Statistics/\ MultinormalDistribution\\\", ButtonNote -> \ \\\"General::newpkg\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.452268112487444*^9}], Cell[BoxData[ RowBox[{ RowBox[{"General", "::", "\<\"newpkg\"\>"}], RowBox[{ ":", " "}], "\<\"\\!\\(\\\"Statistics`MultinormalDistribution`\\\"\\) is \ now available as the \\!\\(\\\"Multivariate Statistics Package\\\"\\). See \ the Compatibility Guide for updating information. \\!\\(\\*ButtonBox[\\\"\ \[RightSkeleton]\\\", ButtonStyle->\\\"Link\\\", ButtonFrame->None, \ ButtonData:>\\\"paclet:Compatibility/Tutorials/Statistics/\ MultinormalDistribution\\\", ButtonNote -> \ \\\"General::newpkg\\\"]\\)\"\>"}]], "Message", "MSG", CellChangeTimes->{3.4521137981881356`*^9, 3.452119393111499*^9, 3.4521196645136366`*^9, 3.4522681152112794`*^9}] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell["Complex reactions grammar", "Section", CellChangeTimes->{ 3.4521193824665103`*^9, {3.4522686938860617`*^9, 3.452268701827243*^9}, 3.4522687345433083`*^9}], Cell[BoxData[ RowBox[{"gComplexGrammar", " ", ":=", " ", RowBox[{"Grammar", "[", RowBox[{"rules", "\[Rule]", "\[IndentingNewLine]", RowBox[{"{", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "connect", " ", "two", " ", "molecules", " ", "that", " ", "are", " ", "not", " ", "in", " ", "the", " ", "same", " ", RowBox[{"complex", ".", " ", "Max"}], " ", "is", " ", "used", " ", "here", " ", "to", " ", "avoid", " ", "an", " ", "extra", " ", "matching", " ", "later", " ", "in", " ", "rule", " ", "3"}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", "idComp1"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", "id1", ",", "idb1", ",", "0", ",", "0"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", "idComp2"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", "id2", ",", "idb2", ",", "0", ",", "0"}], "]"}]}], "}"}], "\[Rule]", " ", RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", RowBox[{"Max", "[", RowBox[{"idComp1", ",", "idComp2"}], "]"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id1", ",", "idb1", ",", "id2", ",", "idb2"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", RowBox[{"Max", "[", RowBox[{"idComp1", ",", "idComp2"}], "]"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id2", ",", "idb2", ",", "id1", ",", "idb1"}], "]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{"with", "[", RowBox[{"If", "[", RowBox[{ RowBox[{"idComp1", "\[NotEqual]", " ", "idComp2"}], ",", "1", ",", "0"}], "]"}], "]"}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{"disconnect", " ", "two", " ", "molecules"}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", "idComp1"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id1", ",", "idb1", ",", "id2", ",", "idb2"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", "idComp1"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id2", ",", "idb2", ",", "id1", ",", "idb1"}], "]"}]}], "}"}], "\[Rule]", " ", RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", "idComp1"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", "id1", ",", "idb1", ",", "0", ",", "0"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", RowBox[{"grammarCreateObjectID", "[", "1", "]"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", "id2", ",", "idb2", ",", "0", ",", "0"}], "]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{"with", "[", "1", "]"}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "update", " ", "the", " ", "complex", " ", "id", " ", "for", " ", "two", " ", "molecules", " ", "that", " ", "are", " ", "connected", " ", "but", " ", "are", " ", "have", " ", "two", " ", "different", " ", RowBox[{"complexes", ".", " ", RowBox[{"Max", "[", RowBox[{"idComp1", ",", "idComp2"}], "]"}]}], " ", "is", " ", "used", " ", "so", " ", "that", " ", "only", " ", "one", " ", "of", " ", "the", " ", "ids", " ", "will", " ", "dominate", " ", "the", " ", RowBox[{"complex", ".", " ", "This"}], " ", "is", " ", "in", " ", "order", " ", "to", " ", "avoid", " ", "inifite", " ", "loops", " ", "of", " ", "id", " ", "updates", " ", "back", " ", "and", " ", "forth", " ", "between", " ", "molecules"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", "idComp1"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id1", ",", "idb1", ",", "id2", ",", "idb2"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", "idComp2"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id2", ",", "idb2", ",", "id1", ",", "idb1"}], "]"}]}], "}"}], "\[Rule]", " ", RowBox[{"{", " ", RowBox[{ RowBox[{"molA", "[", RowBox[{"id1", ",", RowBox[{"Max", "[", RowBox[{"idComp1", ",", "idComp2"}], "]"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id1", ",", "idb1", ",", "id2", ",", "idb2"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{"id2", ",", RowBox[{"Max", "[", RowBox[{"idComp1", ",", "idComp2"}], "]"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", "id2", ",", "idb2", ",", "id1", ",", "idb1"}], "]"}]}], "}"}]}], ",", "\[IndentingNewLine]", RowBox[{"with", "[", RowBox[{"If", "[", RowBox[{ RowBox[{"idComp1", "\[NotEqual]", " ", "idComp2"}], ",", RowBox[{"(*", RowBox[{"just", " ", "large", " ", "number"}], "*)"}], SuperscriptBox["10", "8"], ",", "0"}], "]"}], "]"}]}], "\[IndentingNewLine]", "\[IndentingNewLine]", "\[IndentingNewLine]", "}"}]}], "]"}]}]], "Input", CellChangeTimes->{{3.398025607209589*^9, 3.3980256608943033`*^9}, 3.398117378075787*^9, {3.3981231523521013`*^9, 3.398123152371295*^9}, { 3.43740094708564*^9, 3.4374009740530725`*^9}, {3.437401023051085*^9, 3.437401093969525*^9}, {3.4374011513091164`*^9, 3.437401164537478*^9}, { 3.4374015001733646`*^9, 3.4374015161154933`*^9}, {3.4374052081136723`*^9, 3.437405253186236*^9}, {3.4374054153613462`*^9, 3.437405507349032*^9}, { 3.437405541997126*^9, 3.4374055589606724`*^9}, {3.437405635106368*^9, 3.4374056371792455`*^9}, {3.4374057084481716`*^9, 3.437406090448415*^9}, { 3.437407051973079*^9, 3.437407125965786*^9}, {3.437407181322625*^9, 3.4374072427078323`*^9}, 3.4374072861681585`*^9, 3.43743800620008*^9, { 3.437438364457366*^9, 3.437438378767229*^9}, {3.43743930982961*^9, 3.4374393202540793`*^9}, 3.437441515883943*^9, {3.437441727516348*^9, 3.437441833103135*^9}, 3.437441996213463*^9, {3.438698225592342*^9, 3.438698241965232*^9}, {3.438698907956316*^9, 3.4386989125227003`*^9}, { 3.440523133491542*^9, 3.4405232956815248`*^9}, {3.440523336289106*^9, 3.4405233679039354`*^9}, {3.4405234605653276`*^9, 3.4405234783505473`*^9}, {3.4405256864516044`*^9, 3.440525726217993*^9}, { 3.4405257816766324`*^9, 3.440525901857046*^9}, {3.4405259629036093`*^9, 3.4405260774760723`*^9}, 3.440526810114944*^9, {3.4405269081439476`*^9, 3.4405269273611975`*^9}, {3.4405271585089617`*^9, 3.4405271616333923`*^9}, {3.440527305227006*^9, 3.440527351742965*^9}, { 3.440527383067383*^9, 3.4405274352213364`*^9}, {3.4405275024867177`*^9, 3.4405275358740606`*^9}, {3.4405276998065147`*^9, 3.4405277146375446`*^9}, 3.440529080414198*^9, {3.4405301569206696`*^9, 3.4405302947360897`*^9}, { 3.440531972244774*^9, 3.4405320606501317`*^9}, {3.4405321079772406`*^9, 3.440532127565016*^9}, {3.452268658356035*^9, 3.45226865907705*^9}}] }, Closed]], Cell[CellGroupData[{ Cell["Complex reaction grammar - simulation", "Section", CellChangeTimes->{ 3.4521193824665103`*^9, {3.4522686938860617`*^9, 3.452268701827243*^9}, { 3.4522687386591034`*^9, 3.4522687402012744`*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"(*", RowBox[{ "create", " ", "the", " ", "initial", " ", "system", " ", "state"}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"initializePool", "[", "iniNumMolecules_", "]"}], ":=", RowBox[{"Module", "[", RowBox[{ RowBox[{"{", "arrMol", "}"}], ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"arrMol", " ", "=", " ", RowBox[{"Table", "[", RowBox[{ RowBox[{"{", RowBox[{ RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "i"}], ",", RowBox[{"-", "i"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "i"}], ",", "1", ",", "0", ",", "0"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "i"}], ",", "2", ",", "0", ",", "0"}], "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"i", ",", "1", ",", "iniNumMolecules"}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"Flatten", "[", "arrMol", "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}]], "Input", CellChangeTimes->{{3.4374394735568743`*^9, 3.437439582688357*^9}, { 3.4374396163651023`*^9, 3.437439665082726*^9}, {3.437439994860481*^9, 3.4374400049144363`*^9}, {3.437441841726759*^9, 3.437441864542647*^9}, { 3.440527753322399*^9, 3.4405278086608686`*^9}, 3.440527935961379*^9, { 3.440529093352544*^9, 3.4405291014239893`*^9}, {3.4522687512368126`*^9, 3.452268768701403*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"iniNumMolecules", " ", "=", " ", "10"}], ";"}]], "Input", CellChangeTimes->{{3.4386987115817757`*^9, 3.4386987232581*^9}, { 3.4405278129669743`*^9, 3.440527821719385*^9}}], Cell[BoxData[{ RowBox[{ RowBox[{ RowBox[{"inipool", " ", "=", " ", RowBox[{"initializePool", "[", "iniNumMolecules", "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"Print", "[", RowBox[{"\"\\"", ",", "inipool"}], "]"}], ";"}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{ RowBox[{ "to", " ", "speed", " ", "up", " ", "use", " ", "saveAllSimulation"}], "\[Rule]", " ", "False"}], " ", ",", " ", RowBox[{ "then", " ", "the", " ", "simulator", " ", "wont", " ", "save", " ", "every", " ", "reaction", " ", "step", " ", "but", " ", "only", " ", "the", " ", "final", " ", "result"}]}], " ", "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ "The", " ", "simulation", " ", "will", " ", "be", " ", "stopped", " ", "when", " ", "either", " ", "reaching", " ", "total", " ", "time", " ", "or", " ", "number", " ", "of", " ", "reactions", " ", "reaches", " ", "gMaxNumReations"}], " ", "*)"}]}], "\[IndentingNewLine]", RowBox[{ RowBox[{"gTotalSimulationTime", " ", "=", " ", "10"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"gMaxNumReations", " ", "=", " ", "100"}], ";"}], RowBox[{"(*", RowBox[{"use", " ", "large", " ", "number"}], "*)"}], "\[IndentingNewLine]"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"RandomSeed", "[", "11", "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"grammarNumberOfDynamicObjID", " ", "=", " ", "0"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"executeGrammar", "[", RowBox[{ "gComplexGrammar", ",", "inipool", ",", "gMaxNumReations", ",", "False", ",", RowBox[{ "maxTotalSimulationTime", "\[Rule]", " ", "gTotalSimulationTime"}], ",", RowBox[{"saveAllSimulation", "\[Rule]", " ", "True"}], ",", RowBox[{"(*", RowBox[{ RowBox[{"isStaticStructurePool", "\[Rule]", "True"}], ","}], "*)"}], RowBox[{"maxDerivationTimeBetweenSimSteps", "\[Rule]", "10"}]}], "]"}], ";"}]}], "Input", CellChangeTimes->{{3.438698290473048*^9, 3.438698294728998*^9}, { 3.438698626442748*^9, 3.438698705252928*^9}, {3.438698971044516*^9, 3.438699146820258*^9}, {3.4405278240927505`*^9, 3.440527845793522*^9}, { 3.440530325810152*^9, 3.440530331708516*^9}, {3.440530418391431*^9, 3.440530420504427*^9}, 3.452268666026836*^9}], Cell[BoxData[ RowBox[{ RowBox[{"(*", RowBox[{ RowBox[{ "this", " ", "is", " ", "the", " ", "simulation", " ", "structure"}], " ", "-", " ", RowBox[{ "for", " ", "every", " ", "reaction", " ", "we", " ", "save", " ", "the", " ", "time", " ", "and", " ", "system", " ", RowBox[{"(", "pool", ")"}], " ", "state"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"arrSim", " ", "=", " ", RowBox[{"getSimulationStruct", "[", "]"}]}], ";"}]}]], "Input", CellChangeTimes->{{3.4374393340031643`*^9, 3.437439469351036*^9}, { 3.4374396735144296`*^9, 3.437439677309698*^9}, {3.4374397590531635`*^9, 3.4374397601546926`*^9}, {3.4374399565673275`*^9, 3.4374399608632903`*^9}, {3.4374400935174236`*^9, 3.4374401136053066`*^9}, {3.437440616263031*^9, 3.4374406192371597`*^9}, { 3.4374407448815627`*^9, 3.4374407469644537`*^9}, 3.437441919954362*^9, { 3.4374518712600718`*^9, 3.437451928366624*^9}, {3.437452008103657*^9, 3.437452064484911*^9}, {3.437755420863036*^9, 3.4377554667984943`*^9}, { 3.4386983088487377`*^9, 3.4386983455400343`*^9}, {3.438698758847856*^9, 3.438698839390458*^9}}], Cell[BoxData[ RowBox[{"(*", RowBox[{"some", " ", "tests"}], "*)"}]], "Input", CellChangeTimes->{{3.440532585574467*^9, 3.4405325893798633`*^9}}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"arrSim", "[", RowBox[{"[", "16", "]"}], "]"}]], "Input", CellChangeTimes->{{3.440531179470631*^9, 3.440531188924036*^9}, { 3.4405312758072352`*^9, 3.4405312759073772`*^9}, {3.440531306550829*^9, 3.4405313251071415`*^9}, {3.4405314028473763`*^9, 3.4405314156855807`*^9}}], Cell[BoxData[ RowBox[{"{", RowBox[{"0.22905365495933847`", ",", RowBox[{"{", RowBox[{ RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "6.`"}], ",", RowBox[{"-", "6.`"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "6.`"}], ",", "1.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "6.`"}], ",", "2.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "8.`"}], ",", "2.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "9.`"}], ",", "2.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "1.`"}], ",", "1.`", ",", RowBox[{"-", "3.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "3.`"}], ",", "1.`", ",", RowBox[{"-", "1.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "2.`"}], ",", "1.`", ",", RowBox[{"-", "3.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "3.`"}], ",", "2.`", ",", RowBox[{"-", "2.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "10.`"}], ",", "1.`", ",", RowBox[{"-", "5.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "5.`"}], ",", "1.`", ",", RowBox[{"-", "10.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "1.`"}], ",", RowBox[{"-", "1.`"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "1.`"}], ",", "2.`", ",", RowBox[{"-", "7.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "7.`"}], ",", "2.`", ",", RowBox[{"-", "1.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "2.`"}], ",", "2.`", ",", RowBox[{"-", "4.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "4.`"}], ",", "2.`", ",", RowBox[{"-", "2.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "9.`"}], ",", RowBox[{"-", "1.`"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "9.`"}], ",", "1.`", ",", RowBox[{"-", "7.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "7.`"}], ",", RowBox[{"-", "1.`"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "7.`"}], ",", "1.`", ",", RowBox[{"-", "9.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "10.`"}], ",", "2.`", ",", RowBox[{"-", "4.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"True", ",", RowBox[{"-", "4.`"}], ",", "1.`", ",", RowBox[{"-", "10.`"}], ",", "2.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "8.`"}], ",", RowBox[{"-", "1.`"}]}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "8.`"}], ",", "1.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"bindSite", "[", RowBox[{"False", ",", RowBox[{"-", "5.`"}], ",", "2.`", ",", "0.`", ",", "0.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "5.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "10.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "4.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "3.`"}], ",", "1.`"}], "]"}], ",", RowBox[{"molA", "[", RowBox[{ RowBox[{"-", "2.`"}], ",", "1.`"}], "]"}]}], "}"}], ",", RowBox[{"{", "}"}], ",", RowBox[{"{", "}"}]}], "}"}]], "Output", CellChangeTimes->{{3.440531183296056*^9, 3.440531189484831*^9}, 3.440531276578328*^9, {3.4405313074120502`*^9, 3.440531325728022*^9}, { 3.440531403668541*^9, 3.440531416466688*^9}, 3.4405321708764315`*^9}] }, Open ]] }, Closed]] }, WindowSize->{1592, 933}, WindowMargins->{{0, Automatic}, {Automatic, 0}}, FrontEndVersion->"6.0 for Microsoft Windows (32-bit) (March 13, 2008)", StyleDefinitions->FrontEnd`FileName[{"Report"}, "StandardReport.nb", CharacterEncoding -> "WindowsANSI"] ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[568, 21, 415, 8, 67, "Input", Evaluatable->False, InitializationCell->True], Cell[986, 31, 446, 10, 40, "Input", Evaluatable->False, InitializationCell->True], Cell[CellGroupData[{ Cell[1457, 45, 94, 1, 73, "Section"], Cell[CellGroupData[{ Cell[1576, 50, 70, 2, 40, "Input"], Cell[1649, 54, 167, 2, 70, "Print"], Cell[1819, 58, 688, 13, 70, "Message"], Cell[2510, 73, 682, 13, 70, "Message"], Cell[3195, 88, 656, 12, 70, "Message"], Cell[3854, 102, 532, 10, 70, "Message"], Cell[4389, 114, 719, 13, 70, "Message"], Cell[5111, 129, 656, 12, 70, "Message"], Cell[5770, 143, 658, 12, 70, "Message"] }, Open ]] }, Closed]], Cell[CellGroupData[{ Cell[6477, 161, 167, 3, 43, "Section"], Cell[6647, 166, 7791, 160, 430, "Input"] }, Closed]], Cell[CellGroupData[{ Cell[14475, 331, 205, 3, 43, "Section"], Cell[14683, 336, 1602, 38, 141, "Input"], Cell[16288, 376, 209, 4, 40, "Input"], Cell[16500, 382, 2464, 59, 261, "Input"], Cell[18967, 443, 1165, 24, 61, "Input"], Cell[20135, 469, 149, 3, 40, "Input"], Cell[CellGroupData[{ Cell[20309, 476, 303, 5, 40, "Input"], Cell[20615, 483, 4637, 124, 116, "Output"] }, Open ]] }, Closed]] } ] *) (* End of internal cache information *)