Package org.apfloat
Class HypergeometricHelper
java.lang.Object
org.apfloat.HypergeometricHelper
Helper class for hypergeometric functions.
- Since:
- 1.11.0
- Version:
- 1.14.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate class
private static class
private static class
private static enum
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
HypergeometricHelper
(Apcomplex[] a, Apcomplex[] b, Apcomplex z) Helper for the generalized hypergeometric function pFq. -
Method Summary
Modifier and TypeMethodDescriptionprivate Apfloat
adjustOffset
(Apfloat x, Apfloat offset) private Apcomplex
alternative
(Apcomplex a, Apcomplex b, Apcomplex c, Apcomplex z) private void
checkDivergence
(Apcomplex old, Apcomplex term) private Apcomplex
private Apcomplex
private Apcomplex
private void
ensurePrecision
(Apcomplex[] src, Apcomplex[] dest, long extendedPrecision) private Apcomplex
private Apcomplex
private Apcomplex
hypergeometric1F1
(Apcomplex a, Apcomplex b, Apcomplex z) private Apcomplex
private Apcomplex
hypergeometric2F1
(Apcomplex a, Apcomplex b, Apcomplex c, Apcomplex z) private Apcomplex
static Apcomplex
hypergeometricPFQ
(Apcomplex[] a, Apcomplex[] b, Apcomplex z) Generalized hypergeometric function pFq.private Apcomplex
static Apcomplex
hypergeometricPFQRegularized
(Apcomplex[] a, Apcomplex[] b, Apcomplex z) Regularized generalized hypergeometric function pF̃q.private Apcomplex
hypergeometricU
(boolean fastOnly) static Apcomplex
hypergeometricU
(Apcomplex a, Apcomplex b, Apcomplex z, boolean fastOnly) Tricomi's confluent hypergeometric function U.private Apcomplex
hypergeometricUStar
(Apcomplex a, Apcomplex b, Apcomplex z) static Apfloat
private Apfloat
offset
(long scale) private static long
private static long
private Apcomplex
-
Field Details
-
targetPrecision
private long targetPrecision -
extraPrecision
private long extraPrecision -
workingPrecision
private long workingPrecision -
radix
private int radix -
a
-
b
-
z
-
one
-
zero
-
-
Constructor Details
-
HypergeometricHelper
Helper for the generalized hypergeometric function pFq.- Parameters:
a
- The first argument.b
- The second argument.z
- The third argument.
-
-
Method Details
-
hypergeometricPFQ
Generalized hypergeometric function pFq.- Parameters:
a
- The first argument.b
- The second argument.z
- The third argument.- Returns:
- pFq(a1, …, ap; b1, …, bq; z)
- Throws:
ArithmeticException
- If the series does not converge.
-
hypergeometricPFQRegularized
Regularized generalized hypergeometric function pF̃q.- Parameters:
a
- The first argument.b
- The second argument.z
- The third argument.- Returns:
- pF̃q(a1, …, ap; b1, …, bq; z)
- Throws:
ArithmeticException
- If the series does not converge.- Since:
- 1.13.0
-
hypergeometricPFQRegularized
-
hypergeometricU
Tricomi's confluent hypergeometric function U. Also known as the confluent hypergeometric function of the second kind.- Parameters:
a
- The first argument.b
- The second argument.z
- The third argument.fastOnly
- Only attempt relatively fast algorithms and return null if not applicable- Returns:
- U(a, b, z)
- Since:
- 1.13.0
-
hypergeometricPFQ
-
hypergeometric0F1
private Apcomplex hypergeometric0F1(Apcomplex b, Apcomplex z) throws ArithmeticException, ApfloatRuntimeException -
hypergeometric1F1
private Apcomplex hypergeometric1F1(Apcomplex a, Apcomplex b, Apcomplex z) throws ArithmeticException, ApfloatRuntimeException -
hypergeometric1F1series
-
hypergeometricUStar
private Apcomplex hypergeometricUStar(Apcomplex a, Apcomplex b, Apcomplex z) throws ArithmeticException, ApfloatRuntimeException -
hypergeometricU
private Apcomplex hypergeometricU(boolean fastOnly) throws ArithmeticException, ApfloatRuntimeException -
hypergeometric2F1
private Apcomplex hypergeometric2F1(Apcomplex a, Apcomplex b, Apcomplex c, Apcomplex z) throws ArithmeticException, ApfloatRuntimeException -
precision
-
precision
-
checkResult
-
maxNonPositiveInteger
-
evaluate
-
checkDivergence
-
alternative
-
offset
-
adjustOffset
-
ensurePrecision
-
ensurePrecision
-
ensureGammaPrecision
-
result
-