Hi,everyone:
I’m building a zero-order release and first order adsorption model.
I used the graphical first and changed it to PML code. Here is the text:
test(){
deriv(Ap = - (Clparent * Cparent) + (Aa * Ka)- (CLparent2met * Cparent))
urinecpt(A0 = (Clparent * Cparent))
deriv(Aa = - (Aa * Ka))
deriv(A2 = (CLparent2met * Cparent)- (CLmet * Cmet))
urinecpt(A0 = (CLmet * Cmet))
Cparent = Ap / V
dosepoint(Aa, duration = (72), idosevar = AaDose, infdosevar = AaInfDose, infratevar = AaInfRate)
error(CEpsparent = 1)
observe(CObsParent = Cparent + CEpsparent)
Cmet = A2 / V2
error(CEpsmet = 1)
observe(CObsmet = Cmet + CEpsmet)
stparm(V = tvV * exp(nV))
stparm(Clparent = tvClparent * exp(nClparent))
stparm(Ka = tvKa * exp(nKa))
stparm(V2 = tvV2 * exp(nV2))
stparm(CLparent2met = tvCLparent2met * exp(nCLparent2met))
stparm(CLmet = tvCLmet * exp(nCLmet))
fixef(tvV = c(, 200000, ))
fixef(tvClparent = c(, 13126.6, ))
fixef(tvKa = c(, 1, ))
fixef(tvV2 = c(, 0.711015, ))
fixef(tvCLparent2met = c(, 2628.9, ))
fixef(tvCLmet = c(, 38252.3, ))
ranef(diag(nV2, nClparent, nCLparent2met, nCLmet, nV, nKa) = c(1, 1, 1, 1, 1, 1))
}
One thing I’m confused is deriv(Aa = - (Aa * Ka)),
As I understand, Aa is the drug amount in absorption comp, then deriv(Aa=-(Aa*Ka)+Rate). Why there is no rate in the derivation.
Thanks
Mengjie
minhaj
February 6, 2015, 4:48pm
2
Mengjie:
Mengjie, on 06 Feb 2015 - 08:36 AM, said:
Hi,everyone:
I’m building a zero-order release and first order adsorption model.
I used the graphical first and changed it to PML code. Here is the text:
test(){
deriv(Ap = - (Clparent * Cparent) + (Aa * Ka)- (CLparent2met * Cparent))
urinecpt(A0 = (Clparent * Cparent))
deriv(Aa = - (Aa * Ka))
deriv(A2 = (CLparent2met * Cparent)- (CLmet * Cmet))
urinecpt(A0 = (CLmet * Cmet))
Cparent = Ap / V
dosepoint(Aa, duration = (72), idosevar = AaDose, infdosevar = AaInfDose, infratevar = AaInfRate)
error(CEpsparent = 1)
observe(CObsParent = Cparent + CEpsparent)
Cmet = A2 / V2
error(CEpsmet = 1)
observe(CObsmet = Cmet + CEpsmet)
stparm(V = tvV * exp(nV))
stparm(Clparent = tvClparent * exp(nClparent))
stparm(Ka = tvKa * exp(nKa))
stparm(V2 = tvV2 * exp(nV2))
stparm(CLparent2met = tvCLparent2met * exp(nCLparent2met))
stparm(CLmet = tvCLmet * exp(nCLmet))
fixef(tvV = c(, 200000, ))
fixef(tvClparent = c(, 13126.6, ))
fixef(tvKa = c(, 1, ))
fixef(tvV2 = c(, 0.711015, ))
fixef(tvCLparent2met = c(, 2628.9, ))
fixef(tvCLmet = c(, 38252.3, ))
ranef(diag(nV2, nClparent, nCLparent2met, nCLmet, nV, nKa) = c(1, 1, 1, 1, 1, 1))
}
One thing I’m confused is deriv(Aa = - (Aa * Ka)),
As I understand, Aa is the drug amount in absorption comp, then deriv(Aa=-(Aa*Ka)+Rate). Why there is no rate in the derivation.
Thanks
Mengjie
Dear Mengjie
If you are using the interface, you do not add the rate in the model. It is done beyond the scenes by the program. The program sees
dosepoint(Aa, duration = (72))
then automatically create the rate based on the dose that is read in your data set.
Then it creates an if condition to use that rate only for 72 hours.
Best Regards
Serge
To put it another way this is because Rate is set in the DosePoint statement when you select the toggle button circled in the graphical editor E.g.
So just check 72 is the correct duration of your release?
Simon Davis:
[font=‘courier new’]To put it another way this is because Rate is set in the DosePoint statement when you select the toggle button circled in the graphical editor E.g.[/font]
So just check 72 is the correct duration of your release?
Dear Simon,
I think the procedure is now clear to everyone. However, how would you modify the model text if you would like to model the absorption time? Just to check whether a model with zero order input would better fit your data? This question is related to example PK3 in the Gabrielsson / Weiner book.
Kind regards,
Jan
Hi Jan, Very simple, instead of having rate, set up a parameter e.g ‘Tabs’
this is the dose set up
dosepoint(A1, duration=Tabs)
and don’t forget to # initialise the extra Parameters (THETAs in NONMEM)
fixef(tvV = c(0, 70, ))
fixef(tvKe = c(0, 0.4, ))
fixef(Tabs = c(0, 4, ))
the options on dose point can easily be seen when using the text editor and putting a comma after A1, see tlag, duration, rate & bioavailibility are all options that you can use.
WHat version of the software are you using? we teach this actual exercise in the intro to Phx WNL course and the next EU dates are listed below,
Simon
https://www.certara.com/training (some upcoming course in EU below, see website for US, India etc.)
Intro to Phoenix WinNonlin (focussed on Phoenix Model object) (Tue-Wed) 18-19 Aug, Cambridge, UK
Intro to Phoenix NLME workshop 16-18 Nov (Mon lunch-Wed Lunch before PKUK), Chester, UK
Intro to Phoenix WinNonlin (Tue-Thur) 8-10 Dec, Frankfurt, Germany
Simon Davis:
Hi Jan, Very simple, instead of having rate, set up a parameter e.g ‘Tabs’
this is the dose set up
dosepoint(A1, duration=Tabs)
and don’t forget to # initialise the extra Parameters (THETAs in NONMEM)
fixef(tvV = c(0, 70, ))
fixef(tvKe = c(0, 0.4, ))
fixef(Tabs = c(0, 4, ))
the options on dose point can easily be seen when using the text editor and putting a comma after A1, see tlag, duration, rate & bioavailibility are all options that you can use.
WHat version of the software are you using? we teach this actual exercise in the intro to Phx WNL course and the next EU dates are listed below,
Simon
https://www.certara.com/training (some upcoming course in EU below, see website for US, India etc.)
Intro to Phoenix WinNonlin (focussed on Phoenix Model object) (Tue-Wed) 18-19 Aug, Cambridge, UK
Intro to Phoenix NLME workshop 16-18 Nov (Mon lunch-Wed Lunch before PKUK), Chester, UK
Intro to Phoenix WinNonlin (Tue-Thur) 8-10 Dec, Frankfurt, Germany
Perfect, thanks for your reply!