public class BernsteinExponentialApproximation extends AnotherAbstractRealDistribution
Horváth, András, Lorenzo Ridi, and Enrico Vicario. "Approximating distributions and transient probabilities of Markov chains by Bernstein expolynomial functions." Proc. of International Conference on the Numerical Solution of Markov Chains. Williamsburg, VA, USA, September 15-18, Williamsburg, VA, USA: College of William & Mary. 2010.
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_C |
static int |
DEFAULT_N |
cachedMean, cachedVariance
Constructor and Description |
---|
BernsteinExponentialApproximation(double[] nPoints,
java.lang.Double lowerBound,
java.lang.Double upperBound,
double c)
Constructs a Bernstein Exponential with a given number of sampling points
|
BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d,
java.lang.Double lowerBound,
java.lang.Double upperBound) |
BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d,
java.lang.Double lowerBound,
java.lang.Double upperBound,
int n) |
BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d,
java.lang.Double lowerBound,
java.lang.Double upperBound,
int n,
double c) |
BernsteinExponentialApproximation(org.apache.commons.math3.analysis.UnivariateFunction f,
java.lang.Double lowerBound,
java.lang.Double upperBound,
int n,
double c) |
Modifier and Type | Method and Description |
---|---|
double |
density(double x) |
double[] |
getNPoints() |
java.util.List<java.lang.Double> |
getParameters() |
java.lang.Double |
getSamplingConstantC() |
double |
getSupportLowerBound() |
double |
getSupportUpperBound() |
boolean |
isSupportConnected() |
boolean |
isSupportLowerBoundInclusive() |
boolean |
isSupportUpperBoundInclusive() |
cumulativeProbability, getNumericalMean, getNumericalVariance, value
public static final int DEFAULT_N
public static final double DEFAULT_C
public BernsteinExponentialApproximation(double[] nPoints, java.lang.Double lowerBound, java.lang.Double upperBound, double c)
nPoints
- sampling points of the distributionpublic BernsteinExponentialApproximation(org.apache.commons.math3.analysis.UnivariateFunction f, java.lang.Double lowerBound, java.lang.Double upperBound, int n, double c)
f
- the original function to approximate (usually a RealDistribution
lowerBound
- the lower bound "a" parameter in the cited work (must be greater or equal 0)upperBound
- the upper bound "b" parameter in the cited work (can be infinite, must be greater than the lower bound)n
- the number of sampling points (granularity of the approximation)c
- the scaling factor for the sampling pointspublic BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d, java.lang.Double lowerBound, java.lang.Double upperBound)
public BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d, java.lang.Double lowerBound, java.lang.Double upperBound, int n)
public BernsteinExponentialApproximation(org.apache.commons.math3.distribution.RealDistribution d, java.lang.Double lowerBound, java.lang.Double upperBound, int n, double c)
public double density(double x)
public double getSupportLowerBound()
public double getSupportUpperBound()
public boolean isSupportLowerBoundInclusive()
public boolean isSupportUpperBoundInclusive()
public boolean isSupportConnected()
public java.lang.Double getSamplingConstantC()
public double[] getNPoints()
public java.util.List<java.lang.Double> getParameters()