Resolve "Bug: Cannot implement own distributions" #14
@ -12,5 +12,6 @@ public sealed class BetaA2B2<TNum> : Distribution<TNum> where TNum : IFloatingPo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
||||||
}
|
}
|
@ -12,5 +12,6 @@ public sealed class BetaA2B5<TNum> : Distribution<TNum> where TNum : IFloatingPo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
||||||
}
|
}
|
@ -12,5 +12,6 @@ public sealed class BetaA5B2<TNum> : Distribution<TNum> where TNum : IFloatingPo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow(x, ALPHA - TNum.One) * TNum.Pow(TNum.One - x, BETA - TNum.One);
|
||||||
}
|
}
|
@ -13,5 +13,6 @@ public sealed class CauchyLorentzX0<TNum> : Distribution<TNum> where TNum : IFlo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ( TNum.One / (TNum.Pi * SCALE)) * ((SCALE * SCALE) / (TNum.Pow(x - MEDIAN, TWO) + (SCALE * SCALE)));
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ( TNum.One / (TNum.Pi * SCALE)) * ((SCALE * SCALE) / (TNum.Pow(x - MEDIAN, TWO) + (SCALE * SCALE)));
|
||||||
}
|
}
|
@ -13,5 +13,6 @@ public sealed class CauchyLorentzX1<TNum> : Distribution<TNum> where TNum : IFlo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * (TNum.One / (TNum.Pi * SCALE)) * ((SCALE * SCALE) / (TNum.Pow(x - MEDIAN, TWO) + (SCALE * SCALE)));
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * (TNum.One / (TNum.Pi * SCALE)) * ((SCALE * SCALE) / (TNum.Pow(x - MEDIAN, TWO) + (SCALE * SCALE)));
|
||||||
}
|
}
|
@ -24,5 +24,6 @@ public sealed class ChiSquareK1<TNum> : Distribution<TNum> where TNum : IFloatin
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
||||||
}
|
}
|
@ -24,5 +24,6 @@ public sealed class ChiSquareK10<TNum> : Distribution<TNum> where TNum : IFloati
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
||||||
}
|
}
|
@ -24,5 +24,6 @@ public sealed class ChiSquareK4<TNum> : Distribution<TNum> where TNum : IFloatin
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ((TNum.Pow(x, K_HALF_MINUS_ONE) * TNum.Exp(-x * HALF)) / DIVISOR);
|
||||||
}
|
}
|
@ -11,5 +11,6 @@ public sealed class ExponentialLa10<TNum> : Distribution<TNum> where TNum : IFlo
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(-LAMBDA * x);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(-LAMBDA * x);
|
||||||
}
|
}
|
@ -11,5 +11,6 @@ public sealed class ExponentialLa5<TNum> : Distribution<TNum> where TNum : IFloa
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(-LAMBDA * x);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(-LAMBDA * x);
|
||||||
}
|
}
|
@ -21,5 +21,6 @@ public sealed class GammaA5B15<TNum> : Distribution<TNum> where TNum : IFloating
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ((BETA_TO_THE_ALPHA * TNum.Pow(x, ALPHA - TNum.One) * TNum.Exp(-BETA * x)) / GAMMA_ALPHA);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ((BETA_TO_THE_ALPHA * TNum.Pow(x, ALPHA - TNum.One) * TNum.Exp(-BETA * x)) / GAMMA_ALPHA);
|
||||||
}
|
}
|
@ -11,5 +11,6 @@ public sealed class InverseExponentialLa10<TNum> : Distribution<TNum> where TNum
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(LAMBDA * x);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(LAMBDA * x);
|
||||||
}
|
}
|
@ -11,5 +11,6 @@ public sealed class InverseExponentialLa5<TNum> : Distribution<TNum> where TNum
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(LAMBDA * x);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * LAMBDA * TNum.Exp(LAMBDA * x);
|
||||||
}
|
}
|
@ -22,5 +22,6 @@ public sealed class InverseGammaA3B05<TNum> : Distribution<TNum> where TNum : IF
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Pow(x, -ALPHA - TNum.One) * TNum.Exp(-BETA / x);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Pow(x, -ALPHA - TNum.One) * TNum.Exp(-BETA / x);
|
||||||
}
|
}
|
@ -20,5 +20,6 @@ public sealed class LaplaceB01M0<TNum> : Distribution<TNum> where TNum : IFloati
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Exp(-TNum.Abs(x - MU) / B);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Exp(-TNum.Abs(x - MU) / B);
|
||||||
}
|
}
|
@ -20,5 +20,6 @@ public sealed class LaplaceB01M05<TNum> : Distribution<TNum> where TNum : IFloat
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Exp(-TNum.Abs(x - MU) / B);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => FACTOR_LEFT * TNum.Exp(-TNum.Abs(x - MU) / B);
|
||||||
}
|
}
|
@ -20,5 +20,6 @@ public sealed class LogNormalS1M0<TNum> : Distribution<TNum> where TNum : IFloat
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => (CONSTANT / (x * FACTOR)) * TNum.Exp( -(TNum.Pow(TNum.Log(x) - MU, TWO) / (TWO * TNum.Pow(SIGMA, TWO))));
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => (CONSTANT / (x * FACTOR)) * TNum.Exp( -(TNum.Pow(TNum.Log(x) - MU, TWO) / (TWO * TNum.Pow(SIGMA, TWO))));
|
||||||
}
|
}
|
@ -14,5 +14,6 @@ public sealed class NormalS02M05<TNum> : Distribution<TNum> where TNum : IFloati
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => TNum.One / (STD_DEV * SQRT_2_PI) * TNum.Exp(NEGATIVE_HALF * TNum.Pow((x - MEAN) / STD_DEV, TWO));
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => TNum.One / (STD_DEV * SQRT_2_PI) * TNum.Exp(NEGATIVE_HALF * TNum.Pow((x - MEAN) / STD_DEV, TWO));
|
||||||
}
|
}
|
@ -26,5 +26,6 @@ public sealed class StudentTNu1<TNum> : Distribution<TNum> where TNum : IFloatin
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow((DIVIDEND / DIVISOR) * TNum.Pow( TNum.One + TNum.Pow(START + x * COMPRESS, TWO) / NU, EXPONENT), COMPRESS);
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * TNum.Pow((DIVIDEND / DIVISOR) * TNum.Pow( TNum.One + TNum.Pow(START + x * COMPRESS, TWO) / NU, EXPONENT), COMPRESS);
|
||||||
}
|
}
|
@ -12,5 +12,6 @@ public sealed class WeibullK05La1<TNum> : Distribution<TNum> where TNum : IFloat
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private protected override TNum ShapeFunction(TNum x) => CONSTANT * ( (K / LAMBDA) * TNum.Pow(x / LAMBDA, K - TNum.One) * TNum.Exp(-TNum.Pow(x/LAMBDA, K)));
|
/// <inheritdoc />
|
||||||
|
public override TNum ShapeFunction(TNum x) => CONSTANT * ( (K / LAMBDA) * TNum.Pow(x / LAMBDA, K - TNum.One) * TNum.Exp(-TNum.Pow(x/LAMBDA, K)));
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user