Class R1ShapeScaleComposite

java.lang.Object
org.drip.measure.gamma.R1ShapeScaleComposite

public class R1ShapeScaleComposite
extends java.lang.Object
R1ShapeScaleComposite implements the Scale-Scale Composite Measures. The References are:

  • Devroye, L. (1986): Non-Uniform Random Variate Generation Springer-Verlag New York
  • Gamma Distribution (2019): Gamma Distribution https://en.wikipedia.org/wiki/Chi-squared_distribution
  • Louzada, F., P. L. Ramos, and E. Ramos (2019): A Note on Bias of Closed-Form Estimators for the Gamma Distribution Derived From Likelihood Equations The American Statistician 73 (2) 195-199
  • Minka, T. (2002): Estimating a Gamma distribution https://tminka.github.io/papers/minka-gamma.pdf
  • Ye, Z. S., and N. Chen (2017): Closed-Form Estimators for the Gamma Distribution Derived from Likelihood Equations The American Statistician 71 (2) 177-181


Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • R1ShapeScaleComposite

      public R1ShapeScaleComposite()
  • Method Details

    • RandomF

      public static final double RandomF​(R1ShapeScaleDiscrete gammaDistribution1, R1ShapeScaleDiscrete gammaDistribution2) throws java.lang.Exception
      Generate a Random Number that follows the F Distribution
      Parameters:
      gammaDistribution1 - Gamma Distribution #1
      gammaDistribution2 - Gamma Distribution #2
      Returns:
      Random Number that follows the F Distribution
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • RandomBetaPrime

      public static final double RandomBetaPrime​(R1ShapeScaleDiscrete gammaDistribution1, R1ShapeScaleDiscrete gammaDistribution2) throws java.lang.Exception
      Generate a Random Number that follows the Beta Prime Distribution
      Parameters:
      gammaDistribution1 - Gamma Distribution #1
      gammaDistribution2 - Gamma Distribution #2
      Returns:
      Random Number that follows the Beta Prime Distribution
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • RandomBeta

      public static final double RandomBeta​(R1ShapeScaleDiscrete gammaDistribution1, R1ShapeScaleDiscrete gammaDistribution2) throws java.lang.Exception
      Generate a Random Number that follows the Beta Distribution
      Parameters:
      gammaDistribution1 - Gamma Distribution #1
      gammaDistribution2 - Gamma Distribution #2
      Returns:
      Random Number that follows the Beta Distribution
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • RandomDirichletVector

      public static final double[] RandomDirichletVector​(R1ShapeScaleDiscrete[] gammaDistributionArray)
      Generate a Random Vector that follows the Dirichlet Distribution
      Parameters:
      gammaDistributionArray - Gamma Distribution Array
      Returns:
      Random Vector that follows the Dirichlet Distribution
    • KullbackLieblerDivergence

      public static final double KullbackLieblerDivergence​(R1ShapeScaleDistribution gammaDistribution1, R1ShapeScaleDistribution gammaDistribution2) throws java.lang.Exception
      Compute the Kullback-Liebler Divergence for the Gamma Distribution Pair
      Parameters:
      gammaDistribution1 - Gamma Distribution #1
      gammaDistribution2 - Gamma Distribution #2
      Returns:
      The Kullback-Liebler Divergence for the Gamma Distribution Pair
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid