Vulcan
Aerospace Engineering Utilities Built on Janus
Loading...
Searching...
No Matches
vulcan::bias_instability Namespace Reference

Classes

struct  State
 Bias instability state. More...
struct  Coeffs
 Discretized bias instability coefficients. More...

Functions

template<typename Scalar>
State< Scalar > init_state ()
 Initialize state to zero bias.
template<typename Scalar>
State< Scalar > init_state (const Scalar &initial_bias)
 Initialize state with given initial bias.
Coeffs compute_coeffs (double sigma_b, double tau, double dt)
 Compute bias instability coefficients.
template<typename Scalar>
Scalar step (State< Scalar > &state, const Coeffs &coeffs, const Scalar &noise_input)
 Step the bias instability process.
template<typename Scalar>
Scalar step (State< Scalar > &state, double sigma_b, double tau, double dt, const Scalar &noise_input)
 Step with inline coefficient computation.
double steady_state_variance (double sigma_b)
 Steady-state variance of bias instability.
double time_to_fraction (double tau, double fraction)
 Time to reach fraction of steady-state variance.

Function Documentation

◆ compute_coeffs()

Coeffs vulcan::bias_instability::compute_coeffs ( double sigma_b,
double tau,
double dt )
inline

Compute bias instability coefficients.

Parameters
sigma_bBias instability magnitude (1σ) [units]
tauCorrelation time [s] (typically 100-3600s)
dtTime step [s]
Returns
Discretized coefficients

◆ init_state() [1/2]

template<typename Scalar>
State< Scalar > vulcan::bias_instability::init_state ( )

Initialize state to zero bias.

Template Parameters
Scalardouble or casadi::MX
Returns
State initialized to zero

◆ init_state() [2/2]

template<typename Scalar>
State< Scalar > vulcan::bias_instability::init_state ( const Scalar & initial_bias)

Initialize state with given initial bias.

Template Parameters
Scalardouble or casadi::MX
Parameters
initial_biasInitial bias value
Returns
State initialized to given bias

◆ steady_state_variance()

double vulcan::bias_instability::steady_state_variance ( double sigma_b)
inline

Steady-state variance of bias instability.

At steady state: Var(bias) = σ_b²

Parameters
sigma_bBias instability magnitude
Returns
Steady-state variance

◆ step() [1/2]

template<typename Scalar>
Scalar vulcan::bias_instability::step ( State< Scalar > & state,
const Coeffs & coeffs,
const Scalar & noise_input )

Step the bias instability process.

Updates bias: bias[k+1] = a·bias[k] + b·w[k]

Template Parameters
Scalardouble or casadi::MX
Parameters
stateCurrent state (updated in-place)
coeffsPre-computed coefficients
noise_inputWhite noise sample with unit variance
Returns
Current bias value after update

◆ step() [2/2]

template<typename Scalar>
Scalar vulcan::bias_instability::step ( State< Scalar > & state,
double sigma_b,
double tau,
double dt,
const Scalar & noise_input )

Step with inline coefficient computation.

Convenience function for simpler usage.

Template Parameters
Scalardouble or casadi::MX
Parameters
stateCurrent state (updated in-place)
sigma_bBias instability magnitude [units]
tauCorrelation time [s]
dtTime step [s]
noise_inputWhite noise sample with unit variance
Returns
Current bias value after update

◆ time_to_fraction()

double vulcan::bias_instability::time_to_fraction ( double tau,
double fraction )
inline

Time to reach fraction of steady-state variance.

Time for variance to reach (1 - exp(-2t/τ)) of steady-state: t = -τ/2 · ln(1 - fraction)

Parameters
tauCorrelation time [s]
fractionFraction of steady-state (e.g., 0.632 for 1-time constant)
Returns
Time [s]