pub struct VarianceJet {
pub v: f64,
pub v1: f64,
pub v2: f64,
pub v3: f64,
pub v4: f64,
}Fields§
§v: f64§v1: f64§v2: f64§v3: f64§v4: f64Implementations§
Source§impl VarianceJet
impl VarianceJet
Sourcepub fn bernoulli_with_complement(mu: f64, one_minus_mu: f64) -> Self
pub fn bernoulli_with_complement(mu: f64, one_minus_mu: f64) -> Self
Bernoulli variance jet from the (μ, 1−μ) PAIR (#2273).
1.0 - mu is a hard zero once mu rounds to exactly 1.0, which a
bounded inverse link reaches far inside its tail — cloglog at η ≈ 3.62,
probit at η ≈ 8.29 — while the true complement is still a perfectly
representable ~1e-18. V = μ(1−μ) then collapses to 0 and every
observed-information quantity divides by it, so a row whose Fisher weight
is a healthy 1e-14 is refused as unrepresentable instead of evaluated.
crate::mixture_link::inverse_link_complement_for_inverse_link recovers
the complement from η without cancellation; this constructor is how it
reaches the variance.
Only v changes: v1 = 1 − 2μ needs no complement (it is −1 to full
precision wherever μ has saturated, from either expression), and
rewriting it would move existing well-conditioned fits by an ulp for no
accuracy gained.
Sourcepub fn negative_binomial(mu: f64, theta: f64) -> Self
pub fn negative_binomial(mu: f64, theta: f64) -> Self
Negative-binomial variance V(μ) = μ + μ² / theta.
Sourcepub fn binomial_n(mu: f64, one_minus_mu: f64) -> Self
pub fn binomial_n(mu: f64, one_minus_mu: f64) -> Self
Binomial(n, p) variance V(p) = p(1−p), identical to Bernoulli.
The trial count n enters as a prior-weight multiplier, not through
the variance function itself.
Auto Trait Implementations§
impl Freeze for VarianceJet
impl RefUnwindSafe for VarianceJet
impl Send for VarianceJet
impl Sync for VarianceJet
impl Unpin for VarianceJet
impl UnsafeUnpin for VarianceJet
impl UnwindSafe for VarianceJet
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.