pub struct PowerSaturation;Expand description
Power-law saturation: amplitude · (1 − (1 + rate·x/2)^(−2))
Parameters (in order): [amplitude, rate]
This is the Misra1b NIST StRD model. It describes a growth process
approaching a saturation level amplitude with a power-law rather than
exponential approach. For rate > 0 and x ≥ 0 the function rises
monotonically from 0 to amplitude.
Analytic Jacobian:
Let u = 1 + rate·x/2.
- ∂y/∂amplitude = 1 − u^(−2)
- ∂y/∂rate = amplitude · x · u^(−3)
Note: amplitude is the asymptotic saturation level, NOT a peak-at-center
value as in the peak-model convention documented in docs/reference/models/index.md.
Trait Implementations§
Source§impl Model for PowerSaturation
impl Model for PowerSaturation
Source§fn jacobian_into(&self, x: &[f64], p: &[f64], out: &mut [f64])
fn jacobian_into(&self, x: &[f64], p: &[f64], out: &mut [f64])
Fill a pre-allocated slice with Jacobian values (one entry per parameter). Read more
Source§fn jacobian(&self, x: &[f64], p: &[f64]) -> Vec<f64>
fn jacobian(&self, x: &[f64], p: &[f64]) -> Vec<f64>
Jacobian — one derivative per parameter, in the same order as
param_names(). Read moreSource§fn eval_slice_into(&self, xs: &[f64], params: &[f64], out: &mut [f64])
fn eval_slice_into(&self, xs: &[f64], params: &[f64], out: &mut [f64])
Batch evaluation of a 1-D model: fill
out[i] = eval([xs[i]], params). Read moreAuto Trait Implementations§
impl Freeze for PowerSaturation
impl RefUnwindSafe for PowerSaturation
impl Send for PowerSaturation
impl Sync for PowerSaturation
impl Unpin for PowerSaturation
impl UnsafeUnpin for PowerSaturation
impl UnwindSafe for PowerSaturation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more