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.