From: "Anasuya Hazra" anasuya.h@gmail.com
Subject: [NMusers] $ERROR Block: Target mediated disposition
Date: Sat, 8 Apr 2006 20:38:01 -0400

Hello NONMEM Users:

I am a relatively new NONMEM user working with a relatively complex
model. I have a drug which upon binding to its target undergoes
elimination. I have the time course of the drug as well as the target
concentration, although the target time profile is quite limited. Due
to this limitation  and assuming quite rapid binding of the drug to
the target, I am trying to use a quasi-equilibrium model (using KD for
binding instead of kon and koff) of Target-mediated drug disposition
[Mager and Krzyzanski, Pharm Res 22(10): 1589)]. However, I am having
trouble with writing the $ERROR block where I would like to have
individual predictions for both the free drug and the target. The code
I have written for the model is given as following:

$INPUT ID WTKG AMT RATE TIME DV MDV CMT COHT
$DATA PKPD1.csv IGNORE=#
$SUBROUTINES ADVAN6 TOL=5
$MODEL NCOMP=3
 COMP= (CENTRAL, DEFDOSE)
 COMP= (PERIPH)
 COMP= (RETOT)
$PK
 CL = THETA(1)*EXP(ETA(1))  ;Linear elimination constant from the central Comp
 VC = THETA(2)*EXP(ETA(2))  ; Volume of Central Comp
 KPT= THETA(3)              ; C-T distribution
 KTP= THETA(4)              ; T-C distribution
 KINT = THETA(5)*EXP(ETA(3))  ; Internalization Constant
 KDEG=THETA(6)*EXP(ETA(4))  ; Degradation rate of CD2
 RO = THETA(7)*EXP(ETA(5))  ; Baseline for CD2
 KD = THETA(8)              ; Dissociation const for receptor
 KSYN = KDEG*RO
 S1= VC
 F3= RO

$DES
 CF = 0.5*(((A(2)/VC)-A(3)-KD)+SQRT(((A(2)/VC)-A(3)-KD)**2+4*KD*A(3)))
 DADT(1) = -KINT*A(1)-(CL/VC+KPT-KINT)*CF*VC + KTP*A(2)
 DADT(2) = KPT*CF*VC - KTP*A(2)
 DADT(3) = KSYN-(KINT-KDEG)*(A(1)-CF*VC)-KDEG*A(3)

;CF=Free Drug (measured)
;A(1)=Total Drug (not measured)
;A(2)=Tissue Compt (not measured)
;A(3)=Target (measured)
;Initializing DADT(3) with AMT=1 in the dataset

Although I have written a differential equation for the total drug, my
observation is the free drug CF and I am not quite sure how do I or
can I express that in the $ERROR block since the CMT argument only
relates to the corresponding differential equation according to my
limited knowledge about NONMEM.
Any suggestion or help would be greatly appreciated. Thank you,

Regards,
Ana

_______________________________________________________

From: "Samtani, Mahesh [PRDUS]" MSamtani@prdus.jnj.com
Subject: RE: [NMusers] $ERROR Block: Target mediated disposition
Date: Sun, 9 Apr 2006 15:40:47 -0400 

Hello Ana,

Here are a few humble suggestions on how to implement TMDD in NONMEM:

1)      These models are notoriously stiff in nature so I would recommend that you start simple. Unless you have
evidence otherwise (Non-compartmental diagnostics suggested by Mager & Jusko or in-vitro data or your target
data suggesting dramatic changes) I would recommend that you start with a model where you don't have receptor
turnover and no internalization. A code for such a simple model is provided below.

2)      When you have multiple DVs in your dataset (receptor and free drug) you need If statements under $ERROR
and a flag in your dataset. Please see this posting that nicely describe the modeling trick:

http://www.cognigencorp.com/nonmem/nm/97aug062004.html
3)      You may want to try ADVAN9 for these models. There is an elegant paper by Dr. Karlsson in DMD (1999) that
succinctly describes the stiff nature of these binding models and how ADVAN9 maybe suitable for such problems.

Hope this helps. Good luck.....Mahesh

$PROBLEM  TMDD model

$INPUT ID TIME DOSE PMOL DV AMT

;-------------------------
;  UNITS                
;  Time - HR, KD = nM 
;  Dose - NMOLES/KG     
;  RECEPTOR NMOLES/KG   
;  Cp  -  NMOLES/L      
;  Clearances - L/HR/KG 
;  Volumes - L/KG       
;-------------------------

$DATA  NOKINT.CSV IGNORE=#

$SUBR ADVAN8 TOL=5

$MODEL               
COMP=(TOTDRUG, DEFDOSE)

$PK

KD   = THETA(1) * EXP(ETA(1))
RTOT = THETA(2) * EXP(ETA(2))
CL   = THETA(3) * EXP(ETA(3))
VC   = THETA(4) * EXP(ETA(4))
KEL  = CL/VC
 
$DES
B1   = A(1)-RTOT-(KD*VC)
SQT1 = (B1**2) + (4*KD*VC*A(1))
DAM1 = (B1+SQRT(SQT1))/2

DADT(1) = -KEL*DAM1

$ERROR
B2   = A(1)-RTOT-(KD*VC)
SQT2 = (B2**2) + (4*KD*VC*A(1))
DAM2 = (B2+SQRT(SQT2))/2

; LOG TRANSFORM BOTH SIDES APPROACH USED HERE
IPRE   = -5
IF ((DAM2/VC).GT.0) IPRE = LOG(DAM2/VC)
IRES   = DV-IPRE
Y      = IPRE + EPS(1)

$THETA ..etc 
_______________________________________________________

From: musor000@optonline.net
Subject: Re: [NMusers] $ERROR Block: Target mediated disposition
Date: Wed, 12 Apr 2006 20:00:15 -0400

Hello Anna,

I finished one target mediated model recently.  Binding was extremely quick,
but the model worked well because kon and koff were predetermined.  

Here is and example of error specification:
    IF (EXPE.EQ.0) Y=CONC*(1+ERR(1)) + ERR(2)
    IF (EXPE.EQ.1) Y=CONC*(1+ERR(1)) + ERR(3)
Here the error depends on variable EXPE, which indicates study.  You can use CMD or
another variable to make sure that your error is compartment, study, or route of
administration, etc. specific.

Regards,
Pavel
_______________________________________________________