|
Increased Productivity Example #5
PharmacoKinetics
Simulation
- A Pharmacokinetics open-two-compartment
model with first order absorption into elimination from central
compartment (blood cleared of drug through the liver and/or kidneys) is
presented here. The body tissues utilize the drug and therefor an
amount is removed by the body's filtering system, i.e. the liver and/or
kidneys.
- Rate of change in compartments is stated by
the following differential equations:
-
Plasma compartment
Tissue compartment
where
Ky represent Rate constants; y = a, 10, 12, and 21;
- Ai = Amount of drug at the ith
site: 0. Absorption site; 1. Compartment 1; and 2. Compartment 2.
- This system of differential equations can be
solved analytically using LaPlace transforms. These solutions are
usually expressed in terms of drug concentrations (i.e., parameters A,
B, & C). The model equation for compartment 1 is
-

C = - ( A + B )
- where Cp(t) is the plasma concentration at
time t;
and 'alpha' & 'beta' are hybrid parameters derived from K12,
K21, K10, and Ka.
- The half-life of 'beta' is constrained to the
range of three to nine years, and thus, adds the two constraints:
Half_life >= 3 and <= 9 years where the Half_life = ln(2) / beta.
- Relative error in curve fitting was chosen due
to the huge swing in amplitude over time.
|
|
Increased Productivity Example #5
Source Code:
- Calculus Program Listing:
-
Global All Problem Pharmaco ! -Kinetic parameters for open-two-compartment model Dimension Time( 12), Plasma( 12), Error( 12), Lows(5), Half(2) ! Observed plasma concentrations ... Oral tablet of 10 mg Data Time/0, .333, .5, .667, 1, 2, 4, 6, 8, 12, 24, 32/ ! X-Data Data Plasma/1.e-4, .657, .727, .763, .695, .51, .307, .161, ! Y-Data .135, .046, .021, .008/ ! X-Units=Hr. & Y-Units=Mcg/Ml Data Lows/ 5*0.D0/, Half/ 2*0.D0/ Npoints = 12: desiredHalflife = 1.2345 Write(1,*) ' Enter Initial Starting Value ... ' Read *, X A=X: B=X: Ka=X: Alpha=X: Beta=X ! Initial Values ! The next 'find' statement is many simulations combined into one. ! The solver 'jupiter' finds -a solution- that minimizes 'sum' Find A, B, Ka, Alpha, Beta; In Concentr; By Jupiter; With Lowers Lows; Holding Half; To Minimize Sum ! Changed problem to an Inverse Problem ... notice minimal difference. ! Takes a run or two to insure model & optimal solution. Find A, B, Ka, Alpha, Beta; In Concentr; By Jupiter; With Lowers Lows; Holding Half; To Match HalflifeError End Model Concentr ! Concentration In Compartment 1 Sum = 0 Do 10 i = 1, Npoints T = Time( i) C1 = A * Exp( - Alpha * T): C2 = B * Exp( - Beta * T): C = -(A + B) C3 = C * Exp( - Ka * T): Cp_t = C1 + C2 + C3 Error(i) = (Plasma( i) - Cp_t) / Plasma( i) Sum = Sum + Error(i)**2 10 Continue Halflife = Log( 2) / Beta: HalflifeError = desiredHalflife - Halflife Half(1) = Halflife - 3 ! 3 Years Minimum Half(2) = 9 - Halflife ! 9 Years Maximum End
- This PharmacoKinetics problem is another
increased productivity example do to using Calculus (level) programming.
HTML code
for linking to this page:
- <a
href="http://www.digitalcalculus.com/example/pharmacokinetics.html"><img
align="middle" width="100"
src="http://www.digitalcalculus.com/image/spblt.gif"/>
<strong>PharmacoKinetics, an Inverse Problem</strong>
</a>: Know desired Half Life, Find design parameters for Half
Life. Kinetic Simulation.
Go to top
|
|