CLI configuration reference#
Generated from pulse.cli.config by scripts/gen_cli_reference.py – do not edit.
Quantities are strings with units, e.g. "1 kPa".
[geometry]#
FolderGeometry (folder)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
‘folder’ |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
BoxGeometry (box)#
Builtin box; facets tagged X0, X1, Y0, Y1, Z0, Z1 (values 1..6).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
‘box’ |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
int |
|
|
|
int |
|
|
|
int |
|
|
|
‘tetrahedron’ | ‘hexahedron’ |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
LVEllipsoidGeometry (lv_ellipsoid)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
float |
|
|
|
float |
|
|
|
str |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
|
|
‘lv_ellipsoid’ |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
bool |
|
|
|
float |
|
BiVEllipsoidGeometry (biv_ellipsoid)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
float |
|
|
|
float |
|
|
|
str |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
|
|
‘biv_ellipsoid’ |
|
|
|
float |
|
CylinderGeometry (cylinder)#
cardiac_geometries.mesh.cylinder_D_shaped.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
float |
|
|
|
float |
|
|
|
str |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
|
|
‘cylinder’ |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
UKBGeometry (ukb)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
|
Length unit of the mesh coordinates (after |
|
float |
|
Multiply the mesh coordinates by this factor when loading |
|
path |
|
type=folder: folder to read. Generated types: cache root, each mesh is cached in its own |
|
int |
|
Quadrature degree of the forms |
|
float |
|
|
|
float |
|
|
|
str |
|
|
|
FromGeometryFibers | AxisFibers | NoFibers |
|
|
|
‘ukb’ |
|
|
|
int |
|
|
|
float |
|
|
|
‘ED’ | ‘ES’ |
|
|
|
float |
|
|
|
float |
|
|
|
bool |
|
|
|
list[float] (optional) |
– |
If set, rotate the mesh so the BASE normal points this way (before caching) |
|
LDRBAngles (optional) |
– |
Per-ventricle LDRB angles; replaces fiber_angle_endo/fiber_angle_epi, which are then ignored (computed after rotate_base_normal, before caching) |
[geometry.fibers]#
FromGeometryFibers (from_geometry)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘from_geometry’ |
|
AxisFibers (axis)#
Constant fibres along an axis; sheets/normals along the next two axes (cyclically).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘axis’ |
|
|
|
‘x’ | ‘y’ | ‘z’ |
|
NoFibers (none)#
No fibre field (isotropic materials only); “isotropic” (beat’s name) is an alias.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘none’ | ‘isotropic’ |
|
[geometry.ldrb]#
LDRBAngles#
Per-ventricle LDRB fibre angles in degrees (ldrb.dolfinx_ldrb’s keywords).
The defaults are those of demo/time_dependent/complete_cycle.py (after Doste et al. 2019).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
[material]#
HolzapfelOgdenMaterial (holzapfel_ogden)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
list[MaterialRegion] |
|
Per-cell-marker parameter overrides |
|
‘holzapfel_ogden’ |
|
|
|
‘transversely_isotropic’ | ‘partly_orthotropic’ | ‘orthotropic’ (optional) |
|
pulse.HolzapfelOgden. |
|
Quantity (optional) |
– |
|
|
float (optional) |
– |
|
|
Quantity (optional) |
– |
|
|
float (optional) |
– |
|
|
Quantity (optional) |
– |
|
|
float (optional) |
– |
|
|
Quantity (optional) |
– |
|
|
float (optional) |
– |
GuccioneMaterial (guccione)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
list[MaterialRegion] |
|
Per-cell-marker parameter overrides |
|
‘guccione’ |
|
|
|
Quantity |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
NeoHookeanMaterial (neo_hookean)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
list[MaterialRegion] |
|
Per-cell-marker parameter overrides |
|
‘neo_hookean’ |
|
|
|
Quantity |
|
UsykMaterial (usyk)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
list[MaterialRegion] |
|
Per-cell-marker parameter overrides |
|
‘usyk’ |
|
|
|
Quantity |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
|
|
float |
|
SaintVenantKirchhoffMaterial (saint_venant_kirchhoff)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
list[MaterialRegion] |
|
Per-cell-marker parameter overrides |
|
‘saint_venant_kirchhoff’ |
|
|
|
Quantity |
required |
|
|
Quantity |
required |
MaterialRegion#
Per-cell-marker overrides: marker plus any parameter of the enclosing material.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
Cell marker name, or an integer cell tag value (e.g. AHA) |
[active]#
PassiveConfig (passive)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘passive’ |
|
ActiveStressConfig (active_stress)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘active_stress’ |
|
|
|
float |
|
Transverse fraction of the tension |
|
‘invariant’ | ‘stretch’ |
|
[compressibility]#
IncompressibleConfig (incompressible)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘incompressible’ |
|
CompressibleConfig (compressible)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘compressible’ |
|
|
|
Quantity |
|
Compressible2Config (compressible2)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘compressible2’ |
|
|
|
Quantity |
|
Compressible3Config (compressible3)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘compressible3’ |
|
|
|
Quantity |
|
[viscoelasticity]#
NoViscoelasticity (none)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘none’ |
|
ViscousConfig (viscous)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘viscous’ |
|
|
|
Quantity |
|
[bcs]#
BCsConfig#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘fixed’ | ‘free’ |
|
|
|
str |
|
|
|
list[DirichletConfig] |
|
|
|
list[RobinConfig] |
|
DirichletConfig#
Zero displacement on a facet marker (all components, or some: a sliding surface).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
|
|
list[‘x’ | ‘y’ | ‘z’] |
|
RobinConfig#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
|
|
str |
required |
Stiffness (e.g. ‘1e3 Pa/m’), or damping (‘5e3 Pa*s/m’) |
|
bool |
|
|
|
bool |
|
|
|
‘current’ | ‘reference’ (optional) |
– |
Normal the spring/dashpot acts along: the current normal n, or the reference normal N (Pfaller et al. 2019; small rotations only). Unset: current for a spring, reference for a dashpot, as before this option existed |
[[load]]#
LoadConfig#
A prescribed load: a pressure (the Neumann BC on marker) or the active tension Ta.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘pressure’ | ‘activation’ |
required |
|
|
str (optional) |
– |
Facet marker (pressure loads only) |
|
ConstantProfile | RampProfile | TableProfile | BestelPressureProfile | BestelActivationProfile |
required |
[load.profile]#
ConstantProfile (constant)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘constant’ |
|
|
|
Quantity |
required |
RampProfile (ramp)#
from_value until start, linear until end, then to_value.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘ramp’ |
|
|
|
Quantity |
|
|
|
Quantity |
required |
|
|
Quantity |
|
|
|
Quantity |
required |
TableProfile (table)#
Linear interpolation of a table, held constant outside it; period repeats it.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘table’ |
|
|
|
list[float] (optional) |
– |
|
|
list[float] (optional) |
– |
|
|
path (optional) |
– |
CSV file (relative to the config) |
|
str |
|
|
|
str |
|
|
|
str |
|
|
|
str |
|
|
|
Quantity (optional) |
– |
BestelPressureProfile (bestel_pressure)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
dict[str, str] |
|
Overrides of the circulation.bestel defaults, as quantities |
|
Quantity (optional) |
– |
Integrate one period from t = 0 on the [time] grid, then repeat it |
|
Quantity (optional) |
– |
Divide the trace by its largest value, then scale it to this (needs period) |
|
‘bestel_pressure’ |
|
BestelActivationProfile (bestel_activation)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
dict[str, str] |
|
Overrides of the circulation.bestel defaults, as quantities |
|
Quantity (optional) |
– |
Integrate one period from t = 0 on the [time] grid, then repeat it |
|
Quantity (optional) |
– |
Divide the trace by its largest value, then scale it to this (needs period) |
|
‘bestel_activation’ |
|
[circulation]#
NoCirculation (none)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘none’ |
|
CycleCirculation (cycle)#
CycleController: one CavityControl and Windkessel per cavity.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘cycle’ |
|
|
|
list[CycleCavityConfig] |
required |
CycleCavityConfig#
One cavity of the five-phase cycle (pulse.cycle.CycleParams).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
|
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
required |
PRELOAD ends here; also the prestress target |
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
|
|
|
WindkesselConfig |
required |
WindkesselConfig#
A three-element Windkessel (pulse.cycle.Windkessel).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
required |
|
|
Quantity |
|
SplitCirculation (split)#
The .ode circuit stepped by forward Euler, one mechanics solve per step.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
path |
required |
gotranx .ode file: a path relative to the config, or “ |
|
list[str] |
|
|
|
dict[str, float] |
|
Parameter overrides by name, in the .ode file’s own units (plain numbers) |
|
dict[str, float] |
|
Initial values by state name, in the .ode file’s own units; coupled chamber volumes always come from the mesh |
|
list[str] |
|
Monitored expressions of the .ode file to add to loads.csv |
|
list[ChamberConfig] |
required |
|
|
dict[str, PhaseInputConfig] |
|
|
|
‘split’ |
|
MonolithicCirculation (monolithic)#
The .ode circuit’s states solved in the mechanics’ own Newton system.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
path |
required |
gotranx .ode file: a path relative to the config, or “ |
|
list[str] |
|
|
|
dict[str, float] |
|
Parameter overrides by name, in the .ode file’s own units (plain numbers) |
|
dict[str, float] |
|
Initial values by state name, in the .ode file’s own units; coupled chamber volumes always come from the mesh |
|
list[str] |
|
Monitored expressions of the .ode file to add to loads.csv |
|
list[ChamberConfig] |
required |
|
|
dict[str, PhaseInputConfig] |
|
|
|
‘monolithic’ |
|
|
|
‘backward_euler’ | ‘bdf2’ |
|
ChamberConfig#
Ties a cavity (facet marker) to a chamber of the .ode circuit.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
|
|
str |
required |
The circuit state holding the chamber volume (mL) |
|
str |
required |
The missing variable the chamber pressure feeds |
PhaseInputConfig (phase)#
A time-derived missing variable: t mod period (e.g. Regazzoni’s beat_phase).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘phase’ |
|
|
|
Quantity |
required |
[prestress]#
PrestressConfig#
Recover the unloaded reference configuration before the run (PrestressProblem).
Field |
Type |
Default |
Description |
|---|---|---|---|
|
int |
|
|
|
path |
|
Cache root (relative to the config); each result in its own |
|
int |
|
> 0: ramp the chamber volumes back to the imaged ones in this many static steps before the run (split/monolithic only) |
|
list[PrestressTarget] |
|
Cavity pressures of the imaged mesh; not allowed with circulation.type = ‘cycle’, whose targets are p_end_diastole |
PrestressTarget#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
str |
required |
|
|
Quantity |
required |
[time]#
TimeConfig#
One time axis: pseudo-time for static problems, physical time for dynamic ones.
Field |
Type |
Default |
Description |
|---|---|---|---|
|
Quantity |
|
|
|
Quantity |
required |
|
|
Quantity (optional) |
– |
|
|
int (optional) |
– |
[problem]#
ProblemConfig (static)#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
‘static’ | ‘dynamic’ |
|
|
|
str |
|
|
|
str |
|
|
|
bool |
|
|
|
Quantity |
|
dynamic only |
|
float |
|
Generalized-alpha, dynamic only |
|
float |
|
Generalized-alpha, dynamic only |
[solver]#
SolverConfig#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
int |
|
On Newton failure, split the step in two, at most this many times deep |
|
dict[str, str | int | float | bool] |
|
Merged over pulse’s defaults |
|
int (optional) |
– |
circulation.type = ‘cycle’ only: the steady-state snes_lag_preconditioner (refreshed after every phase change) |
[output]#
OutputConfig#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
path |
|
|
|
Quantity (optional) |
– |
Default: every step |
|
Quantity |
|
Restart checkpoint interval; 0 = end only |
|
bool |
|
Time Newton solves and runner phases; log every log_every steps and write performance.json |
|
int |
|
[postprocess]#
PostprocessConfig#
Field |
Type |
Default |
Description |
|---|---|---|---|
|
bool |
|
|
|
list[‘fiber_stress’ | ‘fiber_strain’] |
|
|
|
dict[str, list[float]] |
|
name -> reference coordinates (mesh units, after scale) |
|
dict[str, str] |
|
name -> vertex marker (e.g. ENDOPT) |
|
bool |
|