classDiagram
class StateVariable
click StateVariable href "./StateVariable.html"
StateVariable <|-- FieldStateVariable
click FieldStateVariable href "./FieldStateVariable.html"
StateVariable : coupling_variable
StateVariable --> "0..1" Boolean : coupling_variable
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
StateVariable : definition
StateVariable --> "0..1" String : definition
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : derivative_initial_value
StateVariable --> "0..1" Float : derivative_initial_value
click Float href "../http://www.w3.org/2001/XMLSchema#float.html"
StateVariable : description
StateVariable --> "0..1" String : description
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : distribution
StateVariable --> "0..1" Distribution : distribution
click Distribution href "./Distribution.html"
StateVariable : domain
StateVariable --> "0..1" Range : domain
click Range href "./Range.html"
StateVariable : equation
StateVariable --> "0..1" Equation : equation
click Equation href "./Equation.html"
StateVariable : equation_order
StateVariable --> "0..1" Integer : equation_order
click Integer href "../http://www.w3.org/2001/XMLSchema#integer.html"
StateVariable : equation_type
StateVariable --> "0..1" String : equation_type
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : evict_equation
StateVariable --> "0..1" Equation : evict_equation
click Equation href "./Equation.html"
StateVariable : grounding
StateVariable --> "*" Uriorcurie : grounding
click Uriorcurie href "../http://www.w3.org/2001/XMLSchema#anyURI.html"
StateVariable : history
StateVariable --> "0..1" TimeSeries : history
click TimeSeries href "./TimeSeries.html"
StateVariable : initial_value
StateVariable --> "0..1" Float : initial_value
click Float href "../http://www.w3.org/2001/XMLSchema#float.html"
StateVariable : label
StateVariable --> "0..1" String : label
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : name
StateVariable --> "1" String : name
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : noise
StateVariable --> "0..1" Noise : noise
click Noise href "./Noise.html"
StateVariable : record
StateVariable --> "0..1" Boolean : record
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
StateVariable : stimulation_variable
StateVariable --> "0..1" Boolean : stimulation_variable
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
StateVariable : symbol
StateVariable --> "0..1" String : symbol
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : unit
StateVariable --> "0..1" String : unit
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
StateVariable : variable_of_interest
StateVariable --> "0..1" Boolean : variable_of_interest
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
Class: StateVariable
URI: tvbo:StateVariable
Inheritance
- StateVariable
Class Properties
| Property | Value |
|---|---|
| Class URI | tvbo:StateVariable |
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| name | 1 xsd:string |
Globally unique identifier for the entity | direct |
| symbol | 0..1 xsd:string |
direct | |
| label | 0..1 xsd:string |
direct | |
| definition | 0..1 xsd:string |
direct | |
| domain | 0..1 Range |
direct | |
| description | 0..1 xsd:string |
direct | |
| equation | 0..1 Equation |
direct | |
| unit | 0..1 xsd:string or UnitEnum |
Physical unit of measurement | direct |
| record | 0..1 xsd:boolean |
Whether to include this element in simulation output files | direct |
| grounding | * xsd:anyURI |
External ontology IRIs (typically GO, ChEBI, UBERON, CL, MeSH) that this enti… | direct |
| variable_of_interest | 0..1 xsd:boolean |
direct | |
| coupling_variable | 0..1 xsd:boolean |
Whether this state variable is transmitted to connected nodes through the cou… | direct |
| equation_type | 0..1 xsd:string |
How to interpret ``equation | direct |
| evict_equation | 0..1 Equation |
Optional reverse recurrence for a sliding-window reduction: the per-step … | direct |
| equation_order | 0..1 xsd:integer |
Order of the time derivative on the LHS | direct |
| noise | 0..1 Noise |
direct | |
| stimulation_variable | 0..1 xsd:boolean |
direct | |
| initial_value | 0..1 xsd:float |
Value this state starts at | direct |
| derivative_initial_value | 0..1 xsd:float |
Initial value for the first time derivative, used when equation_order > 1 | direct |
| distribution | 0..1 Distribution |
Distribution for sampling initial conditions per node | direct |
| history | 0..1 TimeSeries |
direct |
Usages
| used by | used in | type | used |
|---|---|---|---|
| Observation | source | any_of[range] | StateVariable |
| Dynamics | state_variables | range | StateVariable |
| Noise | targets | range | StateVariable |
| TuningObjective | target_variable | range | StateVariable |
| Coupling | incoming_states | range | StateVariable |
| Coupling | local_states | range | StateVariable |
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/tvbo
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | tvbo:StateVariable |
| native | tvbo:StateVariable |
LinkML Source
Direct
name: StateVariable
from_schema: https://w3id.org/tvbo
slots:
- name
- symbol
- label
- definition
- domain
- description
- equation
- unit
- record
- grounding
slot_usage:
record:
name: record
ifabsent: 'True'
attributes:
variable_of_interest:
name: variable_of_interest
deprecated: Use 'record' instead. A state variable is recorded in the output when
record=true (the default); set record=false to suppress it. 'variable_of_interest'
is retained for backward compatibility and is ignored by the TVB/jax/rateml
codegen.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'True'
domain_of:
- StateVariable
range: boolean
coupling_variable:
name: coupling_variable
description: Whether this state variable is transmitted to connected nodes through
the coupling function. In TVB terms, this determines the cvar indices (state
variables extracted from history and fed into the coupling function). The coupling
function may override this via its incoming_states attribute.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'False'
domain_of:
- StateVariable
range: boolean
equation_type:
name: equation_type
description: 'How to interpret ``equation.rhs`` when advancing this state: ''differential''
(default) integrates it as ``dx/dt = rhs``; ''algebraic'' is a constraint ``0
= rhs`` / ``x ~ rhs`` (DAE); ''recurrence'' is a discrete per-step update ``x_next
= rhs`` (no integrator applied), used by an observation''s auxiliary ``dynamics``
for online reductions/accumulators (e.g. a running sum ``x_next = x + f``) —
the symbolic, backend-independent sibling of the continuous ''differential''
form. Algebraic equations are used by ModelingToolkit.jl backend.'
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: string(differential)
domain_of:
- StateVariable
range: string
evict_equation:
name: evict_equation
description: 'Optional reverse recurrence for a **sliding-window** reduction:
the per-step downdate that removes the sample leaving the window, the inverse
of ``equation`` (which folds an arriving sample in). Only meaningful when ``equation_type:
recurrence`` on an observation''s auxiliary ``dynamics``. When present, the
observer is a windowed reduction — its state is maintained by ``equation`` (add)
and ``evict_equation`` (evict) and rebuilt exactly from the window on resync
— rather than a cumulative accumulator over the whole trajectory (``equation``
alone). Absent for ordinary state variables and cumulative reductions.'
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- StateVariable
range: Equation
equation_order:
name: equation_order
description: Order of the time derivative on the LHS. Default 1 means dx/dt =
rhs (first-order ODE). Order 2 means d²x/dt² = rhs (second-order ODE), etc.
Higher-order ODEs are automatically lowered to coupled first-order systems by
backends like ModelingToolkit.jl via mtkcompile.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: int(1)
domain_of:
- StateVariable
range: integer
noise:
name: noise
from_schema: https://w3id.org/tvbo
domain_of:
- Stimulus
- StateVariable
- Integrator
range: Noise
inlined: true
stimulation_variable:
name: stimulation_variable
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- StateVariable
range: boolean
initial_value:
name: initial_value
description: 'Value this state starts at. Absent means undeclared: the consumer
supplies its own fallback via ``tvbo.utils.initial_value``, which documents
why this slot carries no schema default.'
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- StateVariable
- FreeParameter
- SpatialField
range: float
derivative_initial_value:
name: derivative_initial_value
description: Initial value for the first time derivative, used when equation_order
> 1. For a second-order ODE d²x/dt² = f, this sets dx/dt(0). Required by ModelingToolkit.jl
to fully specify higher-order initial value problems.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- StateVariable
range: float
distribution:
name: distribution
description: Distribution for sampling initial conditions per node. If present,
initial_value is used as fallback/mean.
from_schema: https://w3id.org/tvbo
domain_of:
- ProcedureStep
- StateVariable
- Parameter
- Noise
- Prior
- Coupling
range: Distribution
inlined: true
history:
name: history
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- StateVariable
range: TimeSeries
inlined: true
class_uri: tvbo:StateVariableInduced
name: StateVariable
from_schema: https://w3id.org/tvbo
slot_usage:
record:
name: record
ifabsent: 'True'
attributes:
variable_of_interest:
name: variable_of_interest
deprecated: Use 'record' instead. A state variable is recorded in the output when
record=true (the default); set record=false to suppress it. 'variable_of_interest'
is retained for backward compatibility and is ignored by the TVB/jax/rateml
codegen.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'True'
owner: StateVariable
domain_of:
- StateVariable
range: boolean
coupling_variable:
name: coupling_variable
description: Whether this state variable is transmitted to connected nodes through
the coupling function. In TVB terms, this determines the cvar indices (state
variables extracted from history and fed into the coupling function). The coupling
function may override this via its incoming_states attribute.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'False'
owner: StateVariable
domain_of:
- StateVariable
range: boolean
equation_type:
name: equation_type
description: 'How to interpret ``equation.rhs`` when advancing this state: ''differential''
(default) integrates it as ``dx/dt = rhs``; ''algebraic'' is a constraint ``0
= rhs`` / ``x ~ rhs`` (DAE); ''recurrence'' is a discrete per-step update ``x_next
= rhs`` (no integrator applied), used by an observation''s auxiliary ``dynamics``
for online reductions/accumulators (e.g. a running sum ``x_next = x + f``) —
the symbolic, backend-independent sibling of the continuous ''differential''
form. Algebraic equations are used by ModelingToolkit.jl backend.'
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: string(differential)
owner: StateVariable
domain_of:
- StateVariable
range: string
evict_equation:
name: evict_equation
description: 'Optional reverse recurrence for a **sliding-window** reduction:
the per-step downdate that removes the sample leaving the window, the inverse
of ``equation`` (which folds an arriving sample in). Only meaningful when ``equation_type:
recurrence`` on an observation''s auxiliary ``dynamics``. When present, the
observer is a windowed reduction — its state is maintained by ``equation`` (add)
and ``evict_equation`` (evict) and rebuilt exactly from the window on resync
— rather than a cumulative accumulator over the whole trajectory (``equation``
alone). Absent for ordinary state variables and cumulative reductions.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- StateVariable
range: Equation
equation_order:
name: equation_order
description: Order of the time derivative on the LHS. Default 1 means dx/dt =
rhs (first-order ODE). Order 2 means d²x/dt² = rhs (second-order ODE), etc.
Higher-order ODEs are automatically lowered to coupled first-order systems by
backends like ModelingToolkit.jl via mtkcompile.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: int(1)
owner: StateVariable
domain_of:
- StateVariable
range: integer
noise:
name: noise
from_schema: https://w3id.org/tvbo
owner: StateVariable
domain_of:
- Stimulus
- StateVariable
- Integrator
range: Noise
inlined: true
stimulation_variable:
name: stimulation_variable
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- StateVariable
range: boolean
initial_value:
name: initial_value
description: 'Value this state starts at. Absent means undeclared: the consumer
supplies its own fallback via ``tvbo.utils.initial_value``, which documents
why this slot carries no schema default.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- StateVariable
- FreeParameter
- SpatialField
range: float
derivative_initial_value:
name: derivative_initial_value
description: Initial value for the first time derivative, used when equation_order
> 1. For a second-order ODE d²x/dt² = f, this sets dx/dt(0). Required by ModelingToolkit.jl
to fully specify higher-order initial value problems.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- StateVariable
range: float
distribution:
name: distribution
description: Distribution for sampling initial conditions per node. If present,
initial_value is used as fallback/mean.
from_schema: https://w3id.org/tvbo
owner: StateVariable
domain_of:
- ProcedureStep
- StateVariable
- Parameter
- Noise
- Prior
- Coupling
range: Distribution
inlined: true
history:
name: history
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- StateVariable
range: TimeSeries
inlined: true
name:
name: name
description: Globally unique identifier for the entity.
from_schema: https://w3id.org/tvbo/common
slot_uri: schema:name
identifier: true
owner: StateVariable
domain_of:
- BrainAtlas
- CommonCoordinateSpace
- ParcellationEntity
- StudyLayout
- StudyTemplate
- StudyDirectory
- StudyFile
- DBSProtocol
- ClinicalScale
- ClinicalScore
- SoftwarePackage
- SoftwareRequirement
- SoftwareEnvironment
- Figure
- Event
- Tractogram
- ResultEntity
- Activity
- CachedArray
- MeasureSpec
- NamedArray
- GraphGenerator
- Binding
- ProcedureStep
- File
- StateValue
- Observation
- Dynamics
- StateVariable
- Distribution
- Parameter
- CouplingInput
- Argument
- Function
- FunctionCall
- Callable
- DerivedParameter
- DerivedVariable
- DataSource
- OptimizationStage
- Exploration
- Inference
- Prior
- Likelihood
- UpdateRule
- Algorithm
- Option
- BranchSwitch
- Continuation
- Coupling
- EnvironmentVariable
- SchedulerDirective
- Reducer
range: string
required: true
symbol:
name: symbol
from_schema: https://w3id.org/tvbo
rank: 1000
owner: StateVariable
domain_of:
- ToolUnit
- StateVariable
- Parameter
- CouplingInput
- DerivedParameter
- DerivedVariable
range: string
label:
name: label
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: rdfs:label
owner: StateVariable
domain_of:
- ParcellationTerminology
- Subject
- Session
- Dataset
- Contact
- SoftwareEnvironment
- Figure
- Panel
- Inset
- Layer
- Colorbar
- Rule
- Equation
- Stimulus
- Event
- Parcellation
- Tractogram
- Matrix
- Phenotype
- Network
- Node
- Edge
- Observation
- Dynamics
- StateVariable
- Parameter
- Function
- FunctionCall
- DerivedVariable
- RandomStream
- DataSource
- OptimizationStage
- Exploration
- ExplorationAxis
- FreeParameter
- Inference
- AlgorithmStage
- TuningObjective
- Continuation
- Coupling
- RegionMapping
- SimulationExperiment
- SimulationStudy
- TimeSeries
- NDArray
- SpatialDomain
- Mesh
- SpatialField
- FieldStateVariable
- DifferentialOperator
- BoundaryCondition
- PDESolver
- PDE
range: string
definition:
name: definition
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: skos:definition
owner: StateVariable
domain_of:
- Equation
- StateVariable
- Parameter
- Function
- DifferentialOperator
range: string
domain:
name: domain
from_schema: https://w3id.org/tvbo
aliases:
- range
- boundaries
rank: 1000
owner: StateVariable
domain_of:
- ClinicalScale
- ClinicalScore
- StateVariable
- Distribution
- Parameter
- ExplorationAxis
- FreeParameter
- PDE
range: Range
description:
name: description
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: dcterms:description
owner: StateVariable
domain_of:
- CommonCoordinateSpace
- Dataset
- StudyLayout
- StudyTemplate
- StudyDirectory
- StudyFile
- ClinicalScore
- SoftwarePackage
- SoftwareRequirement
- SoftwareEnvironment
- Figure
- Panel
- Equation
- Stimulus
- Event
- Tractogram
- Matrix
- ResultEntity
- Activity
- Phenotype
- MeasureSpec
- NamedArray
- Network
- GraphGenerator
- ProcedureStep
- File
- Node
- Edge
- Observation
- Dynamics
- StateVariable
- Parameter
- CouplingInput
- Argument
- Function
- FunctionCall
- Callable
- DerivedParameter
- DerivedVariable
- RandomStream
- DataSource
- OptimizationStage
- Exploration
- ExplorationAxis
- FreeParameter
- Inference
- Prior
- Likelihood
- UpdateRule
- AlgorithmStage
- TuningObjective
- Algorithm
- BranchSwitch
- Continuation
- Integrator
- Coupling
- RegionMapping
- SimulationExperiment
- Study
- ResultBinding
- TimeSeries
- NDArray
- SpatialDomain
- Mesh
- SpatialField
- FieldStateVariable
- BoundaryCondition
- PDESolver
- PDE
- Reducer
range: string
equation:
name: equation
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: tvbo:Equation
owner: StateVariable
domain_of:
- Stimulus
- Event
- ProcedureStep
- Observation
- StateVariable
- Parameter
- Function
- FunctionCall
- DerivedParameter
- DerivedVariable
- Noise
- UpdateRule
- DifferentialOperator
- BoundaryCondition
range: Equation
inlined: true
unit:
name: unit
description: 'Physical unit of measurement. `UnitEnum` is the curated vocabulary
— each of its values is vendored from QUDT (`ontology/tvb-o-units.ttl`) and
can be reasoned about dimensionally. The range is deliberately open beyond it:
a unit nobody has curated yet is recorded as written and reported `uncurated`,
because a closed range forces the author to either misdeclare the quantity or
leave it undeclared, and both lose more than an unrecognised string does. An
uncurated unit carries no dimensional claim, so a check involving it reports
`underdetermined` rather than guessing. Promote one with `tvbo units add <unit>`,
which pulls its QUDT record into the vendored module — so every unit TVBO *reasons*
about stays authoritative, and only what it *records* is open.'
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: qudt:unit
owner: StateVariable
domain_of:
- CommonCoordinateSpace
- ToolUnit
- MeasureSpec
- NamedArray
- Edge
- Observation
- StateVariable
- Parameter
- Argument
- DerivedParameter
- DerivedVariable
- ExplorationAxis
- Integrator
- TimeSeries
- NDArray
- SpatialField
range: string
any_of:
- range: UnitEnum
- range: string
record:
name: record
description: Whether to include this element in simulation output files. Applicable
to state variables (default true), derived variables (default false), and network
nodes (default true). On an observation it forces (true) or suppresses (false)
persistence in the result; left unset, a terminal observation (one not consumed
by another observation or a loss) is recorded and an intermediate one is not.
Set false to suppress recording.
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'True'
owner: StateVariable
domain_of:
- Node
- Observation
- StateVariable
- DerivedVariable
- Exploration
range: boolean
grounding:
name: grounding
description: 'External ontology IRIs (typically GO, ChEBI, UBERON, CL, MeSH) that
this entity is a surrogate / abstraction / model of. Realized as the `tvbo:surrogate_of`
object property, carried inline with the YAML data instance. Multiple IRIs allowed:
a single parameter may abstract several biological processes (e.g. a synaptic
conductance grounding both GO:0060079 (excitatory PSP) and GO:0007268 (chemical
synaptic transmission)).'
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: tvbo:surrogate_of
owner: StateVariable
domain_of:
- StateVariable
- Parameter
- DerivedVariable
range: uriorcurie
multivalued: true
class_uri: tvbo:StateVariable