public class BetaSymmetricalDist extends BetaDist
BetaDist to the case of a symmetrical
beta distribution over the interval [0, 1],
with shape parameters
α = β.
A faster inversion method is implemented here for this special case.
Because of the symmetry around 1/2, four series are used to compute the
cdf, two around x = 0 and two around x = 1/2.
Given u, one then solves each series for x by using the
Newton-Raphson method which shows quadratic convergence when the
starting iterate is close enough to the solution x.decPrec| Constructor and Description |
|---|
BetaSymmetricalDist(double alpha)
Constructs a BetaSymmetricalDist object with parameters
α = β = alpha, over the unit interval (0, 1).
|
BetaSymmetricalDist(double alpha,
int d)
Same as BetaSymmetricalDist (alpha), but using approximations of
roughly d decimal digits of precision when computing the
distribution, complementary distribution, and inverse functions.
|
| Modifier and Type | Method and Description |
|---|---|
static double |
barF(double alpha,
int d,
double x)
Equivalent to 1 - cdf(alpha, d, x).
|
double |
cdf(double x)
Returns the distribution function F(x).
|
static double |
cdf(double alpha,
int d,
double x)
Same as
cdf (alpha, alpha, d, x). |
static double |
density(double alpha,
double x)
Returns the density evaluated at x.
|
static BetaSymmetricalDist |
getInstanceFromMLE(double[] x,
int n)
Creates a new instance of a symmetrical beta distribution with parameter α
estimated using the maximum likelihood method based on the n observations
x[i],
i = 0, 1,…, n - 1.
|
static double[] |
getMaximumLikelihoodEstimate(double[] x,
int n)
Deprecated.
|
double |
getMean()
Returns the mean.
|
static double |
getMean(double alpha)
Computes and returns the mean
E[X] = 1/2 of the symmetrical beta
distribution with parameter α.
|
static double[] |
getMLE(double[] x,
int n)
Estimates the parameter α of the symmetrical beta distribution
over the interval [0, 1] using the maximum likelihood method, from the
n observations x[i],
i = 0, 1,…, n - 1.
|
double[] |
getParams()
Return a table containing the parameter of the current distribution.
|
double |
getStandardDeviation()
Returns the standard deviation.
|
static double |
getStandardDeviation(double alpha)
Computes and returns the standard deviation of the
symmetrical beta distribution with parameter α.
|
double |
getVariance()
Returns the variance.
|
static double |
getVariance(double alpha)
Computes and returns the variance,
Var[X] = 1/(8α + 4),
of the symmetrical beta distribution with parameter α.
|
double |
inverseF(double u)
Returns the inverse distribution function
x = F-1(u).
|
static double |
inverseF(double alpha,
double u)
Returns the inverse distribution function evaluated at u, for the
symmetrical beta distribution over the interval [0, 1], with shape
parameters
0 < α = β = alpha.
|
void |
setParams(double alpha,
double beta,
double a,
double b,
int d) |
java.lang.String |
toString() |
barF, barF, cdf, cdf, density, density, density, getA, getAlpha, getB, getBeta, getMean, getMean, getStandardDeviation, getStandardDeviation, getVariance, getVariance, inverseF, inverseFbarF, getXinf, getXsup, inverseBisection, inverseBrent, setXinf, setXsuppublic BetaSymmetricalDist(double alpha)
public BetaSymmetricalDist(double alpha,
int d)
public double cdf(double x)
Distributioncdf in interface Distributioncdf in class BetaDistx - value at which the distribution function is evaluatedpublic double inverseF(double u)
ContinuousDistributioninverseF in interface DistributioninverseF in class BetaDistu - value at which the inverse distribution function is evaluatedpublic static double density(double alpha,
double x)
public static double cdf(double alpha,
int d,
double x)
cdf (alpha, alpha, d, x).public static double barF(double alpha,
int d,
double x)
public static double inverseF(double alpha,
double u)
public double getMean()
ContinuousDistributiongetMean in interface DistributiongetMean in class BetaDistpublic double getVariance()
ContinuousDistributiongetVariance in interface DistributiongetVariance in class BetaDistpublic double getStandardDeviation()
ContinuousDistributiongetStandardDeviation in interface DistributiongetStandardDeviation in class BetaDistpublic static double[] getMLE(double[] x,
int n)
x - the list of observations to use to evaluate parametersn - the number of observations to use to evaluate parameters@Deprecated
public static double[] getMaximumLikelihoodEstimate(double[] x,
int n)
getMLE.public static BetaSymmetricalDist getInstanceFromMLE(double[] x, int n)
x - the list of observations to use to evaluate parametersn - the number of observations to use to evaluate parameterspublic static double getMean(double alpha)
public static double getVariance(double alpha)
public static double getStandardDeviation(double alpha)
public void setParams(double alpha,
double beta,
double a,
double b,
int d)
public double[] getParams()
getParams in interface DistributiongetParams in class BetaDistTo submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.