Simulate PBPK Model with Boomer

A PBPK Model

A physiologically based pharmacokinetic (PBPK) model will include the organs and tissues of interest. Those for which you have data? You may be able to get most of the parameters from the literature after appropriate scaling, allometrically. The basic PBPK model parameters are Q (blood flow), V (tissue or organ volume/weight) and R (the partition coefficient between blood and tissue). Other parameters include dosing and clearance or elimination values. Clearance might be describes as drug leaving via liver or kidney or from blood. Here we are assuming a flow limited model.

A PBPK Model

One example of a PBPK model

The Parameters

Finding good values for the model parameters can be a challenge. These example values are for a 34 Kg animal loosely based on values from Bevill et al. (1977), Duddy et al. (1984) and other sources.

Organ/Tissue Blood flow,
Q (mL/min)
Organ Volume,
V (mL)
Tissue/Blood
Partition Coefficient, R
Clearance,
CL (mL/min)
Venous 2,700 800 1.0  
Arterial 2,700 1,600 1.0  
Lung 2,700 375 0.9  
Liver 460 790 0.9 76.8
Spleen 75 60 0.9  
Kidney 330 165 0.9 61.8
Heart 97 200 0.9  
Muscle 280 18,300 0.9  
Other 1,458 11,710 1.0  
Total 2,700 34,000    

Number the Components

Boomer doesn't have a Graphical User interface (GUI) so its a good idea to draw the model and number the components.

A PBPK Model

One example of a PBPK model with the Components Numbered

Data sets are numbered as well. We can use the same number as for the components except that we may not have data for Arterial blood or Other. Another data set might be drug in urine following clearance from the Kidney.

Entering the Data - A Simulation

Start the run

>cd /Directory/For/This/Analysis

>boomer

 Boomer v3.4.5
                          Ref: Comput.Meth.Prog.Biomed.,29 (1989) 191-195
 David W.A. Bourne
                              Copyright 1986-2018 D.W.A. Bourne

 See http://www.boomer.org or email david@boomer.org for more info

 Based on the original MULTI by K. Yamaoka, et.al.
  J. Pharmacobio-Dyn., 4,879 (1981); ibid, 6,595 (1983); ibid, 8,246 (1985)

 DATA ENTRY

  0) From KEYBOARD
  1) From .BAT file                -1) From .BAT file (with restart)
  2) From KEYBOARD creating .BAT file
  3) From .BAT file (quiet mode)   -3) From .BAT file (quiet mode-with restart)
  4) to enter data only             5) to calculate AUC from a .DAT file
 -9) to quit                       -8) Registration Information

 Enter choice (0-5, -1, -3, -8 or -9) 2
 Enter .BAT filename 
pbpk_sim
 The output .BAT filename is pbpk_sim.BAT

 METHOD OF ANALYSIS

 0) Normal fitting
 1) Bayesian
 2) Simulation only
 3) Iterative Reweighted Least Squares
 4) Simulation with random error or sensitivity analysis
 5) Grid Search

 -5) To perform Monte Carlo run (Only once at the start of BAT file)
 -4) To perform multi-run (End of BAT file only)
 -3) To run random number test subroutine
 -2) To close (or open) .BAT file
 -1) To finish

 Enter choice (-3 to 5) 2

 Where do you want the output?

 0) Terminal screen
 1) Disk file

 Enter choice (0-2) 1
 Enter .OUT filename 
pbpk_sim
 The output .OUT filename is pbpk_sim.OUT

Enter the parameters for this run. Note parameters 15-17 for PBPK models.

Boomer parameter choices

Parameters currently available in Boomer for model building

Enter the Dose - here a bolus 100 mg dose into the Venous component (1).

 Enter type# for parameter  1 (-5 to 51)      1
 Enter Dose     value     100.0    
 Enter component to receive dose      1
 Enter component for F-dependence ( 1 to - 1 or 0 for no dependence)      0

 Input summary for Dose                 (type  1)

     Fixed value is    100.0    
     Dose/initial amount added to     1

 Enter 0 if happy with input, 1 if not, 2 to start over      0

