Doses

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).

Representing Doses

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 time intervals

SimBiology dose objects support the following common dosing types.

Dosing StrategyDescription
BolusInstantaneous increase in the amount of drug in the compartment
InfusionIncrease of the drug at a fixed rate over a period of time, which is calculated from the dose amount
Zero-orderIncrease of the drug at a fixed rate calculated from the dose amount and dose duration
First-orderIncrease of the drug via the first-order absorption kinetics

Creating Dose Objects

There are two common ways to create dose objects. One way is to create a dose object using the sbiodose or 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.

Create a Dose Object Using sbiodose or adddose

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 argument for sbiosimulate or attach it to any model using adddose. You can also use it during parameter estimation using sbiofit or sbiofitmixed.

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 Active property to 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 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 StrategyExampleDose Object Properties Configuration
BolusAdd a Series of Bolus Doses to a One-Compartment ModelTo create a bolus dose, set the Amount and TargetName properties of a dose object. You might also need to configure other properties such as RepeatCount, Interval or scheduled dose times (Time) if you are applying a series of doses. For details on these properties, see ScheduleDose object and RepeatDose object .
InfusionAdd an Infusion Dose to a One-Compartment ModelUnlike a bolus dose, you also need to specify the infusion rate (Rate property) of the dose object.
Zero-orderIncrease Drug Concentration in a One-Compartment Model via Zero-order DosingUnlike a bolus dose, you need to additionally create a zero-order duration parameter and specify the duration parameter name (DurationParameterName property) of the dose object.
First-orderIncrease Drug Concentration in a One-Compartment Model via First-order DosingUnlike bolus, infusion, or zero-order, you need to create an additional reaction for the drug absorption.

Create Dose Objects from Dosing Data

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 createDoses function to automatically generate an array of dose objects that you can specify as an input argument for sbiofit or sbiofitmixed for fitting. For a complete workflow see Modeling the Population Pharmacokinetics of Phenobarbital in Neonates.

Simulation Solvers for Models Containing Doses

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.

See Also

| | |

Was this topic helpful?