(*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 0, 0] NotebookDataLength[ 200672, 4090] NotebookOptionsPosition[ 199220, 4041] NotebookOutlinePosition[ 199777, 4061] CellTagsIndexPosition[ 199734, 4058] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[CellGroupData[{ Cell[BoxData[ RowBox[{ RowBox[{"(*", " ", RowBox[{ "This", " ", "code", " ", "was", " ", "tested", " ", "using", " ", "Mathematica", " ", "v", " ", "10.0", ".1", ".0", " ", RowBox[{"(", RowBox[{"Platform", ":", " ", RowBox[{"Mac", " ", "OS", " ", "X", " ", "x86", " ", RowBox[{"(", RowBox[{ RowBox[{"32", "-", " ", "bit"}], ",", " ", RowBox[{"64", "-", " ", RowBox[{"bit", " ", "Kernel"}]}]}], ")"}]}]}], ")"}]}], "*)"}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{"Documentation", " ", "in", " ", "the", " ", RowBox[{ "paper", ":", " ", "\"\\""}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"by", " ", "Milos", " ", "Toth"}], ",", RowBox[{"Charlene", " ", "Lobo"}], ",", RowBox[{"Vinzenz", " ", "Friedli"}], ",", RowBox[{ "Aleksandra", " ", "Szkudlarek", " ", "and", " ", "Ivo", " ", "Utke"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"Beilstein", " ", RowBox[{"J", ".", "Nanotechnol", ".", "2015"}]}], ",", "6", ",", RowBox[{"1518", "-", RowBox[{"1540", " ", RowBox[{"(", RowBox[{"open", " ", "access"}], ")"}]}]}]}], " ", "*)"}], " ", "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{ RowBox[{"http", ":"}], "//", RowBox[{ RowBox[{"www", ".", "beilstein"}], "-", RowBox[{ RowBox[{ RowBox[{ RowBox[{ RowBox[{"journals", ".", "org"}], "/", "bjnano"}], "/", "content"}], "/", "pdf"}], "/", "2190"}], "-", "4286", "-", "6", "-", RowBox[{"157.", "pdf"}]}]}], " ", "*)"}], " ", "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"**", " ", "define"}], " ", "function", " ", "that", " ", "performs", " ", "parameter", " ", "substitutions"}], " ", "***)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"refreshSubstitutions", ":=", RowBox[{"{", "\[IndentingNewLine]", RowBox[{ RowBox[{"sub", "=", RowBox[{"{", RowBox[{ RowBox[{"k", "\[Rule]", "k0"}], ",", RowBox[{"Ed", "\[Rule]", "Ed0"}], ",", RowBox[{"Ec", "\[Rule]", "Ec0"}], ",", RowBox[{"ED", "\[Rule]", "ED0"}], ",", RowBox[{"\[Kappa]p", "\[Rule]", "\[Kappa]p0"}], ",", RowBox[{"\[Kappa]c", "\[Rule]", "\[Kappa]c0"}], ",", RowBox[{"\[Kappa]D", "\[Rule]", "\[Kappa]D0"}], ",", RowBox[{"sp", "\[Rule]", "sp0"}], ",", RowBox[{"s0", "\[Rule]", "sc0"}], ",", RowBox[{"nc", "\[Rule]", "nc0"}], ",", RowBox[{"Ap", "\[Rule]", "Ap0"}], ",", RowBox[{"Ac", "\[Rule]", "Ac0"}], ",", " ", RowBox[{"T", "\[Rule]", "T0"}], ",", RowBox[{"Tg", "\[Rule]", "Tg0"}], ",", RowBox[{"P", "\[Rule]", "P0"}], ",", RowBox[{"Z", "\[Rule]", "Z0"}]}], "}"}]}], ";"}], "}"}]}], "\[IndentingNewLine]", RowBox[{"refreshSubstitutions", ";"}], "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"**", " ", "define"}], " ", "function", " ", "that", " ", "evaluates", " ", "equations"}], " ", "***)"}], "\[IndentingNewLine]", RowBox[{"evaluateEquations", ":=", RowBox[{"{", RowBox[{ RowBox[{"physisorbNumeric", "=", RowBox[{"physisorb", " ", "/.", "sub"}]}], ";", "\[IndentingNewLine]", RowBox[{"chemisorbNumeric", "=", RowBox[{"chemisorb", " ", "/.", "sub"}]}], ";", "\[IndentingNewLine]", RowBox[{"sol", "=", RowBox[{"NDSolve", "[", RowBox[{ RowBox[{"{", "\[IndentingNewLine]", RowBox[{ "chemisorbNumeric", ",", "physisorbNumeric", ",", "\[IndentingNewLine]", RowBox[{ RowBox[{"Nc", "[", "0", "]"}], "\[Equal]", "0"}], ",", RowBox[{ RowBox[{"Np", "[", "0", "]"}], "\[Equal]", "0"}]}], "\[IndentingNewLine]", "}"}], ",", "\[IndentingNewLine]", RowBox[{"{", RowBox[{ RowBox[{"Nc", "[", "t", "]"}], ",", RowBox[{"Np", "[", "t", "]"}]}], "}"}], ",", RowBox[{"{", RowBox[{"t", ",", "tmin", ",", "tmax"}], "}"}], ",", RowBox[{"MaxSteps", "\[Rule]", "100000"}]}], "]"}]}], ";"}], "}"}]}], "\[IndentingNewLine]", "\[IndentingNewLine]", RowBox[{"(*", RowBox[{ RowBox[{"**", " ", "set"}], " ", "up", " ", "equations"}], " ", "***)"}], " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"F", "=", RowBox[{"P", "*", RowBox[{"13332200", "/", RowBox[{"Sqrt", "[", RowBox[{ "2", "*", "Pi", "*", "Z", "*", "1.66053873", "*", "1.38066", "*", "Tg"}], "]"}]}]}]}], ";", " ", RowBox[{"(*", " ", RowBox[{"gas", " ", "molecule", " ", "flux", " ", RowBox[{"(", RowBox[{ SuperscriptBox["\[CapitalARing]", RowBox[{"-", "2"}]], SuperscriptBox["s", RowBox[{"-", "1"}]]}], ")"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"sc", "=", RowBox[{"s0", "*", RowBox[{"Exp", "[", RowBox[{ RowBox[{"-", RowBox[{"(", RowBox[{"Ec", "-", "Ed"}], ")"}]}], "/", RowBox[{"(", RowBox[{"k", "*", "Tg"}], ")"}]}], "]"}]}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"kp", "=", RowBox[{"\[Kappa]p", "*", RowBox[{"Exp", "[", RowBox[{ RowBox[{"-", "Ed"}], "/", RowBox[{"(", RowBox[{"k", "*", "T"}], ")"}]}], "]"}]}]}], ";", RowBox[{"(*", RowBox[{ "physisorbed", " ", "molecule", " ", "desorption", " ", "rate", " ", RowBox[{"(", SuperscriptBox["s", RowBox[{"-", "1"}]], ")"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"kD", "=", RowBox[{"\[Kappa]D", "*", RowBox[{"Exp", "[", RowBox[{ RowBox[{"-", "ED"}], "/", RowBox[{"(", RowBox[{"k", "*", "T"}], ")"}]}], "]"}]}]}], ";", RowBox[{"(*", RowBox[{ "chemisorbed", " ", "molecule", " ", "desorption", " ", "rate", " ", RowBox[{"(", SuperscriptBox["s", RowBox[{"-", "1"}]], ")"}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"kc", "=", RowBox[{"\[Kappa]c", "*", RowBox[{"Exp", "[", RowBox[{ RowBox[{"-", "Ec"}], "/", RowBox[{"(", RowBox[{"k", "*", "T"}], ")"}]}], "]"}]}]}], ";", RowBox[{"(*", RowBox[{"physisorbed", "-", "to", "-", RowBox[{"chemisorbed", " ", "transition", " ", "rate", " ", RowBox[{"(", SuperscriptBox["s", RowBox[{"-", "1"}]], ")"}]}]}], "*)"}], "\[IndentingNewLine]", RowBox[{"A2", "=", RowBox[{"(", RowBox[{"1", "-", RowBox[{"Ap", "*", RowBox[{"Np", "[", "t", "]"}]}]}], ")"}]}], ";", " ", RowBox[{"(*", " ", RowBox[{ "limit", " ", "coverage", " ", "of", " ", "physisorbed", " ", "species", " ", "to", " ", "1", " ", "ML"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"A3", "=", RowBox[{"(", RowBox[{"1", "-", RowBox[{"Ac", "*", RowBox[{"Nc", "[", "t", "]"}]}]}], ")"}]}], ";", RowBox[{"(*", " ", RowBox[{ "limit", " ", "coverage", " ", "of", " ", "chemisorbed", " ", "species", " ", "to", " ", "1", " ", "ML"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"physisorb", "=", RowBox[{ RowBox[{ RowBox[{"Np", "'"}], "[", "t", "]"}], "==", RowBox[{ RowBox[{"sp", "*", RowBox[{"(", RowBox[{"1", "-", "sc"}], ")"}], "*", "F", "*", "A2"}], "-", RowBox[{ RowBox[{"Np", "[", "t", "]"}], RowBox[{"(", RowBox[{"kp", "+", RowBox[{"kc", "*", "A3"}]}], ")"}]}]}]}]}]}], "\[IndentingNewLine]", RowBox[{"chemisorb", "=", RowBox[{ RowBox[{ RowBox[{"Nc", "'"}], "[", "t", "]"}], "\[Equal]", RowBox[{ RowBox[{"nc", "*", RowBox[{"(", RowBox[{ RowBox[{"sc", "*", "F"}], "+", RowBox[{ RowBox[{"Np", "[", "t", "]"}], "*", "kc"}]}], ")"}], "*", "A3"}], "-", RowBox[{ RowBox[{"Nc", "[", "t", "]"}], "*", RowBox[{"(", "kD", ")"}]}]}]}]}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{">>>", ">>>", ">>>", ">>>", ">>>", RowBox[{">", " ", RowBox[{"INPUT", " ", "PARAMETERS", " ", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", "<<"}]}]}]}]}]}]}]}]}]}], " ", "*)"}], " ", "\[IndentingNewLine]", RowBox[{ RowBox[{"tmin", "=", RowBox[{"10", "^", RowBox[{"-", "9"}]}]}], ";", RowBox[{"tmax", "=", "100"}], ";", " ", RowBox[{"(*", " ", "sec", " ", "*)"}], "\[IndentingNewLine]", RowBox[{"k0", "=", RowBox[{"8617332478", "*", RowBox[{"10", "^", RowBox[{"(", RowBox[{"-", "14"}], ")"}]}]}]}], ";", RowBox[{"(*", " ", RowBox[{"eV", "/", "K"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"T0", "=", "300"}], ";", " ", RowBox[{"Tg0", "=", "300"}], ";", RowBox[{"(*", " ", RowBox[{ RowBox[{"sample", " ", "&"}], " ", "gas", " ", "temperatures", " ", RowBox[{"(", "K", ")"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"P0", "=", "1"}], " ", ";", RowBox[{"(*", " ", RowBox[{"gas", " ", "pressure", " ", RowBox[{"(", "Torr", ")"}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"Z0", "=", "208.33"}], ";", " ", RowBox[{"(*", " ", RowBox[{ RowBox[{"TEOS", " ", RowBox[{"(", RowBox[{ SubscriptBox["SiC", "8"], SubscriptBox["H", "20"], SubscriptBox["O", "4"]}], ")"}]}], ";", " ", RowBox[{"mass", " ", "of", " ", "gas", " ", "molecule", " ", RowBox[{"(", "amu", ")"}]}]}], " ", "*)"}], " ", "\[IndentingNewLine]", RowBox[{"sp0", "=", "1"}], ";", RowBox[{"Ap0", "=", "100"}], ";", RowBox[{"Ac0", "=", "50"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"Ed0", "=", RowBox[{"510", "/", "1000"}]}], ";", RowBox[{"(*", " ", RowBox[{"(", "eV", ")"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"Ec0", "=", RowBox[{"855", "/", "1000"}]}], ";", RowBox[{"(*", " ", RowBox[{"(", "eV", ")"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"ED0", "=", RowBox[{"1415", "/", "1000"}]}], ";", RowBox[{"(*", " ", RowBox[{"(", "eV", ")"}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"\[Kappa]p0", "=", RowBox[{"\[Kappa]c0", "=", RowBox[{"\[Kappa]D0", "=", RowBox[{"1.0", "*", RowBox[{"10", "^", "15"}]}]}]}]}], ";", RowBox[{"(*", " ", SuperscriptBox["s", RowBox[{"-", "1"}]], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"sc0", "=", "1"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"nc0", "=", "2"}], ";"}], "\[IndentingNewLine]", RowBox[{"(*", " ", RowBox[{">>>", ">>>", ">>>", ">>>", ">>>", RowBox[{">", " ", RowBox[{"END", " ", "OF", " ", "PARAMETERS", " ", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", RowBox[{"<<", "<<"}]}]}]}]}]}]}]}]}]}], " ", "*)"}], "\[IndentingNewLine]", RowBox[{"evaluateEquations", ";"}], "\[IndentingNewLine]", RowBox[{"Print", "[", RowBox[{"Style", "[", RowBox[{"\"\\"", ",", "Bold"}], "]"}], "]"}], "\[IndentingNewLine]", RowBox[{"LogLinearPlot", "[", RowBox[{ RowBox[{"{", RowBox[{"Evaluate", "[", RowBox[{ RowBox[{"Np", "[", "t", "]"}], "/.", "sol"}], "]"}], "}"}], ",", RowBox[{"{", RowBox[{"t", ",", "tmin", ",", "tmax"}], "}"}], ",", RowBox[{"PlotRange", "\[Rule]", "All"}], ",", " ", RowBox[{"Frame", "\[Rule]", "True"}], ",", " ", "\[IndentingNewLine]", RowBox[{"FrameLabel", "\[Rule]", RowBox[{"{", RowBox[{ "\"\