classDiagram
class Noise
click Noise href "./Noise.html"
Noise : additive
Noise --> "0..1" Boolean : additive
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
Noise : correlated
Noise --> "0..1" Boolean : correlated
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
Noise : correlated_over
Noise --> "0..1" DimensionType : correlated_over
click DimensionType href "../../enums/DimensionType.html"
Noise : covariance
Noise --> "0..1" Parameter : covariance
click Parameter href "./Parameter.html"
Noise : distribution
Noise --> "0..1" Distribution : distribution
click Distribution href "./Distribution.html"
Noise : equation
Noise --> "0..1" Equation : equation
click Equation href "./Equation.html"
Noise : function
Noise --> "0..1" Function : function
click Function href "./Function.html"
Noise : gaussian
Noise --> "0..1" Boolean : gaussian
click Boolean href "../http://www.w3.org/2001/XMLSchema#boolean.html"
Noise : noise_type
Noise --> "0..1" String : noise_type
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Noise : parameters
Noise --> "*" Parameter : parameters
click Parameter href "./Parameter.html"
Noise : pycode
Noise --> "0..1" String : pycode
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
Noise : random_state
Noise --> "0..1" RandomStream : random_state
click RandomStream href "./RandomStream.html"
Noise : seed
Noise --> "0..1" Integer : seed
click Integer href "../http://www.w3.org/2001/XMLSchema#integer.html"
Noise : settle_seed
Noise --> "0..1" Integer : settle_seed
click Integer href "../http://www.w3.org/2001/XMLSchema#integer.html"
Noise : targets
Noise --> "*" StateVariable : targets
click StateVariable href "./StateVariable.html"
Class: Noise
URI: tvbo:Noise
Class Properties
| Property | Value |
|---|---|
| Class URI | tvbo:Noise |
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| parameters | * Parameter |
direct | |
| equation | 0..1 Equation |
direct | |
| noise_type | 0..1 xsd:string |
Temporal character of the process: gaussian/white (delta-correlated in ti… |
direct |
| covariance | 0..1 Parameter |
Covariance of the unit-intensity noise increment across the axis named by co... | direct | | [correlated_over](../slots/correlated_over.qmd) | 0..1 <br/> [DimensionType](../enums/DimensionType.qmd) | Which axiscovarianceindexes —node(equivalentlyregion`) for spatiall… |
direct |
| correlated | 0..1 xsd:boolean |
Deprecated | direct |
| gaussian | 0..1 xsd:boolean |
Indicates whether the noise is Gaussian | direct |
| additive | 0..1 xsd:boolean |
Indicates whether the noise is additive | direct |
| seed | 0..1 xsd:integer |
direct | |
| settle_seed | 0..1 xsd:integer |
Seed for the noise the settle integrates, when the settle runs as its own sca… | direct |
| random_state | 0..1 RandomStream |
direct | |
| distribution | 0..1 Distribution |
Optional probability distribution from which the noise draws its samples | direct |
| function | 0..1 Function |
Optional functional form of the noise (callable specification) | direct |
| pycode | 0..1 xsd:string |
Inline Python code representation of the noise process | direct |
| targets | * StateVariable |
State variables this noise applies to; if omitted, applies globally | direct |
Usages
| used by | used in | type | used |
|---|---|---|---|
| Stimulus | noise | range | Noise |
| StateVariable | noise | range | Noise |
| Integrator | noise | range | Noise |
| FieldStateVariable | noise | range | Noise |
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/tvbo
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | tvbo:Noise |
| native | tvbo:Noise |
LinkML Source
Direct
name: Noise
from_schema: https://w3id.org/tvbo
slots:
- parameters
- equation
attributes:
noise_type:
name: noise_type
description: 'Temporal character of the process: `gaussian`/`white` (delta-correlated
in time) or `ou`/`ornstein-uhlenbeck` (exponentially correlated in time). Governs
the TIME axis only, and composes freely with `covariance`, which governs a spatial
axis.'
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: gaussian
domain_of:
- Noise
range: string
covariance:
name: covariance
description: 'Covariance of the unit-intensity noise increment across the axis
named by `correlated_over` — the second-order structure of the driving process,
stated as mathematics rather than as a factorisation. Must be square in that
axis, symmetric and positive semi-definite; its diagonal carries per-element
variances and need NOT be unity, so unequal variances and cross-element correlation
are expressed together. The realised increment is the declared sigma times a
draw from this covariance, so `parameters: {sigma: ...}` continues to mean what
it means for uncorrelated noise. Absent (the default) means the increment is
independent across that axis. Being a `Parameter`, it carries the full provenance
triple: a literal `value:`, existing bytes via `source:`+`measure:`, or — the
usual case for a derived operator — `producer:`, whose FunctionCall records
how the structure was obtained (projecting a spatially white field into a modal
basis, spreading independent per-region drives through a connectome). The generative
account therefore lives in the provenance, and the matrix itself stays a statement
about the process. How a backend samples it (Cholesky, eigendecomposition, whitening)
is a backend concern and is never stated here.'
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: Parameter
required: false
inlined: true
correlated_over:
name: correlated_over
description: 'Which axis `covariance` indexes — `node` (equivalently `region`)
for spatially correlated drive, or `state` for correlation between the noise
on different state variables. Required whenever `covariance` is set: a covariance
without a named axis does not identify a process. A multi-mode model carries
its modes inside the state axis, so a modal covariance is declared over `state`.'
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: DimensionType
required: false
correlated:
name: correlated
description: Deprecated. Whether the noise is correlated, without saying across
which axis or by how much. Use `covariance` + `correlated_over`.
deprecated: Superseded by `covariance` + `correlated_over`. A bare boolean never
identified a process — it said neither which axis was correlated nor how strongly
— so no backend could act on it. Read and ignored, so recipes carrying it keep
loading; delete it, and declare `covariance` if the noise really is correlated.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: boolean
gaussian:
name: gaussian
description: Indicates whether the noise is Gaussian
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'False'
domain_of:
- Noise
range: boolean
additive:
name: additive
description: Indicates whether the noise is additive
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'True'
domain_of:
- Noise
range: boolean
seed:
name: seed
from_schema: https://w3id.org/tvbo
ifabsent: integer(42)
domain_of:
- GraphGenerator
- Distribution
- Noise
- Inference
range: integer
settle_seed:
name: settle_seed
description: 'Seed for the noise the settle integrates, when the settle runs as
its own scan. Absent -- the default -- leaves the settle on whatever stream
its solver hands it, which is what an unmodified upstream warm start does; the
backend is not silently given a different draw than the reference implementation
it is checked against. Present means the settle uses exactly this seed. Both
interesting cases are then sayable: equal to `seed` puts the two scans on one
stream, and different from it decorrelates them. Equal is not neutral -- where
the two scans take the same number of steps a shorter draw is a prefix of a
longer one, so the measured noise repeats the settle''s sample for sample, and
corr(settle, measured) on demeaned fluctuations is +0.49 against -0.01 decorrelated.
Its effect on the reported statistics was null everywhere it was measured (FC
bias below 0.03 sigma, no trend), so this slot exists to make the choice visible
and reproducible rather than because either answer is known to be wrong.'
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: integer
required: false
random_state:
name: random_state
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: RandomStream
inlined: true
distribution:
name: distribution
description: Optional probability distribution from which the noise draws its
samples. When set, takes precedence over the `noise_type` / `gaussian` flags
— any Distribution family is accepted (Uniform { lo, hi }, Normal { mean, std
}, LogNormal { mu, sigma }, Beta, …). Reuses the existing Distribution class
also used by Parameter.distribution.
from_schema: https://w3id.org/tvbo
domain_of:
- ProcedureStep
- StateVariable
- Parameter
- Noise
- Prior
- Coupling
range: Distribution
required: false
inlined: true
function:
name: function
description: Optional functional form of the noise (callable specification).
from_schema: https://w3id.org/tvbo
domain_of:
- Distribution
- FunctionCall
- Noise
range: Function
inlined: true
pycode:
name: pycode
description: Inline Python code representation of the noise process.
from_schema: https://w3id.org/tvbo
domain_of:
- Equation
- Noise
range: string
targets:
name: targets
description: State variables this noise applies to; if omitted, applies globally.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- Noise
range: StateVariable
multivalued: true
inlined: true
class_uri: tvbo:NoiseInduced
name: Noise
from_schema: https://w3id.org/tvbo
attributes:
noise_type:
name: noise_type
description: 'Temporal character of the process: `gaussian`/`white` (delta-correlated
in time) or `ou`/`ornstein-uhlenbeck` (exponentially correlated in time). Governs
the TIME axis only, and composes freely with `covariance`, which governs a spatial
axis.'
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: gaussian
owner: Noise
domain_of:
- Noise
range: string
covariance:
name: covariance
description: 'Covariance of the unit-intensity noise increment across the axis
named by `correlated_over` — the second-order structure of the driving process,
stated as mathematics rather than as a factorisation. Must be square in that
axis, symmetric and positive semi-definite; its diagonal carries per-element
variances and need NOT be unity, so unequal variances and cross-element correlation
are expressed together. The realised increment is the declared sigma times a
draw from this covariance, so `parameters: {sigma: ...}` continues to mean what
it means for uncorrelated noise. Absent (the default) means the increment is
independent across that axis. Being a `Parameter`, it carries the full provenance
triple: a literal `value:`, existing bytes via `source:`+`measure:`, or — the
usual case for a derived operator — `producer:`, whose FunctionCall records
how the structure was obtained (projecting a spatially white field into a modal
basis, spreading independent per-region drives through a connectome). The generative
account therefore lives in the provenance, and the matrix itself stays a statement
about the process. How a backend samples it (Cholesky, eigendecomposition, whitening)
is a backend concern and is never stated here.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: Parameter
required: false
inlined: true
correlated_over:
name: correlated_over
description: 'Which axis `covariance` indexes — `node` (equivalently `region`)
for spatially correlated drive, or `state` for correlation between the noise
on different state variables. Required whenever `covariance` is set: a covariance
without a named axis does not identify a process. A multi-mode model carries
its modes inside the state axis, so a modal covariance is declared over `state`.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: DimensionType
required: false
correlated:
name: correlated
description: Deprecated. Whether the noise is correlated, without saying across
which axis or by how much. Use `covariance` + `correlated_over`.
deprecated: Superseded by `covariance` + `correlated_over`. A bare boolean never
identified a process — it said neither which axis was correlated nor how strongly
— so no backend could act on it. Read and ignored, so recipes carrying it keep
loading; delete it, and declare `covariance` if the noise really is correlated.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: boolean
gaussian:
name: gaussian
description: Indicates whether the noise is Gaussian
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'False'
owner: Noise
domain_of:
- Noise
range: boolean
additive:
name: additive
description: Indicates whether the noise is additive
from_schema: https://w3id.org/tvbo
rank: 1000
ifabsent: 'True'
owner: Noise
domain_of:
- Noise
range: boolean
seed:
name: seed
from_schema: https://w3id.org/tvbo
ifabsent: integer(42)
owner: Noise
domain_of:
- GraphGenerator
- Distribution
- Noise
- Inference
range: integer
settle_seed:
name: settle_seed
description: 'Seed for the noise the settle integrates, when the settle runs as
its own scan. Absent -- the default -- leaves the settle on whatever stream
its solver hands it, which is what an unmodified upstream warm start does; the
backend is not silently given a different draw than the reference implementation
it is checked against. Present means the settle uses exactly this seed. Both
interesting cases are then sayable: equal to `seed` puts the two scans on one
stream, and different from it decorrelates them. Equal is not neutral -- where
the two scans take the same number of steps a shorter draw is a prefix of a
longer one, so the measured noise repeats the settle''s sample for sample, and
corr(settle, measured) on demeaned fluctuations is +0.49 against -0.01 decorrelated.
Its effect on the reported statistics was null everywhere it was measured (FC
bias below 0.03 sigma, no trend), so this slot exists to make the choice visible
and reproducible rather than because either answer is known to be wrong.'
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: integer
required: false
random_state:
name: random_state
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: RandomStream
inlined: true
distribution:
name: distribution
description: Optional probability distribution from which the noise draws its
samples. When set, takes precedence over the `noise_type` / `gaussian` flags
— any Distribution family is accepted (Uniform { lo, hi }, Normal { mean, std
}, LogNormal { mu, sigma }, Beta, …). Reuses the existing Distribution class
also used by Parameter.distribution.
from_schema: https://w3id.org/tvbo
owner: Noise
domain_of:
- ProcedureStep
- StateVariable
- Parameter
- Noise
- Prior
- Coupling
range: Distribution
required: false
inlined: true
function:
name: function
description: Optional functional form of the noise (callable specification).
from_schema: https://w3id.org/tvbo
owner: Noise
domain_of:
- Distribution
- FunctionCall
- Noise
range: Function
inlined: true
pycode:
name: pycode
description: Inline Python code representation of the noise process.
from_schema: https://w3id.org/tvbo
owner: Noise
domain_of:
- Equation
- Noise
range: string
targets:
name: targets
description: State variables this noise applies to; if omitted, applies globally.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Noise
range: StateVariable
multivalued: true
inlined: true
parameters:
name: parameters
from_schema: https://w3id.org/tvbo
rank: 1000
owner: Noise
domain_of:
- Equation
- Stimulus
- Event
- ExperimentResultSidecar
- Network
- GraphGenerator
- Node
- Edge
- Observation
- Analysis
- Dynamics
- Distribution
- Noise
- Exploration
- Discretization
- BranchSwitch
- Integrator
- Coupling
- PDE
range: Parameter
multivalued: true
inlined: true
equation:
name: equation
from_schema: https://w3id.org/tvbo
rank: 1000
slot_uri: tvbo:Equation
owner: Noise
domain_of:
- Stimulus
- Event
- ProcedureStep
- Observation
- StateVariable
- Parameter
- Function
- FunctionCall
- DerivedParameter
- DerivedVariable
- Noise
- UpdateRule
- DifferentialOperator
- BoundaryCondition
range: Equation
inlined: true
class_uri: tvbo:Noise