40 return $e->getMessage();
47 $fResult = self::calculate(
$x, $ord);
57 return self::besselI0($x);
59 return self::besselI1($x);
62 return self::besselI2($x, $ord);
73 return 1.0 + $y * (3.5156229 + $y * (3.0899424 + $y * (1.2067492
74 + $y * (0.2659732 + $y * (0.360768e-1 + $y * 0.45813e-2)))));
79 return (exp($ax) / sqrt($ax)) * (0.39894228 + $y * (0.1328592e-1 + $y * (0.225319e-2 + $y * (-0.157565e-2
80 + $y * (0.916281e-2 + $y * (-0.2057706e-1 + $y * (0.2635537e-1 +
81 $y * (-0.1647633e-1 + $y * 0.392377e-2))))))));
91 $ans = $ax * (0.5 + $y * (0.87890594 + $y * (0.51498869 + $y * (0.15084934 + $y * (0.2658733e-1 +
92 $y * (0.301532e-2 + $y * 0.32411e-3))))));
94 return ($x < 0.0) ? -$ans : $ans;
98 $ans = 0.2282967e-1 +
$y * (-0.2895312e-1 +
$y * (0.1787654e-1 -
$y * 0.420059e-2));
99 $ans = 0.39894228 +
$y * (-0.3988024e-1 +
$y * (-0.362018e-2 +
$y * (0.163801e-2 +
100 $y * (-0.1031555e-1 +
$y * $ans))));
101 $ans *= exp($ax) / sqrt($ax);
103 return ($x < 0.0) ? -$ans : $ans;
112 $tox = 2.0 / abs($x);
117 for ($j = 2 * ($ord + (
int) sqrt(40.0 * $ord)); $j > 0; --$j) {
118 $bim = $bip + $j * $tox * $bi;
122 if (abs($bi) > 1.0e+12) {
133 $ans *= self::besselI0($x) / $bi;
135 return ($x < 0.0 && (($ord % 2) === 1)) ? -$ans : $ans;
static calculate(float $x, int $ord)
static besselI2(float $x, int $ord)
static BESSELI($x, $ord)
BESSELI.
static besselI0(float $x)
static validateFloat($value)
static flattenSingleValue($value='')
Convert an array to a single scalar value by extracting the first element.
static besselI1(float $x)
static validateInt($value)