types.protocols.StochasticSystemProtocol
types.protocols.StochasticSystemProtocol()System with stochastic dynamics (continuous or discrete).
This protocol can be combined with discrete or continuous protocols to indicate stochastic capabilities.
Implementations
- ContinuousStochasticSystem
- DiscreteStochasticSystem
Examples
>>> def estimate_noise_covariance(
... system: StochasticSystemProtocol,
... n_samples: int = 1000
... ) -> np.ndarray:
... '''Estimate noise covariance from simulation.'''
... if system.is_additive_noise():
... # Constant noise - compute once
... G = system.get_constant_noise()
... return G @ G.T
... else:
... # State-dependent - estimate via Monte Carlo
... # ...
... passAttributes
| Name | Description |
|---|---|
| is_stochastic | True for stochastic systems |
| nw | Number of noise sources |
Methods
| Name | Description |
|---|---|
| is_additive_noise | True if noise is state-independent |
| is_multiplicative_noise | True if noise depends on state |
is_additive_noise
types.protocols.StochasticSystemProtocol.is_additive_noise()True if noise is state-independent
is_multiplicative_noise
types.protocols.StochasticSystemProtocol.is_multiplicative_noise()True if noise depends on state