Source code for canari.component.white_noise_component

from typing import Optional
import numpy as np
from canari.component.base_component import BaseComponent


[docs] class WhiteNoise(BaseComponent): """ `WhiteNoise` class, inheriting from Canari's `BaseComponent`. It is used to model zero-mean i.i.d. Gaussian errors. Args: std_error (Optional[float]): Standard deviation of the error. Default is 0.05. Examples: >>> from canari.component import WhiteNoise >>> white_noise = WhiteNoise(std_error=0.5) >>> white_noise.transition_matrix array([[0]]) >>> white_noise.process_noise_matrix array([[0.25]]) """ def __init__( self, std_error: Optional[float] = 0.05, ): self.std_error = std_error super().__init__()
[docs] def initialize_component_name(self): self._component_name = "white noise"
[docs] def initialize_num_states(self): self._num_states = 1
[docs] def initialize_states_name(self): self._states_name = ["white noise"]
[docs] def initialize_transition_matrix(self): self._transition_matrix = np.array([[0]])
[docs] def initialize_observation_matrix(self): self._observation_matrix = np.array([[1]])
[docs] def initialize_process_noise_matrix(self): self._process_noise_matrix = np.array([[self.std_error**2]])
[docs] def initialize_mu_states(self): self._mu_states = np.zeros((self._num_states, 1))
[docs] def initialize_var_states(self): self._var_states = np.zeros((self._num_states, 1))