PK Model With Dissolution and Bioavailability

Hello everyone

I am constructing a PK model which is preceded by a dissolution model (a Weibull model) in the GI track. From the dissolved drug in the GI, I pretend that only a fraction (F) is absorbed to the central compartment. However, I have questions on how to do so, since I defined the GI as the dosepoint.

Does anyone know how should I proceed?

Thank you very much in advance

Sara

Can you post your project file to see how far you have got? I assume you have worked through some of the graphical model building examples in the help e.g. https://onlinehelp.certara.com/phoenix/8.3/index.html#t=topics%2Fnlmeextwodosept.htm%23XREF_97540_Creating_a_two

Hi Simon

Thank you for your reply.

I am not using graphical model, I am using PML instead.

You may find below the model text:

test(){

# GI compartment
deriv(Aa = - ((Fmax*(Beta*scB)*(t^((Beta*scB)-1))*exp(-(t^((Beta*scB)))/(Alpha*scA)))/(Alpha*scA)) * Aa)
# Central compartment
deriv(A1_p = ((Fmax*(Beta*scB)*(t^((Beta*scB)-1))*exp(-(t^((Beta*scB)))/(Alpha*scA)))/(Alpha*scA)) * Aa - (Cl_p * C_p)- (Q_p * (C_p - C2_p)) - (VMax_p_m * C_p / (C_p + Km_p_m)))
# Peripheral compartment
deriv(A2_p = (Q_p * (C_p - C2_p)))

# Define Dosepoint
dosepoint(Aa)

# Concentrations definition
C_p = A1_p / V_p
C2_p = A2_p / V2_p

# Model erro
error(CEps_p = 0.1)
observe(Parent = C_p * exp(CEps_p))

# Initial estimates
# Dissolution (Weibull)
fixef(Fmax(freeze) = c(, 1, ))
fixef(Alpha(freeze) = c(, 7, ))
fixef(Beta(freeze) = c(, 1.5, ))
fixef(scA = c(, 80, ))
fixef(scB = c(, 2, ))
# Central compartment
fixef(V_p = c(0, 88, 400))
fixef(Cl_p = c(0, 28, 60))
fixef(F_p = c(0, 0.05, 0.4))
# Peripheral compartment
fixef(V2_p = c(0, 181, 3000))
fixef(Q_p = c(0, 22, 300))
# Metabolite conversion
fixef(VMax_p_m = c(0, 329, 6000))
fixef(Km_p_m = c(0, 700, 5000))
}

My idea is, that from the dose dissolved in Aa, only a fraction (F) is absorbed to the central compartment (A1_p).

Thank you!

Sara

Hi Sara,

I did not check the code in much detail, just used your formulas to do:

  1. define dissolution rate outside of the deriv statement

  2. limit the drate to 0-+Inf

  3. added bioavailability (F_p) to the absorption

  4. defined the static value Aadose as total dose amount

Here is the code:

test()
{

GI compartment

deriv(Aa = - drate * F_p * Aadose)

Central compartment

deriv(A1_p = drate *F_p * Aa - (Cl_p * C_p)- (Q_p * (C_p - C2_p)) - (VMax_p_m * C_p / (C_p + Km_p_m)))

Peripheral compartment

deriv(A2_p = (Q_p * (C_p - C2_p)))

Define Weibull for dissolution rate

drate=max(0,((Fmax*(BetascB)(t^((BetascB)-1))exp(-(t^((BetascB)))/(AlphascA)))/(Alpha*scA)))

Define Dosepoint

dosepoint(Aa, idosevar=Aadose)

Concentrations definition

C_p = A1_p / V_p
C2_p = A2_p / V2_p

Model erro

error(CEps_p = 0.1)
observe(Parent = C_p * exp(CEps_p))

Initial estimates

Dissolution (Weibull)

fixef(Fmax(freeze) = c(, 1, ))
fixef(Alpha(freeze) = c(, 7, ))
fixef(Beta(freeze) = c(, 1.5, ))
fixef(scA = c(, 80, ))
fixef(scB = c(, 2, ))

Central compartment

fixef(V_p = c(0, 88, 400))
fixef(Cl_p = c(0, 28, 60))
fixef(F_p = c(0, 0.05, 0.4))

Peripheral compartment

fixef(V2_p = c(0, 181, 3000))
fixef(Q_p = c(0, 22, 300))

Metabolite conversion

fixef(VMax_p_m = c(0, 329, 6000))
fixef(Km_p_m = c(0, 700, 5000))
}

An here are some plots:

[attachment=3740:drate.png]

[attachment=3742:compartments.png]

Let me know if this does not work for you.

Bernd

Hi Bernd,

Thank you so much! It worked perfectly!

If I want the remaining fraction of the dose (1-F_p) to go to a different compartment, can I do it just adding another differential equation?:

deriv(A3 = drate *(1-F_p) * Aa - …)

Thank you so much once again!

Sara

Hi Sara,

absolutely, please go ahead.

Bernd