extended_bands
Stable function · Differentiate a model
Tier: stable · Kind: function · Topic: Differentiate a model
| Julia | Python | Rust |
|---|---|---|
extended_bands | extended_bands | extended_bands |
Note: The extended first-order system through causal recurrences (spec §4.5): state bands with recurrence columns and each recurrence definition’s own bands.
Julia
extended_bands(file::EarthSciAST.EsmFile, model_name; kw...)
extended_bands(flat::EarthSciAST.FlattenedSystem; kw...)
extended_bands(sv::SysView; wrt, forcing, second)
extended_bands(file::EsmFile, model_name; wrt = :states, forcing = nothing, second = nothing) -> ExtendedBands
extended_bands(flat::FlattenedSystem; wrt = :states, forcing = nothing, second = nothing) -> ExtendedBands
extended_bands(sv::SysView; wrt = :states, forcing = nothing, second = nothing) -> ExtendedBands
The extended first-order system of axis wrt (esm-jacobian-spec.md §4.5,
ExtendedBands): every state equation’s bands with respect to the
axis’s targets and the active recurrences, and each active recurrence
definition’s own bands. With second (an axis) the pass is a pair’s first
pass: seeded with the second axis’s targets, so the recurrences that move
with either axis are active and the observed that move with either are
inlined (§4.4). Without a recurrence rows is jacobian_bands
’s
list and the rest is empty.
Python
extended_bands(obj, model_name: str | None = None, wrt: str = 'states', forcing=None, second=None)
The extended first-order system of axis wrt (spec §4.5,
ExtendedBands): every state
equation’s bands with respect to the axis’s targets and the active
recurrences, and each active recurrence definition’s own bands. With
second (an axis) the pass is a pair’s first pass: seeded with the
second axis’s targets, so the recurrences that move with either axis are
active and the observed that move with either are inlined (spec §4.4).
Without a recurrence rows is jacobian_bands
’s list and the
rest is empty.
Rust
pub fn extended_bands(sv: &SysView<'_>, wrt: Wrt, forcing: Option<&[String]>, second: Option<Wrt>) -> Result<ExtendedBands, BandError>
The extended first-order system of axis wrt (spec §4.5): every state
equation’s bands with respect to the axis’s targets and the active
recurrences, and each active recurrence definition’s own bands. With
second the pass is a pair’s first pass: seeded with the second axis’s
targets, so the recurrences that move with either axis are active and
the observed that move with either are inlined (spec §4.4). Without a
recurrence rows is jacobian_bands_view’s list and the rest is
empty.