Version: v0.3.0

sys_view

Stable type · Differentiate a model

Tier: stable · Kind: type · Topic: Differentiate a model

JuliaPythonRust
SysViewSysViewSysView

Julia

struct SysView
SysView(variables::Dict{String, Any}, equations::Vector, index_sets::Dict{String, Any}, domain)
SysView(variables, equations, index_sets, domain)
SysView(variables, equations, index_sets)
SysView

Uniform system view: variables (name → ModelVariable), equations, the document’s index_sets, and its domain (nothing when it has none; the evaluation document carries its time origin, esm-jacobian-spec.md §8.1). Construct with sysview .

Source

Python

class SysView
SysView(variables: dict[str, object], equations: list, index_sets: dict[str, object], domain: object = None)

A model or flattened system as the band calculus sees it: its variables, equations and index sets, with subsystems already expanded. Build one with sysview .

Source

Rust

pub struct SysView<'a> {
    pub variables: IndexMap<String, Cow<'a, ModelVariable>>,
    pub equations: &'a Vec<Equation>,
    pub index_sets: IndexMap<String, IndexSet>,
    pub domain: Option<&'a Domain>,
}

A model as the band calculus sees it: its variables, equations and index sets. Build one with sysview (one model of a document) or sysview_flat (a flattened system).

Each variable is borrowed from its model or flattened system, except a pointwise-lifted state of a flattened system, which the view owns with its grid shape (see sysview_flat).

Source · Rust docs