Enter parameters for the Vein to Lung step and output to the first data set, Venous (1). Note that the value for R(Vein) is 1. The first data set is for Vein.

 Enter type# for parameter  2 (-5 to 51)      15
 Enter parameter name  Vein > Lung                                                 
 Enter Q Vein > Lung                                                    value     2700.    
 Enter component to receive flux      3
 Enter component to lose flux      1

 Input summary for Q Vein > Lung        (type 15)

     Fixed value is    2700.    
     Transfer from     1 to     3

 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter V Vein > Lung                                                    value     800.0    
 Enter data set (line) number      1
 Enter line description  [Vein]                                                      

 Input summary for V Vein > Lung        (type 16)

     Fixed value is    800.0    
     Component     1 added to line     1


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter R Vein > Lung                                                    value     1.000    

 Input summary for R Vein > Lung        (type 17)

     Fixed value is    1.000    

 Enter 0 if happy with input, 1 if not, 2 to start over      0

The next step is from Lung to Artery. Here we enter the volume and partition coefficient for the Liver. For organs other than Vein, Artery and Other we will assume R is 0.9. The second data set is Lung.

 Enter type# for parameter  5 (-5 to 51)      15
 Enter parameter name  Lung > Artery                                               
 Enter Q Lung > Artery                                                  value     2700.    
 Enter component to receive flux      2
 Enter component to lose flux      3

 Input summary for Q Lung > Artery      (type 15)

     Fixed value is    2700.    
     Transfer from     3 to     2

 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter V Lung > Artery                                                  value     375.0    
 Enter data set (line) number      2
 Enter line description  [Lung]                                                      

 Input summary for V Lung > Artery      (type 16)

     Fixed value is    375.0    
     Component     3 added to line     2

 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter R Lung > Artery                                                  value    0.9000    

 Input summary for R Lung > Artery      (type 17)

     Fixed value is   0.9000    


 Enter 0 if happy with input, 1 if not, 2 to start over      0

Now we can start on the output from the Artery with Liver.

 Enter type# for parameter  8 (-5 to 51)      15
 Enter parameter name  Artery > Liver                                              
 Enter Q Artery > Liver                                                 value     460.0    
 Enter component to receive flux      4
 Enter component to lose flux      2

 Input summary for Q Artery > Liver     (type 15)

     Fixed value is    460.0    
     Transfer from     2 to     4

 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter V Artery > Liver                                                 value     1600.    
 Enter data set (line) number      3
 Enter line description  [Artery]                                                    

 Input summary for V Artery > Liver     (type 16)

     Fixed value is    1600.    
     Component     2 added to line     3


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter R Artery > Liver                                                 value     1.000    

 Input summary for R Artery > Liver     (type 17)

     Fixed value is    1.000    

 Enter 0 if happy with input, 1 if not, 2 to start over      0

We have already entered V and R values for Artery so they don't need to added for the next entry for Spleen, just the Q value.

 Enter type# for parameter 11 (-5 to 51)      15
 Enter parameter name  Artery > Spleen                                             
 Enter Q Artery > Spleen   value     75.00    
 Enter component to receive flux      5
 Enter component to lose flux      2

 Input summary for Q Artery > Spleen    (type 15)

     Fixed value is    75.00    
     Transfer from     2 to     5

Next we can enter the parameters for Spleen to Liver

 Enter type# for parameter 14 (-5 to 51)      15
 Enter parameter name  Spleen > Liver                                              
 Enter Q Spleen > Liver  value     75.00    
 Enter component to receive flux      4
 Enter component to lose flux      5

 Input summary for Q Spleen > Liver     (type 15)

     Fixed value is    75.00    
     Transfer from     5 to     4


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter V Spleen > Liver  value     60.00    
 Enter data set (line) number      4
 Enter line description  [Spleen]                                                    

 Input summary for V Spleen > Liver     (type 16)

     Fixed value is    60.00    
     Component     5 added to line     4


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter R Spleen > Liver  value    0.9000    

 Input summary for R Spleen > Liver     (type 17)

     Fixed value is   0.9000    

