X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=kinetic_formalism.Rnw;h=afd5984a9bc79ceee84952b0f991e12ac80d50ee;hb=6366fa5af62fa94f9628aa73ac345d2711bcc945;hp=dfe266dc6a9f90e0015d499100cbd36c30412bfd;hpb=fc6e2371729ed18c0084cdc62c96333a03b84eca;p=ool%2Flipid_simulation_formalism.git diff --git a/kinetic_formalism.Rnw b/kinetic_formalism.Rnw index dfe266d..afd5984 100644 --- a/kinetic_formalism.Rnw +++ b/kinetic_formalism.Rnw @@ -71,6 +71,20 @@ to.kcal <- function(k,temp=300) { \section{State Equation} % double check this with the bits in the paper + +Given a base forward kinetic parameter for the $i$th specie $k_{fi}$ +(which is dependent on lipid type, that is PC, PE, PS, etc.), an +adjustment parameter $k_{fi\mathrm{adj}}$ based on the vesicle and the +specific specie (length, unsaturation, etc.) (see~\fref{eq:kf_adj}), +the molar concentration of monomer of the $i$th specie +$\left[C_{i_\mathrm{monomer}}\right]$, the surface area of the vesicle +$S_\mathrm{ves}$, the base backwards kinetic parameter for the $i$th +specie $k_{bi}$ which is also dependent on lipid type, its adjustment +parameter $k_{bi\mathrm{adj}}$ (see~\fref{eq:kb_adj}), and the molar +concentration of the $i$th specie in the vesicle $C_{i_\mathrm{ves}}$, +the change in concentration of the $i$th specie in the vesicle per +change in time $\frac{d C_{i_\mathrm{ves}}}{dt}$ can be calculated: + \begin{equation} \frac{d C_{i_\mathrm{ves}}}{dt} = k_{fi}k_{fi\mathrm{adj}}\left[C_{i_\mathrm{monomer}}\right]S_\mathrm{ves} - k_{bi}k_{bi\mathrm{adj}}C_{i_\mathrm{ves}} @@ -98,6 +112,12 @@ The 1000 isn't in \fref{eq:state} above, because it is unit-dependent. \subsection{Forward adjustments ($k_{fi\mathrm{adj}}$)} +The forward rate constant adjustment, $k_{fi\mathrm{adj}}$ takes into +account unsaturation ($un_f$), charge ($ch_f$), curvature ($cu_f$), +length ($l_f$), and complex formation ($CF1_f$), each of which are +modified depending on the specific specie and the vesicle into which +the specie is entering. + \begin{equation} k_{fi\mathrm{adj}} = un_f \cdot ch_f \cdot cu_f \cdot l_f \cdot CF1_f \label{eq:kf_adj} @@ -105,18 +125,41 @@ The 1000 isn't in \fref{eq:state} above, because it is unit-dependent. \newpage \subsubsection{Unsaturation Forward} + +In order for a lipid to be inserted into a membrane, a void has to be +formed for it to fill. Voids can be generated by the combination of +unsaturated and saturated lipids forming herterogeneous domains. Void +formation is increased when the unsaturation of lipids in the vesicle +is widely distributed; in other words, the insertion of lipids into +the membrane is greater when the standard deviation of the +unsaturation is larger. Assuming that an increase in width of the +distribution linearly decreases the free energy of activation, the +$un_f$ parameter must follow +$a^{\mathrm{stdev}\left(un_\mathrm{ves}\right)}$ where $a > 1$, so a +convenient starting base for $a$ is $2$: + \begin{equation} un_f = 2^{\mathrm{stdev}\left(un_\mathrm{ves}\right)} \label{eq:unsaturation_forward} \end{equation} +The most common $\mathrm{stdev}\left(un_\mathrm{ves}\right)$ is around +$1.5$, which leads to a $\Delta \Delta G^\ddagger$ of +$\Sexpr{format(digits=3,to.kcal(2^1.5))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$. + +It is not clear that the unsaturation of the inserted monomer will +affect the rate of the insertion positively or negatively, so we do +not include a term for it in this formalism. + + +\setkeys{Gin}{width=3.2in} <>= curve(2^x,from=0,to=sd(c(0,4)), - main="Unsaturation forward", + main="Unsaturation Forward", xlab="Standard Deviation of Unsaturation of Vesicle", ylab="Unsaturation Forward Adjustment") @ - <>= curve(to.kcal(2^x),from=0,to=sd(c(0,4)), main="Unsaturation forward", @@ -127,82 +170,173 @@ curve(to.kcal(2^x),from=0,to=sd(c(0,4)), \newpage \subsubsection{Charge Forward} + +A charged lipid such as PS approaching a vesicle with an average +charge of the same sign will experience repulsion, whereas those with +different signs will experience attraction, the degree of which is +dependent upon the charge of the monomer and the average charge of the +vesicle. If either the vesicle or the monomer has no charge, there +should be no effect of charge upon the rate. This leads us to the +following equation, $a^{-\left ch_m}$, where +$\left$ is the average charge of the vesicle, and $ch_m$ +is the charge of the monomer. If either $\left$ or $ch_m$ +is 0, the adjustment parameter is 1 (no change), whereas it decreases +if both are positive or negative, as the product of two real numbers +with the same sign is always positive. A convenient base for $a$ is +60, resulting in the following equation: + + \begin{equation} ch_f = 60^{-\left<{ch}_v\right> {ch}_m} \label{eq:charge_forward} \end{equation} +The most common $\left<{ch}_v\right>$ is around $-0.165$, which leads to +a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(60^(-.165*-1)))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ to $0\frac{\mathrm{kcal}}{\mathrm{mol}}$. + <>= x <- seq(-1,0,length.out=20) y <- seq(-1,0,length.out=20) grid <- expand.grid(x=x,y=y) grid$z <- as.vector(60^(-outer(x,y))) print(wireframe(z~x*y,grid,cuts=50, - drape=TRUE, - scales=list(arrows=FALSE), - xlab=list("Average Vesicle Charge",rot=30), - ylab=list("Component Charge",rot=-35), - zlab=list("Charge Forward",rot=93))) + drape=TRUE, + scales=list(arrows=FALSE), + main="Charge Forward", + xlab=list("Average Vesicle Charge",rot=30), + ylab=list("Component Charge",rot=-35), + zlab=list("Charge Forward",rot=93))) rm(x,y,grid) @ - <>= x <- seq(-1,0,length.out=20) y <- seq(-1,0,length.out=20) grid <- expand.grid(x=x,y=y) grid$z <- as.vector(to.kcal(60^(-outer(x,y)))) print(wireframe(z~x*y,grid,cuts=50, - drape=TRUE, - scales=list(arrows=FALSE), - xlab=list("Average Vesicle Charge",rot=30), - ylab=list("Component Charge",rot=-35), - zlab=list("Charge Forward (kcal/mol)",rot=93))) + drape=TRUE, + scales=list(arrows=FALSE), + main="Charge Forward (kcal/mol)", + xlab=list("Average Vesicle Charge",rot=30), + ylab=list("Component Charge",rot=-35), + zlab=list("Charge Forward (kcal/mol)",rot=93))) rm(x,y,grid) @ \newpage \subsubsection{Curvature Forward} + +Curvature is a measure of the intrinsic propensity of specific lipids +to form micelles (positive curvature), inverted micelles (negative +curvature), or planar sheets (zero curvature). In this formalism, +curvature is measured as the ratio of the size of the head to that of +the base, so negative curvature is bounded by $(0,1)$, zero curvature +is 1, and positive curvature is bounded by $(1,\infty)$. The curvature +can be transformed into the typical postive/negative mapping using +$\log$, which has the additional property of making the range of +positive and negative curvature equal, and distributed about 0. + +As in the case of unsaturation, void formation is increased by the +presence of lipids with mismatched curvature. Thus, a larger +distribution of curvature in the vesicle increases the rate of lipid +insertion into the vesicle. However, a species with curvature $e^{-1}$ +will cancel out a species with curvature $e$, so we have to log +transform (turning these into -1 and 1), then take the absolute value +(1 and 1), and finally measure the width of the distribution. Thus, by +using the log transform to make the range of the lipid curvature equal +between positive and negative, and taking the average to cancel out +exactly mismatched curvatures, we come to an equation with the shape +$a^{\left<\log cu_\mathrm{vesicle}\right>}$. A convenient base for $a$ +is $10$, yielding: + + \begin{equation} - cu_f = 10^{\mathrm{stdev}\left|\log cu_\mathrm{vesicle}\right|} + % cu_f = 10^{\mathrm{stdev}\left|\log cu_\mathrm{vesicle}\right|} + cu_f = 10^{\left|\left<\log cu_\mathrm{vesicle} \right>\right|\mathrm{stdev} \left|\log cu_\mathrm{vesicle}\right|} \label{eq:curvature_forward} \end{equation} -<>= -curve(10^x,from=0,to=max(c(sd(abs(log(c(0.8,1.33)))), - sd(abs(log(c(1,1.33)))), - sd(abs(log(c(0.8,1)))))), - main="Curvature forward", - xlab="Standard Deviation of Absolute value of the Log of the Curvature of Vesicle", - ylab="Curvature Forward Adjustment") -@ +The most common $\left|\left<\log {cu}_v\right>\right|$ is around +$0.013$, which with the most common $\mathrm{stdev} \log +cu_\mathrm{vesicle}$ of $0.213$ leads to a $\Delta \Delta G^\ddagger$ +of $\Sexpr{format(digits=3,to.kcal(10^(0.13*0.213)))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$. This is a consequence of the +relatively matched curvatures in our environment. -<>= -curve(to.kcal(10^x),from=0,to=max(c(sd(abs(log(c(0.8,1.33)))), - sd(abs(log(c(1,1.33)))), - sd(abs(log(c(0.8,1)))))), - main="Curvature forward", - xlab="Standard Deviation of Absolute value of the Log of the Curvature of Vesicle", - ylab="Curvature Forward Adjustment (kcal/mol)") +% 1.5 to 0.75 3 to 0.33 +<>= +grid <- expand.grid(x=seq(0,max(c(sd(abs(log(c(1,3)))), + sd(abs(log(c(1,0.33)))),sd(abs(log(c(0.33,3)))))),length.out=20), + y=seq(0,max(c(mean(log(c(1,3)), + mean(log(c(1,0.33))), + mean(log(c(0.33,3)))))),length.out=20)) +grid$z <- 10^(grid$x*grid$y) +print(wireframe(z~x*y,grid,cuts=50, + drape=TRUE, + scales=list(arrows=FALSE), + xlab=list("Vesicle stdev log curvature",rot=30), + ylab=list("Vesicle average log curvature",rot=-35), + zlab=list("Vesicle Curvature Forward",rot=93))) +rm(grid) +@ +<>= +grid <- expand.grid(x=seq(0,max(c(sd(abs(log(c(1,3)))), + sd(abs(log(c(1,0.33)))),sd(abs(log(c(0.33,3)))))),length.out=20), + y=seq(0,max(c(mean(log(c(1,3)), + mean(log(c(1,0.33))), + mean(log(c(0.33,3)))))),length.out=20)) +grid$z <- to.kcal(10^(grid$x*grid$y)) +print(wireframe(z~x*y,grid,cuts=50, + drape=TRUE, + scales=list(arrows=FALSE), + xlab=list("Vesicle stdev log curvature",rot=30), + ylab=list("Vesicle average log curvature",rot=-35), + zlab=list("Vesicle Curvature Forward (kcal/mol)",rot=93))) +rm(grid) @ - \newpage \subsubsection{Length Forward} + +As in the case of unsaturation, void formation is easier when vesicles +are made up of components of widely different lengths. Thus, when the +width of the distribution of lengths is larger, the forward rate +should be greater as well, leading us to an equation of the form +$x^{\mathrm{stdev} l_\mathrm{ves}}$, where $\mathrm{stdev} +l_\mathrm{ves}$ is the standard deviation of the length of the +components of the vesicle, which has a maximum possible value of 8 and +a minimum of 0 in this set of experiments. A convenient base for $x$ +is 2, leading to: + \begin{equation} - l_f = 3^{\mathrm{stdev} l_\mathrm{ves}} + l_f = 2^{\mathrm{stdev} l_\mathrm{ves}} \label{eq:length_forward} \end{equation} +The most common $\mathrm{stdev} l_\mathrm{ves}$ is around $3.4$, which leads to +a range of $\Delta \Delta G^\ddagger$ of +$\Sexpr{format(digits=3,to.kcal(2^(3.4)))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$. + +While it could be argued that increased length of the monomer could +affect the rate of insertion into the membrane, it's not clear whether +it would increase (by decreasing the number of available hydrogen +bonds, for example) or decrease (by increasing the time taken to fully +insert the acyl chain, for example) the rate of insertion or to what +degree, so we do not take it into account in this formalism. + + <>= -curve(3^x,from=0,to=sd(c(12,24)), +curve(2^x,from=0,to=sd(c(12,24)), main="Length forward", xlab="Standard Deviation of Length of Vesicle", ylab="Length Forward Adjustment") @ - <>= -curve(to.kcal(3^x),from=0,to=sd(c(12,24)), +curve(to.kcal(2^x),from=0,to=sd(c(12,24)), main="Length forward", xlab="Standard Deviation of Length of Vesicle", ylab="Length Forward Adjustment (kcal/mol)") @@ -210,6 +344,9 @@ curve(to.kcal(3^x),from=0,to=sd(c(12,24)), \subsubsection{Complex Formation} +There is no contribution of complex formation to the forward reaction +rate in the current formalism. + \begin{equation} CF1_f=1 \label{eq:complex_formation_forward} @@ -217,22 +354,53 @@ curve(to.kcal(3^x),from=0,to=sd(c(12,24)), \subsection{Backward adjustments ($k_{bi\mathrm{adj}}$)} +Just as the forward rate constant adjustment $k_{fi\mathrm{adj}}$ +does, the backwards rate constant adjustment $k_{bi\mathrm{adj}}$ +takes into account unsaturation ($un_b$), charge ($ch_b$), curvature +($cu_b$), length ($l_b$), and complex formation ($CF1_b$), each of +which are modified depending on the specific specie and the vesicle +into which the specie is entering: + + \begin{equation} k_{bi\mathrm{adj}} = un_b \cdot ch_b \cdot cu_b \cdot l_b \cdot CF1_b - \label{eq:kf_adj} + \label{eq:kb_adj} \end{equation} -\newpage \subsubsection{Unsaturation Backward} + +Unsaturation also influences the ability of a lipid molecule to leave +a membrane. If a molecule has an unsaturation level which is different +from the surrounding membrane, it will be more likely to leave the +membrane. The more different the unsaturation level is, the greater +the propensity for the lipid molecule to leave. However, a vesicle +with some unsaturation is more favorable for lipids with more +unsaturation than the equivalent amount of less unsatuturation, so the +difference in energy between unsaturation is not linear. Therefore, an +equation with the shape +$x^{\left| y^{-\left< un_\mathrm{ves}\right> }-y^{-un_\mathrm{monomer}} \right| }$ +where $\left$ is the average unsaturation of +the vesicle, and $un_\mathrm{monomer}$ is the average unsaturation. In +this equation, as the average unsaturation of the vesicle is larger, + \begin{equation} - un_b = 10^{\left|3.5^{-\left}-3.5^{-un_\mathrm{monomer}}\right|} + un_b = 7^{1-\left(20\left(2^{-\left} - 2^{-un_\mathrm{monomer}} \right)^2+1\right)^{-1}} \label{eq:unsaturation_backward} \end{equation} +The most common $\left$ is around $1.7$, which leads to +a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(7^(1-1/(5*(2^-1.7-2^-0)^2+1))))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with 0 unsaturation +to +$\Sexpr{format(digits=3,to.kcal(7^(1-1/(5*(2^-1.7-2^-4)^2+1))))}\frac{\mathrm{kcal}}{\mathrm{mol}}$ +for monomers with 4 unsaturations. + + <>= grid <- expand.grid(x=seq(0,4,length.out=20), y=seq(0,4,length.out=20)) -grid$z <- 10^(abs(3.5^-grid$x-3.5^-grid$y)) +grid$z <- (7^(1-1/(5*(2^-grid$x-2^-grid$y)^2+1))) print(wireframe(z~x*y,grid,cuts=50, drape=TRUE, scales=list(arrows=FALSE), @@ -241,11 +409,10 @@ print(wireframe(z~x*y,grid,cuts=50, zlab=list("Unsaturation Backward",rot=93))) rm(grid) @ - <>= grid <- expand.grid(x=seq(0,4,length.out=20), y=seq(0,4,length.out=20)) -grid$z <- to.kcal(10^(abs(3.5^-grid$x-3.5^-grid$y))) +grid$z <- to.kcal((7^(1-1/(5*(2^-grid$x-2^-grid$y)^2+1)))) print(wireframe(z~x*y,grid,cuts=50, drape=TRUE, scales=list(arrows=FALSE), @@ -256,13 +423,27 @@ rm(grid) @ + \newpage \subsubsection{Charge Backwards} +As in the case of monomers entering a vesicle, monomers leaving a +vesicle leave faster if their charge has the same sign as the average +charge vesicle. An equation of the form $ch_b = a^{\left + ch_m}$ is then appropriate, and using a base of $a=20$ yields: + \begin{equation} ch_b = 20^{\left<{ch}_v\right> {ch}_m} \label{eq:charge_backwards} \end{equation} +The most common $\left$ is around $-0.164$, which leads to +a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(20^(-.164*-1)))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with charge $-1$ to +$0\frac{\mathrm{kcal}}{\mathrm{mol}}$ +for monomers with charge $0$. + + <>= x <- seq(-1,0,length.out=20) y <- seq(-1,0,length.out=20) @@ -276,7 +457,6 @@ print(wireframe(z~x*y,grid,cuts=50, zlab=list("Charge Backwards",rot=93))) rm(x,y,grid) @ - <>= x <- seq(-1,0,length.out=20) y <- seq(-1,0,length.out=20) @@ -293,11 +473,34 @@ rm(x,y,grid) \newpage \subsubsection{Curvature Backwards} + +The less a monomer's intrinsic curvature matches the average curvature +of the vesicle in which it is in, the greater its rate of efflux. If +the difference is 0, $cu_f$ needs to be one. To map negative and +positive curvature to the same range, we also need take the logarithm. +Increasing mismatches in curvature increase the rate of efflux, but +asymptotically. An equation which satisfies this critera has the +form $cu_f = a^{1-\left(b\left( \left< \log cu_\mathrm{vesicle} \right> + -\log cu_\mathrm{monomer}\right)^2+1\right)^{-1}}$. An +alternative form would use the aboslute value of the difference, +however, this yields a cusp and sharp increase about the curvature +equilibrium, which is decidedly non-elegant. We have chosen bases of +$a=7$ and $b=20$. + \begin{equation} - cu_f = 7^{1-\left(20\left(\log_{e} cu_\mathrm{vesicle}-\log_{e} cu_\mathrm{monomer}\right)^2+1\right)^{-1}} + cu_b = 7^{1-\left(20\left(\left< \log cu_\mathrm{vesicle} \right> -\log cu_\mathrm{monomer} \right)^2+1\right)^{-1}} \label{eq:curvature_backwards} \end{equation} +The most common $\left<\log cu_\mathrm{ves}\right>$ is around $-0.013$, which leads to +a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(7^(1-1/(20*(-0.013-log(0.8))^2+1))))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with curvature 0.8 +to +$\Sexpr{format(digits=3,to.kcal(7^(1-1/(20*(-0.013-log(1.3))^2+1))))}\frac{\mathrm{kcal}}{\mathrm{mol}}$ +for monomers with curvature 1.3 to $0\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with curvature near 1. + + <>= grid <- expand.grid(x=seq(0.8,1.33,length.out=20), y=seq(0.8,1.33,length.out=20)) @@ -310,7 +513,6 @@ print(wireframe(z~x*y,grid,cuts=50, zlab=list("Curvature Backward",rot=93))) rm(grid) @ - <>= grid <- expand.grid(x=seq(0.8,1.33,length.out=20), y=seq(0.8,1.33,length.out=20)) @@ -324,14 +526,32 @@ print(wireframe(z~x*y,grid,cuts=50, rm(grid) @ - \newpage \subsubsection{Length Backwards} + +In a model membrane, the dissociation constant increases by a factor +of approximately 3.2 per carbon decrease in acyl chain length (Nichols +1985). Unfortunatly, the experimental data known to us only measures +chain length less than or equal to the bulk lipid, and does not exceed +it, and is only known for one bulk lipid species (DOPC). We assume +then, that the increase is in relationship to the average vesicle, and +that lipids with larger acyl chain length will also show an increase +in their dissociation constant. + \begin{equation} - l_b = 3.2^{\left|l_\mathrm{ves}-l_\mathrm{monomer}\right|} + l_b = 3.2^{\left|\left-l_\mathrm{monomer}\right|} \label{eq:length_backward} \end{equation} +The most common $\left<\log l_\mathrm{ves}\right>$ is around $17.75$, which leads to +a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(3.2^abs(12-17.75)))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with length 12 +to +$\Sexpr{format(digits=3,to.kcal(3.2^abs(24-17.75)))}\frac{\mathrm{kcal}}{\mathrm{mol}}$ +for monomers with length 24 to $0\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with curvature near 18. + + <>= grid <- expand.grid(x=seq(12,24,length.out=20), y=seq(12,24,length.out=20)) @@ -344,7 +564,6 @@ print(wireframe(z~x*y,grid,cuts=50, zlab=list("Length Backward",rot=93))) rm(grid) @ - <>= grid <- expand.grid(x=seq(12,24,length.out=20), y=seq(12,24,length.out=20)) @@ -361,15 +580,43 @@ rm(grid) \newpage \subsubsection{Complex Formation Backward} + +Complex formation describes the interaction between CHOL and PC or SM, +where PC or SM protects the hydroxyl group of CHOL from interactions +with water, the ``Umbrella Model''. PC ($CF1=2$) can interact with two +CHOL, and SM ($CF1=3$) with three CHOL ($CF1=-1$). If the average of +$CF1$ is positive (excess of SM and PC with regards to complex +formation), species with negative $CF1$ (CHOL) will be retained. If +average $CF1$ is negative, species with positive $CF1$ are retained. +An equation which has this property is +$CF1_b=a^{\left + CF1_\mathrm{monomer}-\left|\left + CF1_\mathrm{monomer}\right|}$, where difference of the exponent is +zero if the average $CF1$ and the $CF1$ of the specie have the same +sign, or double the product if the signs are different. A convenient +base for $a$ is $1.5$. + + \begin{equation} - CF1_b=1.5^{CF1_\mathrm{ves} CF1_\mathrm{monomer}-\left|CF1_\mathrm{ves} CF1_\mathrm{monomer}\right|} + CF1_b=1.5^{\left CF1_\mathrm{monomer}-\left|\left CF1_\mathrm{monomer}\right|} \label{eq:complex_formation_backward} \end{equation} +The most common $\left$ is around $0.925$, +which leads to a range of $\Delta \Delta G^\ddagger$ from +$\Sexpr{format(digits=3,to.kcal(1.5^(0.925*-1-abs(0.925*-1))))} +\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with complex +formation $-1$ to +$\Sexpr{format(digits=3,to.kcal(1.5^(0.925*2-abs(0.925*2))))}\frac{\mathrm{kcal}}{\mathrm{mol}}$ +for monomers with complex formation $2$ to +$0\frac{\mathrm{kcal}}{\mathrm{mol}}$ for monomers with complex +formation $0$. + + <>= grid <- expand.grid(x=seq(-1,3,length.out=20), y=seq(-1,3,length.out=20)) -grid$z <- 3.2^(grid$x*grid$y-abs(grid$x*grid$y)) +grid$z <- 1.5^(grid$x*grid$y-abs(grid$x*grid$y)) print(wireframe(z~x*y,grid,cuts=50, drape=TRUE, scales=list(arrows=FALSE), @@ -378,11 +625,10 @@ print(wireframe(z~x*y,grid,cuts=50, zlab=list("Complex Formation Backward",rot=93))) rm(grid) @ - <>= grid <- expand.grid(x=seq(-1,3,length.out=20), y=seq(-1,3,length.out=20)) -grid$z <- to.kcal(3.2^(grid$x*grid$y-abs(grid$x*grid$y))) +grid$z <- to.kcal(1.5^(grid$x*grid$y-abs(grid$x*grid$y))) print(wireframe(z~x*y,grid,cuts=50, drape=TRUE, scales=list(arrows=FALSE),