Tutorials › Physiologically-Based Pharmacokinetics (PBPK) › Worked Example: Encoding Chronic Heart Failure Physiology

Obesity, Aging and Disease States · Tutorial 677 of 799

Worked Example: Encoding Chronic Heart Failure Physiology

Build and audit a hypothetical chronic-heart-failure physiology scenario by changing cardiac output, regional perfusion fractions, and selected organ volumes.

Advanced 11 min read

What You'll Learn

  • Define baseline and disease-state cardiac output, regional flow fractions, and organ volumes.
  • Normalize regional redistribution weights so their fractions sum to one.
  • Calculate absolute regional flows and compare them with baseline values.
  • Modify selected organ volumes while making the volume-bookkeeping assumption explicit.
  • Audit flow totals, nonnegative fractions, positive volumes, and perfusion-to-volume values.
  • Distinguish normalized allocation from directly specified regional flows.

Building a Chronic-Heart-Failure Scenario

A chronic-heart-failure physiology scenario should encode a coherent set of model inputs, not just a lower cardiac-output value. The total flow, its allocation among regions, and the volumes assigned to affected organs need to fit together. A reduced total cardiac output can coexist with a larger fraction of flow allocated to a region; that does not necessarily mean the region receives more flow in absolute terms.

The numerical values in this tutorial are hypothetical teaching inputs for a representative adult with chronic heart failure. They are not clinical reference ranges or a recommended disease profile. Heart-failure severity, phenotype, treatment, fluid status, and the PBPK model’s regional definitions can all change the appropriate inputs. The purpose is to show how to construct and check one internally consistent scenario.

Definition: Let \(Q_0\) be baseline cardiac output and \(Q_1\) be cardiac output in the disease scenario, both in L/min. For each region \(i\), let \(f_{i,0}\) and \(f_{i,1}\) be its baseline and disease-state fractions of cardiac output, and let \(Q_{i,0}=f_{i,0}Q_0\) and \(Q_{i,1}=f_{i,1}Q_1\) be its regional flows in L/min. The fractions are nonnegative and, when the model partitions all cardiac output among its regions, sum to one in each state. Organ volume \(V_i\) is the volume assigned to region \(i\) by the model, in L.

The region definitions must be consistent across the baseline and disease state. For instance, if the model treats the liver as one region that includes both arterial and portal contributions, the allocation must not also count the portal contribution as a separate region. Otherwise, summed flows will be double-counted. The following calculation assumes mutually exclusive regions that together account for all cardiac output.

Choose a Total Flow and a Redistribution Rule

Suppose the hypothetical baseline cardiac output is \(Q_0=5.00\) L/min and the chronic-heart-failure scenario uses \(Q_1=3.80\) L/min. The change is a reduction of \(1.20\) L/min, or 24% relative to baseline:

$$ \frac{Q_1-Q_0}{Q_0} = \frac{3.80-5.00}{5.00} = -0.240 $$

To represent redistribution, specify a baseline fraction for each region and a dimensionless relative weighting factor \(r_i\). A factor below one reduces that region’s weight relative to the other regions; it does not directly specify the region’s final fraction. Normalize all the weights together, then multiply the resulting fractions by the new total cardiac output.

$$ w_i=f_{i,0}r_i,\qquad S=\sum_i w_i,\qquad f_{i,1}=\frac{w_i}{S},\qquad Q_{i,1}=f_{i,1}Q_1 $$

This rule is suitable when the scenario is defined by relative allocation weights and the total cardiac output is specified separately. It requires \(S>0\); if every weight is zero, there is no allocation to normalize. If a region has a zero baseline fraction, this particular weighting rule leaves its weight at zero. A modeler who intends that region to receive flow must specify a different allocation rule or a positive weight for it.

Worked Example: Lower Cardiac Output With Normalized Redistribution

Use the following hypothetical baseline allocation and redistribution factors. The regions are assumed to be mutually exclusive and exhaustive.

RegionBaseline fraction \(f_{i,0}\)Weight factor \(r_i\)
Brain0.141.00
Heart0.040.85
Kidneys0.200.80
Splanchnic region0.250.75
Muscle0.170.55
Adipose tissue0.050.60
Skin0.060.60
Other0.090.70

The baseline fractions sum to \(1.00\). The unnormalized weights are \(0.1400,\ 0.0340,\ 0.1600,\ 0.1875,\ 0.0935,\ 0.0300,\ 0.0360,\) and \(0.0630\), respectively. Their sum is:

