generalizedInverseGaussianFixedLambdaEstimate

Estimates parameters of the generalized inverse Gaussian distribution for fixed lambda.

  1. Tuple!(T, "chi", T, "psi") generalizedInverseGaussianFixedLambdaEstimate(T lambda, T[] sample)
  2. Tuple!(T, "chi", T, "psi") generalizedInverseGaussianFixedLambdaEstimate(T lambda, T[] sample, T[] weights)
  3. Tuple!(T, "chi", T, "psi") generalizedInverseGaussianFixedLambdaEstimate(T lambda, GeneralizedInverseGaussinFixedLambdaStatistic!T stat)
    Tuple!(T, "chi", T, "psi")
    generalizedInverseGaussianFixedLambdaEstimate
    (
    T
    )
    if (
    isFloatingPoint!T
    )

Examples

import std.range;
import std.random;
import atmosphere.random;
import atmosphere.likelihood;
import atmosphere.params;
auto length = 1000;
auto lambda = -2.0, chi = 1.4, psi = 2.3;
auto rng = Random(1234);
auto sample = new GeneralizedInverseGaussianRNG!double(rng, lambda, chi, psi).take(length).array;
auto params = generalizedInverseGaussianFixedLambdaEstimate!double(lambda, sample);
auto p0 = GIGChiPsi!double(chi, psi);
auto p1 = GIGChiPsi!double(params.chi, params.psi);
auto lh0 = properGeneralizedInverseGaussianLikelihood(lambda, p0.chi, p0.psi, sample);
auto lh1 = properGeneralizedInverseGaussianLikelihood(lambda, p1.chi, p1.psi, sample);
assert(lh0 <= lh1);
import std.range;
import std.random;
import atmosphere.random;
import atmosphere.likelihood;
import atmosphere.params;
auto length = 1000;
auto lambda = -2.0, chi = 1.4, psi = 2.3;
auto rng = Random(1234);
auto sample = new GeneralizedInverseGaussianRNG!double(rng, lambda, chi, psi).take(length).array;
auto weights = iota(1.0, length + 1.0).array;
auto params = generalizedInverseGaussianFixedLambdaEstimate!double(lambda, sample, weights);
auto p0 = GIGChiPsi!double(chi, psi);
auto p1 = GIGChiPsi!double(params.chi, params.psi);
auto lh0 = properGeneralizedInverseGaussianLikelihood(lambda, p0.chi, p0.psi, sample, weights);
auto lh1 = properGeneralizedInverseGaussianLikelihood(lambda, p1.chi, p1.psi, sample, weights);
assert(lh0 <= lh1);

See Also

atmosphere.params

Meta