# Re: [NMusers] Time-Varying Bioavailability on Zero-Order Infusion

```So, you want F1 to change while the infusion is on-going. In that case, I would
use the same kind of MTIME-based code as you included in your original post. ```
```

From: "Bill Denney" <wden...@humanpredictions.com>
To: "Sebastien Bihorel" <sebastien.biho...@cognigencorp.com>
Cc: "NMUsers" <nmusers@globomaxnm.com>
Sent: Tuesday, March 13, 2018 9:21:00 PM
Subject: RE: [NMusers] Time-Varying Bioavailability on Zero-Order Infusion

Hi Sebastien,

Thanks for that suggestion!

Unfortunately, that will only update when I have observation records, so it
will change R1 in discrete steps at each observation (I could insert a lot of
observations, but it still has the same limitation). I need it to continuously
vary—this solution does that, but I’d like to learn a simpler way than what I
suggested.

Thanks,

Bill

From: Sebastien Bihorel < [ mailto:sebastien.biho...@cognigencorp.com |
sebastien.biho...@cognigencorp.com ] >
Sent: Tuesday, March 13, 2018 9:17 PM
To: Bill Denney < [ mailto:wden...@humanpredictions.com |
wden...@humanpredictions.com ] >
Cc: NMUsers < [ mailto:nmusers@globomaxnm.com | nmusers@globomaxnm.com ] >
Subject: Re: [NMusers] Time-Varying Bioavailability on Zero-Order Infusion

Hi,

I would suggest the following solution which should also work if you want to
apply some covariate effect on bioavailability:

* On the dataset side, set your RATE variable to -1 and store the actual
infusion rates into another variable, eg IVRATE

* On the model side:

\$PK

...

; assuming the IV infusion are made in compartment 1

F1 = <whatever time varying function>

R1 = F1*IVRATE

Voila, NONMEM should take care of the dosing in the background as usual.

Sebastien

From: "Bill Denney" < [ mailto:wden...@humanpredictions.com |
wden...@humanpredictions.com ] >
To: "NMUsers" < [ mailto:nmusers@globomaxnm.com | nmusers@globomaxnm.com ] >
Sent: Tuesday, March 13, 2018 8:58:41 PM
Subject: [NMusers] Time-Varying Bioavailability on Zero-Order Infusion

Hi NONMEMers,

Is there a good way to assign a time-varying bioavailabilty on a zero-order
rate of infusion in NONMEM? The best I’ve been able to come up with is
something like the below. It seems like something that should be easier than
what I’m doing below (I adjusted it from the real example as I was typing it
into the email—I could have introduced a bug in the process). And importantly,
-9998 is well before any time in my database.

(dosing into CMT=1 with an IV infusion)

\$MODEL

COMP=(CENTRAL DEFDOSE DEFOBS) ; central

COMP=(P1) ; peripheral 1

COMP=(P2) ; peripheral 2

\$PK

; Normal stuff and ...

; Record the dosing time

IF (NEWIND.LT.2) THEN

TDOSE = -9999

DOSEEND = -9998

DOSE = -999

DOSERATE = 0

ENDIF

IF ((EVID.EQ.1 .OR. EVID.EQ.4) .AND. RATE.GT.0) THEN

TDOSE = TIME

DOSEEND = TIME + AMT/RATE

DOSERATE=RATE

MTDIFF=1

ENDIF

MTIME(1)=TDOSE

MTIME(2)=DOSEEND

F1 = 0 ; Bioavailability is zero so that the \$DES block has full control over
the rate.

\$DES

; Manually control the infusion

RATEIN = 0

IF (MTIME(1).LE.T .AND. T.LE.MTIME(2)) THEN

ENDIF

DADT(1) = RATEIN - K10*A(1) - K12*A(1) + K21*A(2) - K13*A(1) + K31*A(3)

Thanks,

Bill

```