Doses let you increase the amount of a species in a SimBiology® model during simulation, either at specific time points or predefined time intervals. For example, you can use a dose object to model an instantaneous supply of a drug regimen during the simulation of a model. The increase in the amount of a species occurs only during simulation and does not alter the species' value permanently (that is, the value in the model is not changed).
In SimBiology, doses are represented by two types of dose objects.
ScheduleDose object —
Applies a dose to a single species at a predefined list of time points
RepeatDose object —
Repeatedly applies a dose to a single species at regularly spaced
SimBiology dose objects support the following common dosing types.
|Bolus||Instantaneous increase in the amount of drug in the compartment|
|Infusion||Increase of the drug at a fixed rate over a period of time, which is calculated from the dose amount|
|Zero-order||Increase of the drug at a fixed rate calculated from the dose amount and dose duration|
|First-order||Increase of the drug via the first-order absorption kinetics|
There are two common ways to create dose objects. One way is
to create a dose object using the
adddose function. Another is to create
dose objects automatically from data containing dosing information.
This first approach is useful when you want to explore different dosing
strategies through simulation. The second approach is useful if you
already have a data set with dosing information and plan to use such
dosing information in your simulation or parameter estimation.
sbiodose creates a standalone
dose object that is not attached to any model. You can apply a standalone
dose to different models during simulation by specifying it as a dosing
attach it to any model using
You can also use it during parameter estimation using
adddose creates a dose
object and adds it to a model. Use this function if you want to attach
a dose object to a model. You must set its
true to apply the dose to the model during simulation.
The following examples show how to add a dose object to a one-compartment
PK model using
sbiodose and set up the dose properties
manually. Alternatively, you can use the built-in PK models with different
dosing types. For details, see Create Pharmacokinetic Models.
|Dosing Strategy||Example||Dose Object Properties Configuration|
|Bolus||Add a Series of Bolus Doses to a One-Compartment Model||To create a bolus dose, set the |
|Infusion||Add an Infusion Dose to a One-Compartment Model||Unlike a bolus dose, you also need to specify the infusion
|Zero-order||Increase Drug Concentration in a One-Compartment Model via Zero-order Dosing||Unlike a bolus dose, you need to additionally create a zero-order
duration parameter and specify the duration parameter name (|
|First-order||Increase Drug Concentration in a One-Compartment Model via First-order Dosing||Unlike bolus, infusion, or zero-order, you need to create an additional reaction for the drug absorption.|
If you already have dosing data for one or more subjects or
patients that you would like to use in your parameter estimation,
first create a
groupedData object from
your data set. Then use
to automatically generate an array of dose objects that you can specify
as an input argument for
sbiofitmixed for fitting. For a complete
workflow see Modeling the Population Pharmacokinetics of Phenobarbital in Neonates.
To simulate models containing doses, use a deterministic (ODE or SUNDIALS) solver. Stochastic solvers do not support doses. For details, see Choosing a Simulation Solver.