Parameters, i.e Q values, for the rest of the transfer from Artery to Kidney, Heart, Muscle and Other follow in the same way. Next we start to add the transfer from Liver through Other to Vein starting with Liver. We enter Liver blood flow, volume and partition coefficient value.

 Enter type# for parameter 29 (-5 to 51)      15
 Enter parameter name  Liver > Vein                                                
 Enter Q Liver > Vein     value     535.0    
 Enter component to receive flux      1
 Enter component to lose flux      4

 Input summary for Q Liver > Vein       (type 15)

     Fixed value is    535.0    
     Transfer from     4 to     1


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter V Liver > Vein     value     790.0    
 Enter data set (line) number      5
 Enter line description  [Liver]                                                     

 Input summary for V Liver > Vein       (type 16)

     Fixed value is    790.0    
     Component     4 added to line     5


 Enter 0 if happy with input, 1 if not, 2 to start over      0
 Enter R Liver > Vein     value    0.9000    

 Input summary for R Liver > Vein       (type 17)

     Fixed value is   0.9000    

The rest of the tissue to Vein transfer are entered in the same way. A link to the complete BAT and OUT files is provided below. The last step in this model is to include an elimination (or clearance) step. Here we have elimination from the Vein but it could be from Liver and/or Kidney. Elimination is to outside the model, 0, but it could be to a Urine or Metabolite component.

 Enter type# for parameter 44 (-5 to 51)       2
 Enter parameter name  Elimination                                                 
 Enter Elimination        value     1.500    
 Enter component to receive flux      0
 Enter component to lose flux      1

 Input summary for Elimination          (type  2)

     Fixed value is    1.500    
     Transfer from     1 to     0

With all this data entered Boomer will provide a Flow balance table. The in and out values should be the same or the plumbing is wrong.

 Flow balance for Physiological Model

 Component  1) in    2700.     out    2700.    
 Component  2) in    2700.     out    2700.    
 Component  3) in    2700.     out    2700.    
 Component  4) in    460.0     out    460.0    
 Component  5) in    75.00     out    75.00    
 Component  6) in    330.0     out    330.0    
 Component  7) in    97.00     out    97.00    
 Component  8) in    280.0     out    280.0    
 Component  9) in    1458.     out    1458.    

Next the numerical integration method is chosen and a description entered before entering the data. PBPK systems are typical 'stiff' (very slow and very fast transfers) so Gears method is a good choice.

 Method of Numerical Integration

 0) Classical 4th order Runge-Kutta
 1) Runge-Kutta-Gill
 2) Fehlberg RKF45
 3) Adams Predictor-Corrector with DIFSUB
 4) Gears method for stiff equations with PEDERV
 5) Gears method without PEDERV

 Enter choice (0-5)      4

 Enter Absolute error term for
     Numerical integration (0.001)     0.000    
 Enter description for this analysis:  Simulation of PBPK Model                                    

 Enter data from

 0) Disk file
 1) Keyboard

 Enter Choice (0-1)      1

 Enter data for [Vein]         
      Enter x-value (time) = -1 to finish data entry

 X-value (time)     0.000    
 Y-value (concentration)     0.000    

After entering values for each data set exit by entering -1 for X-value. For these simulations Y-values can be entered as 0. Check for errors, save or not and move to the next data set. After all the data sets are entered you can choose to calculate a AUC values or other options such as graphs.

 X-value (time)     24.00    
 Y-value (concentration)     0.000    

 X-value (time)    -1.000    

 Data for         [Artery]

 DATA #      Time      Concentration

      1     0.000        0.000    
      2     1.000        0.000    
      3     2.000        0.000    
      4     3.000        0.000    
      5     4.000        0.000    
      6     5.000        0.000    
      7     6.000        0.000    
      8     8.000        0.000    
      9     12.00        0.000    
     10     14.00        0.000    
     11     16.00        0.000    
     12     18.00        0.000    
     13     21.00        0.000    
     14     24.00        0.000    
 Do you want to

 0) Accept data
 1) Correct data point
 2) Delete data point
 3) Insert new data point
 4) Add offset to x-value

 Enter choice (0-3)      0

 Save Observed Data to Disk Module       

 0) Continue without saving
 1) Save data for         [Artery on disk

 Enter choice      0

 Calculation of AUC and AUMC section

  0) Exit this section
  1) [Vein]         
  2) [Lung]         
  3) [Artery]       
  4) [Spleen]       
  5) [Liver]        
  6) [Kideny]       
  7) [Heart]        
  8) [Muscle]       
  9) [Other]        

 Enter line # for required AUC (0- 9)      0

 Additional Output

 Enter ->    0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15
 Save Data      x     x     x     x     x     x     x     x
 Graphs            x  x        x  x        x  x        x  x
 Extra files             x  x  x  x              x  x  x  x
 Sensitivity                         x  x  x  x  x  x  x  x

 Save calculated data files, Produce linear, semi-log and
 weighted residual plots, save extra data files or perform
 sensitivity or optimal sampling analysis

 Enter choice (0-15)      2

Among other output information Boomer provides a summary of the model as entered. Here we can check for errors. The BAT file can be edited and re-run as needed. The flow balance is output as well as the calculated data.

 Model and Parameter Definition

  #  Name                    Value       Type From To     Dep  Start Stop

  1) Dose                =   100.0        1    0    1       0    0    0
  2) Q Vein > Lung       =   2700.       15    1    3       0    0    0
  3) V Vein > Lung       =   800.0       16    1    1       0    0    0
  4) R Vein > Lung       =   1.000       17    0    0       0    0    0
  5) Q Lung > Artery     =   2700.       15    3    2       0    0    0
  6) V Lung > Artery     =   375.0       16    3    2       0    0    0
  7) R Lung > Artery     =  0.9000       17    0    0       0    0    0
  8) Q Artery > Liver    =   460.0       15    2    4       0    0    0
  9) V Artery > Liver    =   1600.       16    2    3       0    0    0
 10) R Artery > Liver    =   1.000       17    0    0       0    0    0
 11) Q Artery > Spleen   =   75.00       15    2    5       0    0    0
 12) V Artery > Spleen   =   1600.       16    2    0   10900    0    0
 13) R Artery > Spleen   =   1.000       17    0    0   11000    0    0
 14) Q Spleen > Liver    =   75.00       15    5    4       0    0    0
 15) V Spleen > Liver    =   60.00       16    5    4       0    0    0
 16) R Spleen > Liver    =  0.9000       17    0    0       0    0    0
 17) Q Artery > Kidney   =   330.0       15    2    6       0    0    0
 18) V Artery > Kidney   =   1600.       16    2    0   10900    0    0
 19) R Artery > Kidney   =   1.000       17    0    0   11000    0    0
 20) Q Artery > Heart    =   97.00       15    2    7       0    0    0
 21) V Artery > Heart    =   1600.       16    2    0   10900    0    0
 22) R Artery > Heart    =   1.000       17    0    0   11000    0    0
 23) Q Artery > Muscle   =   280.0       15    2    8       0    0    0
 24) V Artery > Muscle   =   1600.       16    2    0   10900    0    0
 25) R Artery > Muscle   =   1.000       17    0    0   11000    0    0
 26) Q Artery > Other    =   1458.       15    2    9       0    0    0
 27) V Artery > Other    =   1600.       16    2    0   10900    0    0
 28) R Artery > Other    =   1.000       17    0    0   11000    0    0
 29) Q Liver > Vein      =   535.0       15    4    1       0    0    0
 30) V Liver > Vein      =   790.0       16    4    5       0    0    0
 31) R Liver > Vein      =  0.9000       17    0    0       0    0    0
 32) Q Kidney > Vein     =   330.0       15    6    1       0    0    0
 33) V Kidney > Vein     =   165.0       16    6    6       0    0    0
 34) R Kidney > Vein     =  0.9000       17    0    0       0    0    0
 35) Q Heart > Vein      =   97.00       15    7    1       0    0    0
 36) V Heart > Vein      =   200.0       16    7    7       0    0    0
 37) R Heart > Vein      =  0.9000       17    0    0       0    0    0
 38) Q Muscle > Vein     =   280.0       15    8    1       0    0    0
 39) V Muscle > Vein     =  0.1830E+05   16    8    8       0    0    0
 40) R Muscle > Vein     =  0.9000       17    0    0       0    0    0
 41) Q Other > Vein      =   1458.       15    9    1       0    0    0
 42) V Other > Vein      =  0.1171E+05   16    9    9       0    0    0
 43) R Other > Vein      =   1.000       17    0    0       0    0    0
 44) Elimination         =   1.500        2    1    0       0    0    0

 Flow balance for Physiological Model

 Component  1) in    2700.     out    2700.    
 Component  2) in    2700.     out    2700.    
 Component  3) in    2700.     out    2700.    
 Component  4) in    535.0     out    535.0    
 Component  5) in    75.00     out    75.00    
 Component  6) in    330.0     out    330.0    
 Component  7) in    97.00     out    97.00    
 Component  8) in    280.0     out    280.0    
 Component  9) in    1458.     out    1458.    


 Data for [Vein] :-

 DATA #   Time       Observed      Calculated    (Weight)  Weighted residual

     1    0.000       0.00000      0.125000       0.00000      -0.00000    
     2    1.000       0.00000      0.394549E-02   0.00000      -0.00000    
     3    2.000       0.00000      0.341332E-02   0.00000      -0.00000    
     4    3.000       0.00000      0.277143E-02   0.00000      -0.00000    
     5    4.000       0.00000      0.231940E-02   0.00000      -0.00000    
     6    5.000       0.00000      0.201767E-02   0.00000      -0.00000    
     7    6.000       0.00000      0.180599E-02   0.00000      -0.00000    
     8    8.000       0.00000      0.152751E-02   0.00000      -0.00000    
     9    12.00       0.00000      0.120182E-02   0.00000      -0.00000    
    10    14.00       0.00000      0.108403E-02   0.00000      -0.00000    
    11    16.00       0.00000      0.981852E-03   0.00000      -0.00000    
    12    18.00       0.00000      0.891648E-03   0.00000      -0.00000    
    13    21.00       0.00000      0.774626E-03   0.00000      -0.00000    
    14    24.00       0.00000      0.675644E-03   0.00000      -0.00000    

