Version: dev

Variable classification

Which variables of a model are integrated states, algebraic unknowns, observed quantities or parameters of each kind (esm-spec section 6.3.1).

These operations belong to the classification capability profile: Julia, TypeScript, Python, Rust, Go.

OperationKindBindingsSummary
algebraic_unknownsfunctionJulia, TypeScript, Python, Rust, GoThe unknowns constrained only implicitly (H*H*SO4 ~ Ksp) — those an equation never names as a derivative target or a bare-variable LHS (esm-spec §6.3.1).
apply_dae_contractfunctionRust, GoRun the RFC §12 DAE binding contract on esm in place and return the classification summary.
brownian_parametersfunctionJulia, TypeScript, Python, Rust, GoParameters whose update.kind is "wiener" — the SDE noise sources (esm-spec §6.3.1).
constant_parametersfunctionJulia, TypeScript, Python, Rust, GoParameters with neither a distribution nor an update — plain constants.
declared_system_kindfunctionJulia, TypeScript, Python, GoThe system_kind the model DECLARES, verbatim, or nothing when the field is absent.
discrete_parametersfunctionJulia, TypeScript, Python, Rust, GoParameters carrying any update OTHER than wiener — piecewise-constant between refreshes (esm-spec §6.3.1).
effective_system_kindfunctionJulia, TypeScript, Python, Godeclared_system_kind when the model declares one, otherwise the derived system_kind.
free_parametersfunctionTypeScript, Python, RustExtract free parameters from an expression within a model context
is_ode_statefunctionJulia, TypeScript, Python, Rust, GoMembership test for ode_states.
observed_definitionfunctionJulia, GoThe defining right-hand side of the observed unknown name, or nothing when it is not an observed unknown of model.
observed_definitionsfunctionJulia, TypeScript, Python, RustEach observed unknown mapped to its DEFINING EQUATION’s right-hand side.
observed_unknownsfunctionJulia, TypeScript, Python, Rust, GoThe unknowns defined by a bare-variable LHS (y ~ f(…)) — eliminable and materializable (esm-spec §6.3.1).
ode_statesfunctionJulia, TypeScript, Python, Rust, GoThe unknowns appearing under D(·, t) on some equation LHS — the quantities the solver integrates (esm-spec §6.3.1).
parametersfunctionJulia, TypeScriptDeprecated alias of parameters (API_SPEC.md §8 item 6).
sampled_parametersfunctionJulia, TypeScript, Python, Rust, GoParameters with a distribution and no update — drawn ONCE at setup (uncertainty quantification, ensembles).
system_kindfunctionJulia, TypeScript, Python, Rust, GoDerive what the system_kind field declares (esm-spec §6.3.1).
unknownsfunctionJulia, TypeScript, PythonDeprecated alias of unknowns (API_SPEC.md §8 item 6).
dae_infotypeRust, GoSummary of DAE classification stamped onto metadata.dae_info by discretize() per RFC §12.
system_kindtypeTypeScript, RustThe MTK system type a model maps to.
variable_kindtypeTypeScript, RustThe kind of a variable node.

All topics