pydantic

datamodel.pydantic

Attributes

Name Description
AnyShapeArray
linkml_meta
metamodel_version
version

Classes

Name Description
Aggregation Specifies how to aggregate values across a dimension. Used for loss functions to define per-element loss with reduction.
AggregationType How to aggregate time series data
Algorithm A complete specification of an iterative parameter tuning algorithm. Combines update rules, objectives, observations, and hyperparameters.
AlgorithmCompositionMode How an included algorithm is composed with the outer algorithm. Determines whether the inner algorithm’s update rules are merged into the same loop (combined) or run as a converging inner loop on each outer iteration (nested).
AlgorithmInclude Reference to an included algorithm with optional argument overrides. Allows combining algorithms with different hyperparameter values.
AlgorithmStage One stage of a multi-stage tuning schedule. The algorithm body is run once per stage, in order, carrying the trajectory state, FC window buffer, and monitors forward — so the stages form one continuous online tuning run. Each stage overrides n_iterations and selected hyperparameters (e.g. Schirner 2023’s 6 stages: eta halves and the FC window doubles per stage, sharpening the per-edge gradient over time).
Analysis A general analysis observable: a quantity obtained by ANALYZING the model, its solve, or a derived loss, rather than by transforming the recorded trajectory. It is deliberately broad — the same concept covers parameter sensitivities/gradients (autodiff or finite-difference), stability spectra (Lyapunov), bifurcation quantities, identifiability/Fisher-information metrics, and future analyses. type names the analysis (extensible); target and wrt bind it to what is analyzed and with respect to what; parameters carries the analysis-specific configuration. Backend-neutral: each backend maps type to its own machinery, or emits a comment and skips when it has no equivalent (it does not raise).
Argument A function argument with explicit value specification. Value can be: literal (number/string), reference to input (input.key), or cross-observation reference (observation_name.output_key).
BidsEntities BIDS filename entities (BEP017-aligned) for provenance and data discovery. Reusable on Network, BrainAtlas, Tractogram, or any dataset with BIDS-conformant naming.
Binding Per-backend construction binding for a GraphGenerator: how to build the graph in a specific target library. Keyed by backend id — the name is the backend (e.g. python, julia, networkx).
BoundaryCondition
BoundaryConditionType
BrainAtlas A schema for representing a version of a brain atlas.
BrainRegionSeries A series whose values represent latitude
BranchSwitch Specification for switching from a detected bifurcation point to a new branch (periodic orbits from Hopf, fold continuation, etc.). Each BranchSwitch says: “from which special point on the parent branch, continue what kind of object, with what settings.” Override parent solver settings via the inline continuation field — only explicitly set attributes take effect; everything else is inherited from the parent Continuation.
Callable
Case
ClassReference Reference to a class that can be instantiated and called. Used for external library classes (e.g., tvboptim.Bold, custom monitors). The class is instantiated with constructor_args, then called with call_args. Generalizable pattern: works for tvboptim, TVB, or any Python class.
ClinicalImprovement Relative improvement on a defined clinical score.
ClinicalScale A clinical assessment inventory or structured scale composed of multiple scores or items.
ClinicalScore Metadata about a clinical score or scale.
CommonCoordinateSpace A schema for representing a version of a common coordinate space.
ConditionalBlock A single condition and its corresponding equation segment.
ConfiguredBaseModel
Contact Individual contact on a DBS electrode.
Continuation Complete specification of a numerical continuation / bifurcation analysis. All universal solver settings live directly here. Toolkit-specific string options go in the options slot. When used inside a BranchSwitch, only explicitly set attributes override the parent’s values.
ContinuationAlgorithm Predictor-corrector algorithm for numerical continuation.
Coordinate A 3D coordinate with X, Y, Z values.
Coupling
CouplingInput Specification of a coupling input channel for multi-coupling dynamics
DBSDataset Collection of data related to a specific DBS study.
DBSProtocol A protocol describing DBS therapy, potentially bilateral or multi-lead.
DBSSubject Human or animal subject receiving DBS.
DataSource Specification for loading external/empirical data.
Dataset A collection of subjects for a multi-subject study. Provides the subject/session structure needed for workflow rendering. Optionally backed by a BIDS directory layout.
DerivedParameter
DerivedVariable
DevelopmentStatus Development status of the software. Based on repostatus.org categories.
DifferentialOperator
Differentiation Backend-neutral configuration for how gradients are propagated through the temporal integration. Expressed in physical/semantic terms; each backend maps it to its own mechanism (JAX solver grad_horizon / block_size, Julia adjoint sensitivity, …). Backends without autodiff (e.g. MATLAB) emit a comment noting differentiation is unsupported and proceed with the plain forward integration – they do not raise.
DimensionType Dimensions along which operations can be applied
Discretization Discretization method for boundary value problems in continuation (periodic orbits, connecting orbits, quasi-periodic tori). Specifies the method; method-specific numerics go in parameters.
DiscretizationMethod
Distribution A probability distribution for sampling parameters or initial conditions. Standard distributions (Uniform, Gaussian) are specified by name and domain/parameters. Custom distributions use a Function for the PDF/sampling rule. Default name is Uniform when only domain is given.
DomainEnforcement Whether and how a state variable’s domain constrains the trajectory during integration. Default none means the domain is descriptive metadata only (expected range, plot limits, initial- condition sampling support) and never alters the dynamics — so declaring a domain is side-effect free. clamp and wrap opt in to active enforcement using the domain’s lo/hi.
Dynamics
EField Simulated electric field from DBS modeling.
EcosystemEnum Package ecosystem or registry the software is distributed through.
Edge An edge in a network. Two modes: explicit (source+target set, scalar parameters in YAML) or template (no source/target, N×N matrix measure in HDF5). Both coexist in the same edges list.
Electrode Implanted DBS electrode and contact geometry.
ElementType
EnvironmentType
Equation
Event A discrete or continuous event that modifies the system during simulation. Generalizes Stimulus: can represent external inputs (stimulus type), threshold-triggered state changes (continuous/discrete type), or time-scheduled interventions (preset_time type). Attaches to components (nodes/edges) or to the experiment level.
EventType Type of event triggering mechanism.
ExecutionConfig Configuration for computational execution (parallelization, precision, hardware).
Exploration Parameter space exploration (grid search, sweep).
ExplorationAxis One axis of a parameter exploration grid. Points to an existing Parameter (by dotted reference, e.g. “ReducedWongWang.w” or “FastLinearCoupling.G”) and supplies the sweep specification (domain, explored_values, or per-element overrides). No new Parameter is created.
FieldStateVariable
File
FreeParameter One degree of freedom in an OptimizationStage. References an existing Parameter by dotted scope (e.g. “ReducedWongWang.w” or “FastLinearCoupling.G”) and supplies optimization-specific metadata (heterogeneous, shape, bounds, initial value). No new Parameter is created here.
Function A function with explicit input -> transformation -> output flow. Can be equation-based (symbolic) or software-based (callable). In a pipeline, functions are chained: output of one becomes input of next.
FunctionCall Invocation of a function in a pipeline. Can reference a defined Function by name, OR inline a callable directly for external library functions, OR inline an equation, OR use class_call for class instantiation. Mirrors Function attributes so pipeline steps can be self-contained. The name is an optional step label (used in pipelines for keyed access to step outputs); it is NOT a global identifier (singleton uses like loss, observable may omit it).
GraphGenerator Backend-agnostic graph generator specification. Captures the mathematical family and its parameter declarations so that each backend can emit the correct constructor call (Graphs.jl, NetworkX, etc.) via per-backend bindings; derived generators may also carry a symbolic procedure. The number of nodes is always taken from Network.number_of_nodes.
Hemisphere
ImagingModality
Inference Bayesian inference of model parameters from an observation, via MCMC. A standalone, first-class concept (NOT an Optimization): it produces a POSTERIOR, not a point estimate, using priors + a likelihood + a sampler instead of a loss + optimizer. It runs the SAME differentiable forward model, wrapped in a probabilistic model (sample priors -> forward -> likelihood).
InitialState How to obtain the starting equilibrium or periodic orbit for continuation. Most robust: time-integrate to steady state.
InitialStateMethod Strategy for obtaining the starting equilibrium or periodic orbit.
Integrator Fixed-step or adaptive ODE integrator with TVB-specific extensions (noise, transient time, etc.). Inherits abs_tol, rel_tol from Solver. Overrides method default to ‘euler’.
Likelihood Observation model for Bayesian inference: p(data | sim(theta)). Points at the observation holding the data and specifies the noise family + scale. name is the noise family (default Normal); source uses the same referencing as Observation.source, so the observed data can come from this experiment’s integration, an empirical network measure, or a runtime-bound array — one flexible hook, no data-loading path of its own.
LinkMLMeta
LossFunction A loss function for optimization with optional aggregation. Extends Function with aggregation specification for per-element losses.
Matrix Adjacency matrix of a network.
MeasureSpec Metadata for one phenotype measure. Optional per-measure entry on Phenotype.measure_specs.
Mesh Triangle (or higher-order) mesh geometry. May stand alone (via mesh_file pointing at an external GIFTI/VTK/MSH file) OR be inlined on a Network as Network.mesh. In the inlined-on-Network case, the vertices are the parent Network’s nodes/coordinates (so coordinates here may be left empty), the faces live in the same h5 companion under a path given by elements (default mesh/faces), and optional per-vertex normals / curvature live alongside. The optional parcel_map_field points at the parent Network’s per-vertex parcel-id array (default nodes/parent_index from the hierarchical-Network pattern, see Network.qmd §7.1).
ModelParadigm Computational paradigm or modeling approach supported by the tool.
ModelType Coarse classification of a Dynamics model by its mathematical/biological origin. Used for filtering and display in list_db().
NDArray
NamedArray A named numeric array. Used as a sidecar slot value where a schema-typed object (e.g. ExperimentResult.parameters) holds multiple arrays addressable by name (w_LRE, w_FFI, J_i, …). The actual numeric data lives in the companion .h5 at parameters/<name>; the YAML carries only the descriptor.
Network Network specification with nodes, edges, and reusable coupling configurations. Supports both explicit node/edge representation and matrix-based connectivity (Connectome compatibility).
Node A node in a network with its own dynamics and properties
Noise
NoiseType
NumericalDiscretizationMethod Numerical discretization method for boundary value problems (periodic orbits, connecting orbits, quasi-periodic tori).
Observation Unified class for all observation/measurement specifications. Covers monitors (BOLD, EEG), tuning observables, and derived quantities. Pipeline is a sequence of Functions with input -> output flow.
OperatorType
Optimization Configuration for parameter optimization. Inherits single-stage fields from OptimizationStage. For multi-stage workflows, use ‘stages’ (ignores inherited single-stage fields). Loss equation references observations directly by name.
OptimizationStage A single stage in a multi-stage optimization workflow. Stages run sequentially, with each stage potentially using different parameters, shapes, learning rates, and algorithms.
Option A toolkit-specific key-value option (string name + string value). Used for backend settings that are not universal numeric parameters (e.g., solver name, tangent method, jacobian type).
PDE Partial differential equation problem definition.
PDESolver
ParallelMode How a trial / grid-point axis is realised at JAX codegen time. The choice trades peak memory against throughput: vmap batches in parallel (fast, n_trials × working-set memory), lax_map runs sequentially via jax.lax.map (memory bounded by one trial), pmap shards across devices, auto picks vmap when the estimated batched memory fits and lax_map otherwise.
Parameter
Parcellation
ParcellationEntity A schema for representing a parcellation entity, which is an anatomical location or study target.
ParcellationTerminology A schema for representing a parcellation terminology, which consists of parcellation entities.
Phenotype Per-subject phenotype table (BIDS phenotype/ directory convention). Carries cognitive scores, clinical scales, demographic variables, behavioral task outputs, physiological measures, or any other per-subject numeric measurement bundle for a cohort. Sidecar companion to per-subject Network sidecars in multi-subject studies that correlate simulated quantities with empirical scores (e.g. PMAT24_A, g-factor, CardSort, ProcSpeed for Schirner 2023). The yaml carries metadata + the measure list; the h5 carries measures/<name> 1-D float arrays of length len(subjects).
PhysicalDimension Physical dimension categories for LEMS and dimensional analysis. Each dimension decomposes into SI base dimensions (M, L, T, I, K, N).
Prior Prior belief over one inferred parameter. In Inference.priors the collection KEY is the parameter’s dotted name; the value wraps a Distribution as the belief (reusing the standard distribution vocabulary rather than inventing a new one). Distinct from Parameter.distribution, which specifies per-node SAMPLING, not a prior.
Procedure Symbolic procedure: an ordered list of steps producing named outputs. Documents a derived generator’s algorithm independently of any backend binding.
ProcedureStep A single named step (or output) in a Procedure, carrying the Equation that defines it.
ProgrammingLanguageEnum Programming languages relevant to computational neuroscience tools. Mapped to Wikidata identifiers.
Provenance W3C PROV-O aligned provenance. Reusable on any entity (Network, TimeSeries, Dynamics, etc.).
RandomStream
Range Specifies a range for array generation, parameter bounds, or grid exploration.
ReductionType Operations for reducing/aggregating values across dimensions
Reference A small typed pointer to another TVBO entity (Network, Mesh, Observation, …). The iri identifies the target via the registry; the optional field is a dotted-path subkey resolved by attribute walk on the loaded target (e.g. field: 'weight_alpha' picks the weight_alpha named edge matrix on a Network; field: 'mesh.faces' picks the mesh face array). Used uniformly anywhere a TVBO entity needs to point at a sub-array of another entity without inlining the data.
ReferenceFingerprint Cache-invalidation fingerprint for one aux_data reference. Captures enough about the upstream artifact that a downstream cache can decide cheaply (via mtime + size) whether to trust the cached result, falling back to a hash recompute on mismatch.
RegionMapping Maps vertices to parent regions for hierarchical/aggregated coupling
RequirementRole
Sample
SamplingAxis Dimension along which a distribution is sampled.
Session A data collection session for a subject. Corresponds to a BIDS ‘ses-’ entity. Sessions capture longitudinal timepoints (baseline, follow-up), different experimental conditions, or repeated measures.
SexEnum
SimulationExperiment
SimulationScale Spatial / organizational scale at which a tool operates. Multi-valued: a tool can span multiple scales. Mapped to SIO and Wikidata where possible.
SimulationStudy
SimulationTool A software tool for computational neuroscience simulation, analysis, or model specification. Extends SoftwarePackage with neuroscience-specific controlled vocabularies for scale, paradigm, role, and interoperability. Aligned with CodeMeta v3 and DOAP.
SoftwareEnvironment A reproducible software environment aggregating one or more SoftwareRequirement entries. Used by SimulationExperiment to specify the execution context.
SoftwarePackage Identity and metadata for a software package, aligned with schema.org/SoftwareApplication and CodeMeta v3.
SoftwareRequirement An individual software requirement binding a package to a version constraint and a role within an environment.
Solver Lightweight specification of a numerical ODE solver / integrator. Covers adaptive solvers (Vern9, Rodas5, Tsit5, etc.) used in shooting methods, initial-state integration, and other contexts where only the algorithm and tolerances matter.
SparseFormat
SpatialDomain
SpatialField
SpecimenEnum A set of permissible types for specimens used in brain atlas creation.
StandardGraphType Well-known graph generator families with automatic backend mapping. The type field on GraphGenerator is a free string; this enum lists common types that get automatic code generation for Julia (Graphs.jl) and Python (NetworkX).
StateValue A named state variable value for per-node initialization.
StateVariable
StimulationSetting DBS parameters for a specific session.
Stimulus
Study Bibliographic anchor for a source publication, identified by its citation key (citekey). The full bibliographic record lives in the project BibTeX library (references.bib) and is resolved by citekey; this node carries only identity, display fields and the knowledge-graph hooks (the concepts that cite it). Specialised by SimulationStudy, which adds the experiments derived from the source.
Subject A participant in a study. Each subject typically has their own brain network (connectome) and empirical recordings. Corresponds to a BIDS ‘sub-’ entity.
SystemType
TemporalApplicableEquation
TimeSeries Time series data from simulations or measurements. Supports BIDS-compatible export for computational modeling (BEP034).
ToolRole Primary function of the tool in a simulation workflow.
Tractogram Reference to tractography/diffusion MRI data used to derive structural connectivity
TuningObjective Defines what the tuning algorithm optimizes for. Can be an activity target (FIC) or a connectivity target (EIB).
UnitEnum Physical units of measurement for model parameters, state variables, and integration settings. Uses conventional abbreviations as values, mapped to the QUDT ontology (http://qudt.org/vocab/unit/) with UO cross-references where available.
UpdateRule Defines how a parameter is updated based on observables. Represents iterative learning rules like FIC or EIB updates. Functions from experiment.functions are available in the equation.

Aggregation

datamodel.pydantic.Aggregation()

Specifies how to aggregate values across a dimension. Used for loss functions to define per-element loss with reduction.

AggregationType

datamodel.pydantic.AggregationType()

How to aggregate time series data

Attributes

Name Description
first First value in window
last Last value in window
mean Average over time
none No aggregation
window Sliding window aggregation

Algorithm

datamodel.pydantic.Algorithm()

A complete specification of an iterative parameter tuning algorithm. Combines update rules, objectives, observations, and hyperparameters.

AlgorithmCompositionMode

datamodel.pydantic.AlgorithmCompositionMode()

How an included algorithm is composed with the outer algorithm. Determines whether the inner algorithm’s update rules are merged into the same loop (combined) or run as a converging inner loop on each outer iteration (nested).

Attributes

Name Description
combined The included algorithm’s update rules are merged into the outer loop and applied ONCE per outer iteration (1:1). Use when both algorithms update at the same cadence on the same observations. This is the default.
nested The included algorithm runs as a full inner loop on EACH outer iteration, re-converging before the outer update rules are applied. Use when the inner algorithm maintains an invariant the outer one would otherwise perturb — e.g. FIC holding the E-I working point (mean S_e = 0.25) while EIB retunes per-edge coupling. The outer update’s validity depends on that invariant, so the inner loop must re-settle it between every outer step.

AlgorithmInclude

datamodel.pydantic.AlgorithmInclude()

Reference to an included algorithm with optional argument overrides. Allows combining algorithms with different hyperparameter values.

AlgorithmStage

datamodel.pydantic.AlgorithmStage()

One stage of a multi-stage tuning schedule. The algorithm body is run once per stage, in order, carrying the trajectory state, FC window buffer, and monitors forward — so the stages form one continuous online tuning run. Each stage overrides n_iterations and selected hyperparameters (e.g. Schirner 2023’s 6 stages: eta halves and the FC window doubles per stage, sharpening the per-edge gradient over time).

Analysis

datamodel.pydantic.Analysis()

A general analysis observable: a quantity obtained by ANALYZING the model, its solve, or a derived loss, rather than by transforming the recorded trajectory. It is deliberately broad — the same concept covers parameter sensitivities/gradients (autodiff or finite-difference), stability spectra (Lyapunov), bifurcation quantities, identifiability/Fisher-information metrics, and future analyses. type names the analysis (extensible); target and wrt bind it to what is analyzed and with respect to what; parameters carries the analysis-specific configuration. Backend-neutral: each backend maps type to its own machinery, or emits a comment and skips when it has no equivalent (it does not raise).

Argument

datamodel.pydantic.Argument()

A function argument with explicit value specification. Value can be: literal (number/string), reference to input (input.key), or cross-observation reference (observation_name.output_key).

BidsEntities

datamodel.pydantic.BidsEntities()

BIDS filename entities (BEP017-aligned) for provenance and data discovery. Reusable on Network, BrainAtlas, Tractogram, or any dataset with BIDS-conformant naming.

Binding

datamodel.pydantic.Binding()

Per-backend construction binding for a GraphGenerator: how to build the graph in a specific target library. Keyed by backend id — the name is the backend (e.g. python, julia, networkx).

BoundaryCondition

datamodel.pydantic.BoundaryCondition()

BoundaryConditionType

datamodel.pydantic.BoundaryConditionType()

BrainAtlas

datamodel.pydantic.BrainAtlas()

A schema for representing a version of a brain atlas.

BrainRegionSeries

datamodel.pydantic.BrainRegionSeries()

A series whose values represent latitude

BranchSwitch

datamodel.pydantic.BranchSwitch()

Specification for switching from a detected bifurcation point to a new branch (periodic orbits from Hopf, fold continuation, etc.). Each BranchSwitch says: “from which special point on the parent branch, continue what kind of object, with what settings.” Override parent solver settings via the inline continuation field — only explicitly set attributes take effect; everything else is inherited from the parent Continuation.

Callable

datamodel.pydantic.Callable()

Case

datamodel.pydantic.Case()

ClassReference

datamodel.pydantic.ClassReference()

Reference to a class that can be instantiated and called. Used for external library classes (e.g., tvboptim.Bold, custom monitors). The class is instantiated with constructor_args, then called with call_args. Generalizable pattern: works for tvboptim, TVB, or any Python class.

ClinicalImprovement

datamodel.pydantic.ClinicalImprovement()

Relative improvement on a defined clinical score.

ClinicalScale

datamodel.pydantic.ClinicalScale()

A clinical assessment inventory or structured scale composed of multiple scores or items.

ClinicalScore

datamodel.pydantic.ClinicalScore()

Metadata about a clinical score or scale.

CommonCoordinateSpace

datamodel.pydantic.CommonCoordinateSpace()

A schema for representing a version of a common coordinate space.

ConditionalBlock

datamodel.pydantic.ConditionalBlock()

A single condition and its corresponding equation segment.

ConfiguredBaseModel

datamodel.pydantic.ConfiguredBaseModel()

Contact

datamodel.pydantic.Contact()

Individual contact on a DBS electrode.

Continuation

datamodel.pydantic.Continuation()

Complete specification of a numerical continuation / bifurcation analysis. All universal solver settings live directly here. Toolkit-specific string options go in the options slot. When used inside a BranchSwitch, only explicitly set attributes override the parent’s values.

ContinuationAlgorithm

datamodel.pydantic.ContinuationAlgorithm()

Predictor-corrector algorithm for numerical continuation.

Attributes

Name Description
MoorePenrose Moore-Penrose continuation.
Natural Natural parameter continuation. Simple parameter stepping, no arc-length constraint.
PALC Pseudo-arclength continuation (default). Uses weighted dot product constraint.

Coordinate

datamodel.pydantic.Coordinate()

A 3D coordinate with X, Y, Z values.

Coupling

datamodel.pydantic.Coupling()

CouplingInput

datamodel.pydantic.CouplingInput()

Specification of a coupling input channel for multi-coupling dynamics

DBSDataset

datamodel.pydantic.DBSDataset()

Collection of data related to a specific DBS study.

DBSProtocol

datamodel.pydantic.DBSProtocol()

A protocol describing DBS therapy, potentially bilateral or multi-lead.

DBSSubject

datamodel.pydantic.DBSSubject()

Human or animal subject receiving DBS.

DataSource

datamodel.pydantic.DataSource()

Specification for loading external/empirical data.

Dataset

datamodel.pydantic.Dataset()

A collection of subjects for a multi-subject study. Provides the subject/session structure needed for workflow rendering. Optionally backed by a BIDS directory layout.

DerivedParameter

datamodel.pydantic.DerivedParameter()

DerivedVariable

datamodel.pydantic.DerivedVariable()

DevelopmentStatus

datamodel.pydantic.DevelopmentStatus()

Development status of the software. Based on repostatus.org categories.

Attributes

Name Description
active Actively developed with regular releases.
concept Minimal or no implementation; ideas / prototypes.
inactive No longer actively developed; may still work.
moved Project has been moved to a different location.
suspended Development paused; may resume in future.
unsupported Released but no longer supported.
wip Work in progress; not yet feature-complete.

DifferentialOperator

datamodel.pydantic.DifferentialOperator()

Differentiation

datamodel.pydantic.Differentiation()

Backend-neutral configuration for how gradients are propagated through the temporal integration. Expressed in physical/semantic terms; each backend maps it to its own mechanism (JAX solver grad_horizon / block_size, Julia adjoint sensitivity, …). Backends without autodiff (e.g. MATLAB) emit a comment noting differentiation is unsupported and proceed with the plain forward integration – they do not raise.

DimensionType

datamodel.pydantic.DimensionType()

Dimensions along which operations can be applied

Attributes

Name Description
batch Batch dimension (for parallel processing)
frequency Frequency dimension (spectral analysis)
mode Mode dimension (e.g., coupling modes)
node Network node dimension (general graph term)
region Spatial/regional dimension (alias for node in brain networks)
sample Sample/trial/realization dimension
state State variable dimension
time Temporal dimension

Discretization

datamodel.pydantic.Discretization()

Discretization method for boundary value problems in continuation (periodic orbits, connecting orbits, quasi-periodic tori). Specifies the method; method-specific numerics go in parameters.

DiscretizationMethod

datamodel.pydantic.DiscretizationMethod()

Attributes

Name Description
FDM Finite Difference Method
FEM Finite Element Method
FVM Finite Volume Method

Distribution

datamodel.pydantic.Distribution()

A probability distribution for sampling parameters or initial conditions. Standard distributions (Uniform, Gaussian) are specified by name and domain/parameters. Custom distributions use a Function for the PDF/sampling rule. Default name is Uniform when only domain is given.

DomainEnforcement

datamodel.pydantic.DomainEnforcement()

Whether and how a state variable’s domain constrains the trajectory during integration. Default none means the domain is descriptive metadata only (expected range, plot limits, initial- condition sampling support) and never alters the dynamics — so declaring a domain is side-effect free. clamp and wrap opt in to active enforcement using the domain’s lo/hi.

Attributes

Name Description
clamp Hard-clip every integration step to [lo, hi].
none Metadata only; the trajectory is never constrained (default).
wrap Periodic wrap into [lo, hi) — e.g. a phase variable on [0, 2π). The recorded timeseries stays within the range while remaining continuous mod (hi - lo).”

Dynamics

datamodel.pydantic.Dynamics()

EField

datamodel.pydantic.EField()

Simulated electric field from DBS modeling.

EcosystemEnum

datamodel.pydantic.EcosystemEnum()

Package ecosystem or registry the software is distributed through.

Attributes

Name Description
bioconda Bioinformatics Conda channel.
conda_forge Conda-Forge community channel.
cran Comprehensive R Archive Network.
docker Docker container registry / image distribution.
github Distributed via GitHub releases.
julia_registry Julia General package registry.
maven Maven Central Repository (Java).
npm Node Package Manager registry.
pypi Python Package Index.

Edge

datamodel.pydantic.Edge()

An edge in a network. Two modes: explicit (source+target set, scalar parameters in YAML) or template (no source/target, N×N matrix measure in HDF5). Both coexist in the same edges list.

Electrode

datamodel.pydantic.Electrode()

Implanted DBS electrode and contact geometry.

ElementType

datamodel.pydantic.ElementType()

EnvironmentType

datamodel.pydantic.EnvironmentType()

Attributes

Name Description
conda Conda environment.
docker Docker container.
singularity Singularity/Apptainer container.
venv Python virtual environment.

Equation

datamodel.pydantic.Equation()

Event

datamodel.pydantic.Event()

A discrete or continuous event that modifies the system during simulation. Generalizes Stimulus: can represent external inputs (stimulus type), threshold-triggered state changes (continuous/discrete type), or time-scheduled interventions (preset_time type). Attaches to components (nodes/edges) or to the experiment level.

EventType

datamodel.pydantic.EventType()

Type of event triggering mechanism.

Attributes

Name Description
continuous Triggered when condition function crosses zero (root-finding). Maps to ContinuousCallback / ContinuousComponentCallback.
discrete Triggered when condition function returns true (checked at each step). Maps to DiscreteCallback / DiscreteComponentCallback.
preset_time Triggered at predetermined time points. Maps to PresetTimeCallback / PresetTimeComponentCallback.
stimulation Synonym of ‘stimulus’ — a continuous time-dependent input signal injected into a target state variable across target regions. The codegen treats ‘stimulation’ and ‘stimulus’ identically.
stimulus Continuous time-dependent input signal (e.g., external current). Legacy Stimulus behavior.

ExecutionConfig

datamodel.pydantic.ExecutionConfig()

Configuration for computational execution (parallelization, precision, hardware).

Exploration

datamodel.pydantic.Exploration()

Parameter space exploration (grid search, sweep).

ExplorationAxis

datamodel.pydantic.ExplorationAxis()

One axis of a parameter exploration grid. Points to an existing Parameter (by dotted reference, e.g. “ReducedWongWang.w” or “FastLinearCoupling.G”) and supplies the sweep specification (domain, explored_values, or per-element overrides). No new Parameter is created.

FieldStateVariable

datamodel.pydantic.FieldStateVariable()

File

datamodel.pydantic.File()

FreeParameter

datamodel.pydantic.FreeParameter()

One degree of freedom in an OptimizationStage. References an existing Parameter by dotted scope (e.g. “ReducedWongWang.w” or “FastLinearCoupling.G”) and supplies optimization-specific metadata (heterogeneous, shape, bounds, initial value). No new Parameter is created here.

Function

datamodel.pydantic.Function()

A function with explicit input -> transformation -> output flow. Can be equation-based (symbolic) or software-based (callable). In a pipeline, functions are chained: output of one becomes input of next.

FunctionCall

datamodel.pydantic.FunctionCall()

Invocation of a function in a pipeline. Can reference a defined Function by name, OR inline a callable directly for external library functions, OR inline an equation, OR use class_call for class instantiation. Mirrors Function attributes so pipeline steps can be self-contained. The name is an optional step label (used in pipelines for keyed access to step outputs); it is NOT a global identifier (singleton uses like loss, observable may omit it).

GraphGenerator

datamodel.pydantic.GraphGenerator()

Backend-agnostic graph generator specification. Captures the mathematical family and its parameter declarations so that each backend can emit the correct constructor call (Graphs.jl, NetworkX, etc.) via per-backend bindings; derived generators may also carry a symbolic procedure. The number of nodes is always taken from Network.number_of_nodes.

Hemisphere

datamodel.pydantic.Hemisphere()

ImagingModality

datamodel.pydantic.ImagingModality()

Attributes

Name Description
BOLD Blood Oxygen Level Dependent signal.
EEG Electroencephalography.
IEEG Intracranial Electroencephalography.
MEG Magnetoencephalography.
SEEG Stereoelectroencephalography.

Inference

datamodel.pydantic.Inference()

Bayesian inference of model parameters from an observation, via MCMC. A standalone, first-class concept (NOT an Optimization): it produces a POSTERIOR, not a point estimate, using priors + a likelihood + a sampler instead of a loss + optimizer. It runs the SAME differentiable forward model, wrapped in a probabilistic model (sample priors -> forward -> likelihood).

InitialState

datamodel.pydantic.InitialState()

How to obtain the starting equilibrium or periodic orbit for continuation. Most robust: time-integrate to steady state.

InitialStateMethod

datamodel.pydantic.InitialStateMethod()

Strategy for obtaining the starting equilibrium or periodic orbit.

Attributes

Name Description
from_branch Start from a point on a previously computed branch.
given Use the model’s default initial values directly.
newton Use Newton’s method to find the nearest fixed point.
time_integration Integrate the ODE forward until convergence (robust, default).

Integrator

datamodel.pydantic.Integrator()

Fixed-step or adaptive ODE integrator with TVB-specific extensions (noise, transient time, etc.). Inherits abs_tol, rel_tol from Solver. Overrides method default to ‘euler’.

Likelihood

datamodel.pydantic.Likelihood()

Observation model for Bayesian inference: p(data | sim(theta)). Points at the observation holding the data and specifies the noise family + scale. name is the noise family (default Normal); source uses the same referencing as Observation.source, so the observed data can come from this experiment’s integration, an empirical network measure, or a runtime-bound array — one flexible hook, no data-loading path of its own.

LinkMLMeta

datamodel.pydantic.LinkMLMeta()

LossFunction

datamodel.pydantic.LossFunction()

A loss function for optimization with optional aggregation. Extends Function with aggregation specification for per-element losses.

Matrix

datamodel.pydantic.Matrix()

Adjacency matrix of a network.

MeasureSpec

datamodel.pydantic.MeasureSpec()

Metadata for one phenotype measure. Optional per-measure entry on Phenotype.measure_specs.

Mesh

datamodel.pydantic.Mesh()

Triangle (or higher-order) mesh geometry. May stand alone (via mesh_file pointing at an external GIFTI/VTK/MSH file) OR be inlined on a Network as Network.mesh. In the inlined-on-Network case, the vertices are the parent Network’s nodes/coordinates (so coordinates here may be left empty), the faces live in the same h5 companion under a path given by elements (default mesh/faces), and optional per-vertex normals / curvature live alongside. The optional parcel_map_field points at the parent Network’s per-vertex parcel-id array (default nodes/parent_index from the hierarchical-Network pattern, see Network.qmd §7.1).

ModelParadigm

datamodel.pydantic.ModelParadigm()

Computational paradigm or modeling approach supported by the tool.

Attributes

Name Description
bifurcation_analysis Dynamical systems bifurcation / continuation analysis.
compartmental Multi-compartment morphologically detailed models.
conductance_based Conductance-based / Hodgkin-Huxley-type models.
data_standard Data format or exchange standard.
dynamic_mean_field Dynamic mean-field approximation (e.g., Deco et al.).
generic General-purpose, not specific to neuroscience.
mean_field Mean-field reductions of spiking networks.
model_description Declarative model specification language.
multiscale Bridging multiple spatial/temporal scales.
neural_field Continuous neural field equations (Amari, Wilson-Cowan field).
neural_mass Phenomenological population-rate / neural-mass models.
phase_oscillator Phase-reduced or Kuramoto-type oscillator models.
plasticity Synaptic plasticity (STDP, homeostatic, etc.).
rate_based Firing-rate models.
reaction_diffusion Stochastic or deterministic reaction-diffusion.
spiking Spiking neuron models (LIF, AdEx, Izhikevich, etc.).

ModelType

datamodel.pydantic.ModelType()

Coarse classification of a Dynamics model by its mathematical/biological origin. Used for filtering and display in list_db().

Attributes

Name Description
field Spatially distributed neural-field models described by integro- differential or PDE formulations.
generic Generic / normal-form dynamical systems not specific to neural modelling (e.g. Generic2dOscillator, GenericLinear).
mean_field Mathematically derived mean-field models obtained by exact reduction of spiking networks (Ott-Antonsen ansatz, Lorentzian heterogeneity, etc.). Examples: MontbrioPazoRoxin, CoombesByrne, ReducedWongWang, ZerlautAdaptationFirstOrder.
neural_mass Phenomenological population-rate / neural-mass models that describe synaptic and firing-rate dynamics without an explicit derivation from single-neuron statistics. Examples: JansenRit, WilsonCowan, LarterBreakspear, TsodyksMarkram.
phase_oscillator Phase-reduced or Kuramoto-type oscillator models. Examples: Kuramoto, SupHopf.
phenomenological Empirical / phenomenological models that capture macroscopic dynamics without direct biophysical derivation. Examples: Epileptor2D, Epileptor5D.
spiking Single-neuron or conductance-based spiking models (HH, AdEx, LIF, Izhikevich, etc.). These can be used as nodes in a network alongside mean-field models.

NDArray

datamodel.pydantic.NDArray()

NamedArray

datamodel.pydantic.NamedArray()

A named numeric array. Used as a sidecar slot value where a schema-typed object (e.g. ExperimentResult.parameters) holds multiple arrays addressable by name (w_LRE, w_FFI, J_i, …). The actual numeric data lives in the companion .h5 at parameters/<name>; the YAML carries only the descriptor.

Network

datamodel.pydantic.Network()

Network specification with nodes, edges, and reusable coupling configurations. Supports both explicit node/edge representation and matrix-based connectivity (Connectome compatibility).

Node

datamodel.pydantic.Node()

A node in a network with its own dynamics and properties

Noise

datamodel.pydantic.Noise()

NoiseType

datamodel.pydantic.NoiseType()

NumericalDiscretizationMethod

datamodel.pydantic.NumericalDiscretizationMethod()

Numerical discretization method for boundary value problems (periodic orbits, connecting orbits, quasi-periodic tori).

Attributes

Name Description
collocation Orthogonal collocation at Gauss points.
poincare Poincaré shooting.
shooting Standard multiple shooting.
trapezoid Trapezoidal rule discretization.

Observation

datamodel.pydantic.Observation()

Unified class for all observation/measurement specifications. Covers monitors (BOLD, EEG), tuning observables, and derived quantities. Pipeline is a sequence of Functions with input -> output flow.

OperatorType

datamodel.pydantic.OperatorType()

Optimization

datamodel.pydantic.Optimization()

Configuration for parameter optimization. Inherits single-stage fields from OptimizationStage. For multi-stage workflows, use ‘stages’ (ignores inherited single-stage fields). Loss equation references observations directly by name.

OptimizationStage

datamodel.pydantic.OptimizationStage()

A single stage in a multi-stage optimization workflow. Stages run sequentially, with each stage potentially using different parameters, shapes, learning rates, and algorithms.

Option

datamodel.pydantic.Option()

A toolkit-specific key-value option (string name + string value). Used for backend settings that are not universal numeric parameters (e.g., solver name, tangent method, jacobian type).

PDE

datamodel.pydantic.PDE()

Partial differential equation problem definition.

PDESolver

datamodel.pydantic.PDESolver()

ParallelMode

datamodel.pydantic.ParallelMode()

How a trial / grid-point axis is realised at JAX codegen time. The choice trades peak memory against throughput: vmap batches in parallel (fast, n_trials × working-set memory), lax_map runs sequentially via jax.lax.map (memory bounded by one trial), pmap shards across devices, auto picks vmap when the estimated batched memory fits and lax_map otherwise.

Attributes

Name Description
auto Pick vmap when memory permits, lax_map otherwise.
lax_map Sequential execution via jax.lax.map. Slower; bounded memory.
pmap Cross-device parallel execution (jax.pmap). For multi-GPU/TPU.
vmap Parallel batched execution (jax.vmap). Fast; high peak memory.

Parameter

datamodel.pydantic.Parameter()

Parcellation

datamodel.pydantic.Parcellation()

ParcellationEntity

datamodel.pydantic.ParcellationEntity()

A schema for representing a parcellation entity, which is an anatomical location or study target.

ParcellationTerminology

datamodel.pydantic.ParcellationTerminology()

A schema for representing a parcellation terminology, which consists of parcellation entities.

Phenotype

datamodel.pydantic.Phenotype()

Per-subject phenotype table (BIDS phenotype/ directory convention). Carries cognitive scores, clinical scales, demographic variables, behavioral task outputs, physiological measures, or any other per-subject numeric measurement bundle for a cohort. Sidecar companion to per-subject Network sidecars in multi-subject studies that correlate simulated quantities with empirical scores (e.g. PMAT24_A, g-factor, CardSort, ProcSpeed for Schirner 2023). The yaml carries metadata + the measure list; the h5 carries measures/<name> 1-D float arrays of length len(subjects). Aligns with the BIDS phenotype standard (https://bids-specification.readthedocs.io/en/stable/modality-agnostic-files/phenotypic-and-assessment-data.html) and with NIDM’s nidm:Phenotype concept. Per-measure metadata can optionally carry Cognitive Atlas (https://www.cognitiveatlas.org/) cogat:Task and cogat:Concept IRIs via measure_specs.

PhysicalDimension

datamodel.pydantic.PhysicalDimension()

Physical dimension categories for LEMS and dimensional analysis. Each dimension decomposes into SI base dimensions (M, L, T, I, K, N).

Attributes

Name Description
capacitance Capacitance [M⁻¹ L⁻² T⁴ I²]
charge Electric charge [T I]
concentration Concentration [L⁻³ N]
conductance Conductance [M⁻¹ L⁻² T³ I²]
current Electric current [I]
length Length [L]
none Dimensionless
per_time Inverse time [T⁻¹]
resistance Resistance [M L² T⁻³ I⁻²]
substance Amount of substance [N]
temperature Temperature [K]
time Time [T]
voltage Voltage [M L² T⁻³ I⁻¹]
volume Volume [L³]

Prior

datamodel.pydantic.Prior()

Prior belief over one inferred parameter. In Inference.priors the collection KEY is the parameter’s dotted name; the value wraps a Distribution as the belief (reusing the standard distribution vocabulary rather than inventing a new one). Distinct from Parameter.distribution, which specifies per-node SAMPLING, not a prior.

Procedure

datamodel.pydantic.Procedure()

Symbolic procedure: an ordered list of steps producing named outputs. Documents a derived generator’s algorithm independently of any backend binding.

ProcedureStep

datamodel.pydantic.ProcedureStep()

A single named step (or output) in a Procedure, carrying the Equation that defines it.

ProgrammingLanguageEnum

datamodel.pydantic.ProgrammingLanguageEnum()

Programming languages relevant to computational neuroscience tools. Mapped to Wikidata identifiers.

Attributes

Name Description
HOC NEURON’s high-level interpreted language.

Provenance

datamodel.pydantic.Provenance()

W3C PROV-O aligned provenance. Reusable on any entity (Network, TimeSeries, Dynamics, etc.).

RandomStream

datamodel.pydantic.RandomStream()

Range

datamodel.pydantic.Range()

Specifies a range for array generation, parameter bounds, or grid exploration.

ReductionType

datamodel.pydantic.ReductionType()

Operations for reducing/aggregating values across dimensions

Attributes

Name Description
max Maximum value
mean Arithmetic mean
min Minimum value
none No reduction (return per-element values)
sum Sum of values

Reference

datamodel.pydantic.Reference()

A small typed pointer to another TVBO entity (Network, Mesh, Observation, …). The iri identifies the target via the registry; the optional field is a dotted-path subkey resolved by attribute walk on the loaded target (e.g. field: 'weight_alpha' picks the weight_alpha named edge matrix on a Network; field: 'mesh.faces' picks the mesh face array). Used uniformly anywhere a TVBO entity needs to point at a sub-array of another entity without inlining the data.

ReferenceFingerprint

datamodel.pydantic.ReferenceFingerprint()

Cache-invalidation fingerprint for one aux_data reference. Captures enough about the upstream artifact that a downstream cache can decide cheaply (via mtime + size) whether to trust the cached result, falling back to a hash recompute on mismatch.

RegionMapping

datamodel.pydantic.RegionMapping()

Maps vertices to parent regions for hierarchical/aggregated coupling

RequirementRole

datamodel.pydantic.RequirementRole()

Attributes

Name Description
analysis Post-processing / analysis tool.
dev Development / build dependency.
engine Primary simulation/processing engine.
optional Optional or extra feature dependency.
runtime General runtime dependency.

Sample

datamodel.pydantic.Sample()

SamplingAxis

datamodel.pydantic.SamplingAxis()

Dimension along which a distribution is sampled.

Attributes

Name Description
space Sample once per node (heterogeneous parameter or spatially varying IC).
time Resample every integration timestep (stochastic time-varying input).

Session

datamodel.pydantic.Session()

A data collection session for a subject. Corresponds to a BIDS ‘ses-’ entity. Sessions capture longitudinal timepoints (baseline, follow-up), different experimental conditions, or repeated measures.

SexEnum

datamodel.pydantic.SexEnum()

Attributes

Name Description
female Female
male Male
other Other or not reported

SimulationExperiment

datamodel.pydantic.SimulationExperiment()

SimulationScale

datamodel.pydantic.SimulationScale()

Spatial / organizational scale at which a tool operates. Multi-valued: a tool can span multiple scales. Mapped to SIO and Wikidata where possible.

Attributes

Name Description
channel Ion channel / sub-cellular molecular dynamics.
network_system Whole-brain or large-scale network of regions.
neural_mass Population-level neural mass or mean-field model.
neural_network Microcircuit / local network of neurons.
neuron Single neuron (compartmental or point).
whole_brain Whole-brain models targeting cortex-wide dynamics.

SimulationStudy

datamodel.pydantic.SimulationStudy()

SimulationTool

datamodel.pydantic.SimulationTool()

A software tool for computational neuroscience simulation, analysis, or model specification. Extends SoftwarePackage with neuroscience-specific controlled vocabularies for scale, paradigm, role, and interoperability. Aligned with CodeMeta v3 and DOAP.

SoftwareEnvironment

datamodel.pydantic.SoftwareEnvironment()

A reproducible software environment aggregating one or more SoftwareRequirement entries. Used by SimulationExperiment to specify the execution context.

SoftwarePackage

datamodel.pydantic.SoftwarePackage()

Identity and metadata for a software package, aligned with schema.org/SoftwareApplication and CodeMeta v3.

SoftwareRequirement

datamodel.pydantic.SoftwareRequirement()

An individual software requirement binding a package to a version constraint and a role within an environment.

Solver

datamodel.pydantic.Solver()

Lightweight specification of a numerical ODE solver / integrator. Covers adaptive solvers (Vern9, Rodas5, Tsit5, etc.) used in shooting methods, initial-state integration, and other contexts where only the algorithm and tolerances matter.

SparseFormat

datamodel.pydantic.SparseFormat()

Attributes

Name Description
coo Coordinate list (data, row, col)
csr Compressed Sparse Row (data, indices, indptr)
dense Dense N×N array with gzip compression

SpatialDomain

datamodel.pydantic.SpatialDomain()

SpatialField

datamodel.pydantic.SpatialField()

SpecimenEnum

datamodel.pydantic.SpecimenEnum()

A set of permissible types for specimens used in brain atlas creation.

StandardGraphType

datamodel.pydantic.StandardGraphType()

Well-known graph generator families with automatic backend mapping. The type field on GraphGenerator is a free string; this enum lists common types that get automatic code generation for Julia (Graphs.jl) and Python (NetworkX).

Attributes

Name Description
BarabasiAlbert Barabasi-Albert preferential attachment (params: k)
Complete Complete graph (all-to-all)
Cycle Cycle graph (ring)
ErdosRenyi Erdos-Renyi random graph (params: p)
Grid Grid/lattice graph (params: dims)
RandomRegular Random regular graph (params: k)
RandomReservoir Sparse random recurrent adjacency with post-hoc spectral- radius rescaling. Parameters: n, sparsity, spectral_radius, weight_distribution, seed. Canonical Echo State Network substrate (Jaeger 2001) for reservoir computing.
Star Star graph
WattsStrogatz Watts-Strogatz small-world (params: k, p)
WeightShuffle Derived generator: permute the non-zero entries of a source matrix. Parameters: source (IRI to another Network), preserve (binary_mask | degree | weight_distribution), seed. Used for null-model controls (e.g. shuffled SC).

StateValue

datamodel.pydantic.StateValue()

A named state variable value for per-node initialization.

StateVariable

datamodel.pydantic.StateVariable()

StimulationSetting

datamodel.pydantic.StimulationSetting()

DBS parameters for a specific session.

Stimulus

datamodel.pydantic.Stimulus()

Study

datamodel.pydantic.Study()

Bibliographic anchor for a source publication, identified by its citation key (citekey). The full bibliographic record lives in the project BibTeX library (references.bib) and is resolved by citekey; this node carries only identity, display fields and the knowledge-graph hooks (the concepts that cite it). Specialised by SimulationStudy, which adds the experiments derived from the source.

Subject

datamodel.pydantic.Subject()

A participant in a study. Each subject typically has their own brain network (connectome) and empirical recordings. Corresponds to a BIDS ‘sub-’ entity.

SystemType

datamodel.pydantic.SystemType()

Attributes

Name Description
continuous Continuous-time dynamics (e.g., ODE/SDE).
discrete Discrete-time dynamics (e.g., maps, iterated updates).

TemporalApplicableEquation

datamodel.pydantic.TemporalApplicableEquation()

TimeSeries

datamodel.pydantic.TimeSeries()

Time series data from simulations or measurements. Supports BIDS-compatible export for computational modeling (BEP034).

ToolRole

datamodel.pydantic.ToolRole()

Primary function of the tool in a simulation workflow.

Attributes

Name Description
analysis_tool Post-processing, signal analysis, or statistics.
backend_runtime Optimized execution backend for another simulator.
continuation_tool Numerical continuation / bifurcation analysis.
feature_extraction Feature library or pipeline for derived signal descriptors.
framework Multi-paradigm simulation framework.
inference_framework Probabilistic / Bayesian inference toolkit for model parameters.
model_repository Database or repository of published models.
optimization_framework Parameter optimization / fitting tool.
simulator Core numerical simulator.
specification_language Model description language or data standard.
visualization_tool Visualization or graphical user interface.
workflow_framework Orchestration, model-building, or pipeline tool.

Tractogram

datamodel.pydantic.Tractogram()

Reference to tractography/diffusion MRI data used to derive structural connectivity

TuningObjective

datamodel.pydantic.TuningObjective()

Defines what the tuning algorithm optimizes for. Can be an activity target (FIC) or a connectivity target (EIB).

UnitEnum

datamodel.pydantic.UnitEnum()

Physical units of measurement for model parameters, state variables, and integration settings. Uses conventional abbreviations as values, mapped to the QUDT ontology (http://qudt.org/vocab/unit/) with UO cross-references where available.

Attributes

Name Description
A Ampere
H_per_m Henry per metre (permeability)
Hz Hertz (s⁻¹)
Hz_per_nA Hertz per nanoampere (neural gain)
Mohm Megaohm (MΩ)
N_per_m Newton per metre (spring constant)
S_per_cm2 Siemens per square centimetre (conductance density)
S_per_m Siemens per metre (conductivity)
S_per_m2 Siemens per square metre (conductance density, SI)
V Volt
arbitrary_unit Arbitrary units (a.u.)
cm Centimetre
degC Degree Celsius
dimensionless Dimensionless (unitless)
kHz Kilohertz
kg Kilogram
kg_per_s Kilogram per second
kohm_cm Kilo-ohm centimetre (axial resistivity)
m Metre
mS_per_cm2 Millisiemens per square centimetre (conductance density)
mV Millivolt
mV_per_ms Millivolt per millisecond
mV_per_s Millivolt per second
m_per_s Metre per second
m_per_s2 Metre per second squared (acceleration)
mm Millimetre
mm_per_ms Millimetre per millisecond (= m/s)
mmol_per_m3 Millimole per cubic metre (mmol/m³ ≈ mM)
mol_per_cm3 Mole per cubic centimetre (mol/cm³)
mol_per_m3 Mole per cubic metre (mol/m³)
mol_per_m_per_A_per_s Mole per metre per ampere per second (concentration-current coupling)
ms Millisecond
nA Nanoampere
nF Nanofarad
nS Nanosiemens
nS_per_mV Nanosiemens per millivolt
ohm Ohm (Ω)
pA Picoampere
pF Picofarad
pS Picosiemens
per_mV Reciprocal millivolt (mV⁻¹)
per_ms Per millisecond (ms⁻¹)
per_nC Reciprocal nanocoulomb (nC⁻¹)
per_pC Reciprocal picocoulomb (pC⁻¹)
per_s Per second (s⁻¹)
per_unit Per-unit (dimensionless power-systems convention)
percent Percent (%)
rad Radian
rad_per_ms Radian per millisecond
rad_per_s Radian per second (angular velocity)
s Second
s2 Second squared (inertia constant)
uA_per_cm2 Microampere per square centimetre (current density)
uF_per_cm2 Microfarad per square centimetre (specific capacitance)
uS Microsiemens
um3 Cubic micrometre (µm³)
us Microsecond

UpdateRule

datamodel.pydantic.UpdateRule()

Defines how a parameter is updated based on observables. Represents iterative learning rules like FIC or EIB updates. Functions from experiment.functions are available in the equation.