类 TriangularDistribution
java.lang.Object
org.hipparchus.distribution.continuous.AbstractRealDistribution
org.hipparchus.distribution.continuous.TriangularDistribution
- 所有已实现的接口:
-
Serializable
,RealDistribution
三角形实数分布的实现。
- 另请参阅:
-
字段概要
从类继承的字段 org.hipparchus.distribution.continuous.AbstractRealDistribution
DEFAULT_SOLVER_ABSOLUTE_ACCURACY
-
构造器概要
-
方法概要
修饰符和类型方法说明double
cumulativeProbability
(double x) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(X <= x)
。double
density
(double x) 返回在指定点x
处评估此分布的概率密度函数(PDF)。double
getMode()
返回此分布的众数c
。double
使用此方法获取此分布的均值的数值。double
使用此方法获取此分布的方差的数值。double
访问支持的下限。double
访问支持的上限。double
inverseCumulativeProbability
(double p) 计算此分布的分位函数。boolean
使用此方法获取有关支持是否连通的信息,即支持的下限和上限之间的所有值是否包含在支持中。从类继承的方法 org.hipparchus.distribution.continuous.AbstractRealDistribution
getSolverAbsoluteAccuracy, logDensity, probability
-
构造器详细资料
-
TriangularDistribution
使用给定的下限、上限和众数创建三角形实数分布。- 参数:
-
a
- 此分布的下限(包含)。 -
c
- 此分布的众数。 -
b
- 此分布的上限(包含)。 - 抛出:
-
MathIllegalArgumentException
- 如果a >= b
或c > b
。 -
MathIllegalArgumentException
- 如果c < a
。
-
-
方法详细资料
-
getMode
public double getMode()返回此分布的众数c
。- 返回:
-
此分布的众数
c
。
-
density
public double density(double x) 返回在指定点x
处评估此分布的概率密度函数(PDF)。一般来说,PDF 是CDF
的导数。如果在x
处导数不存在,则应返回适当的替代值,例如Double.POSITIVE_INFINITY
、Double.NaN
,或者差商的下限或上限。对于下限a
、上限b
和众数c
,PDF 由以下给出:- 如果
a <= x < c
,则为2 * (x - a) / [(b - a) * (c - a)]
, - 如果
x = c
,则为2 / (b - a)
, - 如果
c < x <= b
,则为2 * (b - x) / [(b - a) * (b - c)]
, - 否则为
0
。
- 参数:
-
x
- 要评估 PDF 的点。 - 返回:
-
点
x
处概率密度函数的值。
- 如果
-
cumulativeProbability
public double cumulativeProbability(double x) 对于随机变量X
,其值根据此分布进行分布,此方法返回P(X <= x)
。换句话说,此方法表示此分布的(累积)分布函数(CDF)。对于下限a
、上限b
和众数c
,CDF 由以下给出:- 如果
x < a
,则为0
, - 如果
a <= x < c
,则为(x - a)^2 / [(b - a) * (c - a)]
, - 如果
x = c
,则为(c - a) / (b - a)
, - 如果
c < x <= b
,则为1 - (b - x)^2 / [(b - a) * (b - c)]
, - 如果
x > b
,则为1
。
- 参数:
-
x
- 要评估 CDF 的点。 - 返回:
-
随机变量具有此分布的取值小于或等于
x
的概率。
- 如果
-
getNumericalMean
public double getNumericalMean()使用此方法获取此分布的均值的数值。对于下限a
、上限b
和众数c
,均值为(a + b + c) / 3
。- 返回:
-
均值或如果未定义则为
Double.NaN
。
-
getNumericalVariance
public double getNumericalVariance()使用此方法获取此分布的方差的数值。对于下限a
、上限b
和众数c
,方差为(a^2 + b^2 + c^2 - a * b - a * c - b * c) / 18
。- 返回:
-
方差(对于
TDistribution
中的某些情况可能为Double.POSITIVE_INFINITY
)或如果未定义则为Double.NaN
。
-
getSupportLowerBound
public double getSupportLowerBound()访问支持的下限。此方法必须返回与inverseCumulativeProbability(0)
相同的值。换句话说,此方法必须返回
支持的下限等于分布的下限参数inf {x in R | P(X <= x) > 0}
。a
。- 返回:
- 支持的下限。
-
getSupportUpperBound
public double getSupportUpperBound()访问支持的上限。此方法必须返回与inverseCumulativeProbability(1)
相同的值。换句话说,此方法必须返回
支持的上限等于分布的上限参数inf {x in R | P(X <= x) = 1}
。b
。- 返回:
- 支持的上限。
-
isSupportConnected
public boolean isSupportConnected()使用此方法获取有关支持是否连通的信息,即支持的下限和上限之间的所有值是否包含在支持中。此分布的支持是连通的。- 返回:
-
true
-
inverseCumulativeProbability
计算此分布的分位函数。对于随机变量X
根据此分布分布,返回的值为inf{x in R | P(X<=x) >= p}
,对于0 < p <= 1
,inf{x in R | P(X<=x) > 0}
,对于p = 0
。
RealDistribution.getSupportLowerBound()
,对于p = 0
,RealDistribution.getSupportUpperBound()
,对于p = 1
。
- 指定者:
-
inverseCumulativeProbability
在接口中RealDistribution
- 覆盖:
-
inverseCumulativeProbability
在类中AbstractRealDistribution
- 参数:
-
p
- 累积概率 - 返回:
-
此分布的最小
p
分位数(p = 0
时为最大的 0 分位数) - 抛出:
-
MathIllegalArgumentException
- 如果p < 0
或p > 1
-