Package org.drip.measure.exponential
Class R1RateDistribution
java.lang.Object
org.drip.measure.continuous.R1Distribution
org.drip.measure.exponential.R1RateDistribution
- Direct Known Subclasses:
RealizedMinimaR1RateDistribution
public class R1RateDistribution extends R1Distribution
R1RateDistribution implements the Rate Parameterization of the R1 Exponential
Distribution. The References are:
- Devroye, L. (1986): Non-Uniform Random Variate Generation Springer-Verlag New York
- Exponential Distribution (2019): Exponential Distribution https://en.wikipedia.org/wiki/Exponential_distribution
- Norton, M., V. Khokhlov, and S. Uryasev (2019): Calculating CVaR and bPOE for Common Probability Distributions with Application to Portfolio Optimization and Density Estimation Annals of Operations Research 299 (1-2) 1281-1315
- Ross, S. M. (2009): Introduction to Probability and Statistics for Engineers and Scientists 4th Edition Associated Press New York, NY
- Schmidt, D. F., and D. Makalic (2009): Universal Models for the Exponential Distribution IEEE Transactions on Information Theory 55 (7) 3087-3090
- Construct a Standard Scale Parameterized Instance of R1 Exponential Distribution
- R1RateDistribution Constructor
- Retrieve the Lambda
- Retrieve the Rate Parameter
- Retrieve the Scale Parameter
- Lay out the Support of the PDF Range
- Compute the Density under the Distribution at the given Variate
- Compute the cumulative under the distribution to the given value
- Retrieve the Mean of the Distribution
- Retrieve the Median of the Distribution
- Retrieve the Mode of the Distribution
- Retrieve the Quantile Variate of the Distribution
- Retrieve the Variance of the Distribution
- Retrieve the Skewness of the Distribution
- Retrieve the Excess Kurtosis of the Distribution
- Construct the Moment Generating Function
- Retrieve the Fisher Information of the Distribution
- Compute the Kullback-Leibler Divergence against the other R1 Distribution
- Retrieve the Quantile CVaR (Conditional Value-at-Risk) of the Distribution
- Retrieve the Buffered Probability of Existence
- Retrieve the nth Non-central Moment
- Retrieve the nth Central Moment
- Retrieve the Inter-quantile Range (IQR) of the Distribution
| Module | Computational Core Module |
| Library | Numerical Analysis Library |
| Project | Rd Continuous/Discrete Probability Measures |
| Package | R1 and Rd Continuous Random Measure |
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description R1RateDistribution(double lambda)R1RateDistribution Constructor -
Method Summary
Modifier and Type Method Description doublebPOE(double x)Retrieve the Buffered Probability of ExistencedoublecentralMoment(int n)Retrieve the nth Central Momentdoublecumulative(double t)Compute the cumulative under the distribution to the given valuedoublecvar(double p)Retrieve the Quantile CVaR (Conditional Value-at-Risk) of the Distributiondoubledensity(double t)Compute the Density under the Distribution at the given VariatedoubleexcessKurtosis()Retrieve the Excess Kurtosis of the DistributiondoublefisherInformation()Retrieve the Fisher Information of the Distributiondoubleiqr()Retrieve the Inter-quantile Range (IQR) of the DistributiondoublekullbackLeiblerDivergence(R1Distribution r1UnivariateOther)Compute the Kullback-Leibler Divergence against the other R1 Distributiondoublelambda()Retrieve the Lambdadoublemean()Retrieve the Mean of the Distributiondoublemedian()Retrieve the Median of the Distributiondoublemode()Retrieve the Mode of the DistributionR1ToR1momentGeneratingFunction()Construct the Moment Generating FunctiondoublenonCentralMoment(int n)Retrieve the nth Non-central Momentdoublequantile(double p)Retrieve the Quantile Variate of the Distributiondoublerate()Retrieve the Rate Parameterdoublescale()Retrieve the Scale Parameterstatic R1RateDistributionScaleStandard(double beta)Construct a Standard Scale Parameterized Instance of R1 Exponential Distributiondoubleskewness()Retrieve the Skewness of the Distributiondouble[]support()Lay out the Support of the PDF Rangedoublevariance()Retrieve the Variance of the DistributionMethods inherited from class org.drip.measure.continuous.R1Distribution
differentialEntropy, expectedShortfall, histogram, incremental, invCumulative, populationCentralMeasures, probabilityGeneratingFunction, random, randomArray, supported, tukeyAnomaly, tukeyCriterionMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
R1RateDistribution
public R1RateDistribution(double lambda) throws java.lang.ExceptionR1RateDistribution Constructor- Parameters:
lambda- Rate Parameter- Throws:
java.lang.Exception- Thrown if lambda is invalid
-
-
Method Details
-
ScaleStandard
Construct a Standard Scale Parameterized Instance of R1 Exponential Distribution- Parameters:
beta- The Scale Parameter Beta- Returns:
- Scale Parameterized Instance of R1 Exponential Distribution
-
lambda
public double lambda()Retrieve the Lambda- Returns:
- Lambda
-
rate
public double rate()Retrieve the Rate Parameter- Returns:
- Rate Parameter
-
scale
public double scale()Retrieve the Scale Parameter- Returns:
- Scale Parameter
-
support
public double[] support()Lay out the Support of the PDF Range- Specified by:
supportin classR1Distribution- Returns:
- Support of the PDF Range
-
density
public double density(double t) throws java.lang.ExceptionCompute the Density under the Distribution at the given Variate- Specified by:
densityin classR1Distribution- Parameters:
t- Variate at which the Density needs to be computed- Returns:
- The Density
- Throws:
java.lang.Exception- Thrown if the input is invalid
-
cumulative
public double cumulative(double t) throws java.lang.ExceptionCompute the cumulative under the distribution to the given value- Specified by:
cumulativein classR1Distribution- Parameters:
t- Variate to which the cumulative is to be computed- Returns:
- The cumulative
- Throws:
java.lang.Exception- Thrown if the inputs are invalid
-
mean
public double mean() throws java.lang.ExceptionRetrieve the Mean of the Distribution- Specified by:
meanin classR1Distribution- Returns:
- The Mean of the Distribution
- Throws:
java.lang.Exception- Thrown if the Mean cannot be estimated
-
median
public double median() throws java.lang.ExceptionRetrieve the Median of the Distribution- Overrides:
medianin classR1Distribution- Returns:
- The Median of the Distribution
- Throws:
java.lang.Exception- Thrown if the Median cannot be estimated
-
mode
public double mode() throws java.lang.ExceptionRetrieve the Mode of the Distribution- Overrides:
modein classR1Distribution- Returns:
- The Mode of the Distribution
- Throws:
java.lang.Exception- Thrown if the Mode cannot be estimated
-
quantile
public double quantile(double p) throws java.lang.ExceptionRetrieve the Quantile Variate of the Distribution- Overrides:
quantilein classR1Distribution- Parameters:
p- The Quantile Fraction- Returns:
- The Quantile Variate of the Distribution
- Throws:
java.lang.Exception- Thrown if the Quantile Variate cannot be estimated
-
variance
public double variance() throws java.lang.ExceptionRetrieve the Variance of the Distribution- Specified by:
variancein classR1Distribution- Returns:
- The Variance of the Distribution
- Throws:
java.lang.Exception- Thrown if the Variance cannot be estimated
-
skewness
public double skewness() throws java.lang.ExceptionRetrieve the Skewness of the Distribution- Overrides:
skewnessin classR1Distribution- Returns:
- The Skewness of the Distribution
- Throws:
java.lang.Exception- Thrown if the Skewness cannot be estimated
-
excessKurtosis
public double excessKurtosis() throws java.lang.ExceptionRetrieve the Excess Kurtosis of the Distribution- Overrides:
excessKurtosisin classR1Distribution- Returns:
- The Excess Kurtosis of the Distribution
- Throws:
java.lang.Exception- Thrown if the Excess Kurtosis cannot be estimated
-
momentGeneratingFunction
Construct the Moment Generating Function- Overrides:
momentGeneratingFunctionin classR1Distribution- Returns:
- The Moment Generating Function
-
fisherInformation
public double fisherInformation() throws java.lang.ExceptionRetrieve the Fisher Information of the Distribution- Overrides:
fisherInformationin classR1Distribution- Returns:
- The Fisher Information of the Distribution
- Throws:
java.lang.Exception- Thrown if the Fisher Information cannot be estimated
-
kullbackLeiblerDivergence
public double kullbackLeiblerDivergence(R1Distribution r1UnivariateOther) throws java.lang.ExceptionCompute the Kullback-Leibler Divergence against the other R1 Distribution- Overrides:
kullbackLeiblerDivergencein classR1Distribution- Parameters:
r1UnivariateOther- Other R1 Distribution- Returns:
- Kullback-Leibler Divergence against the other R1 Distribution
- Throws:
java.lang.Exception- Thrown if the Kullback-Leibler Divergence cannot be estimated
-
cvar
public double cvar(double p) throws java.lang.ExceptionRetrieve the Quantile CVaR (Conditional Value-at-Risk) of the Distribution- Overrides:
cvarin classR1Distribution- Parameters:
p- The Quantile- Returns:
- The Quantile CVaR of the Distribution
- Throws:
java.lang.Exception- Thrown if the Quantile CVaR cannot be estimated
-
bPOE
public double bPOE(double x) throws java.lang.ExceptionRetrieve the Buffered Probability of Existence- Overrides:
bPOEin classR1Distribution- Parameters:
x- The Variate- Returns:
- The Buffered Probability of Existence
- Throws:
java.lang.Exception- Thrown if the Buffered Probability of Existence cannot be estimated
-
nonCentralMoment
public double nonCentralMoment(int n) throws java.lang.ExceptionRetrieve the nth Non-central Moment- Overrides:
nonCentralMomentin classR1Distribution- Parameters:
n- Moment Number- Returns:
- The nth Non-central Moment
- Throws:
java.lang.Exception- Thrown if the nth Non-central Moment cannot be estimated
-
centralMoment
public double centralMoment(int n) throws java.lang.ExceptionRetrieve the nth Central Moment- Overrides:
centralMomentin classR1Distribution- Parameters:
n- Moment Number- Returns:
- The nth Central Moment
- Throws:
java.lang.Exception- Thrown if the nth Central Moment cannot be estimated
-
iqr
public double iqr() throws java.lang.ExceptionRetrieve the Inter-quantile Range (IQR) of the Distribution- Overrides:
iqrin classR1Distribution- Returns:
- The Inter-quantile Range of the Distribution
- Throws:
java.lang.Exception- Thrown if the Inter-quantile Range cannot be estimated
-