Model with micro parameterization

Dear Colleague,

I am trying to develop a Two compartment model with linear and nonlinear clearance using micro parameterization. Here is my model text. But it failed to run. Anyone can help me find the errors?

test(){
deriv(A1 = -(Vmax * C/(Km + C)) - Ke * A1 - K12 * A1 + K21 * A2)
deriv(A2 = K12 * A1 - K21 * A2)
dosepoint(A1)
C = A1 / V
error(CEps = 1.0)
observe(CObs = C + CEps)
stparm(V = tvV * exp(nV))
stparm(Ke = tvKe * exp(nKe))
stparm(K12 = tvK12 * exp(nK12))
stparm(K21 = tvK21 * exp(nK21))
stparm(Km = tvKm * exp(nKm))
stparm(Vmax = tvVmax * exp(nVmax))
fixef(tvV = c(, 50, ))
fixef(tvKe = c(, 0.004, ))
fixef(tvK12 = c(, 0.05, ))
fixef(tvK21 = c(, 0.05, ))
fixef(tvKm = c(, 0.05, ))
fixef(tvVmax = c(, 0.05, ))
}

[quote=“dapdebbie1984, username:dapdebbie1984”]

Dear Colleague,

I am trying to develop a Two compartment model with linear and nonlinear clearance using micro parameterization. Here is my model text. But it failed to run. Anyone can help me find the errors?

test(){
deriv(A1 = -(Vmax * C/(Km + C)) - Ke * A1 - K12 * A1 + K21 * A2)
deriv(A2 = K12 * A1 - K21 * A2)
dosepoint(A1)
C = A1 / V
error(CEps = 1.0)
observe(CObs = C + CEps)
stparm(V = tvV * exp(nV))
stparm(Ke = tvKe * exp(nKe))
stparm(K12 = tvK12 * exp(nK12))
stparm(K21 = tvK21 * exp(nK21))
stparm(Km = tvKm * exp(nKm))
stparm(Vmax = tvVmax * exp(nVmax))
fixef(tvV = c(, 50, ))
fixef(tvKe = c(, 0.004, ))
fixef(tvK12 = c(, 0.05, ))
fixef(tvK21 = c(, 0.05, ))
fixef(tvKm = c(, 0.05, ))
fixef(tvVmax = c(, 0.05, ))
}

[/quote]Dear Newbie
You defined the stparm with random effects but did not define any random effects initial values

You need to add the following line in your code

ranef(diag(nV,nKe,nK12,nK21,nKm,nVmax)=c(1,1,1,1,1,1))

If you want to run the model without taking into account random effects, then use naïve pool.
best
serge

Do not use additive error for PK

I would use multiplicative

error(CEps=0.1)

observe(CObs=C*(1+CEps))

instead of

error(CEps=1)

observe(CObs=C+CEps)

Serge

Thank you, Serge. I forgot to mention that I use naive pooled method. I changed the additive error to CCV. That works.