Modeling zero order absorption

How do I model zero-order absorption in Phoenix? Thank you

There are two ways to do this in a Phoenix model 1) Use a built in model. Select the “Infusions Possible?” check box. The main mappings panel and dosing panel will now be expecting a rate along with an amount. 2) Go one step further and click “Edit as Graphical”. Click on the compartment that is receiving the dose. In the options panel at the bottom, click on the “0 Order” button. Click on the button more than once to see the various options. There is a “0 Order: Rate” and a “0 Order: Duration” option. If a blank field appears beside it, you may enter a fixed number or a variable name. For example, if you want to estimate the duration as a paramter, Tinf, enter “Tinf” in the blank field beside “0 Order: Duration”. Then, right-click in the blank drug model editor to Insert>Parameter. Type “Tinf” for the parameter name (case sensitive). For either option, enter any fixed dosing information such as amounts and (optional) rates in either the Main or Dosing section (do not enter it in both sections).

Thanks, I was able to add a Rate compartment, but it is being estimated in addition to ka. My intention is to estimate zero-order rate as a parameter instead of ka. Is there a way to link Aa to C with Rate instead of the default ka?

Mario, Another way to approach this might be to start with a the simplest structural model with dosing as IV bolus (so as to have the least code to edit) and then “Edit as textual”. Now place a comma after "A1, in the dosepoint statement dosepoint(A1) In the general tab you will see the options to qualify dosing statements are displayed; Now you only need edit/add the two bold/indented lines to model the rate of input. test(){ deriv(A1 = - Ke * A1) dosepoint(A1,rate=ratezero) C = A1 / V error(CEps = 10) observe(CObs = C + CEps) stparm(V = tvV * exp(nV)) stparm(Ke = tvKe * exp(nKe)) fixef(tvV = c(, 74, )) fixef(tvKe = c(, 0.6, )) fixef(ratezero = c(, 4900, )) ranef(diag(nV, nKe) = c(1, 1)) } Simon.

image showing the initial estimates, remember you will have to transfer these manually in a textual model

Thanks for the advice,
When I use the model text below, the dosing worksheet requests ‘Aa Rate’, which is the parameter I want to model. Is the rate also requested on your dosing worksheet? I ask because the model predicts chronic dosing to time infinity, though I want dosing to end after 8 hours. My expectation is that by entering a dose at time zero, the model should estimate the rate as a parameter based on the data.
Thanks for any advice. [file name=model_text.docx size=18787]Certara | Drug Development Solutions model_prediction.png

model_text.docx (18.3 KB)

Thanks for the advice, When I use the model text below, the dosing worksheet requests ‘Aa Rate’, which is the parameter I want to model. Is the rate also requested on your dosing worksheet? I ask because the model predicts chronic dosing to time infinity, though I want dosing to end after 8 hours. My expectation is that by entering a dose at time zero, the model should estimate the rate as a parameter based on the data. I attached an image of model prediction and model text. Thanks for any advice.

model_text.docx (18.3 KB)

Mario - I have deleted your attachments as we are having a couple of problems on the forum displaying certain files at the moment. However the answer is quite simple - you do not need to map to AaRate - you can leave this blank and then the model will estimate this parameter. Simon.

Hi, The model text below predicts a profile resembling constant-rate infusion that never stops. The concentration-time profile I am trying to model resembles zero-order absorption for 8 hours after a 1000mg dose, followed by 1st-order elimination starting at 8 hours (1-compartment model). Since the peak is at 8 hours, I expect the estimate for k0 to be 125 mg/L (dose = 1000mg, T = 8 hours, k0= Dose / T). However, the model as written below is not working. Thanks for any advice, Mario – test(){ deriv(A1 = k0 + (- A1 * Ke)) dosepoint(Aa,rate=k0) deriv (Aa=0) C = A1 / V error(CEps = 10) observe(CObs = C + CEps) stparm(V = tvV) stparm(Ke = tvKe) stparm(k0 = tvk0) fixef(tvV = c(, 56, )) fixef(tvKe = c(, 0.0634, )) fixef(tvk0 = c(, 125, )) }

Try this instead: test(){ deriv(A1 = - (A1 * Ke)) urinecpt(A0 = (A1 * Ke)) C = A1 / V dosepoint(A1, rate = (k0), idosevar = A1Dose, infdosevar = A1InfDose, infratevar = A1InfRate) error(CEps = 10) observe(CObs = C + CEps) stparm(V = tvV) stparm(Ke = tvKe) stparm(k0 = tvk0) fixef(tvV = c(, 56, )) fixef(tvKe = c(, 0.0634, )) fixef(tvk0 = c(, 125, )) }

Mario The model text should work as I tested it with my own data, however I would suggest you have been caught out by units and are thus are giving a much too low initial estimate for this rate. iIf you expect the estimate for k0 to be 125 mg/L (dose = 1000mg, T = 8 hours, k0= Dose / T). then ensure you enter your rate in units corresponding to the mass units of your conc. e.g. if conc is measure in ug/L then also enter your dose in microgrammes ie. 1000000ug at a rate of 125000 ug/h Simon

I have a question related to the implementation of zero-order kinetics to a slow release PK profile with two peaks after single i.m. injection in a PML model. Following are the details and my questions: The PK profile I’d like to model came from slow release formulation and it has two peaks. The first peak is thought to be related to the initial quick release (following first-order kinetics) and appeared on Day 1, while the 2nd peak is thought to be related to the much slow release process (may follow zero-order, first-order or more complex kinetics) and it appeared 21 days after a i.m dose. I try to fit the data with two absorption compartments, one represents the first peak with first-order absorption kinetics and another one represents the 2nd peak with zero order kinetics. The dose was split into these two compartments by using a bioavailability term (Frct) and a Tlag was also applied to the 2nd absorption process. When I try to change the absorption process of the 2nd dose compartment to “0 order with rate K0”, however, it seems that i still have the first order rate constant “Ka” in the model differential equation (in model text); Next I tried the models suggested by this post, in which I added a zero order input to the central compartment “c”, however, I am still not clear about: although you can have input parameters such as “Tlag” , “Bioavail” and “Rate k0” or “Duration Tinf”, where can I put in the “dose” that is related to the 2nd process? The split of the dose into the two absorption process need to be estimated by the model using parameter “Frct”. In my case, the zero order dose should be Aa*(1-Frct), so I think mapping “A1” to the dose should be wrong. Also, I feel the duration of the input (Tinf) should also be a parameter to be estimated. Is that correct?