Dear All, I could use a bit of help here, this function is hard to figure out (for me at least) I have the following so far: PKindex<-data.frame(Subject=c(1),time=c(1,2,3,4,6,10,12),conc=c(32,28,25,22,18,14,11)) Dose<-200 Tinf <-0.5 defun<- function(time, y, parms) { dCpdt <- -parms["kel"] * y[1] list(dCpdt) } modfun <- function(time,kel, Vd) { out <- lsoda(((Dose/Tinf)*(1/(kel*Vd)))*(1-exp(-kel*time)),c(0,time),defun,parms=c(kel=kel,Vd=Vd),rtol=1e-3,atol=1e-5) out[-1,2] } objfun <- function(par) { out <- modfun(PKindex$time, par[1], par[2]) gift <- which( PKindex$conc != 0 ) sum((PKindex$conc[gift]-out[gift])^2) } gen<-genoud(objfun,nvars=2,max=FALSE,pop.size=30,max.generations=100,wait.generations=100,starting.value=c(0.7,60),BFGS=FALSE,print.level=0,boundary.enforcement=2,Domains=matrix(c(0.01,0.01,100,100),2,2),MemoryMatrix=TRUE) but get the following: Error in lsoda(((Dose/Tinf) * (1/(kel * Vd))) * (1 - exp(-kel * time)), : The number of derivatives returned by func() (1must equal the length of the initial conditions vector (7) i figured that having the "time" parameter in the equation screws things up, but do not now how to fix it bc I do not understand the warning message. your help is greatly apreciated, Sincerely, Andras [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.