MATLAB Answers

n Transit compartment single distribution compartment PK absorption model in simbiology

10 views (last 30 days)
Daniel Hines
Daniel Hines on 18 Apr 2019
Edited: Jeremy Huard on 26 Apr 2019
I have built a n-transit compartment with single distibutional pharmacokinetic absorption model using SimBiology. This model is based on the TRANSIT model descibed in the following publication: Savic, R.M., Jonker, D.M., Kerbusch, T. et al. J Pharmacokinet Pharmacodyn (2007) 34: 711.
I chose to start by loading a one compartment absorption model with Clearance parmaeterization (macro parameters) and then modified the absorption reaction equation as n transit compartment that is based on an analytical solution to determine the transit compartment number as a continuous variable (not an interger).
analytical solution for number of compartments:
n analytical solution.PNG
Single distribution compartment ODE:
nTransit 1Comp ODE.PNG
transform of ODE for numerical stability when n is large:
ODE transform.PNG
Attache is a report summarizing how I defined the model in simbiology.
I am not sure if I have used the wrong syntax but I am seeing negative cincentrations at the first simulated timepoints as shown by this simulation plot:
The simulation should be a gradual absorption phase in contrast to typical tlag absorption models that are in the simbiology PK model library.
Daniel Hines
Daniel Hines on 18 Apr 2019
I am trying to recreat the n transit PK absorption model that ius described in the aforementioned publication.
In comparison to typical lag time absortion models, this transit model considers the delay to absorption as the transport through multiple tansit compartments prior to absorption.
Also, the number of transit compartments are typically defined as a positive integer value. But in this case, and anlytical solution to the number of transit compartments is included so that n may defined as a non-integer value.
That solution is defined by:ODE transform.PNG
where Aa is the mass of drug at the absorption site
Dose*F is the available dose for absorption,
ktr is the transit rate constant
n is the number of transit compartments
ka is the absorption rate constant into the central compartment
ktr can be defined by the parameters n and MTT (mean transit time)
I attempted to define this transit model by first loading a one compartment absorption model from the simbiology PK model library and then modifying the absorption flux equation as the absorption site drug ODE above.
However after simulating a 400mg dose I am seeing a PK response that isnt making sense (negative concentration at early timepoints) which tells me something is wrong with how I defined the model. Here's the response I am seeingsim.PNG
Here's the response I want to see (solid bacl curve) in comparison toa lag time absorption model (dotted black curve):
transit vs lag PK response plot.PNG
Apparently I can't upload the simbiology project file here so if there is another way you would like me to share the model with me just let m e know.
This model would be very useful in contrast to conventional PK absorption models for drugs that exhibit slow or delayed absorption. A simple model structure in between lag time response models and large PBPK models.
I greatly appreciate the help!

Sign in to comment.

Answers (1)

Wojciech Krzyzanski
Wojciech Krzyzanski on 19 Apr 2019
Dear Dan,
For a positive input to the Aa compartment and 0 initial value (Aa(0)=0), your solultion Aa(t) should be always positive. Your simulated absorption curve implies that you have ODE solver issues. Since you mentioned that the number of transit compartments is large, I think this is a stiffness problem, and your ODE solver is not suited for stiff equations. Did you get negative Aa for smaller n? Stiffness can occur for large ka as well.
Jeremy Huard
Jeremy Huard on 25 Apr 2019
Hi Daniel,
the equation defining the transit compartment is only valid for a single bolus.
But you can modify it for repeated dosing by replacing 'time' in the equation by the time from dosing as suggested here:
In SimBiology you would need to add an event that stores the time of dosing. If your dose amount is constant, this is all you would need to do. If your dose amount depends on a model parameter, you can modify Dose in this event.
I have implemented this in your model (see attached file).
Edit: This was the wrong URL. I have corrected it.

Sign in to comment.


More Answers in the  SimBiology Community

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!