[R] Michaelis-menten equation

From: Chun-Ying Lee <u9370004_at_cc.kmu.edu.tw>
Date: Tue 19 Jul 2005 - 18:47:35 EST


Dear R users:

   I encountered difficulties in michaelis-menten equation. I found that when I use right model definiens, I got wrong Km vlaue, and I got right Km value when i use wrong model definiens. The value of Vd and Vmax are correct in these two models.

#-----right model definiens--------

PKindex<-data.frame(time=c(0,1,2,4,6,8,10,12,16,20,24),
       conc=c(8.57,8.30,8.01,7.44,6.88,6.32,5.76,5.20,4.08,2.98,1.89))
mm.model <- function(time, y, parms) { 
       dCpdt <- -(parms["Vm"]/parms["Vd"])*y[1]/(parms["Km"]+y[1]) 
       list(dCpdt)}

Dose<-300
modfun <- function(time,Vm,Km,Vd) {
       out <- lsoda(Dose/Vd,time,mm.model,parms=c(Vm=Vm,Km=Km,Vd=Vd),
              rtol=1e-8,atol=1e-8)
          out[,2] } 

objfun <- function(par) {

   out <- modfun(PKindex$time,par[1],par[2],par[3])    sum((PKindex$conc-out)^2) }
fit <- optim(c(10,1,80),objfun, method="Nelder-Mead) print(fit$par)
[1] 10.0390733 0.1341544 34.9891829 #--Km=0.1341544,wrong value--

#-----wrong model definiens--------
#-----Km should not divided by Vd--

PKindex<-data.frame(time=c(0,1,2,4,6,8,10,12,16,20,24),
       conc=c(8.57,8.30,8.01,7.44,6.88,6.32,5.76,5.20,4.08,2.98,1.89))
mm.model <- function(time, y, parms) { 

   dCpdt <- -(parms["Vm"]/parms["Vd"])*y[1]/(parms["Km"]/parms["Vd"]+y[1])    list(dCpdt)}
Dose<-300
modfun <- function(time,Vm,Km,Vd) {
out <- lsoda(Dose/Vd,time,mm.model,parms=c(Vm=Vm,Km=Km,Vd=Vd),

            rtol=1e-8,atol=1e-8)
       out[,2] 

}
objfun <- function(par) {

    out <- modfun(PKindex$time,par[1],par[2],par[3])     sum((PKindex$conc-out)^2)}
fit <- optim(c(10,1,80),objfun, method="Nelder-Mead) print(fit$par)
[1] 10.038821 4.690267 34.989239 #--Km=4.690267,right value--

What did I do wrong, and how to fix it?
Any suggestions would be greatly appreciated. Thanks in advance!!



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Jul 19 18:51:38 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:33:46 EST