Package org.apfloat
Class LambertWHelper
- java.lang.Object
-
- org.apfloat.LambertWHelper
-
class LambertWHelper extends java.lang.Object
Helper class for Lambert W function.- Since:
- 1.8.0
- Version:
- 1.10.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
LambertWHelper.ComplexException
-
Field Summary
Fields Modifier and Type Field Description private static double
BRANCH_POINT_BEYOND
private boolean
close
private Apfloat
e
private long
k
private Apint
minusOne
private Apfloat
minusOnePerE
private Apint
one
private Apcomplex
p
private long
precision
private int
radix
private long
targetPrecision
private Apint
three
private Apint
two
private Apfloat
twoPi
private Apfloat
twoPiK
private Apfloat
x
private Apcomplex
z
-
Constructor Summary
Constructors Modifier Constructor Description private
LambertWHelper(Apcomplex z, long k)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Apcomplex
complex()
private Apcomplex
complexSeries(Apcomplex p)
private Apfloat
doReal()
private Apfloat
e(long precision)
private Apcomplex
fixLogBranch(Apcomplex next, Apcomplex previous)
private Apcomplex
log(Apcomplex z)
private Apcomplex
logApprox(Apcomplex z)
private Apcomplex
negativeComplexSeries()
private Apfloat
negativeRealSeries()
private Apcomplex
p()
private Apcomplex
positiveComplexSeries()
private Apfloat
positiveRealSeries()
Apfloat
real()
private Apfloat
realSeries(Apcomplex p)
private long
shiftLeftPrecision(long precision, int i)
private long
shiftLeftPrecision(long precision, int i, long add)
private Apfloat
twoPi()
private Apfloat
twoPiK()
static Apcomplex
w(Apcomplex z)
static Apcomplex
w(Apcomplex z, long k)
static Apfloat
w(Apfloat x)
-
-
-
Field Detail
-
BRANCH_POINT_BEYOND
private static final double BRANCH_POINT_BEYOND
- See Also:
- Constant Field Values
-
x
private Apfloat x
-
z
private Apcomplex z
-
radix
private int radix
-
precision
private long precision
-
targetPrecision
private long targetPrecision
-
k
private long k
-
close
private boolean close
-
minusOne
private Apint minusOne
-
one
private Apint one
-
two
private Apint two
-
three
private Apint three
-
twoPi
private Apfloat twoPi
-
twoPiK
private Apfloat twoPiK
-
e
private Apfloat e
-
minusOnePerE
private Apfloat minusOnePerE
-
p
private Apcomplex p
-
-
Constructor Detail
-
LambertWHelper
private LambertWHelper(Apcomplex z, long k)
-
-
Method Detail
-
w
public static Apfloat w(Apfloat x) throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
w
public static Apcomplex w(Apcomplex z) throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
w
public static Apcomplex w(Apcomplex z, long k) throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
real
public Apfloat real() throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
doReal
private Apfloat doReal() throws LambertWHelper.ComplexException, ApfloatRuntimeException
-
complex
public Apcomplex complex() throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
log
private Apcomplex log(Apcomplex z) throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
logApprox
private Apcomplex logApprox(Apcomplex z) throws java.lang.ArithmeticException, ApfloatRuntimeException
- Throws:
java.lang.ArithmeticException
ApfloatRuntimeException
-
p
private Apcomplex p() throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
positiveRealSeries
private Apfloat positiveRealSeries() throws LambertWHelper.ComplexException, ApfloatRuntimeException
-
negativeRealSeries
private Apfloat negativeRealSeries() throws LambertWHelper.ComplexException, ApfloatRuntimeException
-
positiveComplexSeries
private Apcomplex positiveComplexSeries() throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
negativeComplexSeries
private Apcomplex negativeComplexSeries() throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
realSeries
private Apfloat realSeries(Apcomplex p) throws LambertWHelper.ComplexException, ApfloatRuntimeException
-
complexSeries
private Apcomplex complexSeries(Apcomplex p) throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
shiftLeftPrecision
private long shiftLeftPrecision(long precision, int i)
-
shiftLeftPrecision
private long shiftLeftPrecision(long precision, int i, long add)
-
fixLogBranch
private Apcomplex fixLogBranch(Apcomplex next, Apcomplex previous) throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
twoPi
private Apfloat twoPi() throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
twoPiK
private Apfloat twoPiK() throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
e
private Apfloat e(long precision) throws ApfloatRuntimeException
- Throws:
ApfloatRuntimeException
-
-