Package jdistlib
Class Wishart
java.lang.Object
jdistlib.Wishart
Wishart distribution on symmetric positive-definite matrices.
-
Method Summary
Modifier and TypeMethodDescriptionstatic doubledensity(double[][] x, double degreesOfFreedom, double[][] scale, boolean giveLog) Density ofW_dimension(scale, degreesOfFreedom).static doubledensityFromCholesky(double[][] x, double degreesOfFreedom, double[][] lowerCholesky, boolean giveLog) Density overload accepting the lower Cholesky factorLof scale.determinantCumulative(double upper, double degreesOfFreedom, double[][] scale) determinantCumulative(double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(determinant(W) <= upper).determinantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale) determinantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(lower <= determinant(W) <= upper).logDeterminantCumulative(double upper, double degreesOfFreedom, double[][] scale) logDeterminantCumulative(double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(log(det(W)) <= upper).logDeterminantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale) logDeterminantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(lower <= log(det(W)) <= upper)without exponentiating the caller's thresholds, so extreme determinant events remain representable.static doublequadraticFormCumulative(double upper, double[] direction, double degreesOfFreedom, double[][] scale, boolean lowerTail, boolean logProbability) CDF of the directional variance eventdirection' W direction <= upper.static double[][]random(double degreesOfFreedom, double[][] lowerCholesky, RandomEngine random) Generates one Wishart matrix using Bartlett's decomposition.static double[][][]random(int count, double degreesOfFreedom, double[][] lowerCholesky, RandomEngine random) Generatescountmatrices while retaining one caller-owned RNG.static double[][]randomFromScale(double degreesOfFreedom, double[][] scale, RandomEngine random) Convenience generator accepting the scale matrix rather than its factor.static double[][][]randomFromScale(int count, double degreesOfFreedom, double[][] scale, RandomEngine random) static doublestandardizedTraceCumulative(double upper, double degreesOfFreedom, double[][] scale, boolean lowerTail, boolean logProbability) CDF oftrace(scale^-1 W).
-
Method Details
-
density
public static double density(double[][] x, double degreesOfFreedom, double[][] scale, boolean giveLog) Density ofW_dimension(scale, degreesOfFreedom). The mean under this parameterization isdegreesOfFreedom * scale. -
densityFromCholesky
public static double densityFromCholesky(double[][] x, double degreesOfFreedom, double[][] lowerCholesky, boolean giveLog) Density overload accepting the lower Cholesky factorLof scale. -
random
public static double[][] random(double degreesOfFreedom, double[][] lowerCholesky, RandomEngine random) Generates one Wishart matrix using Bartlett's decomposition.lowerCholeskyis a lower-triangular L withscale = L L'. -
random
public static double[][][] random(int count, double degreesOfFreedom, double[][] lowerCholesky, RandomEngine random) Generatescountmatrices while retaining one caller-owned RNG. -
randomFromScale
public static double[][] randomFromScale(double degreesOfFreedom, double[][] scale, RandomEngine random) Convenience generator accepting the scale matrix rather than its factor. -
randomFromScale
public static double[][][] randomFromScale(int count, double degreesOfFreedom, double[][] scale, RandomEngine random) -
quadraticFormCumulative
public static double quadraticFormCumulative(double upper, double[] direction, double degreesOfFreedom, double[][] scale, boolean lowerTail, boolean logProbability) CDF of the directional variance eventdirection' W direction <= upper. ForW ~ Wishart(df, scale), the quadratic form divided bydirection' scale directionis exactly chi-square withdfdegrees of freedom. -
standardizedTraceCumulative
public static double standardizedTraceCumulative(double upper, double degreesOfFreedom, double[][] scale, boolean lowerTail, boolean logProbability) CDF oftrace(scale^-1 W). This standardized trace is exactly chi-square withdimension * degreesOfFreedomdegrees of freedom. -
determinantProbability
public static MultivariateProbabilityResult determinantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(lower <= determinant(W) <= upper). The numerical path conditions on Bartlett's independent chi-square determinant factors and reports randomized-integration error metadata. -
determinantProbability
public static MultivariateProbabilityResult determinantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale) -
determinantCumulative
public static MultivariateProbabilityResult determinantCumulative(double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(determinant(W) <= upper). -
determinantCumulative
public static MultivariateProbabilityResult determinantCumulative(double upper, double degreesOfFreedom, double[][] scale) -
logDeterminantProbability
public static MultivariateProbabilityResult logDeterminantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(lower <= log(det(W)) <= upper)without exponentiating the caller's thresholds, so extreme determinant events remain representable. -
logDeterminantProbability
public static MultivariateProbabilityResult logDeterminantProbability(double lower, double upper, double degreesOfFreedom, double[][] scale) -
logDeterminantCumulative
public static MultivariateProbabilityResult logDeterminantCumulative(double upper, double degreesOfFreedom, double[][] scale, MultivariateProbabilityOptions options, RandomEngine random) ComputesP(log(det(W)) <= upper). -
logDeterminantCumulative
public static MultivariateProbabilityResult logDeterminantCumulative(double upper, double degreesOfFreedom, double[][] scale)
-