Re: Help with ODEs for a time varying clearance
Dear Niurys,
I have not checked the whole code, but something I spotted as incorrect is the
use of TIME.
The variable TIME only changes in a discrete way with the time of events in the
dataset (e.g. doses or samples).
If you want something truly "continuous" you need to use the variable T and
define inside the $DES block all the variables that depend on T (and are
therefore time varying).
In your case, you should move the equations calculating the CL to $DES and use
T instead of TIME.
...
;---- DES ------
$DES
CL2_TIME = CL2*EXP((-KDES)*(T))
CL_TOTAL = CL2_TIME + CL1 ; total clearance
...
For more info, I'd google TIME vs T DES Nonmem, I think there is a tutorial by
Nick about this.
I hope this helps.
Good luck!
Paolo
Quoted reply history
On 22 July 2021 21:41:43 "Niurys.CS" <[email protected]> wrote:
CAUTION: This email originated outside the UCT network. Do not click any links
or open attachments unless you know and trust the source.
Dear nmusers,
I'm working on the pharmacokinetics of an antiCD20 mAb; I suspect the clearance
of this mAb should be time dependent as rituximab’s clearance do. I tried to
model this behavior but I’m not sure if the ODEs are correct. Please can you
help? I share part of the code.
$SUBROUTINE ADVAN13 TOL=9
$MODEL COMP=(CENTRAL) COMP=(PERIPH1)
$PK
;---- STRUCTURAL PARAMETERS ------
TVCL1 = THETA(2) ; system-nonspecific clearance
TVV1 = THETA(3)
TVQ = THETA(4)
TVV2 = THETA(5)
TVKDES = THETA(6) ; rate constant of the specific clearance decay
TVCL2 = THETA(7) ; time varying clearance at time zero
;---- MU_TRANSFORMATION ------
MU_1 = LOG(TVCL1)
MU_2 = LOG(TVV1)
MU_3 = LOG(TVQ)
MU_4 = LOG(TVV2)
MU_5 = LOG(TVKDES)
MU_6 = LOG(TVCL2)
;---- INDIVIDUAL PARAMETERS ------
CL1 = EXP(MU_1+ETA(1))
V1 = EXP(MU_2+ETA(2))
Q = EXP(MU_3+ETA(3))
V2 = EXP(MU_4+ETA(4))
KDES = EXP(MU_5+ETA(5))
CL2 = EXP(MU_6+ETA(6))
S1 = V1
;---- INITIAL CONDITIONS ------
A_0(1) = 0
A_0(2) = 0
CL2_TIME = CL2*EXP((-KDES)*(TIME))
CL_TOTAL = CL2_TIME + CL1 ; total clearance
;---- DES ------
$DES
CONC = A(1)/V1
DADT(1) =-(CL_TOTAL/V1)*A(1)-(Q/V1)*A(1)+(Q/V2)*A(2)
DADT(2) = (Q/V1)*A(1)-(Q/V2)*A(2)
;----$ERROR ------
CONC1 = A(1)/V1
IPRED=-3
IF(CONC1.GT.0) IPRED=LOG(CONC1)
W = THETA(1)
Y = IPRED+W*EPS(1)
IRES=DV-IPRED
IWRES=IRES/W
Thank you,
Niurys
MSc Niurys de Castro Suárez
Assistant Professor of Pharmacometrics
Assistant Research
Pharmacy Department
Institute of Pharmacy and Food,
University of Havana
Cuba
Disclaimer - University of Cape Town This email is subject to UCT policies and
email disclaimer published on our website at
http://www.uct.ac.za/main/email-disclaimer or obtainable from +27 21 650 9111.
If this email is not related to the business of UCT, it is sent by the sender
in an individual capacity. Please report security incidents or abuse via
https://csirt.uct.ac.za/page/report-an-incident.php.