Re: Problems with a physiologic model

From: Alison Boeckmann Date: February 14, 2007 technical Source: mail-archive.com
(I am reposting this email so that it will have the appropriate subject line for archiving.) All the responses to Paul's email have been relevant. I would like to remark on few of his questions (the easy ones). The PARAM option of $MODEL describes the number of basic PK parameters, as defined by NM-TRAN. To NM-TRAN, a basic PK parameter is a variable that is defined in $PK and used in the $DES block. He has 6: CO, CLB, VI, VB, CLL, CTL. The PARAM option is not needed when the $PK and $DES blocks are present. NM-TRAN can count for itself. PARAM is only required when you write your own code, e.g., $SUBR ... DES=mydes My advice is to leave it out when the $PK and $DES block are present. Paul asks: When I set TOL=6, the execution of the model doesn't even begin interating (sat for > 24 hrs)   Why does it not even start when TOL=6, but it does when I lowered it to TOL=3? I would guess that, with TOL=6, an illegal floating point number (NaN) has been developed somewhere in PREDPP or NONMEM, and this has cause the code to go into an infinite loop. NONMEM is best compiled with options such that the run stops immediately when an illegal floating point operation has occured. As to why this problem is sensitive to the value of TOL, and the choice of ADVAN (6,8,9): something in the model is not well specified, so that it is very unstable and badly behaved numerically. In general: When using $DES, it is best to do as much of the arithmetic as possible in $PK rather than $DES. The $PK block is evaluated far less often. (Paul's cs specifies CALLFL=-2, as often as possible - this is not needed with a $PK block that calculates exactly same values for every event record, assuming that WGT is constant. Better to specify CALLFL=1, ONCE PER IR.) Either way, the $DES block is evaluated many times more often than the $PK block, and all those divisions in $DES are costly of run time. Leonid's suggestion to compute rate constants in $PK is an excellent one. It would be a good idea even if the D.E.'s were not linear in the compartment amounts A(i). (If the D.E.'s are non-linear in the A(i), then some arithmetic *must* be done in the D.E.s) But since, as Leonid points out, the D.E.s are linear, then Pual can try to use ADVAN7 (or ADVAN5 if ADVAN7 has a numerical problem.) ADVAN5 and 7 may well be faster and more stable than ADVAN6-8-9, although I do not have a lot of personal experience with this. On Sun, 11 Feb 2007 19:23:41 -0600, "Paul Hutson" <[EMAIL PROTECTED]> said: > > Dear NM Users: 4 questions for you: > I am trying to model the PK of a drug rapidly metabolized by blood (and > tissue) esterases, which not surprisingly is given IV and has a very > short (3-6 min) half life. The control stream and some data are provided > below for illustration. I am using NM6 under Wings for NONMEM6. The drug > is given IV (Compartment 1) and I am using a very low VI volume to get it > to the right atrium quickly. > The Right Atrium (COMP) is assumed to be the site of venous sampling, > only to avoid a extra compartment. > The Lungs serve as Comp 3, and are likely to be a sink for this drug. > Comp 4 is the arterial system, from which a substantial number of samples > are drawn; > Comp 5 is the Tissue compartment, which again is a likely sink, and is > presumed (for parsimony) to empty into the Rt Atrium (Comp 2) > 1) When I set TOL=6, the execution of the model doesn't even begin > interating (sat for > 24 hrs) > Why does it not even start when TOL=6, but it does when I lowered it to > TOL=3? > 2)Note the $MODEL statement I am forced to use by NM with my 5 DEs: > Although I only have 5 DEs and 4-5 THETAs (I've also tried setting the > volumes without identifying them as variables), when I try running the > CTL with NPARM=5, I get an immediate run abort with the error notice > (with "X" under the DADT(5)) > 290 NUMBER OF BASIC PK PARAMETERS EXCEEDS VALUE OF NPARAM IN $MODEL > Why is that? > 3) When I set NPAR=6 (again, even though I have only 5DEs and 5 Thetas), > the model runs, but ends stating that: > 0MINIMIZATION SUCCESSFUL > PARAMETER ESTIMATE IS NEAR ITS BOUNDARY > THIS MUST BE ADDRESSED BEFORE THE COVARIANCE STEP CAN BE IMPLEMENTED > but only the EPSs are anywhere near a possible boundary, with final > estimates of: > CLL 8.76 > CLB 0.1 > CLT 55.7 > VB 4.5 > VI 0.001 > ETASD 2.236 > ERRSD 456.07 454.97 > 3) Is this due to a 6th THETA that should have been identified and > somehow modeled or fixed? > 4) Are there suggestions you can make to this physiologic model? It > would be good for the Archive, because there are not many entries for > physiologic models. > CONTROL STREAM AND DATA > $PROBLEM > ; > $INPUT ID STDY TIME AMT RATE DV AGE WGT OCC GRP COMP EVID > $DATA C:\nm6\wfn6\run\peds_adults1.csv IGNORE=# > $SUBROUTINES ADVAN9 TOL=6; > ; If I use ADVAN8 or 6,it immediately aborts with the Error message: > ; "NUMERICAL DIFFICULTIES WITH INTEGRATION ROUTINE" > ; "MAXIMUM NUMBER OF EVALUATIONS OF DIFFERENTIAL EQUATIONS, 100000, > EXCEEDED" > $MODEL NPARAM=6 NCOMP=5 ; Note that NPARAM=5 causes the run to fail??? > COMP=(VEIN DEFDOSE); DOSING COMPARTMENT (Delivers to COMPT 3 (Lungs)) > COMP=RTHEART; VENOUS SAMPLING > COMP=LUNG; LUNG (May also be a tissue sink) > COMP=ARTSAMPL; Arterial system and arterial sampling site. > COMP=TISSUE; Tissue (Likely also a tissue sink) > $PK > CALLFL=-2 > CO=4.5*(WGT/70)**0.75; CARDIAC OUTPUT > TCLL=(THETA(1)*(WGT/70))**0.75; CLEARANCE FROM LUNG > CLL=TCLL*EXP(ETA(1)) > CLB=THETA(2)*(WGT/70)**0.75; CLEARANCE FROM BLOOD > CLT=THETA(3)*(WGT/70)**0.75; CLEARANCE FROM TISSUE > VB=THETA(4)*WGT; VOLUME OF BLOOD > VI=THETA(5); RAPID FLUX FROM IV DOSING TO RT ATRIUM > S3=VB > ;THAF=0.693/K > T1=THETA(1) > T2=THETA(2) > T3=THETA(3) > T4=THETA(4) > ;AUC=AMT/CL > RAT=RATE/WGT > $DES > DADT(1)=-A(1)*(CO+CLB)/VI > ;RAPID FLUX OF DRUG FROM IV SITE TO RT ATRIUM > DADT(2)=A(5)*CO/VB - A(2)*CO/VB > ; RT ATRIUM (Venous Sampling site) > DADT(3)=A(1)*CO/VI + A(2)*CO/VB - A(3)*(CLL + CLB + CO)/VB > ;GAIN/LOSS IN LUNG COMPT (NOT MEASURED) > DADT(4)=A(3)*CO/VB - A(4)*(CO + CLB)/VB > ;ARTERIAL SAMPLE SITE (MEASURED IN PEDIATRIC TRIALS) > DADT(5)=A(4)*CO/VB - A(5)*(CO + CLB + CLT)/VB > ;TISSUE SITE (Not measured, ASSUMES ESTERASE SINK IN TISSUE) > > $ERROR; > IPRED=F > W1=F > DEL = 0 > IF(IPRED.EQ.0) DEL = 1 > IRES = DV-IPRED; NEGATIVE TREND IS OVERESTIMATING DV > IWRES = IRES/(W1+DEL) > A1=A(1) > A2=A(2) > A3=A(3) > A4=A(4) > Y = F *(1+EPS(1)) + EPS(2) > $THETA (0.0001,100,1000); CLL > $THETA (0.0001,10,1000); CLB > $THETA (0.0001,50,1000); CLT > $THETA 0.07 FIX; VB > $THETA (0.000001,0.001,1); VV > $OMEGA 5; ETACLL > ;$OMEGA 1.49; ETACLB > ;$OMEGA 2 2; ETACLT > $SIGMA 0.5 > $SIGMA .001 > ;$ESTIMATION METHOD=1 MAXEVAL=9999 PRINT=10 > ;NOABORT MSFO=PEDADLT.MSF > ;$COV MATRIX=S > $TABLE ID TIME > T1 T2 T3 T4 GRP COMP RATE NOPRINT FILE=peds_adults_co3.fit > $TABLE TIME A1 A2 A3 A4 > $TABLE ID CLL CLB CLT VB > NOPRINT ONEHEADER FILE=c:\NONMEM\wfn\run\PATAB1 > $TABLE ID STDY OCC > NOPRINT ONEHEADER FILE=c:\NONMEM\wfn\run\CATAB1 > $TABLE ID WGT > NOPRINT ONEHEADER FILE=c:\NONMEM\wfn\run\COTAB1 > $TABLE ID TIME IPRED A1 A2 A3 A4 > NOPRINT ONEHEADER FILE=c:\NONMEM\wfn\run\SDTAB1 > $SCAT PRED VS DV UNIT > $SCAT IRES VS PRED ORD0 > $SCAT IWRES VS PRED ORD0 > $SCAT IRES VS TIME ORD0 > $SCAT PRED VS TIME > $SCAT IWRES VS GRP ORD0 > #data snippet follows > #DV UNITS: MCG/L (ng/ml),,,,,,,,,,, > #AMT = MCG,,,,,,,,,,, > #DOSING UNITS: AMT = MG, RATE = MCG/MIN,,,,,,,,,, > #ID,STUDY,TIME,AMT,RATE,DV,AGE,WGT,OCC,GRP,COMP,EVID > 41001,4,0,587.5,2350,.,2.8,4.7,1,0,1,1 > 41001,4,0.25,8665.625,587.5,.,2.8,4.7,1,0,1,1 > 41001,4,5,.,.,39,2.8,4.7,1,0,4,0 > 41001,4,10,.,.,162,2.8,4.7,1,0,4,0 > 41001,4,15,.,.,234,2.8,4.7,1,0,4,0 > 41002,4,0,3700,14800,.,5.4,7.4,1,0,1,1 > 41002,4,0.25,54575,3700,.,5.4,7.4,1,0,1,1 > 41002,4,5,.,.,203,5.4,7.4,1,0,4,0 > 41002,4,10,.,.,3745,5.4,7.4,1,0,4,0 > 41002,4,15,.,.,4087,5.4,7.4,1,0,4,0 > 41003,4,0,3100,12400,.,27.5,12.4,1,0,1,1 > 41003,4,0.25,45725,3100,.,27.5,12.4,1,0,1,1 > 41003,4,5,.,.,68,27.5,12.4,1,0,4,0 > 41003,4,10,.,.,810,27.5,12.4,1,0,4,0 > 41003,4,15,.,.,888,27.5,12.4,1,0,4,0 > 41004,4,0,2325,9300,.,53.4,18.6,1,0,1,1 > 41004,4,0.25,34293.75,2325,.,53.4,18.6,1,0,1,1 > 41004,4,5,.,.,316,53.4,18.6,1,0,4,0 > 41004,4,10,.,.,291,53.4,18.6,1,0,4,0 > 41004,4,15,.,.,438,53.4,18.6,1,0,4,0 > 41005,4,0,325,1300,.,0.1,2.6,1,0,1,1 > 41005,4,0.25,4793.75,325,.,0.1,2.6,1,0,1,1 > 41005,4,5,.,.,26,0.1,2.6,1,0,4,0 > 41005,4,10,.,.,17,0.1,2.6,1,0,4,0 > 41005,4,15,.,.,79,0.1,2.6,1,0,4,0 > 41007,4,0,2500,10000,.,3.7,5,1,0,1,1 > 41007,4,0.25,36875,2500,.,3.7,5,1,0,1,1 > 41007,4,5,.,.,70,3.7,5,1,0,4,0 > 41007,4,10,.,.,1566,3.7,5,1,0,4,0 > 41007,4,15,.,.,2680,3.7,5,1,0,4,0 > > -- > > Paul R. Hutson, Pharm.D. > > Associate Professor > > UW School of Pharmacy > > 777 Highland Avenue > > Madison WI 53705-2222 > > Tel 608.263.2496 > > Fax 608.265.5421 > > Pager 608.265.7000, p7856 -- Alison Boeckmann [EMAIL PROTECTED]
Feb 12, 2007 Paul Hutson Problems with a physiologic model
Feb 12, 2007 Leonid Gibiansky Re: Problems with a physiologic model
Feb 12, 2007 Manoj Khurana Re: Problems with a physiologic model
Feb 14, 2007 Alison Boeckmann Re: Problems with a physiologic model