Please find below the code for NONMEM analysis and for mrgsolve which is the package I use to perform simulations in R
Thanks you very much Félicien ;;;;;NONMEM CODE;;; $PROBLEM TEST F DECREASE $INPUT ID TIME EVID AMT CMT DV MDV TOLD $DATA ds_sim_told.csv IGNORE=@ $SUBROUTINES ADVAN13 TOL=4 $MODEL COMP=(DEPOT) COMP=(CENTRAL) COMP=(PERIPH) $PK TVCL = THETA(1) TVVC = THETA(2) TVKA = THETA(3) TVALAG1 = THETA(4) TVQ = THETA(5) TVVP = THETA(6) TVLAMBDA = THETA(7) TVMAXDECR = THETA(8) ERRADD = THETA(9) ERRPROP = THETA(10) CL = TVCL VC = TVVC KA = TVKA ALAG1 = TVALAG1 Q = TVQ VP = TVVP LAMBDA = TVLAMBDA / 24 MAXDECR= TVMAXDECR TVF= 1-MAXDECR+MAXDECR*EXP(-LAMBDA*TOLD) F1 = TVF K20 = CL/VC K23 = Q/VC K32 = Q/VP S2 = VC $DES DADT(1) = - KA * A(1) DADT(2) = KA * A(1) - K20*A(2) - K23*A(2) + K32*A(3) DADT(3) = K23* A(2) - K32*A(3) $ERROR IPRED=F W=SQRT(ERRADD**2+(ERRPROP*IPRED)**2) Y=IPRED+W*EPS(1) IRES=DV-IPRED IWRES=IRES/(W+0.001) $THETA (0, 0.5) FIX ; 1 CL (0, 3) FIX ; 2 VC (0, 0.1) FIX ; 3 KA (0, 1) FIX ; 4 ALAG (0, 1) FIX ; 5 Q (0, 25) FIX ; 6 VP (0, 0.15) FIX ; 7 LAMBDA (0, 0.50) FIX ; 8 MAXDECR (0) FIX ; 9 ADD (0) FIX ; 10 PROP $OMEGA 0 FIX $SIGMA 1 FIX $ESTIMATION METHOD=1 INTER NOABORT MAXEVAL=0 SIG=3 PRINT=5 POSTHOC FORMAT= s1PE16.8E3 $COV PRINT=E MATRIX=S $TABLE ID TIME EVID AMT CMT DV MDV TOLD F1 PRED IPRED IWRES IRES ONEHEADER NOPRINT FILE = run301.TAB FORMAT= s1PE16.8E3 ;;;; end of NONMEM CODE ;;;;; ;;;; MRGSOLVE CODE ;;;;; $PROB test F decrease $PARAM @annotated TVCL : 0.5 : 1 Clearance (L.h-1) TVVC : 3 : 2 Volume (L) TVKA : 0.1 : 3 Absorption rate constant (h-1) TVALAG : 1 : 5 Lag time (h) TVQ : 1 : 6 Intercompartmental Clearance (L.h-1) TVVP : 25 : 7 Volume (L) TVLAMBDA : 0.15 : 8 First-order decay constant (day-1) TVMAXDECR: 0.50 : 9 Magnitude of decrease constant (%) TOLD : 0 : default TOLD $CMT @annotated DEPOT : Depot compartment CENTRAL : Central compartment PERIPHERAL : Peripheral compartment $GLOBAL double CL, VC, KA, ALAG, Q, VP, LAMBDA, MAXDECR, TVF, K20, K23, K32, F1 ; $TABLE double DV = (CENTRAL / VC) ; $MAIN CL = TVCL ; VC = TVVC ; KA = TVKA ; ALAG = TVALAG ; Q = TVQ ; VP = TVVP ; LAMBDA = TVLAMBDA / 24 ; MAXDECR = TVMAXDECR ; TVF = 1 - MAXDECR + MAXDECR * exp(-LAMBDA*TOLD) ; F1 = TVF ; K20 = CL / VC ; K23 = Q / VC ; K32 = Q / VP ; F_DEPOT = F1 ; ALAG_DEPOT = ALAG ; $ODE dxdt_DEPOT = -KA * DEPOT ; dxdt_CENTRAL = KA * DEPOT - K20 * CENTRAL - K23 * CENTRAL + K32 * PERIPHERAL ; dxdt_PERIPHERAL = K23 * CENTRAL - K32 * PERIPHERAL; $CAPTURE @annotated DV : Concentration central (mcg/L) F_DEPOT : F ;;;; end of MRGSOLVE CODE ;;;; -----Message d'origine----- De : owner-nmus...@globomaxnm.com [mailto:owner-nmus...@globomaxnm.com] De la part de Leonid Gibiansky Envoyé : mardi 11 février 2020 15:19 À : nmusers@globomaxnm.com Objet : Re: [NMusers] Time-varying bioavailability and reproducibility in NONMEM analysis could you show equations? Bioavailability is treated differently in Nonmem and R, so code should reflect it. Thanks Leonid On 2/11/2020 3:52 AM, Le Louedec Felicien wrote: > Dear NONMEM users, > > I'm struggling for a couple of weeks against contradictory results > between NONMEM and R analysis of the same data with the same model which > includes a time-varying bioavailability. Here is a simplified example of > my issue: > > On the one hand, let's introduce a bicompartmental model with a depot > compartment, where bioavailability is decreasing over time given a > maximum in decrease (MAXDECR) and a first-order decay constant (LAMBDA). > Instead of the variable TIME, I use a covariate TOLD (Time Of Last Dose) > in order to be sure that the value of F1 computed by NONMEM will be > independent of the time used for computation: > > --- > > $INPUT CID TIME EVID AMT CMT DV MDV TOLD > > $MODEL COMP=(DEPOT) COMP=(CENTRAL) COMP=(PERIPH) > > $PK > > MAXDECR = THETA(1) > > LAMBDA = THETA(2) / 24 ; TIME is in hour, Lambda in day-1 > > F1 = 1 - MAXDECR + MAXDECR * EXP(-LAMBDA * TOLD) > > $THETA > > (0, 0.5, 1) FIX > > (0, 0.15 ) FIX > > --- > > On the other hand, we have a dataset of 28 IDs with: > > -the same dosing regimen of 400 mg qd for 28 days (one line with EVID=1 > per administration, no ADDL). > > -different "sampling occasions" at 0h, 6h, 12 and 18h post-dose; at day > 1 for ID1, at day 1&2 for ID2, at day 1&2&3 for ID3, and so on until > ID28 who has a complete PK exploration from day 1 to 28. All these lines > are filled with EVID=0, DV=., and MDV=1. > > Then, I estimate these concentrations in maximum a posteriori Bayesian > manner (MAXEVAL = 0) with ADVAN 13 (there is no inter-individual nor > residual variability). > > My problem is that NONMEM found different concentrations in these 28 > individuals, even though they received the same dose. Besides, as > excepted, I found that all individuals had the same value for F1 (at a > given time point). > > Would any of you have an idea of why NONMEM does not return the same > predictions ? > > Thank you very much in advance > > Kind regards > > Félicien LE LOUEDEC, PharmD > > PhD student > > Centre de Recherches en Cancérologie de Toulouse (CRCT), Toulouse, FRANCE > > Team 14: « Dose Individualization of Anticancer Drugs » > > +335 31 15 55 69 > > lelouedec.felic...@iuct-oncopole.fr > <mailto:lelouedec.felic...@iuct-oncopole.fr> >