Linear and semi-log printer-style plots can be output for a quick review of the results.

    Plots of observed (*) and calculated values (+)
           versus time for [Lung]. Superimposed points (X)

   0.4424E-02  Linear                     0.4424E-02  Semi-log
 | +                                     | +                                   
 |                                       |                                     
 |                                       |                                     
 |                                       |                                     
 |                                       |                                     
 |                                       |                                     
 |                                       |   +                                 
 |                                       |                                     
 |                                       |                                     
 |   +                                   |    +                                
 |                                       |                                     
 |                                       |                                     
 |                                       |      +                              
 |    +                                  |                                     
 |                                       |       +                             
 |                                       |         +                           
 |      +                                |                                     
 |                                       |                                     
 |       +                               |            +                        
 |         +                             |                                     
 |                                       |                                     
 |            +                          |                                     
 |                                       |                  +                  
 |                  +                    |                     +               
 |                     +  +              |                                     
 |                           +           |                        +            
 |                               +    +  |                           +         
 |                                       |                                     
 |                                       |                               +     
 |                                       |                                     
 |X* ** ** *  *     *  *  *  *   *    *  |                                    +
 |_____________________________________  |X*_**_**_*__*_____*__*__*__*___*____*
    0.000                                 0.6115E-03
 0              <-->             24.     0              <-->             24.    

The complete BAT and OUT files can be dowloaded.

The BAT file can be saved as PBPK.BAT and run with Boomer. With the current version of Boomer for Windows the line
Enter component for F-dependence ( 1 to - 1 or 0 for no dependence)      0

will need to be removed.

References


Privacy Statement - 25 May 2018

Material on this website should be used for Educational or Self-Study Purposes Only

iBook and pdf versions of this material and other PK material is available

Copyright © 2001-2019 David W. A. Bourne (david@boomer.org)