$$ S=0.1400+0.0340+0.1600+0.1875+0.0935+0.0300+0.0360+0.0630=0.7440 $$

For the brain, the normalized fraction is \(0.1400/0.7440=0.1882\), giving a disease-state flow of \(0.1882(3.80)=0.7151\) L/min. For the kidneys, the fraction is \(0.1600/0.7440=0.2151\), and the flow is \(0.2151(3.80)=0.8172\) L/min. Applying the same calculation to every region gives:

RegionDisease fraction \(f_{i,1}\)Baseline flow (L/min)Disease flow \(Q_{i,1}\) (L/min)
Brain0.18820.70000.7151
Heart0.045700.20000.1737
Kidneys0.21511.0000.8172
Splanchnic region0.25201.2500.9577
Muscle0.12570.85000.4776
Adipose tissue0.040320.25000.1532
Skin0.048390.30000.1839
Other0.084680.45000.3218

The disease fractions sum to approximately \(1.000\), allowing for rounding. The unrounded disease flows sum to \(3.80\) L/min. The brain fraction rises from 0.14 to about 0.1882, yet its flow changes only from 0.7000 to 0.7151 L/min. The kidney fraction rises from 0.20 to about 0.2151, while kidney flow falls from 1.000 to 0.8172 L/min. This illustrates why fractions and absolute flows must both be inspected.

Why the Normalization Works

The allocation rule has a simple justification. Each weight \(w_i\) is nonnegative if both \(f_{i,0}\) and \(r_i\) are nonnegative. When their sum \(S\) is positive, dividing each weight by \(S\) preserves nonnegativity and makes the fractions sum to one:

$$ \sum_i f_{i,1} = \sum_i\frac{w_i}{S} = \frac{\sum_i w_i}{S} = \frac{S}{S} = 1 $$

Thus, multiplying each normalized fraction by \(Q_1\) makes the regional flows sum to the selected total:

$$ \sum_i Q_{i,1} = \sum_i f_{i,1}Q_1 = Q_1\sum_i f_{i,1} = Q_1 $$

This is an accounting identity, not evidence that the allocation is physiologically correct. Normalization guarantees a complete partition of the chosen cardiac output; it cannot establish that the chosen weights reflect a particular patient group or disease phenotype.

Modify Selected Organ Volumes

Flow allocation and organ volume are distinct inputs. For a worked bookkeeping example, suppose a baseline model assigns 0.30 L to the heart, 1.50 L to the liver, and 0.31 L to the kidneys. For this hypothetical chronic-heart-failure profile, specify a 20% increase in modeled heart volume and a 10% increase in modeled liver volume to represent selected remodeling and congestion assumptions. Keep kidney volume unchanged. These are illustrative scenario choices, not universal consequences of heart failure.

Worked Example: Updating Heart and Liver Volumes

Apply the specified multipliers to the baseline volumes:

$$ V_{\mathrm{heart},1}=0.30(1.20)=0.360\ \mathrm{L} $$
$$ V_{\mathrm{liver},1}=1.50(1.10)=1.650\ \mathrm{L} $$

The kidney volume remains \(V_{\mathrm{kidneys},1}=0.310\) L. The selected organs therefore increase in combined volume by \(0.060+0.150=0.210\) L. If the model holds total tissue volume fixed at 63.00 L, the baseline residual “other” volume is \(63.00-(0.30+1.50+0.31+1.40+0.90+1.80+28.00+15.00+3.00)=10.79\) L. To maintain that fixed total as a bookkeeping constraint, the updated residual is \(10.79-0.210=10.58\) L.

That residual adjustment is not a claim that other tissues biologically shrink by 0.210 L. It is the consequence of choosing a fixed-total-volume representation. If the model instead allows total tissue volume or body mass to change, the modeler should represent the change explicitly rather than silently forcing it into a residual compartment.

Audit the Scenario Before Using It

A basic plausibility audit checks both arithmetic and meaning. The scenario should have a positive total cardiac output, nonnegative allocation fractions, and a clearly defined set of regions. Every modeled organ volume should be positive. If the fractions are intended to partition total cardiac output, they should sum to one, and the corresponding regional flows should sum to cardiac output. Rounding can produce a small discrepancy in a displayed table, so perform these checks with unrounded values when available.

For regions with positive baseline flow, an absolute-flow comparison can be expressed as a ratio:

$$ \frac{Q_{i,1}}{Q_{i,0}} = \frac{f_{i,1}Q_1}{f_{i,0}Q_0}, \qquad \text{when } f_{i,0}Q_0>0 $$

