$PROBLEM MULTISTATE TB DISEASE MODEL WITH CLINICAL DATA ; Author: Robin Svensson 2015-02 UPPSALA UNIVERSITY ;; 1. Based on: 175 ;; 2. Description: ;; SLOPE MODELS ON INCREASED DEATH OF S AND N. ON/OFF EFFECT ON GROWTH OF F. INCLUDED SMYTHE RIF PK MODEL. IMPLEMENTATION OF SPUTUM SAMPLE COMPARTMENT. ;; 3. Label: ;; DRUG DATA WITH MULTISTATE TB DISEASE MODEL AND RIF PK, SLOPE MODELS ON S AND N. ON/OFF EFFECT ON FG. IMPLEMENTATION OF SPUTUM SAMPLE COMPARTMENT. ;; 4. Structural model: ;; 4 BACTERIAL COMPARTMENTS 1-COMP ENZYME TURNOVER PK MODEL FOR RIF AND SPUTUM SAMPLE COMPARTMENT. ;; 5. Covariate model: ;; FFM AND WT ON CL AND V2 IN RIF PK MODEL. ;; 6. Inter-individual variability: ;; LOG-NORMAL OMEGA ON BMAX ;; 7. Inter-occasion variability: ;; 8. Residual variability: ;; ADDITIVE (PROPORTIONAL ON NORMAL SCALE) AND ADDITIVE (PROPORTIONAL ON NORMAL SCALE) REPLICATE ERROR BOTH AS EPS ;; 9. Estimation: ;; FIRST ORDER CONDITIONAL ESTIMATION (FOCE) METHOD ; BASED ON (run371) MULTISTATE TB DISEASE MODEL WITH RIF BY CLEWE. ALSO INCLUDING SMYTHE RIF PK MODEL (run106) ; Fixed parameters: KG, KFN, KSN, KSF, KNF, KNS, KD, SLOPE, AF, AS, CL, V2, MTT, NN, EC50, EMAX, KENZ, BIO and FGOO ; Estimated parameters: BMAX, EPS(1) (= common residual error), SDSL, NDSL, EPS(2)+EPS(3) (=replicate error) and ETA(1) (log-normal IIV on BMAX) $DATA Simulated_clinical_rif_pkpd IGNORE=@ ; TIME=hours after infection, NDV=CFU, DV=natural log of CFU, AMT=mg, ; LOQ (0= observation is not LOQ, 1=observation is LOQ, 2=dummy time point), ; REGI = abbreviated regimen (R5 = rifampicin 5 mg/kg, R10 = rifampicin 10 mg/kg, R20 = rifampicin 20 mg/kg, Nil = negative control group) ; TAD = time after first dose, in days, DOSE=mg/kg (only when first dose have been given), DGRP = dose in mg/kg displayed for all records ; L2 = L2 data item, shared by replicates from each unique time point (and ID), REP = replicate at each time point (1 or 2) ; CMT = needed to turn on and off the sputum sample compartment, SDUR = duration of sputum sampling in hours, SVOL = volume of sputum sample in mL $INPUT ID TIME NDV DV EVID AMT DRUG FLAG LOQ REGI=DROP TAD DOSE DGRP L2 REP CMT SDUR SVOL $SUBROUTINE ADVAN13 TOL=9 $MODEL NCOMP=8 COMP=(F) COMP=(S) COMP=(N) COMP=(D) COMP = (DEPOT,DEFDOSE) COMP = (CPK) COMP = (ENZ) COMP =(SPU) $PK "FIRST "COMMON/PRCOMG/ IDUM1,IDUM2,IDUM3,IDUM4,IDUM5 "INTEGER IDUM1,IDUM2,IDUM3,IDUM4,IDUM5 "IMAX=1000000000 ;----BACTERIAL SYSTEM PARAMETERS---- TVKG = THETA(1) ; GROWTH RATE, F TVKFN = THETA(2) ; F -> N RATE (DAYS-1) TVKSN = THETA(4) ; S -> N RATE (DAYS-1) TVKSF = THETA(5) ; S -> F RATE (DAYS-1) TVKNF = THETA(8) ; N -> F RATE (DAYS-1) TVKNS = THETA(9) ; N -> S RATE (DAYS-1) TVKD = THETA(10) ; NATURAL DEATH RATE (DAYS-1) TVSLOPE = THETA(11) ; SLOPE FOR TIME DEPENDENT, F -> S (DAYS-1) TVBMAX = THETA(3)*10000000 ; BMAX, CARRYING CAPACITY FOR SYSTEM (CFU/ML) TVAF = THETA(6) ; INITIAL BACTERIAL NUMBER F TVAS = THETA(7) ; INITIAL BACTERIAL NUMBER, S ;----DRUG PK PARAMETERS------------- IF(NEWIND.NE.2)PD = 0 IF(AMT.GT.0)PD = AMT ; PD = (PER)ORAL DOSE, FOR TRANSIT ABSORPTION MODEL IF(NEWIND.NE.2)TDOS = 0 IF(AMT.GT.0)TDOS = TIME ; TDOS = time of DOSE, FOR TRANSIT ABSORPTION MODEL TSLD = TIME - TDOS ; TSLD = time since last DOSE, FOR TABLE OUTPUT CLFFAT = THETA(20) ; CONTRIBUTION OF FAT-FREE MASS AND BODY WEIGHT TO CL/F NFMCL = 45 + CLFFAT*(56-45) ; FFM and WT changed to median originating from: FFM + CLFFAT*(WT - FFM) ALLMCL = (NFMCL/70)**0.75 ; ALLOMETRIC SCALING OF CL/F VFFAT = THETA(21) ; CONTRIBUTION OF FAT-FREE MASS AND BODY WEIGHT TO V/F NFMV = 45 + VFFAT*(56-45) ; FFM and WT changed to median originating from: FFM + VFFAT*(WT-FFM) ALLMV = (NFMV/70) ; ALLOMETRIC SCALING OF V/F TVCL = THETA(12)*ALLMCL ; ORAL CLEARANCE AT THE PREINDUCED STATE (L*H-1) TVV2 = THETA(13)*ALLMV ; APPARENT VOLUME OF DISTRIBUTION (L) TVMTT = THETA(14) ; MEAN TRANSIT TIME (H) TVNN = THETA(15) ; NUMBER OF TRANSIT COMPARTMENTS TVEMAX = THETA(16) ; MAXIMAL INCREASE IN ENZYME PRODUCTION RATE TVEC50 = THETA(17) ; RIFAMPICIN CONCENTRATION AT WHICH HALF THE EMAX (FOR THE PRODUCTION RATE) IS REACHED (MG/L) TVKENZ = THETA(18) ; RATE CONSTANT FOR FIRST-ORDER DEGRADATION OF THE ENZYME POOL (H-1) TVBIO = THETA(19) ; BIOAVAILABILITY KTR = (NN + 1) / MTT ; SPEED UP CALCULATIONS L = 0.9189385 + (NN + 0.5)*LOG(NN) - NN + LOG(1 + 1/(12*NN)) ; LOGARITHM OF THE APPROXIMATION TO THE GAMMA FUNCTION LBPD = LOG(BIO*PD) LKTR = LOG(KTR) CUMUL = LBPD + LKTR - L ;----DRUG EFFECT PARAMETERS---- TVSDSL = THETA(22) ; SLOPE, INCREASED DEATH RATE, S (L*MG-1*DAY-1) TVNDSL = THETA(23) ; SLOPE, INCREASED DEATH RATE, N (L*MG-1*DAY-1) TVFGOO = THETA(24) ; ON/OFF, INHIBITION OF KG, F (DAY-1) KG = TVKG KFN = TVKFN KSN = TVKSN KSF = TVKSF KNF = TVKNF KNS = TVKNS KD = TVKD SLOPE = TVSLOPE BMAX = TVBMAX*EXP(ETA(1)) ; IIV IN BMAX AF = TVAF AS = TVAS CL = TVCL V2 = TVV2 MTT = TVMTT NN = TVNN EC50 = TVEC50 EMAX = TVEMAX KENZ = TVKENZ BIO = TVBIO K = CL/V2 KA = KTR S2 = V2 SDSL = TVSDSL NDSL = TVNDSL FGOO = TVFGOO S8 = SVOL IF(SDUR.EQ.0) THEN KPROD = 0 ELSE KPROD = SVOL/SDUR ; SPUTUM PRODUCTION RATE (ML*H-1) ENDIF ;----INITIALIZATION OF COMPARTMENTS---- A_0(1) = AF ; INITIAL NUMBER, F A_0(2) = AS ; INITIAL NUMBER, S A_0(3) = 0.00001 ; INITIAL NUMBER, N A_0(4) = 0.00001 ; INITIAL NUMBER, D F5 = 0 ; INITIAL AMOUNT TRANSIT DOSE COMPARTMENT A(5) A_0(6) = 0.0001 ; INITIAL AMOUNT CENTRAL COMPARTMENT A_0(7) = 1 ; INITIAL AMOUNT INDUCTION COMPARTMENT A_0(8) = 0.00001 ; INITIAL AMPUNT SPUTUM SAMPLE COMPARTMENT $DES ;----GOMPERTZ GROWTH FUNCTION, FAST MULTIPLYING BACTERIA---- GROWTH = KG*LOG(BMAX/(A(1)+A(2)+A(3))) ; GOMPERTZ GROWTH FUNCTION IF(GROWTH.LT.0) GROWTH=0 ; KEEP GROWTH FROM TURNING NEGATIVE ;----TIME DEPENDENT KFS---- KFS = SLOPE*T/24 ; TIME DEPENDENT LINEAR (SLOPE) TRANSFER, TIME IS SCALED TO DAYS ;----DRUG EFFECTS---------- IF(DOSE.GT.0) THEN RIFCP = A(6) / V2 ; RIF PLASMA CONCENTRATION (MG/L) ELSE RIFCP=0 ENDIF IF(RIFCP.GT.0) THEN EFG = 1-FGOO ; INHIBITION OF KG, F, ON/OFF ESD = SDSL*RIFCP ; INCREASED DEATH RATE, S, SLOPE END = NDSL*RIFCP ; INCREASED DEATH RATE, N, SLOPE ELSE EFG=1 ESD=0 END=0 ENDIF DADT(1)=( A(1)*GROWTH*EFG+KSF*A(2)+KNF*A(3)-KFS*A(1)-KFN*A(1)-KD*A(1) )/24 ; F DADT(2)=( KFS*A(1)+KNS*A(3)-KSN*A(2)-KSF*A(2)-KD*A(2)-ESD*A(2) )/24 ; S DADT(3)=( KSN*A(2)+KFN*A(1)-KNF*A(3)-KNS*A(3)-KD*A(3)-END*A(3) )/24 ; N DADT(4)=( KD*A(1)+KD*A(2)+KD*A(3)+ESD*A(2)+END*A(3) )/24 ; D ;----DRUG CONCENTRATION---- TEMPO = T - TDOS IF(TEMPO.GT.0)THEN KTT = KTR*TEMPO DADT(5) = EXP(CUMUL + NN*LOG(KTT) - KTT) - KA*A(5) ; TRANSIT ABSORPTION COMPARTMENT ELSE DADT(5) = 0 ENDIF DADT(6) = KA*A(5) - K*A(6)*A(7) ; CENTRAL COMPARTMENT EFF = (EMAX*(RIFCP)) / (EC50 + RIFCP) ; EFFECT, INCREASED ENZYME PRODUCTION RATE, EMAX DADT(7) = KENZ*(1 + EFF) - KENZ*A(7) ; ENZYME POOL, INDUCTION COMPARTMENT DADT(8) = KPROD*(A(1)+A(2)) ; SPUTUM SAMPLE COMPARTMENT $ERROR ;----OUTPUT--------------- FBAC = A(1) ; NUMBER OF F (CFU/ML) SBAC = A(2) ; NUMBER OF S (CFU/ML) NBAC = A(3) ; NUMBER OF N (CFU/ML) DBAC = A(4) ; NUMBER OF D (CFU/ML) AA5 = A(5) ; ABSORPTION COMPARTMENT AA6 = A(6) ; CENTRAL RIFAMPICIN COMPARTMENT (MG/L) AA7 = A(7) ; AUTO-INDUCTION COMPARTMENT SPUT = A(8) ; SPUTUM COMPARTMENT IF(EVID.EQ.0) THEN IPRED = LOG(A(8)/S8+0.00001) ; LOG OF AMOUNT IN SPUTUM SAMPLE COMPARTMENT PER ML SPUTUM ELSE IPRED = 0.00001 ENDIF IRES = DV-IPRED ADD1 = SQRT(SIGMA(1,1)) ; ADD ERROR WITH LOG DV, I.E. PROP ERROR ADD2 = SQRT(SIGMA(2,2)) SD = SQRT(ADD1*ADD1+ADD2*ADD2) IWRES = IRES/SD IF(REP==1) Y = IPRED+EPS(1)+EPS(2) ; ADD REPLICATE ERROR WITH LOG DV, I.E. PROP ERROR IF(REP==2) Y = IPRED+EPS(1)+EPS(3) ; ADD REPLICATE ERROR WITH LOG DV, I.E. PROP ERROR IF(AMT.GT.0) THEN TDOS = TIME PD = AMT ENDIF $THETA 2.06E-01 FIX ; KG $THETA 8.98E-07 FIX ; KFN $THETA (0,2.61E+02) ; BMAX $THETA 1.86E-01 FIX ; KSN $THETA 1.45E-02 FIX ; KSF $THETA 4.11E+00 FIX ; AF $THETA 9.77E+03 FIX ; AS $THETA 0.00E+00 FIX ; KNF $THETA 1.23E-03 FIX ; KNS $THETA 0.00E+00 FIX ; KD $THETA 1.66E-03 FIX ; SLOPE $THETA 10.0 FIX ; CL/F $THETA 86.7 FIX ; V2/F $THETA 0.713 FIX ; MTT $THETA 1 FIX ; NN $THETA 1.04 FIX ; EMAX $THETA 0.0705 FIX ; EC50 $THETA 0.00369 FIX ; KENZ $THETA 1 FIX ; BIO $THETA 0.311 FIX ; CLFFAT $THETA 0.188 FIX ; VFFAT $THETA (0,2.00E-01) ; SDSL $THETA (0,1.06E-01) ; NDSL $THETA 1 FIX ; FGOO $OMEGA 2.30E+00 ; BMAX $SIGMA 1.20E+00 ; ADD_COMMON_ERR $SIGMA BLOCK(1) 5.35E-02 ; ADD_REP_ERROR $SIGMA BLOCK(1) SAME $ESTIMATION METHOD=1 MAXEVAL=0 NSIG=3 SIGL=9 NOABORT PRINT=3 ;$COVARIANCE PRINT=E $TABLE ID TIME TAD DRUG PRED IPRED IRES IWRES CWRES NDV FBAC SBAC NBAC DBAC DOSE DGRP EVID AA5 AA6 AA7 RIFCP PD TDOS ESD EFG END SPUT ONEHEADER NOPRINT FILE=sdtab $TABLE ID TIME TAD GROWTH KG KFN KFS SLOPE KSF KSN KNF KNS BMAX DOSE DRUG BIO CL V2 KA K EMAX EC50 KENZ MTT KTR SDSL NDSL FGOO ETA1 ONEHEADER NOPRINT FILE=patab $TABLE ID TIME ONEHEADER NOPRINT FILE=cotab $TABLE ID TIME ONEHEADER NOPRINT FILE=catab