variable_node
Stable type · Graphs
Tier: stable · Kind: type · Topic: Graphs
| Julia | TypeScript | Python | Rust | Go |
|---|---|---|---|---|
VariableNode | VariableNode | VariableNode | VariableNode | VariableNode |
Julia
struct VariableNode
VariableNode(name::String, kind::String, units::Union{Nothing, String}, system::String)
VariableNode(name, kind, units, system)
Variable-level node for expression graphs.
TypeScript
interface VariableNode {
name: string;
kind: 'state' | 'algebraic' | 'parameter' | 'observed' | 'brownian' | 'discrete' | 'species';
units?: string;
system: string;
}
Graph node representing a variable/parameter/species in the system
Properties
name— Unique identifier for this variable (scoped, e.g., “Transport.temperature”)kind— The variable’s DERIVED category (esm-spec §6.3.1), not its declared type. The format declares onlyunknownandparameter; these are the finer categories a consumer of the graph actually wants, recovered from the equations and from each parameter’sdistribution/update.stateis an ODE state,observedan unknown some equation DEFINES (its LHS naming it, bare or indexed),algebraicone that is only implicitly CONSTRAINED (no equation names it on its LHS),browniana wiener-updated parameter,discretea parameter with any other update,parametera sampled or constant one, andspeciesa reaction-system species.units— Units if specifiedsystem— System/component this variable belongs to
Python
class VariableNode
VariableNode(name: str, kind: str, units: str | None = None, system: str = DEFAULT_SYSTEM)
A variable, parameter or species in the expression graph.
Rust
pub struct VariableNode {
pub name: String,
pub kind: VariableKind,
pub units: Option<String>,
pub system: String,
}
Node representing a variable in an expression graph
Go
type VariableNode struct {
// Name is the node's identity: the SCOPED name within the graph
// ("Component.variable", "Component.Sub.variable"), or the bare name when
// the owning system is the synthetic "default" scope — i.e. when a bare
// Model / ReactionSystem / Equation / Reaction / Expr was graphed directly.
Name string `json:"name"`
// Kind is one of the NodeKind* graph kinds above.
Kind string `json:"kind"`
Units *string `json:"units,omitempty"`
System string `json:"system"`
}
VariableNode represents a node in the expression graph