For example, the kidney-flow ratio in the worked allocation is \(0.8172/1.000=0.8172\): kidney flow is about 18.3% lower than baseline. If a region has zero baseline flow, this ratio is undefined; compare the two flows directly instead. The modeler should also inspect whether a zero baseline allocation is intentional and whether the scenario’s rule can represent the desired disease-state flow for that region.

Worked Example: Checking Flow and Perfusion per Volume

Use the heart and kidney values from the hypothetical examples. Baseline heart flow is \(0.04(5.00)=0.200\) L/min, and disease-state heart flow is approximately \(0.1737\) L/min. With heart volume changing from 0.300 to 0.360 L, the corresponding flow-per-volume values are:

$$ \frac{Q_{\mathrm{heart},0}}{V_{\mathrm{heart},0}} = \frac{0.200}{0.300} = 0.667\ \mathrm{min}^{-1}, \qquad \frac{Q_{\mathrm{heart},1}}{V_{\mathrm{heart},1}} = \frac{0.1737}{0.360} = 0.483\ \mathrm{min}^{-1} $$

For the kidneys, the baseline and disease-state values are \(1.000/0.310=3.23\ \mathrm{min}^{-1}\) and \(0.8172/0.310=2.64\ \mathrm{min}^{-1}\), respectively. These calculations are simple consistency summaries, not proof that the values are physiologically validated. They can flag inputs for review: an unexpectedly large or small flow per unit volume may reflect a wrong unit, an inconsistent region definition, an implausible volume, or an unsuitable allocation assumption. Appropriate acceptable ranges depend on the model and the physiological evidence used to parameterize it.

1
Set the scenario boundary.
Define the population and phenotype represented, the baseline, the disease state, and the regions that partition cardiac output.
2
Set total cardiac output.
Choose \(Q_1\) explicitly and state its units and relationship to the baseline value.
3
Specify regional allocation.
Use normalized relative weights or another explicit rule; calculate fractions and absolute flows, not fractions alone.
4
Update organ volumes.
Apply stated organ-specific assumptions and clarify whether total tissue volume is fixed or allowed to change.
5
Run arithmetic and plausibility checks.
Verify flow sums, fraction constraints, positive volumes, and suspicious flow-per-volume values before using the inputs.

Alternative Approaches, Diagnostics, and Limitations

Normalized weights are convenient when the modeler has a total cardiac output and relative information about redistribution. An alternative is to specify absolute regional flows \(Q_{i,1}\) directly. That approach can use region-specific data, but the specified flows must still be checked against the total: if the regions partition cardiac output, then \(\sum_i Q_{i,1}=Q_1\). If the sum differs, the inputs are inconsistent unless the model intentionally includes an unallocated flow or a different accounting boundary.

A common mistake is to lower cardiac output and then treat the new fractions as if they were absolute flows. Another is to apply relative factors without renormalizing, so the resulting fractions no longer sum to one. The correction is to distinguish the total \(Q_1\) from the allocation \(f_{i,1}\), calculate \(Q_{i,1}=f_{i,1}Q_1\), and check the sums. Also, an increase in a region’s fraction does not by itself imply increased regional flow.

The scenario remains a structured hypothesis. A single set of flow and volume multipliers cannot represent every person with chronic heart failure, and the normalized allocation rule does not encode all mechanisms that may influence regional perfusion. Unusual outputs may arise from a poor assumption rather than an arithmetic error. Review the phenotype, region definitions, source data, units, and sensitivity of predictions to uncertain inputs; do not interpret a plausibility check as clinical validation.

Check Your Understanding

Answer each question using the definitions and checks in this tutorial. Brief solutions follow the questions.

  1. If cardiac output falls from 5.0 to 3.8 L/min, what is the percentage change relative to baseline?
  2. Why must relative regional weights be normalized before they are used as fractions of cardiac output?
  3. A region has a larger disease-state fraction but a smaller absolute flow. Is that possible? Explain.
  4. What is the disease-state heart volume if baseline volume is 0.30 L and the scenario applies a 20% increase?
  5. What should be done if a region has zero baseline flow and a flow ratio is requested?

Solutions. (1) \((3.8-5.0)/5.0=-0.24\), a 24% decrease. (2) Normalization makes the fractions sum to one, so their flows sum to the specified cardiac output. (3) Yes: the total cardiac output may fall enough that absolute flow decreases even as the region’s share rises. (4) \(0.30(1.20)=0.36\) L. (5) The ratio is undefined because its denominator is zero; compare the disease and baseline flows directly and review whether the allocation rule represents the intended scenario.