File Exchange

image thumbnail

Generic SimBiology PBPK model

version (119 KB) by MathWorks SimBiology Team
SimBiology implementation of a generic PBPK model. Human fasted, Human fed and Rat physiologies.


Updated 01 Apr 2021

View Version History

View License

SimBiology project file and associated MATLAB files that contain a generic and adaptable PBPK model. Human fasted, Human fed and Rat physiologies are included as variants.

Once you download the folder, either change your current folder in MATLAB to be this folder or add the folder to the MATLAB path. You can add/remove a folder to/from the path by right-clicking on it in the 'Current Folder' panel in the main MATLAB window and selecting "Add/Remove from path".
This folder includes helper functions for the SimBiology model, calculateParacellularAbsorption.m and calculateTissuePartition.m, and for SimBiology to find those functions their containing folder must be on the path or the current folder.

Tested on R2019a and R2018a but will likely work on earlier versions. Does not contain tasks or the Renin-Angiotensin model as used in the June 2012 webinar. Please see for the project used in that webinar.

Model Structure:
Peters, S. A. (2008). Evaluation of a generic physiologically based pharmacokinetic model for lineshape analysis. Clinical pharmacokinetics, 47(4), 261-75.
Tissue Partition Coefficients:
Rodgers, T., & Rowland, M. (2006). Physiologically Based Pharmacokinetic Modelling 2 : Predicting the Tissue Distribution of Acids , Very Weak Bases , Neutrals and Zwitterions. Journal of pharmaceutical sciences, 95(6), 1238-1257.
Rodgers, T., Leahy, D., & Rowland, M. (2005). Physiologically based pharmacokinetic modeling 1: predicting the tissue distribution of moderate-to-strong bases. Journal of pharmaceutical sciences, 94(6), 1259-76.

Cite As

MathWorks SimBiology Team (2021). Generic SimBiology PBPK model (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (18)


My bad! It was not in the path

Florian Augustin

Hi Damir, calculateParacellularAbsorption.m and calculateTissuePartition.m are functions included in the download. For SimBiology to find those functions their containing folder must be on the path or the current folder. You can add/remove a folder to/from the path by right-clicking on it in the 'Current Folder' panel in the main Matlab window and selecting "Add/Remove from path".


I keep on getting
The name 'calculateParacellularAbsorption' in rule 'Paracellular Absorption' does not uniquely refer to any species
How to fix this?

Jeremy Huard

Wei Wang

Why I only see the note of "Copyright 2012-2018 The MathWorks, Inc...." without access to PBPK model when I open this file in SimBiology. Can anyone help me? It is the first day I use SimBiology and MATLAB


Nice model!!Which helps me a lot!!

Andrew Heitman

I can't find the notes on incorporating the Matlab calculations for paracellular etc. I have the Matlab codes downloaded already.

Ali Alhadab

Can I download the file and run it on Matlab? Is Simbiology different than Matlab? Any explanation is highly appreciated

Naresh Mittapelly

Hi every one,

Can any body help me with i.v dosing in generic pbpk model, means how introduce the i.v bolus in the model !?

thanks in advance,


There might be an error (I have no access to either Matlab or SimBiology anymore), but it would be different from what you suggest.
See the equation in the reference:

dCT/dt = QT/VT * (CAR - (CT * R/ (f * K) )

or just the input into Thymus:

dCT/dt = QT/VT * CAR

so division by input organ volume

the reason for dividing it by the Thymus volume is to account for the different volumes of arterial blood and thymus. The issue I see is that I multiply with VAR which is nowhere to be found in the reference. Can't remember the reason for that and cannot verify now. If you still think there is an issue with your alleged error, please correct it and reupload to the file exchange. Otherwise please contact arthur.goldsipe [at] (sorry Arthur for pulling you into this, I don't have access to these old things anymore).


well, I'm pretty sure that the model has an error. Here is for example the ode of the model for the change of concentration in thymus:

d(Thymus.Drug)/dt = 1/Thymus*( (1/Thymus*(organismBloodFlowThymus*[Arterial Blood].Drug))*[Arterial Blood] - (1/Thymus*organismBloodFlowThymus*Thymus.Drug*DrugBloodPlasmaRatio/(DrugFractionUnbound*KTissuePartitionThymus*DrugTissueFactor)))*Thymus)

As we can see, the second "1/Thymus" needs to be replaced by "1/[Arterial Blood]", so that it cancels out. This would give "organismBloodFlowThymus*[Arterial Blood].Drug" as the correct input rate in amount/time into thymus (as it is described in the reference).

(Assuming Thymus, [Arterial Blood] are Vol, *.Drug are Conc)

Am I wrong?


Hey Sebastian,
sorry for replying only now, I'm not at MathWorks anymore which is where I build the model. Check the reference for more info on the model, but the reason for the equation, as far as I can remember it, is:

organismBloodFlowTISSUE is in [volume/time]
drug is in [amount/volume]
TISSUE is in [volume]

so the second part of the equation translates concentration per time into amount per time which is then divided by tissue volume to get concentration in tissue changed per unit time. Does that make sense to you?


do I miss something or is there an error in the code. Each arterial input (except gut) and the venous input into lung is coded as:
(1/TISSUE*(organismBloodFlowTISSUE*[Arterial Blood].Drug))

(with TISSUE: kindey, heart, bone, etc.)

I would suggest this code:
(1/[Arterial Blood]*(organismBloodFlowTISSUE*[Arterial Blood].Drug))

or am I wrong?

Wan Su

Oh! Sorry. There were answers already. It's working well now. Thank you.

Wan Su

When I run this model file, there were 14 errors. Belows are error messages.

"The name 'calculateParacellularAbsorption' in rule 'Paracellular Absorption' does not refer to any in-scope species, parameters, or compartments",
"The name 'calculateTissuePartition' in rule 'Adipose Tissue Partition Coefficient' does not refer to any in-scope species, parameters, or compartments."
and same message for bone, brain, gut, heart, liver, lung, muscle, pancreas, skin, thymus, spleen. What should I do?


Duh ! As a long time user I should have figured that one out !!! Many thanks for reminding me !!

Sven Mesecke

Hi Raj,
the first warning should not concern you, everything will work fine.
The error message is also slightly misleading. The download file contains two additional files (calculate...). These must be on the MATLAB path as they are called by SimBiology when you try to run the model. Either add the folder to the MATLAB path or navigate in the MATLAB Desktop to the folder. Does this solve your problems?


This is an excellent tool but doesn't work in my 2012a version. Upon opening the project file, Simbiology complains as follows:

"The SB project version being loaded is newer than the SB version being run. Some features of the project may not be supported in this version"

Also, the additional rules don't work ("does not refer to any in-scope species, parameters or compartment").

Any ideas?

MATLAB Release Compatibility
Created with R2019a
Compatible with any release
Platform Compatibility
Windows macOS Linux
More Files in the  SimBiology Community

Community Treasure Hunt

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

Start Hunting!