# Methods

Numerical verification only. This simulator is a portfolio platform. It is not a patient-specific or clinically validated digital twin.

## Portfolio runtime

A scenario document selects the physiology schedule.

- `static` holds the Jones and Rowland-Yeo 2013 organ flows. Pulse is not called.
- `numerical-scale` multiplies those flows by a prescribed factor. Pulse is not called.
- A Pulse schedule calls `run_healthy_adult` in `src/hdt/physiology/pulse_runtime.py`. That function initializes Pulse 4.4.0 from `StandardMale@0s.json` when the build provides it, then calls `advance_time_s` through the requested duration and pulls data requests. The returned samples are placed on the integer-microsecond lattice. Between samples the PBPK step holds the last circulation. The drug integrator does not advance Pulse, and Pulse does not integrate the teaching compound.

Drug transport uses the local well-stirred PBPK model and `advance_linear` (matrix exponential). Hepatic and renal clearance are inside that state. A second clearance law is not applied on top. When a scenario configures spatial samples, the finite-volume solver takes arterial drug and returns venous drug after the well-mixed step.

Playback in the workbench holds the latest stored sample. It does not interpolate a state, and opening the page does not start Pulse.

## Independent engines

`independent-v1`, `organ-v1`, `wholebody-v1`, and `course-correction-1` remain in the tree as comparison backends. They do not import Pulse or BodyParts3D. The independent heart’s resting output is about 3.8 L/min and was not retuned to a textbook interval. `course-correction-1` can move plasma water into the systemic vein; that exchange is opt-in and is not the portfolio default.

## Anatomy

The default view is BodyParts3D release 4.0. The parametric ellipsoids are a volume fixture for the Jones compartment volumes. Selecting a mesh shows a simulated quantity only when that compartment was computed.

## Reproduction

From the repository root, with the local CPython 3.12 environment:

```
export DYLD_FALLBACK_LIBRARY_PATH="$PWD/third_party/pulse-build/install/bin"
PYTHONPATH=src .venv312/bin/python -m unittest discover -s tests
PYTHONPATH=src .venv312/bin/python -m hdt.workbench serve --port 8765
```

Pulse scenarios require the pinned local PyPulse build. A machine without that build can still run static scenarios. No synthetic Pulse trajectory is substituted when the engine is absent.
