schema
datamodel.schema
Classes
| Name | Description |
|---|---|
| Aggregation | Specifies how to aggregate values across a dimension. Used for loss functions to define per-element loss with |
| AggregationType | How to aggregate time series data |
| Algorithm | A complete specification of an iterative parameter tuning algorithm. Combines update rules, objectives, |
| AlgorithmInclude | Reference to an included algorithm with optional argument overrides. Allows combining algorithms with different |
| Argument | A function argument with explicit value specification. Value can be: literal (number/string), reference to input |
| BidsEntities | BIDS filename entities (BEP017-aligned) for provenance and data discovery. Reusable on Network, BrainAtlas, |
| 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 |
| ClassReference | Reference to a class that can be instantiated and called. Used for external library classes (e.g., tvboptim.Bold, |
| 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. |
| Contact | Individual contact on a DBS electrode. |
| Continuation | Complete specification of a numerical continuation / bifurcation analysis. All universal solver settings live |
| ContinuationAlgorithm | Predictor-corrector algorithm for numerical continuation. |
| Coordinate | A 3D coordinate with X, Y, Z values. |
| CouplingInput | Specification of a coupling input channel for multi-coupling dynamics |
| DBSProtocol | A protocol describing DBS therapy, potentially bilateral or multi-lead. |
| DataSource | Specification for loading external/empirical data. |
| Dataset | Collection of data related to a specific DBS study. |
| DerivedObservation | Observation derived from one or more other observations. Examples: - fc (from bold) - single source transformation |
| DimensionType | Dimensions along which operations can be applied |
| Discretization | Discretization method for boundary value problems in continuation (periodic orbits, connecting orbits, |
| Distribution | A probability distribution for sampling parameters or initial conditions. Standard distributions (Uniform, |
| EField | Simulated electric field from DBS modeling. |
| Edge | An edge in a network. Two modes: explicit (source+target set, scalar parameters in YAML) or template (no |
| Electrode | Implanted DBS electrode and contact geometry. |
| Event | A discrete or continuous event that modifies the system during simulation. Generalizes Stimulus: can represent |
| EventType | Type of event triggering mechanism. |
| ExecutionConfig | Configuration for computational execution (parallelization, precision, hardware). |
| Exploration | Parameter space exploration (grid search, sweep). |
| Function | A function with explicit input -> transformation -> output flow. Can be equation-based (symbolic) or |
| FunctionCall | Invocation of a function in a pipeline. Can reference a defined Function by name, OR inline a callable directly |
| GraphGenerator | Backend-agnostic graph generator specification. Captures the mathematical family (type) and its parameters so that |
| InitialState | How to obtain the starting equilibrium or periodic orbit for continuation. Most robust: time-integrate to steady |
| 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 |
| LossFunction | A loss function for optimization with optional aggregation. Extends Function with aggregation specification for |
| Matrix | Adjacency matrix of a network. |
| ModelType | Coarse classification of a Dynamics model by its mathematical/biological origin. Used for filtering and display in |
| Network | Network specification with nodes, edges, and reusable coupling configurations. Supports both explicit node/edge |
| Node | A node in a network with its own dynamics and properties |
| NumericalDiscretizationMethod | Numerical discretization method for boundary value problems (periodic orbits, connecting orbits, quasi-periodic |
| Observation | Unified class for all observation/measurement specifications. Covers monitors (BOLD, EEG), tuning observables, and |
| Optimization | Configuration for parameter optimization. Inherits single-stage fields from OptimizationStage. For multi-stage |
| OptimizationStage | A single stage in a multi-stage optimization workflow. Stages run sequentially, with each stage potentially using |
| Option | A toolkit-specific key-value option (string name + string value). Used for backend settings that are not universal |
| PDE | Partial differential equation problem definition. |
| 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. |
| PhysicalDimension | Physical dimension categories for LEMS and dimensional analysis. Each dimension decomposes into SI base dimensions |
| Provenance | W3C PROV-O aligned provenance. Reusable on any entity (Network, TimeSeries, Dynamics, etc.). |
| Range | Specifies a range for array generation, parameter bounds, or grid exploration. |
| ReductionType | Operations for reducing/aggregating values across dimensions |
| RegionMapping | Maps vertices to parent regions for hierarchical/aggregated coupling |
| SamplingAxis | Dimension along which a distribution is sampled. |
| SoftwarePackage | Identity information about a software package independent of a specific version requirement. |
| Solver | Lightweight specification of a numerical ODE solver / integrator. Covers adaptive solvers (Vern9, Rodas5, Tsit5, |
| 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 |
| StateValue | A named state variable value for per-node initialization. |
| StimulationSetting | DBS parameters for a specific session. |
| Subject | Human or animal subject receiving DBS. |
| TimeSeries | Time series data from simulations or measurements. Supports BIDS-compatible export for computational modeling |
| 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 |
| UpdateRule | Defines how a parameter is updated based on observables. Represents iterative learning rules like FIC or EIB |
Aggregation
datamodel.schema.Aggregation(over=None, type='mean')Specifies how to aggregate values across a dimension. Used for loss functions to define per-element loss with reduction.
AggregationType
datamodel.schema.AggregationType()How to aggregate time series data
Algorithm
datamodel.schema.Algorithm(
name=None,
description=None,
execution=None,
type=None,
includes=empty_list(),
objective=None,
observations=empty_list(),
update_rules=empty_dict(),
hyperparameters=empty_dict(),
learning_rate=None,
learning_rate_warmup=False,
n_iterations=None,
learning_rate_schedule=None,
simulation_period=None,
apply_every=1,
functions=empty_list(),
depends_on=empty_list(),
)A complete specification of an iterative parameter tuning algorithm. Combines update rules, objectives, observations, and hyperparameters.
AlgorithmInclude
datamodel.schema.AlgorithmInclude(algorithm=None, arguments=empty_dict())Reference to an included algorithm with optional argument overrides. Allows combining algorithms with different hyperparameter values.
Argument
datamodel.schema.Argument(name=None, description=None, value=None, unit=None)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.schema.BidsEntities(
template=None,
cohort=None,
reconstruction=None,
segmentation=None,
scale=None,
atlas=None,
acquisition=None,
)BIDS filename entities (BEP017-aligned) for provenance and data discovery. Reusable on Network, BrainAtlas, Tractogram, or any dataset with BIDS-conformant naming.
BrainAtlas
datamodel.schema.BrainAtlas(
name=None,
coordinateSpace=None,
abbreviation=None,
author=empty_list(),
isVersionOf=None,
versionIdentifier=None,
terminology=None,
)A schema for representing a version of a brain atlas.
BrainRegionSeries
datamodel.schema.BrainRegionSeries(values=empty_list())A series whose values represent latitude
BranchSwitch
datamodel.schema.BranchSwitch(
name=None,
description=None,
parameters=empty_dict(),
source_point=None,
delta_p=None,
continuation=None,
discretization=None,
bothside=None,
options=empty_dict(),
)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.
ClassReference
datamodel.schema.ClassReference(
name=None,
description=None,
module=None,
software=None,
constructor_args=empty_dict(),
call_args=empty_dict(),
warmup_source=None,
)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.schema.ClinicalImprovement(
score=None,
baseline_value=None,
absolute_value=None,
percent_change=None,
time_post_surgery=None,
evaluator=None,
timepoint=None,
)Relative improvement on a defined clinical score.
ClinicalScale
datamodel.schema.ClinicalScale(
acronym=None,
name=None,
version=None,
domain=None,
reference=None,
)A clinical assessment inventory or structured scale composed of multiple scores or items.
ClinicalScore
datamodel.schema.ClinicalScore(
acronym=None,
name=None,
description=None,
domain=None,
reference=None,
scale=None,
parent_score=None,
)Metadata about a clinical score or scale.
CommonCoordinateSpace
datamodel.schema.CommonCoordinateSpace(
name=None,
abbreviation=None,
unit=None,
license=None,
anatomicalAxesOrientation=None,
axesOrigin=None,
nativeUnit=None,
defaultImage=empty_list(),
)A schema for representing a version of a common coordinate space.
ConditionalBlock
datamodel.schema.ConditionalBlock(condition=None, expression=None)A single condition and its corresponding equation segment.
Contact
datamodel.schema.Contact(contact_id=None, coordinate=None, label=None)Individual contact on a DBS electrode.
Continuation
datamodel.schema.Continuation(
name=None,
label=None,
description=None,
dynamics=None,
free_parameters=empty_dict(),
ds=None,
ds_min=None,
ds_max=None,
max_steps=None,
newton_tol=None,
newton_max_iterations=None,
nev=None,
tol_stability=None,
detect_bifurcation=None,
detect_fold=None,
n_inversion=None,
max_bisection_steps=None,
algorithm='PALC',
initial_state=None,
branches=empty_dict(),
bothside=None,
execution=None,
software=None,
options=empty_dict(),
)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.schema.ContinuationAlgorithm()Predictor-corrector algorithm for numerical continuation.
Coordinate
datamodel.schema.Coordinate(coordinateSpace=None, x=None, y=None, z=None)A 3D coordinate with X, Y, Z values.
CouplingInput
datamodel.schema.CouplingInput(
name=None,
description=None,
dimension=1,
keys=empty_list(),
)Specification of a coupling input channel for multi-coupling dynamics
DBSProtocol
datamodel.schema.DBSProtocol(
name=None,
electrodes=empty_list(),
settings=empty_list(),
timing_info=None,
notes=None,
clinical_improvement=empty_list(),
)A protocol describing DBS therapy, potentially bilateral or multi-lead.
DataSource
datamodel.schema.DataSource(
name=None,
label=None,
description=None,
path=None,
loader=None,
format=None,
key=None,
preprocessing=None,
)Specification for loading external/empirical data.
Dataset
datamodel.schema.Dataset(
label=None,
dataset_id=None,
subjects=empty_dict(),
clinical_scores=empty_list(),
coordinate_space=None,
)Collection of data related to a specific DBS study.
DerivedObservation
datamodel.schema.DerivedObservation(
name=None,
acronym=None,
label=None,
description=None,
equation=None,
parameters=empty_dict(),
environment=None,
time_scale='ms',
source=None,
period=None,
downsample_period=None,
voi=None,
imaging_modality=None,
warmup_source=None,
data_source=None,
skip_t=None,
tail_samples=None,
aggregation=None,
window_size=None,
pipeline=empty_list(),
class_reference=None,
source_observations=None,
)Observation derived from one or more other observations. Examples: - fc (from bold) - single source transformation - fc_corr (from fc and fc_target) - multi-source comparison Unlike regular Observations, these don’t generate monitor classes but are computed from existing observation values.
DimensionType
datamodel.schema.DimensionType()Dimensions along which operations can be applied
Discretization
datamodel.schema.Discretization(
parameters=empty_dict(),
method='collocation',
ode_solver=None,
linear_solver=None,
mesh_intervals=50,
degree=4,
n_sections=3,
options=empty_dict(),
)Discretization method for boundary value problems in continuation (periodic orbits, connecting orbits, quasi-periodic tori). Specifies the method; method-specific numerics go in parameters.
Distribution
datamodel.schema.Distribution(
name='Uniform',
parameters=empty_dict(),
domain=None,
function=None,
seed=None,
axis='space',
correlation=None,
)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.
EField
datamodel.schema.EField(
volume_data=None,
coordinate_space=None,
threshold_applied=None,
)Simulated electric field from DBS modeling.
Edge
datamodel.schema.Edge(
label=None,
description=None,
parameters=empty_dict(),
source=None,
target=None,
unit=None,
format=None,
weighted=True,
valid_diagonal=False,
non_negative=True,
source_var=None,
target_var=None,
coupling=None,
directed=False,
target_network=None,
dimension_labels=empty_list(),
dynamics=None,
events=empty_dict(),
)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.schema.Electrode(
electrode_id=None,
manufacturer=None,
model=None,
hemisphere='left',
contacts=empty_list(),
head=None,
tail=None,
trajectory=empty_list(),
target_structure=None,
coordinate_space=None,
recon_path=None,
)Implanted DBS electrode and contact geometry.
Event
datamodel.schema.Event(
name=None,
label=None,
description=None,
parameters=empty_dict(),
event_type='stimulus',
condition=None,
condition_states=empty_list(),
condition_parameters=empty_list(),
affect=None,
affect_states=empty_list(),
affect_parameters=empty_list(),
affect_negative=None,
trigger_times=empty_list(),
target_component=None,
equation=None,
regions=empty_list(),
weighting=empty_list(),
duration=None,
)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.schema.EventType()Type of event triggering mechanism.
ExecutionConfig
datamodel.schema.ExecutionConfig(
n_workers=1,
n_threads=-1,
precision='float64',
accelerator='cpu',
batch_size=None,
random_seed=42,
find_fixpoint=False,
)Configuration for computational execution (parallelization, precision, hardware).
Exploration
datamodel.schema.Exploration(
name=None,
label=None,
description=None,
execution=None,
parameters=empty_dict(),
mode='product',
observable=None,
n_parallel=1,
n_trials=1,
average=None,
)Parameter space exploration (grid search, sweep).
Function
datamodel.schema.Function(
name=None,
acronym=None,
label=None,
equation=None,
definition=None,
description=None,
requirements=empty_list(),
input=None,
output=None,
iri=None,
arguments=empty_dict(),
output_equation=None,
source_code=None,
callable=None,
apply_on_dimension=None,
aggregate=None,
time_range=None,
)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.schema.FunctionCall(
acronym=None,
label=None,
equation=None,
description=None,
name=None,
function=None,
callable=None,
class_call=None,
input=None,
output=None,
apply_on_dimension=None,
aggregate=None,
arguments=empty_dict(),
time_range=None,
source_code=None,
)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.
GraphGenerator
datamodel.schema.GraphGenerator(
name=None,
type=None,
description=None,
seed=None,
directed=False,
parameters=empty_dict(),
)Backend-agnostic graph generator specification. Captures the mathematical family (type) and its parameters so that each backend can emit the correct constructor call (Graphs.jl, NetworkX, etc.). The number of nodes is always taken from Network.number_of_nodes.
InitialState
datamodel.schema.InitialState(
method='time_integration',
duration=2000.0,
abs_tol=1e-10,
rel_tol=1e-10,
solver=None,
source_branch=None,
source_point=None,
)How to obtain the starting equilibrium or periodic orbit for continuation. Most robust: time-integrate to steady state.
InitialStateMethod
datamodel.schema.InitialStateMethod()Strategy for obtaining the starting equilibrium or periodic orbit.
Integrator
datamodel.schema.Integrator(
method='euler',
abs_tol=1e-10,
rel_tol=1e-10,
time_scale='ms',
unit=None,
parameters=empty_dict(),
duration=1000,
description=None,
step_size=0.01220703125,
steps=None,
noise=None,
state_wise_sigma=empty_list(),
transient_time=0,
scipy_ode_base=False,
number_of_stages=1,
intermediate_expressions=empty_dict(),
update_expression=None,
delayed=True,
)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’.
LossFunction
datamodel.schema.LossFunction(
name=None,
acronym=None,
label=None,
equation=None,
definition=None,
description=None,
requirements=empty_list(),
input=None,
output=None,
iri=None,
arguments=empty_dict(),
output_equation=None,
source_code=None,
callable=None,
apply_on_dimension=None,
aggregate=None,
time_range=None,
)A loss function for optimization with optional aggregation. Extends Function with aggregation specification for per-element losses.
Matrix
datamodel.schema.Matrix(
label=None,
description=None,
dataLocation=None,
x=None,
y=None,
values=empty_list(),
format=None,
shape=empty_list(),
dtype='float32',
)Adjacency matrix of a network.
ModelType
datamodel.schema.ModelType()Coarse classification of a Dynamics model by its mathematical/biological origin. Used for filtering and display in list_db().
Network
datamodel.schema.Network(
label=None,
description=None,
parameters=empty_dict(),
nodes=empty_list(),
edges=empty_list(),
coupling=empty_dict(),
dynamics=empty_dict(),
number_of_nodes=1,
coordinate_space=None,
parcellation=None,
tractogram=None,
transforms=empty_dict(),
data_file=None,
descriptor=None,
bids_dir=None,
bids=None,
structural_measures=empty_list(),
observational_measures=empty_list(),
provenance=None,
parent_network=None,
node_mapping=None,
distance_unit='mm',
time_unit='ms',
edge_matrix_files=empty_list(),
graph_generator=None,
)Network specification with nodes, edges, and reusable coupling configurations. Supports both explicit node/edge representation and matrix-based connectivity (Connectome compatibility).
Node
datamodel.schema.Node(
id=None,
label=None,
description=None,
parameters=empty_dict(),
dynamics=None,
position=None,
region=None,
state=empty_dict(),
events=empty_dict(),
)A node in a network with its own dynamics and properties
NumericalDiscretizationMethod
datamodel.schema.NumericalDiscretizationMethod()Numerical discretization method for boundary value problems (periodic orbits, connecting orbits, quasi-periodic tori).
Observation
datamodel.schema.Observation(
name=None,
acronym=None,
label=None,
description=None,
equation=None,
parameters=empty_dict(),
environment=None,
time_scale='ms',
source=None,
period=None,
downsample_period=None,
voi=None,
imaging_modality=None,
warmup_source=None,
data_source=None,
skip_t=None,
tail_samples=None,
aggregation=None,
window_size=None,
pipeline=empty_list(),
class_reference=None,
)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.
Optimization
datamodel.schema.Optimization(
name=None,
label=None,
description=None,
free_parameters=empty_list(),
algorithm='adam',
learning_rate=0.001,
max_iterations=100,
hyperparameters=empty_dict(),
freeze_parameters=empty_list(),
warmup_from=None,
execution=None,
integration=None,
loss=None,
stages=empty_dict(),
depends_on=None,
)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.schema.OptimizationStage(
name=None,
label=None,
description=None,
free_parameters=empty_list(),
algorithm='adam',
learning_rate=0.001,
max_iterations=100,
hyperparameters=empty_dict(),
freeze_parameters=empty_list(),
warmup_from=None,
)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.schema.Option(name=None, value=None)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.schema.PDE(
label=None,
description=None,
parameters=empty_dict(),
domain=None,
mesh=None,
state_variables=empty_dict(),
field=None,
operators=empty_list(),
sources=empty_list(),
boundary_conditions=empty_list(),
solver=None,
derived_parameters=empty_list(),
derived_variables=empty_list(),
functions=empty_list(),
)Partial differential equation problem definition.
ParcellationEntity
datamodel.schema.ParcellationEntity(
name=None,
abbreviation=None,
alternateName=empty_list(),
lookupLabel=None,
hasParent=empty_list(),
ontologyIdentifier=empty_list(),
versionIdentifier=None,
relatedUBERONTerm=None,
originalLookupLabel=None,
hemisphere=None,
center=None,
color=None,
)A schema for representing a parcellation entity, which is an anatomical location or study target.
ParcellationTerminology
datamodel.schema.ParcellationTerminology(
label=None,
dataLocation=None,
ontologyIdentifier=empty_list(),
versionIdentifier=None,
entities=empty_dict(),
)A schema for representing a parcellation terminology, which consists of parcellation entities.
PhysicalDimension
datamodel.schema.PhysicalDimension()Physical dimension categories for LEMS and dimensional analysis. Each dimension decomposes into SI base dimensions (M, L, T, I, K, N).
Provenance
datamodel.schema.Provenance(
derived_from=None,
references=empty_list(),
date_created=None,
license=None,
generated_by=None,
)W3C PROV-O aligned provenance. Reusable on any entity (Network, TimeSeries, Dynamics, etc.).
Range
datamodel.schema.Range(
lo='0',
hi=None,
step=None,
n=None,
log_scale=False,
explored_values=empty_list(),
element=None,
)Specifies a range for array generation, parameter bounds, or grid exploration.
ReductionType
datamodel.schema.ReductionType()Operations for reducing/aggregating values across dimensions
RegionMapping
datamodel.schema.RegionMapping(
label=None,
description=None,
dataLocation=None,
vertex_to_region=empty_list(),
n_vertices=None,
n_regions=None,
)Maps vertices to parent regions for hierarchical/aggregated coupling
SamplingAxis
datamodel.schema.SamplingAxis()Dimension along which a distribution is sampled.
SoftwarePackage
datamodel.schema.SoftwarePackage(
name=None,
description=None,
homepage=None,
license=None,
repository=None,
doi=None,
ecosystem=None,
)Identity information about a software package independent of a specific version requirement.
Solver
datamodel.schema.Solver(method='Tsit5', abs_tol=1e-10, rel_tol=1e-10)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.
SpecimenEnum
datamodel.schema.SpecimenEnum()A set of permissible types for specimens used in brain atlas creation.
StandardGraphType
datamodel.schema.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
datamodel.schema.StateValue(name=None, value=None)A named state variable value for per-node initialization.
StimulationSetting
datamodel.schema.StimulationSetting(
electrode_reference=None,
amplitude=None,
frequency=None,
pulse_width=None,
mode=None,
active_contacts=empty_list(),
efield=None,
)DBS parameters for a specific session.
Subject
datamodel.schema.Subject(
subject_id=None,
age=None,
sex=None,
diagnosis=None,
handedness=None,
protocols=empty_list(),
coordinate_space=None,
)Human or animal subject receiving DBS.
TimeSeries
datamodel.schema.TimeSeries(
label=None,
description=None,
dataLocation=None,
data=None,
time=None,
sampling_rate=None,
sampling_period=None,
sampling_period_unit='ms',
unit=None,
labels_ordering=empty_list(),
labels_dimensions=None,
source_experiment=None,
generated_at=None,
software_environment=None,
task_name=None,
subject_id=None,
session_id=None,
run_id=None,
modality=None,
model_equation_ref=None,
model_param_ref=None,
connectivity_ref=None,
)Time series data from simulations or measurements. Supports BIDS-compatible export for computational modeling (BEP034).
Tractogram
datamodel.schema.Tractogram(
name=None,
label=None,
description=None,
data_source=None,
number_of_subjects=None,
acquisition=None,
processing_pipeline=None,
reference=None,
)Reference to tractography/diffusion MRI data used to derive structural connectivity
TuningObjective
datamodel.schema.TuningObjective(
label=None,
description=None,
type=None,
target_variable=None,
target_value=None,
target_data=None,
metric=None,
)Defines what the tuning algorithm optimizes for. Can be an activity target (FIC) or a connectivity target (EIB).
UnitEnum
datamodel.schema.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
datamodel.schema.UpdateRule(
name=None,
target_parameter=None,
equation=None,
description=None,
bounds=None,
warmup=None,
requires=empty_list(),
)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.