Index
All Classes and Interfaces|All Packages|Constant Field Values
A
- abs(double) - Static method in class net.jafama.FastMath
- abs(double) - Static method in class net.jafama.StrictFastMath
- abs(float) - Static method in class net.jafama.FastMath
- abs(float) - Static method in class net.jafama.StrictFastMath
- abs(int) - Static method in class net.jafama.CmnFastMath
- abs(int) - Static method in class net.jafama.NumbersUtils
-
Possibly faster than java.lang.Math.abs(int).
- abs(long) - Static method in class net.jafama.CmnFastMath
- abs(long) - Static method in class net.jafama.NumbersUtils
-
Possibly faster than java.lang.Math.abs(long).
- absNeg(int) - Static method in class net.jafama.NumbersUtils
- absNeg(long) - Static method in class net.jafama.NumbersUtils
- acos(double) - Static method in class net.jafama.FastMath
- acos(double) - Static method in class net.jafama.StrictFastMath
- acosh(double) - Static method in class net.jafama.FastMath
-
Some properties of acosh(x) = log(x + sqrt(x^2 - 1)): 1) defined on [1,+Infinity[ 2) result in ]0,+Infinity[ (by convention, since cosh(x) = cosh(-x)) 3) acosh(1) = 0 4) acosh(1+epsilon) ~= log(1 + sqrt(2*epsilon)) ~= sqrt(2*epsilon) 5) lim(acosh(x),x->+Infinity) = +Infinity (y increasing logarithmically slower than x)
- acosh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of acosh(x) = log(x + sqrt(x^2 - 1)): 1) defined on [1,+Infinity[ 2) result in ]0,+Infinity[ (by convention, since cosh(x) = cosh(-x)) 3) acosh(1) = 0 4) acosh(1+epsilon) ~= log(1 + sqrt(2*epsilon)) ~= sqrt(2*epsilon) 5) lim(acosh(x),x->+Infinity) = +Infinity (y increasing logarithmically slower than x)
- acosh1p(double) - Static method in class net.jafama.FastMath
-
Much more accurate than acosh(1+value), for arguments (and results) close to zero.
- acosh1p(double) - Static method in class net.jafama.StrictFastMath
-
Much more accurate than acosh(1+value), for arguments (and results) close to zero.
- acosInRange(double) - Static method in class net.jafama.FastMath
-
If value is not NaN and is outside [-1,1] range, closest value in this range is used.
- acosInRange(double) - Static method in class net.jafama.StrictFastMath
-
If value is not NaN and is outside [-1,1] range, closest value in this range is used.
- addBounded(int, int) - Static method in class net.jafama.CmnFastMath
- addBounded(long, long) - Static method in class net.jafama.CmnFastMath
- addExact(int, int) - Static method in class net.jafama.CmnFastMath
- addExact(long, long) - Static method in class net.jafama.CmnFastMath
- ANTI_JIT_OPTIM_CRASH_ON_NAN - Static variable in class net.jafama.CmnFastMath
-
If some methods get JIT-optimized, they might crash if they contain "(var == xxx)" with var being NaN (can happen with Java 6u29).
- ANTI_SLOW_CASTS - Static variable in class net.jafama.CmnFastMath
-
Because on some architectures, some casts can be slow, especially for large values.
- asByte(int) - Static method in class net.jafama.NumbersUtils
- asin(double) - Static method in class net.jafama.FastMath
- asin(double) - Static method in class net.jafama.StrictFastMath
- ASIN_DELTA - Static variable in class net.jafama.CmnFastMath
- ASIN_INDEXER - Static variable in class net.jafama.CmnFastMath
- ASIN_MAX_VALUE_FOR_POWTABS - Static variable in class net.jafama.CmnFastMath
- ASIN_MAX_VALUE_FOR_TABS - Static variable in class net.jafama.CmnFastMath
-
Supposed to be >= sin(77.2deg), as fdlibm code is supposed to work with values > 0.975, but seems to work well enough as long as value >= sin(25deg).
- ASIN_PIO2_HI - Static variable in class net.jafama.CmnFastMath
- ASIN_PIO2_LO - Static variable in class net.jafama.CmnFastMath
- ASIN_POWTABS_ONE_DIV_MAX_VALUE - Static variable in class net.jafama.CmnFastMath
- ASIN_POWTABS_POWER - Static variable in class net.jafama.CmnFastMath
- ASIN_POWTABS_SIZE - Static variable in class net.jafama.CmnFastMath
- ASIN_POWTABS_SIZE_MINUS_ONE - Static variable in class net.jafama.CmnFastMath
- ASIN_PS0 - Static variable in class net.jafama.CmnFastMath
- ASIN_PS1 - Static variable in class net.jafama.CmnFastMath
- ASIN_PS2 - Static variable in class net.jafama.CmnFastMath
- ASIN_PS3 - Static variable in class net.jafama.CmnFastMath
- ASIN_PS4 - Static variable in class net.jafama.CmnFastMath
- ASIN_PS5 - Static variable in class net.jafama.CmnFastMath
- ASIN_QS1 - Static variable in class net.jafama.CmnFastMath
- ASIN_QS2 - Static variable in class net.jafama.CmnFastMath
- ASIN_QS3 - Static variable in class net.jafama.CmnFastMath
- ASIN_QS4 - Static variable in class net.jafama.CmnFastMath
- ASIN_TABS_SIZE - Static variable in class net.jafama.CmnFastMath
- asinDer1DivF1PowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asinDer1DivF1Tab - Static variable in class net.jafama.CmnFastMath.MyTAsin
- asinDer2DivF2PowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asinDer2DivF2Tab - Static variable in class net.jafama.CmnFastMath.MyTAsin
- asinDer3DivF3PowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asinDer3DivF3Tab - Static variable in class net.jafama.CmnFastMath.MyTAsin
- asinDer4DivF4PowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asinDer4DivF4Tab - Static variable in class net.jafama.CmnFastMath.MyTAsin
- asinh(double) - Static method in class net.jafama.FastMath
-
Some properties of asinh(x) = log(x + sqrt(x^2 + 1)) 1) defined on ]-Infinity,+Infinity[ 2) result in ]-Infinity,+Infinity[ 3) asinh(x) = -asinh(-x) (implies asinh(0) = 0) 4) asinh(epsilon) ~= epsilon 5) lim(asinh(x),x->+Infinity) = +Infinity (y increasing logarithmically slower than x)
- asinh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of asinh(x) = log(x + sqrt(x^2 + 1)) 1) defined on ]-Infinity,+Infinity[ 2) result in ]-Infinity,+Infinity[ 3) asinh(x) = -asinh(-x) (implies asinh(0) = 0) 4) asinh(epsilon) ~= epsilon 5) lim(asinh(x),x->+Infinity) = +Infinity (y increasing logarithmically slower than x)
- ASINH_ACOSH_SQRT_ELISION_THRESHOLD - Static variable in class net.jafama.CmnFastMath
-
sqrt(x*x+-1) should yield higher threshold, but it's enough due to subsequent log.
- ASINH_LOG1P_THRESHOLD - Static variable in class net.jafama.CmnFastMath
- asinInRange(double) - Static method in class net.jafama.FastMath
-
If value is not NaN and is outside [-1,1] range, closest value in this range is used.
- asinInRange(double) - Static method in class net.jafama.StrictFastMath
-
If value is not NaN and is outside [-1,1] range, closest value in this range is used.
- asinParamPowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asinPowTab - Static variable in class net.jafama.CmnFastMath.MyTAsinPow
- asInt(long) - Static method in class net.jafama.NumbersUtils
- asinTab - Static variable in class net.jafama.CmnFastMath.MyTAsin
- atan(double) - Static method in class net.jafama.FastMath
- atan(double) - Static method in class net.jafama.StrictFastMath
- ATAN_AT0 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT1 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT10 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT2 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT3 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT4 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT5 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT6 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT7 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT8 - Static variable in class net.jafama.CmnFastMath
- ATAN_AT9 - Static variable in class net.jafama.CmnFastMath
- ATAN_DELTA - Static variable in class net.jafama.CmnFastMath
- ATAN_HI3 - Static variable in class net.jafama.CmnFastMath
- ATAN_INDEXER - Static variable in class net.jafama.CmnFastMath
- ATAN_LO3 - Static variable in class net.jafama.CmnFastMath
- ATAN_MAX_VALUE_FOR_TABS - Static variable in class net.jafama.CmnFastMath
-
Supposed to be >= tan(67.7deg), as fdlibm code is supposed to work with values > 2.4375.
- ATAN_TABS_SIZE - Static variable in class net.jafama.CmnFastMath
- atan2(double, double) - Static method in class net.jafama.FastMath
-
For special values for which multiple conventions could be adopted, behaves like Math.atan2(double,double).
- atan2(double, double) - Static method in class net.jafama.StrictFastMath
-
For special values for which multiple conventions could be adopted, behaves like StrictMath.atan2(double,double).
- atan2_ninf_yyy(double) - Static method in class net.jafama.CmnFastMath
- atan2_pinf_yyy(double) - Static method in class net.jafama.CmnFastMath
- atan2_yyy_zeroOrNaN(double, double) - Static method in class net.jafama.CmnFastMath
- atanDer1DivF1Tab - Static variable in class net.jafama.CmnFastMath.MyTAtan
- atanDer2DivF2Tab - Static variable in class net.jafama.CmnFastMath.MyTAtan
- atanDer3DivF3Tab - Static variable in class net.jafama.CmnFastMath.MyTAtan
- atanDer4DivF4Tab - Static variable in class net.jafama.CmnFastMath.MyTAtan
- atanh(double) - Static method in class net.jafama.FastMath
-
Some properties of atanh(x) = log((1+x)/(1-x))/2: 1) defined on ]-1,1[ 2) result in ]-Infinity,+Infinity[ 3) atanh(-1) = -Infinity (by continuity) 4) atanh(1) = +Infinity (by continuity) 5) atanh(epsilon) ~= epsilon 6) lim(atanh(x),x->1) = +Infinity
- atanh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of atanh(x) = log((1+x)/(1-x))/2: 1) defined on ]-1,1[ 2) result in ]-Infinity,+Infinity[ 3) atanh(-1) = -Infinity (by continuity) 4) atanh(1) = +Infinity (by continuity) 5) atanh(epsilon) ~= epsilon 6) lim(atanh(x),x->1) = +Infinity
- atanTab - Static variable in class net.jafama.CmnFastMath.MyTAtan
B
- bitSizeForSignedValue(int) - Static method in class net.jafama.NumbersUtils
- bitSizeForSignedValue(long) - Static method in class net.jafama.NumbersUtils
- bitSizeForUnsignedValue(int) - Static method in class net.jafama.NumbersUtils
- bitSizeForUnsignedValue(long) - Static method in class net.jafama.NumbersUtils
- byteAsUnsigned(byte) - Static method in class net.jafama.NumbersUtils
C
- cbrt(double) - Static method in class net.jafama.FastMath
- cbrt(double) - Static method in class net.jafama.StrictFastMath
- CBRT_LO_BITS - Static variable in class net.jafama.CmnFastMath
- CBRT_LO_TAB_SIZE - Static variable in class net.jafama.CmnFastMath
- cbrtSlopeHiTab - Static variable in class net.jafama.CmnFastMath.MyTCbrt
- cbrtSlopeLoTab - Static variable in class net.jafama.CmnFastMath.MyTCbrt
- cbrtXCbrtHiTab - Static variable in class net.jafama.CmnFastMath.MyTCbrt
- cbrtXCbrtLoTab - Static variable in class net.jafama.CmnFastMath.MyTCbrt
- ceil(double) - Static method in class net.jafama.FastMath
- ceil(double) - Static method in class net.jafama.StrictFastMath
- ceil(float) - Static method in class net.jafama.FastMath
- ceil(float) - Static method in class net.jafama.StrictFastMath
- ceilingPowerOfTwo(int) - Static method in class net.jafama.NumbersUtils
- ceilingPowerOfTwo(long) - Static method in class net.jafama.NumbersUtils
- ceilToInt(double) - Static method in class net.jafama.FastMath
- ceilToInt(double) - Static method in class net.jafama.StrictFastMath
- CHAR_BY_DIGIT - Static variable in class net.jafama.NumbersUtils
-
All possible upper case chars for representing a number as a String.
- checkBitPositions(int, int, int) - Static method in class net.jafama.NumbersUtils
- checkBitPositionsByte(int, int) - Static method in class net.jafama.NumbersUtils
- checkBitPositionsInt(int, int) - Static method in class net.jafama.NumbersUtils
- checkBitPositionsLong(int, int) - Static method in class net.jafama.NumbersUtils
- checkBitPositionsShort(int, int) - Static method in class net.jafama.NumbersUtils
- checkBitSizeForSignedInt(int) - Static method in class net.jafama.NumbersUtils
- checkBitSizeForSignedLong(int) - Static method in class net.jafama.NumbersUtils
- checkBitSizeForUnsignedInt(int) - Static method in class net.jafama.NumbersUtils
- checkBitSizeForUnsignedLong(int) - Static method in class net.jafama.NumbersUtils
- checkIsInRange(double, double, double) - Static method in class net.jafama.NumbersUtils
- checkIsInRange(float, float, float) - Static method in class net.jafama.NumbersUtils
- checkIsInRange(int, int, int) - Static method in class net.jafama.NumbersUtils
- checkIsInRange(long, long, long) - Static method in class net.jafama.NumbersUtils
- checkIsInRangeSigned(int, int) - Static method in class net.jafama.NumbersUtils
- checkIsInRangeSigned(long, int) - Static method in class net.jafama.NumbersUtils
- checkIsInRangeUnsigned(int, int) - Static method in class net.jafama.NumbersUtils
- checkIsInRangeUnsigned(long, int) - Static method in class net.jafama.NumbersUtils
- checkRadix(int) - Static method in class net.jafama.NumbersUtils
- CmnFastMath - Class in net.jafama
-
Stuffs for FastMath and StrictFastMath.
- CmnFastMath() - Constructor for class net.jafama.CmnFastMath
- CmnFastMath.MyTAsin - Class in net.jafama
- CmnFastMath.MyTAsinPow - Class in net.jafama
- CmnFastMath.MyTAtan - Class in net.jafama
- CmnFastMath.MyTCbrt - Class in net.jafama
- CmnFastMath.MyTExp - Class in net.jafama
- CmnFastMath.MyTLog - Class in net.jafama
- CmnFastMath.MyTSinCos - Class in net.jafama
- CmnFastMath.MyTSqrt - Class in net.jafama
- CmnFastMath.MyTTan - Class in net.jafama
- CmnFastMath.MyTTwoPow - Class in net.jafama
- computeNbrOfChars(int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfChars(int, int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfChars(long, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfChars(long, int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits(int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits(int, int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits(long, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits(long, int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits_negValue(int, int) - Static method in class net.jafama.NumbersUtils
- computeNbrOfDigits_negValue(long, int) - Static method in class net.jafama.NumbersUtils
- copySign(double, double) - Static method in class net.jafama.FastMath
-
A sign of NaN can be interpreted as positive or negative.
- copySign(double, double) - Static method in class net.jafama.StrictFastMath
-
A sign of NaN is interpreted as positive.
- copySign(float, float) - Static method in class net.jafama.FastMath
-
A sign of NaN can be interpreted as positive or negative.
- copySign(float, float) - Static method in class net.jafama.StrictFastMath
-
A sign of NaN is interpreted as positive.
- cos(double) - Static method in class net.jafama.FastMath
- cos(double) - Static method in class net.jafama.StrictFastMath
- cosh(double) - Static method in class net.jafama.FastMath
-
Some properties of cosh(x) = (exp(x)+exp(-x))/2: 1) defined on ]-Infinity,+Infinity[ 2) result in [1,+Infinity[ 3) cosh(0) = 1 4) cosh(x) = cosh(-x) 5) lim(cosh(x),x->+Infinity) = +Infinity (y increasing exponentially faster than x) 6) reaches +Infinity (double overflow) for x >= 710.475860073944, i.e.
- cosh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of cosh(x) = (exp(x)+exp(-x))/2: 1) defined on ]-Infinity,+Infinity[ 2) result in [1,+Infinity[ 3) cosh(0) = 1 4) cosh(x) = cosh(-x) 5) lim(cosh(x),x->+Infinity) = +Infinity (y increasing exponentially faster than x) 6) reaches +Infinity (double overflow) for x >= 710.475860073944, i.e.
- coshm1(double) - Static method in class net.jafama.FastMath
-
Much more accurate than cosh(value)-1, for arguments (and results) close to zero.
- coshm1(double) - Static method in class net.jafama.StrictFastMath
-
Much more accurate than cosh(value)-1, for arguments (and results) close to zero.
- cosQuick(double) - Static method in class net.jafama.FastMath
-
Quick cos, with accuracy of about 1.6e-3 (PI/invalid input: '<'look-up tabs size>) for |angle| invalid input: '<' 6588397.0 (Integer.MAX_VALUE * (2*PI/invalid input: '<'look-up tabs size>)), and no accuracy at all for larger values.
- cosQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick cos, with accuracy of about 1.6e-3 (PI/invalid input: '<'look-up tabs size>) for |angle| invalid input: '<' 6588397.0 (Integer.MAX_VALUE * (2*PI/invalid input: '<'look-up tabs size>)), and no accuracy at all for larger values.
- cosTab - Static variable in class net.jafama.CmnFastMath.MyTSinCos
D
- decodeQuadrant(long) - Static method in class net.jafama.CmnFastMath
- decodeRemainder(long) - Static method in class net.jafama.CmnFastMath
- decrementBounded(int) - Static method in class net.jafama.CmnFastMath
- decrementBounded(long) - Static method in class net.jafama.CmnFastMath
- decrementExact(int) - Static method in class net.jafama.CmnFastMath
- decrementExact(long) - Static method in class net.jafama.CmnFastMath
- DIV_SHIFT_BY_RADIX - Static variable in class net.jafama.NumbersUtils
-
For power-of-two radixes only.
- dontUseMe_isInNonEmptyRange_(int, int, int) - Static method in class net.jafama.NumbersUtils
-
Had such isInXXX methods, and corresponding checkXXX methods, but they seem actually slower in practice, so just keeping this code here in case some day it becomes faster than regular isInXXX.
- DOUBLE_BEFORE_60 - Static variable in class net.jafama.CmnFastMath
- DOUBLE_MIN_NORMAL - Static variable in class net.jafama.CmnFastMath
-
Double.MIN_NORMAL since Java 6.
- DOUBLE_MIN_NORMAL - Static variable in class net.jafama.NumbersUtils
-
Double.MIN_NORMAL since Java 6.
- DoubleWrapper - Class in net.jafama
- DoubleWrapper() - Constructor for class net.jafama.DoubleWrapper
E
- E - Static variable in class net.jafama.CmnFastMath
-
Closest double approximation of e.
- encodeRemainderAndQuadrant(double, int) - Static method in class net.jafama.CmnFastMath
- equal(double, double) - Static method in class net.jafama.NumbersUtils
- equal(float, float) - Static method in class net.jafama.NumbersUtils
- exp(double) - Static method in class net.jafama.FastMath
- exp(double) - Static method in class net.jafama.StrictFastMath
- EXP_LO_DISTANCE_TO_ZERO - Static variable in class net.jafama.CmnFastMath
- EXP_LO_DISTANCE_TO_ZERO_POT - Static variable in class net.jafama.CmnFastMath
- EXP_LO_INDEXING - Static variable in class net.jafama.CmnFastMath
- EXP_LO_INDEXING_DIV_SHIFT - Static variable in class net.jafama.CmnFastMath
- EXP_LO_TAB_MID_INDEX - Static variable in class net.jafama.CmnFastMath
- EXP_LO_TAB_SIZE - Static variable in class net.jafama.CmnFastMath
- EXP_LO_TAB_SIZE_POT - Static variable in class net.jafama.CmnFastMath
- EXP_OVERFLOW_LIMIT - Static variable in class net.jafama.CmnFastMath
- EXP_UNDERFLOW_LIMIT - Static variable in class net.jafama.CmnFastMath
- expHiTab - Static variable in class net.jafama.CmnFastMath.MyTExp
- expLoNegTab - Static variable in class net.jafama.CmnFastMath.MyTExp
- expLoPosTab - Static variable in class net.jafama.CmnFastMath.MyTExp
- expm1(double) - Static method in class net.jafama.FastMath
-
Much more accurate than exp(value)-1, for arguments (and results) close to zero.
- expm1(double) - Static method in class net.jafama.StrictFastMath
-
Much more accurate than exp(value)-1, for arguments (and results) close to zero.
- expQuick(double) - Static method in class net.jafama.FastMath
-
Quick exp, with a max relative error of about 2.94e-2 for |value| invalid input: '<' 700.0 or so, and no accuracy at all outside this range.
- expQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick exp, with a max relative error of about 2.94e-2 for |value| invalid input: '<' 700.0 or so, and no accuracy at all outside this range.
F
- FastMath - Class in net.jafama
-
Faster (hopefully) versions of java.lang.Math methods, plus additional ones.
- FastMath() - Constructor for class net.jafama.FastMath
-
Non-instantiable.
- FLOAT_MIN_NORMAL - Static variable in class net.jafama.NumbersUtils
-
Float.MIN_NORMAL since Java 6.
- floor(double) - Static method in class net.jafama.FastMath
- floor(double) - Static method in class net.jafama.StrictFastMath
- floor(float) - Static method in class net.jafama.FastMath
- floor(float) - Static method in class net.jafama.StrictFastMath
- floorDiv(int, int) - Static method in class net.jafama.CmnFastMath
-
Returns the largest int invalid input: '<'= dividend/divisor.
- floorDiv(long, int) - Static method in class net.jafama.CmnFastMath
-
Returns the largest long invalid input: '<'= dividend/divisor.
- floorDiv(long, long) - Static method in class net.jafama.CmnFastMath
-
Returns the largest long invalid input: '<'= dividend/divisor.
- floorMod(int, int) - Static method in class net.jafama.CmnFastMath
-
Returns the floor modulus, which is "x - floorDiv(x,y) * y", has the same sign as y, and is in ]-abs(y),abs(y)[.
- floorMod(long, int) - Static method in class net.jafama.CmnFastMath
-
Returns the floor modulus, which is "x - floorDiv(x,y) * y", has the same sign as y, and is in ]-abs(y),abs(y)[.
- floorMod(long, long) - Static method in class net.jafama.CmnFastMath
-
Returns the floor modulus, which is "x - floorDiv(x,y) * y", has the same sign as y, and is in ]-abs(y),abs(y)[.
- floorPowerOfTwo(int) - Static method in class net.jafama.NumbersUtils
- floorPowerOfTwo(long) - Static method in class net.jafama.NumbersUtils
- floorToInt(double) - Static method in class net.jafama.FastMath
- floorToInt(double) - Static method in class net.jafama.StrictFastMath
- FM_USE_JDK_MATH - Static variable in class net.jafama.CmnFastMath
- FM_USE_POWTABS_FOR_ASIN - Static variable in class net.jafama.CmnFastMath
-
Set it to true if FastMath.sqrt(double) is slow (more tables, but less calls to FastMath.sqrt(double)).
- FM_USE_REDEFINED_LOG - Static variable in class net.jafama.CmnFastMath
-
Used for both FastMath.log(double) and FastMath.log10(double).
- FM_USE_REDEFINED_SQRT - Static variable in class net.jafama.CmnFastMath
G
- getBooleanProperty(String, boolean) - Static method in class net.jafama.CmnFastMath
- getExponent(double) - Static method in class net.jafama.FastMath
- getExponent(double) - Static method in class net.jafama.StrictFastMath
- getExponent(float) - Static method in class net.jafama.FastMath
- getExponent(float) - Static method in class net.jafama.StrictFastMath
- getTabSizePower(int) - Static method in class net.jafama.CmnFastMath
-
Use look-up tables size power through this method, to make sure is it small in case java.lang.Math is directly used.
H
- haveSameEvenness(int, int) - Static method in class net.jafama.NumbersUtils
- haveSameEvenness(long, long) - Static method in class net.jafama.NumbersUtils
- haveSameSign(int, int) - Static method in class net.jafama.NumbersUtils
- haveSameSign(long, long) - Static method in class net.jafama.NumbersUtils
- heavyRemainderPi(double) - Static method in class net.jafama.CmnFastMath
- heavyRemainderPiO2(double, boolean) - Static method in class net.jafama.CmnFastMath
-
Remainder using an accurate definition of PI.
- heavyRemainderTwoPi(double) - Static method in class net.jafama.CmnFastMath
- hypot(double, double) - Static method in class net.jafama.FastMath
- hypot(double, double) - Static method in class net.jafama.StrictFastMath
- hypot(double, double, double) - Static method in class net.jafama.FastMath
- hypot(double, double, double) - Static method in class net.jafama.StrictFastMath
- HYPOT_FACTOR - Static variable in class net.jafama.CmnFastMath
-
Large enough to get a value's magnitude back into [2^-511,2^511] from Double.MIN_VALUE or Double.MAX_VALUE, and small enough not to get it across that range (considering a 2*53 tolerance due to only checking magnitude of min/max value, and scaling all values together).
- HYPOT_MAX_MAG - Static variable in class net.jafama.CmnFastMath
-
For using sqrt, to avoid overflow/underflow, we want values magnitude in [1/sqrt(Double.MAX_VALUE/n),sqrt(Double.MAX_VALUE/n)], n being the number of arguments.
- hypot_NaN(double, double) - Static method in class net.jafama.CmnFastMath
-
At least one of the arguments must be NaN.
- hypot_NaN(double, double, double) - Static method in class net.jafama.CmnFastMath
-
At least one of the arguments must be NaN.
I
- IEEEremainder(double, double) - Static method in class net.jafama.FastMath
- IEEEremainder(double, double) - Static method in class net.jafama.StrictFastMath
- incrementBounded(int) - Static method in class net.jafama.CmnFastMath
- incrementBounded(long) - Static method in class net.jafama.CmnFastMath
- incrementExact(int) - Static method in class net.jafama.CmnFastMath
- incrementExact(long) - Static method in class net.jafama.CmnFastMath
- init() - Static method in class net.jafama.CmnFastMath.MyTAsin
- init() - Static method in class net.jafama.CmnFastMath.MyTAsinPow
- init() - Static method in class net.jafama.CmnFastMath.MyTAtan
- init() - Static method in class net.jafama.CmnFastMath.MyTCbrt
- init() - Static method in class net.jafama.CmnFastMath.MyTExp
- init() - Static method in class net.jafama.CmnFastMath.MyTLog
- init() - Static method in class net.jafama.CmnFastMath.MyTSinCos
- init() - Static method in class net.jafama.CmnFastMath.MyTSqrt
- init() - Static method in class net.jafama.CmnFastMath.MyTTan
- init() - Static method in class net.jafama.CmnFastMath.MyTTwoPow
- initTables() - Static method in class net.jafama.CmnFastMath
-
Ensures that all look-up tables are initialized - otherwise they are initialized lazily.
- intAsUnsigned(int) - Static method in class net.jafama.NumbersUtils
- intHash(long) - Static method in class net.jafama.NumbersUtils
-
If the specified value is in int range, the returned value is identical.
- intMaskLSBits0(int) - Static method in class net.jafama.NumbersUtils
- intMaskLSBits1(int) - Static method in class net.jafama.NumbersUtils
- intMaskMSBits0(int) - Static method in class net.jafama.NumbersUtils
- intMaskMSBits1(int) - Static method in class net.jafama.NumbersUtils
- IntWrapper - Class in net.jafama
- IntWrapper() - Constructor for class net.jafama.IntWrapper
- INV_LOG_10 - Static variable in class net.jafama.CmnFastMath
- invSqrtQuick(double) - Static method in class net.jafama.FastMath
-
Quick inverse of square root, with a max relative error of about 3.44e-2 for values in [Double.MIN_NORMAL,Double.MAX_VALUE], and worse accuracy outside this range.
- invSqrtQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick inverse of square root, with a max relative error of about 3.44e-2 for values in [Double.MIN_NORMAL,Double.MAX_VALUE], and worse accuracy outside this range.
- isEquidistant(double) - Static method in class net.jafama.NumbersUtils
- isEquidistant(float) - Static method in class net.jafama.NumbersUtils
- isEven(int) - Static method in class net.jafama.NumbersUtils
- isEven(long) - Static method in class net.jafama.NumbersUtils
- isInClockwiseDomain(double, double, double) - Static method in class net.jafama.FastMath
-
NB: Since 2*Math.PI invalid input: '<' 2*PI, a span of 2*Math.PI does not mean full angular range.
- isInClockwiseDomain(double, double, double) - Static method in class net.jafama.StrictFastMath
-
NB: Since 2*Math.PI invalid input: '<' 2*PI, a span of 2*Math.PI does not mean full angular range.
- isInRange(double, double, double) - Static method in class net.jafama.NumbersUtils
-
Returns false if any value is NaN.
- isInRange(float, float, float) - Static method in class net.jafama.NumbersUtils
-
Returns false if any value is NaN.
- isInRange(int, int, int) - Static method in class net.jafama.NumbersUtils
- isInRange(long, long, long) - Static method in class net.jafama.NumbersUtils
- isInRangeSigned(int, int) - Static method in class net.jafama.NumbersUtils
- isInRangeSigned(long, int) - Static method in class net.jafama.NumbersUtils
- isInRangeUnsigned(int, int) - Static method in class net.jafama.NumbersUtils
- isInRangeUnsigned(long, int) - Static method in class net.jafama.NumbersUtils
- isMathematicalInteger(double) - Static method in class net.jafama.NumbersUtils
- isMathematicalInteger(float) - Static method in class net.jafama.NumbersUtils
- isNaNOrInfinite(double) - Static method in class net.jafama.FastMath
- isNaNOrInfinite(double) - Static method in class net.jafama.NumbersUtils
- isNaNOrInfinite(double) - Static method in class net.jafama.StrictFastMath
- isNaNOrInfinite(float) - Static method in class net.jafama.FastMath
- isNaNOrInfinite(float) - Static method in class net.jafama.NumbersUtils
- isNaNOrInfinite(float) - Static method in class net.jafama.StrictFastMath
- isOdd(int) - Static method in class net.jafama.NumbersUtils
- isOdd(long) - Static method in class net.jafama.NumbersUtils
- isPowerOfTwo(int) - Static method in class net.jafama.NumbersUtils
- isPowerOfTwo(long) - Static method in class net.jafama.NumbersUtils
- isSignedPowerOfTwo(int) - Static method in class net.jafama.NumbersUtils
- isSignedPowerOfTwo(long) - Static method in class net.jafama.NumbersUtils
- isValidBitSizeForSignedInt(int) - Static method in class net.jafama.NumbersUtils
- isValidBitSizeForSignedLong(int) - Static method in class net.jafama.NumbersUtils
- isValidBitSizeForUnsignedInt(int) - Static method in class net.jafama.NumbersUtils
- isValidBitSizeForUnsignedLong(int) - Static method in class net.jafama.NumbersUtils
J
- jdkRemainderPi(double) - Static method in class net.jafama.CmnFastMath
- jdkRemainderPiO2(double, boolean) - Static method in class net.jafama.CmnFastMath
- jdkRemainderTwoPi(double) - Static method in class net.jafama.CmnFastMath
L
- log(double) - Static method in class net.jafama.FastMath
- log(double) - Static method in class net.jafama.StrictFastMath
- LOG_2 - Static variable in class net.jafama.CmnFastMath
- LOG_BITS - Static variable in class net.jafama.CmnFastMath
- LOG_DOUBLE_MAX_VALUE - Static variable in class net.jafama.CmnFastMath
- LOG_TAB_SIZE - Static variable in class net.jafama.CmnFastMath
- LOG_TWO_POW_27 - Static variable in class net.jafama.CmnFastMath
- log10(double) - Static method in class net.jafama.FastMath
- log10(double) - Static method in class net.jafama.StrictFastMath
- log1p(double) - Static method in class net.jafama.FastMath
-
Much more accurate than log(1+value), for arguments (and results) close to zero.
- log1p(double) - Static method in class net.jafama.StrictFastMath
-
Much more accurate than log(1+value), for arguments (and results) close to zero.
- log2(int) - Static method in class net.jafama.CmnFastMath
- log2(int) - Static method in class net.jafama.NumbersUtils
- log2(long) - Static method in class net.jafama.CmnFastMath
- log2(long) - Static method in class net.jafama.NumbersUtils
- logQuick(double) - Static method in class net.jafama.FastMath
-
Quick log, with a max relative error of about 1.9e-3 for values in ]Double.MIN_NORMAL,+Infinity[, and worse accuracy outside this range.
- logQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick log, with a max relative error of about 1.9e-3 for values in ]Double.MIN_NORMAL,+Infinity[, and worse accuracy outside this range.
- logXInvTab - Static variable in class net.jafama.CmnFastMath.MyTLog
- logXLogTab - Static variable in class net.jafama.CmnFastMath.MyTLog
- logXTab - Static variable in class net.jafama.CmnFastMath.MyTLog
- longMaskLSBits0(int) - Static method in class net.jafama.NumbersUtils
- longMaskLSBits1(int) - Static method in class net.jafama.NumbersUtils
- longMaskMSBits0(int) - Static method in class net.jafama.NumbersUtils
- longMaskMSBits1(int) - Static method in class net.jafama.NumbersUtils
M
- max(double, double) - Static method in class net.jafama.FastMath
- max(double, double) - Static method in class net.jafama.StrictFastMath
- max(float, float) - Static method in class net.jafama.FastMath
- max(float, float) - Static method in class net.jafama.StrictFastMath
- max(int, int) - Static method in class net.jafama.CmnFastMath
- max(long, long) - Static method in class net.jafama.CmnFastMath
- MAX_DOUBLE_EXPONENT - Static variable in class net.jafama.CmnFastMath
- MAX_DOUBLE_EXPONENT - Static variable in class net.jafama.NumbersUtils
- MAX_FLOAT_EXPONENT - Static variable in class net.jafama.CmnFastMath
- MAX_NBR_OF_NEG_INT_DIGITS_BY_RADIX - Static variable in class net.jafama.NumbersUtils
- MAX_NBR_OF_NEG_LONG_DIGITS_BY_RADIX - Static variable in class net.jafama.NumbersUtils
- maxSignedIntForBitSize(int) - Static method in class net.jafama.NumbersUtils
- maxSignedIntForBitSize_noCheck(int) - Static method in class net.jafama.NumbersUtils
- maxSignedLongForBitSize(int) - Static method in class net.jafama.NumbersUtils
- maxSignedLongForBitSize_noCheck(int) - Static method in class net.jafama.NumbersUtils
- maxUnsignedIntForBitSize(int) - Static method in class net.jafama.NumbersUtils
- maxUnsignedLongForBitSize(int) - Static method in class net.jafama.NumbersUtils
- meanLow(int, int) - Static method in class net.jafama.NumbersUtils
- meanLow(long, long) - Static method in class net.jafama.NumbersUtils
- meanSml(int, int) - Static method in class net.jafama.NumbersUtils
- meanSml(long, long) - Static method in class net.jafama.NumbersUtils
- min(double, double) - Static method in class net.jafama.FastMath
- min(double, double) - Static method in class net.jafama.StrictFastMath
- min(float, float) - Static method in class net.jafama.FastMath
- min(float, float) - Static method in class net.jafama.StrictFastMath
- min(int, int) - Static method in class net.jafama.CmnFastMath
- min(long, long) - Static method in class net.jafama.CmnFastMath
- MIN_DOUBLE_EXPONENT - Static variable in class net.jafama.CmnFastMath
- MIN_DOUBLE_EXPONENT - Static variable in class net.jafama.NumbersUtils
- MIN_DOUBLE_NORMAL_EXPONENT - Static variable in class net.jafama.CmnFastMath
- MIN_FLOAT_NORMAL_EXPONENT - Static variable in class net.jafama.CmnFastMath
- minSignedIntForBitSize(int) - Static method in class net.jafama.NumbersUtils
- minSignedIntForBitSize_noCheck(int) - Static method in class net.jafama.NumbersUtils
- minSignedLongForBitSize(int) - Static method in class net.jafama.NumbersUtils
- minSignedLongForBitSize_noCheck(int) - Static method in class net.jafama.NumbersUtils
- minus2PI(double) - Static method in class net.jafama.NumbersUtils
- minus2PI_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- minusBounded(int, int) - Static method in class net.jafama.NumbersUtils
- minusBounded(long, long) - Static method in class net.jafama.NumbersUtils
- minusExact(int, int) - Static method in class net.jafama.NumbersUtils
- minusExact(long, long) - Static method in class net.jafama.NumbersUtils
- minusPI(double) - Static method in class net.jafama.NumbersUtils
- minusPI_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- minusPIO2(double) - Static method in class net.jafama.NumbersUtils
- minusPIO2_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- moduloSignedPowerOfTwo(int, int) - Static method in class net.jafama.NumbersUtils
-
This treatment being designed for optimization, the fact that spot is a signed power of two is not checked.
- moduloSignedPowerOfTwo(long, long) - Static method in class net.jafama.NumbersUtils
-
This treatment being designed for optimization, the fact that spot is a signed power of two is not checked.
- multiplyBounded(int, int) - Static method in class net.jafama.CmnFastMath
- multiplyBounded(long, int) - Static method in class net.jafama.CmnFastMath
- multiplyBounded(long, long) - Static method in class net.jafama.CmnFastMath
- multiplyExact(int, int) - Static method in class net.jafama.CmnFastMath
- multiplyExact(long, int) - Static method in class net.jafama.CmnFastMath
- multiplyExact(long, long) - Static method in class net.jafama.CmnFastMath
- multiplyFull(int, int) - Static method in class net.jafama.CmnFastMath
- multiplyHigh(long, long) - Static method in class net.jafama.CmnFastMath
- MyTAsin() - Constructor for class net.jafama.CmnFastMath.MyTAsin
- MyTAsinPow() - Constructor for class net.jafama.CmnFastMath.MyTAsinPow
- MyTAtan() - Constructor for class net.jafama.CmnFastMath.MyTAtan
- MyTCbrt() - Constructor for class net.jafama.CmnFastMath.MyTCbrt
- MyTExp() - Constructor for class net.jafama.CmnFastMath.MyTExp
- MyTLog() - Constructor for class net.jafama.CmnFastMath.MyTLog
- MyTSinCos() - Constructor for class net.jafama.CmnFastMath.MyTSinCos
- MyTSqrt() - Constructor for class net.jafama.CmnFastMath.MyTSqrt
- MyTTan() - Constructor for class net.jafama.CmnFastMath.MyTTan
- MyTTwoPow() - Constructor for class net.jafama.CmnFastMath.MyTTwoPow
N
- negateBounded(int) - Static method in class net.jafama.CmnFastMath
- negateBounded(long) - Static method in class net.jafama.CmnFastMath
- negateExact(int) - Static method in class net.jafama.CmnFastMath
- negateExact(long) - Static method in class net.jafama.CmnFastMath
- negHalfWidth(int, int) - Static method in class net.jafama.NumbersUtils
-
Useful because a positive int value could not represent half the width of full int range width, which is mathematically Integer.MAX_VALUE+1.
- negHalfWidth(long, long) - Static method in class net.jafama.NumbersUtils
-
Useful because a positive long value could not represent half the width of full long range width, which is mathematically Long.MAX_VALUE+1.
- net.jafama - package net.jafama
- nextAfter(double, double) - Static method in class net.jafama.FastMath
-
If both arguments are +-0.0, direction is returned.
- nextAfter(double, double) - Static method in class net.jafama.StrictFastMath
-
If both arguments are +-0.0, direction is returned.
- nextAfter(float, double) - Static method in class net.jafama.FastMath
-
If both arguments are +-0.0(f), (float)direction is returned.
- nextAfter(float, double) - Static method in class net.jafama.StrictFastMath
-
If both arguments are +-0.0(f), (float)direction is returned.
- nextDown(double) - Static method in class net.jafama.FastMath
-
Semantically equivalent to nextAfter(start,Double.NEGATIVE_INFINITY).
- nextDown(double) - Static method in class net.jafama.StrictFastMath
-
Semantically equivalent to nextAfter(start,Double.NEGATIVE_INFINITY).
- nextDown(float) - Static method in class net.jafama.FastMath
-
Semantically equivalent to nextAfter(start,Double.NEGATIVE_INFINITY).
- nextDown(float) - Static method in class net.jafama.StrictFastMath
-
Semantically equivalent to nextAfter(start,Double.NEGATIVE_INFINITY).
- nextUp(double) - Static method in class net.jafama.FastMath
-
Semantically equivalent to nextAfter(start,Double.POSITIVE_INFINITY).
- nextUp(double) - Static method in class net.jafama.StrictFastMath
-
Semantically equivalent to nextAfter(start,Double.POSITIVE_INFINITY).
- nextUp(float) - Static method in class net.jafama.FastMath
-
Semantically equivalent to nextAfter(start,Double.POSITIVE_INFINITY).
- nextUp(float) - Static method in class net.jafama.StrictFastMath
-
Semantically equivalent to nextAfter(start,Double.POSITIVE_INFINITY).
- NO_CSN_MAX_BOUND_EXCL - Static variable in class net.jafama.NumbersUtils
- NO_CSN_MIN_BOUND_INCL - Static variable in class net.jafama.NumbersUtils
- NORMALIZE_ANGLE_MAX_MEDIUM_DOUBLE_PIO2 - Static variable in class net.jafama.CmnFastMath
-
fdlibm uses 2^19*PI/2 here.
- normalizeMinusHalfPiHalfPi(double) - Static method in class net.jafama.FastMath
- normalizeMinusHalfPiHalfPi(double) - Static method in class net.jafama.StrictFastMath
- normalizeMinusHalfPiHalfPiFast(double) - Static method in class net.jafama.FastMath
-
Not accurate for large values.
- normalizeMinusHalfPiHalfPiFast(double) - Static method in class net.jafama.StrictFastMath
-
Not accurate for large values.
- normalizeMinusPiPi(double) - Static method in class net.jafama.FastMath
- normalizeMinusPiPi(double) - Static method in class net.jafama.StrictFastMath
- normalizeMinusPiPiFast(double) - Static method in class net.jafama.FastMath
-
Not accurate for large values.
- normalizeMinusPiPiFast(double) - Static method in class net.jafama.StrictFastMath
-
Not accurate for large values.
- normalizeZeroTwoPi(double) - Static method in class net.jafama.FastMath
- normalizeZeroTwoPi(double) - Static method in class net.jafama.StrictFastMath
- normalizeZeroTwoPiFast(double) - Static method in class net.jafama.FastMath
-
Not accurate for large values.
- normalizeZeroTwoPiFast(double) - Static method in class net.jafama.StrictFastMath
-
Not accurate for large values.
- NumbersUtils - Class in net.jafama
-
Class containing various basic utility methods to deal with numbers.
- NumbersUtils() - Constructor for class net.jafama.NumbersUtils
O
- ONE_DIV_F2 - Static variable in class net.jafama.CmnFastMath
- ONE_DIV_F3 - Static variable in class net.jafama.CmnFastMath
- ONE_DIV_F4 - Static variable in class net.jafama.CmnFastMath
P
- PI - Static variable in class net.jafama.CmnFastMath
-
Closest double approximation of pi, which is inferior to mathematical pi: pi ~= 3.14159265358979323846...
- PI_HI - Static variable in class net.jafama.CmnFastMath
- PI_HI - Static variable in class net.jafama.NumbersUtils
- PI_INV - Static variable in class net.jafama.CmnFastMath
- PI_LO - Static variable in class net.jafama.CmnFastMath
- PI_LO - Static variable in class net.jafama.NumbersUtils
- PI_SUP - Static variable in class net.jafama.CmnFastMath
-
High double approximation of pi, which is further from pi than the low approximation PI: pi ~= 3.14159265358979323846...
- PIO2_HI - Static variable in class net.jafama.CmnFastMath
- PIO2_HI - Static variable in class net.jafama.NumbersUtils
- PIO2_INV - Static variable in class net.jafama.CmnFastMath
- PIO2_LO - Static variable in class net.jafama.CmnFastMath
- PIO2_LO - Static variable in class net.jafama.NumbersUtils
- PIO2_TAB0 - Static variable in class net.jafama.CmnFastMath
- PIO2_TAB1 - Static variable in class net.jafama.CmnFastMath
- PIO2_TAB2 - Static variable in class net.jafama.CmnFastMath
- PIO2_TAB3 - Static variable in class net.jafama.CmnFastMath
- PIO2_TAB4 - Static variable in class net.jafama.CmnFastMath
- PIO2_TAB5 - Static variable in class net.jafama.CmnFastMath
- plus2PI(double) - Static method in class net.jafama.NumbersUtils
- plus2PI_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- plusBounded(int, int) - Static method in class net.jafama.NumbersUtils
- plusBounded(long, long) - Static method in class net.jafama.NumbersUtils
- plusExact(int, int) - Static method in class net.jafama.NumbersUtils
- plusExact(long, long) - Static method in class net.jafama.NumbersUtils
- plusPI(double) - Static method in class net.jafama.NumbersUtils
- plusPI_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- plusPIO2(double) - Static method in class net.jafama.NumbersUtils
- plusPIO2_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- pow(double, double) - Static method in class net.jafama.FastMath
-
1e-13ish accuracy or better on whole double range.
- pow(double, double) - Static method in class net.jafama.StrictFastMath
-
1e-13ish accuracy or better on whole double range.
- pow2(double) - Static method in class net.jafama.FastMath
- pow2(double) - Static method in class net.jafama.NumbersUtils
- pow2(double) - Static method in class net.jafama.StrictFastMath
- pow2(float) - Static method in class net.jafama.FastMath
- pow2(float) - Static method in class net.jafama.NumbersUtils
- pow2(float) - Static method in class net.jafama.StrictFastMath
- pow2(int) - Static method in class net.jafama.CmnFastMath
- pow2(int) - Static method in class net.jafama.NumbersUtils
- pow2(long) - Static method in class net.jafama.CmnFastMath
- pow2(long) - Static method in class net.jafama.NumbersUtils
- pow2_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- pow2_strict(float) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- pow3(double) - Static method in class net.jafama.FastMath
- pow3(double) - Static method in class net.jafama.NumbersUtils
- pow3(double) - Static method in class net.jafama.StrictFastMath
- pow3(float) - Static method in class net.jafama.FastMath
- pow3(float) - Static method in class net.jafama.NumbersUtils
- pow3(float) - Static method in class net.jafama.StrictFastMath
- pow3(int) - Static method in class net.jafama.CmnFastMath
- pow3(int) - Static method in class net.jafama.NumbersUtils
- pow3(long) - Static method in class net.jafama.CmnFastMath
- pow3(long) - Static method in class net.jafama.NumbersUtils
- pow3_strict(double) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- pow3_strict(float) - Static method in class net.jafama.NumbersUtils
-
Strict version.
- powFast(double, int) - Static method in class net.jafama.FastMath
-
This treatment is somehow accurate for low values of |power|, and for |power*getExponent(value)| invalid input: '<' 1023 or so (to stay away from double extreme magnitudes (large and small)).
- powFast(double, int) - Static method in class net.jafama.StrictFastMath
-
This treatment is somehow accurate for low values of |power|, and for |power*getExponent(value)| invalid input: '<' 1023 or so (to stay away from double extreme magnitudes (large and small)).
- powQuick(double, double) - Static method in class net.jafama.FastMath
-
Quick pow, with a max relative error of about 1e-2 for value >= Double.MIN_NORMAL and 1e-10 invalid input: '<' |value^power| invalid input: '<' 1e10, of about 6e-2 for value >= Double.MIN_NORMAL and 1e-40 invalid input: '<' |value^power| invalid input: '<' 1e40, and worse accuracy otherwise.
- powQuick(double, double) - Static method in class net.jafama.StrictFastMath
-
Quick pow, with a max relative error of about 1e-2 for value >= Double.MIN_NORMAL and 1e-10 invalid input: '<' |value^power| invalid input: '<' 1e10, of about 6e-2 for value >= Double.MIN_NORMAL and 1e-40 invalid input: '<' |value^power| invalid input: '<' 1e40, and worse accuracy otherwise.
Q
- QUADRANT_BITS_0_MASK - Static variable in class net.jafama.CmnFastMath
-
Bit = 0 where quadrant is encoded in remainder bits.
- QUADRANT_PLACE_BITS - Static variable in class net.jafama.CmnFastMath
-
Remainder bits where quadrant is encoded, 0 elsewhere.
R
- random() - Static method in class net.jafama.FastMath
- random() - Static method in class net.jafama.StrictFastMath
- remainder(double, double) - Static method in class net.jafama.FastMath
-
Returns dividend - divisor * n, where n is the mathematical integer closest to dividend/divisor.
- remainder(double, double) - Static method in class net.jafama.StrictFastMath
-
Returns dividend - divisor * n, where n is the mathematical integer closest to dividend/divisor.
- remainderPi(double) - Static method in class net.jafama.FastMath
- remainderPi(double) - Static method in class net.jafama.StrictFastMath
- remainderPiFast(double) - Static method in class net.jafama.FastMath
-
Not accurate for large values.
- remainderPiFast(double) - Static method in class net.jafama.StrictFastMath
-
Not accurate for large values.
- remainderPiO2(double) - Static method in class net.jafama.FastMath
- remainderPiO2(double) - Static method in class net.jafama.StrictFastMath
- remainderTwoPi(double) - Static method in class net.jafama.FastMath
- remainderTwoPi(double) - Static method in class net.jafama.StrictFastMath
- remainderTwoPiFast(double) - Static method in class net.jafama.FastMath
-
Not accurate for large values.
- remainderTwoPiFast(double) - Static method in class net.jafama.StrictFastMath
-
Not accurate for large values.
- rint(double) - Static method in class net.jafama.FastMath
- rint(double) - Static method in class net.jafama.StrictFastMath
- rint(float) - Static method in class net.jafama.FastMath
- rint(float) - Static method in class net.jafama.StrictFastMath
- round(double) - Static method in class net.jafama.FastMath
-
Might have different semantics than Math.round(double), see bugs 6430675 and 8010430.
- round(double) - Static method in class net.jafama.StrictFastMath
-
Might have different semantics than StrictMath.round(double), see bugs 6430675 and 8010430.
- round(float) - Static method in class net.jafama.FastMath
-
Might have different semantics than Math.round(float), see bugs 6430675 and 8010430.
- round(float) - Static method in class net.jafama.StrictFastMath
-
Might have different semantics than StrictMath.round(float), see bugs 6430675 and 8010430.
- roundEven(double) - Static method in class net.jafama.FastMath
- roundEven(double) - Static method in class net.jafama.StrictFastMath
- roundEven(float) - Static method in class net.jafama.FastMath
- roundEven(float) - Static method in class net.jafama.StrictFastMath
- roundEvenToInt(double) - Static method in class net.jafama.FastMath
- roundEvenToInt(double) - Static method in class net.jafama.StrictFastMath
- roundToInt(double) - Static method in class net.jafama.FastMath
- roundToInt(double) - Static method in class net.jafama.StrictFastMath
S
- scalb(double, int) - Static method in class net.jafama.FastMath
-
Precision may be lost if the result is subnormal.
- scalb(double, int) - Static method in class net.jafama.StrictFastMath
-
Precision may be lost if the result is subnormal.
- scalb(float, int) - Static method in class net.jafama.FastMath
-
Precision may be lost if the result is subnormal.
- scalb(float, int) - Static method in class net.jafama.StrictFastMath
-
Precision may be lost if the result is subnormal.
- SFM_USE_JDK_MATH - Static variable in class net.jafama.CmnFastMath
- SFM_USE_POWTABS_FOR_ASIN - Static variable in class net.jafama.CmnFastMath
-
Set it to true if StrictFastMath.sqrt(double) is slow (more tables, but less calls to StrictFastMath.sqrt(double)).
- SFM_USE_REDEFINED_LOG - Static variable in class net.jafama.CmnFastMath
-
Used for both StrictFastMath.log(double) and StrictFastMath.log10(double).
- SFM_USE_REDEFINED_SQRT - Static variable in class net.jafama.CmnFastMath
- shortAsUnsigned(short) - Static method in class net.jafama.NumbersUtils
- signFromBit(double) - Static method in class net.jafama.FastMath
- signFromBit(double) - Static method in class net.jafama.NumbersUtils
- signFromBit(double) - Static method in class net.jafama.StrictFastMath
- signFromBit(float) - Static method in class net.jafama.FastMath
- signFromBit(float) - Static method in class net.jafama.NumbersUtils
- signFromBit(float) - Static method in class net.jafama.StrictFastMath
- signFromBit_antiCyclic(double) - Static method in class net.jafama.CmnFastMath
-
Redefined here, to avoid cyclic dependency with (Strict)FastMath.
- signum(double) - Static method in class net.jafama.FastMath
- signum(double) - Static method in class net.jafama.StrictFastMath
- signum(float) - Static method in class net.jafama.FastMath
- signum(float) - Static method in class net.jafama.StrictFastMath
- signum(int) - Static method in class net.jafama.NumbersUtils
- signum(long) - Static method in class net.jafama.NumbersUtils
- sin(double) - Static method in class net.jafama.FastMath
- sin(double) - Static method in class net.jafama.StrictFastMath
- SIN_COS_DELTA_HI - Static variable in class net.jafama.CmnFastMath
- SIN_COS_DELTA_LO - Static variable in class net.jafama.CmnFastMath
- SIN_COS_INDEXER - Static variable in class net.jafama.CmnFastMath
- SIN_COS_MAX_VALUE_FOR_INT_MODULO - Static variable in class net.jafama.CmnFastMath
-
Max abs value for index-based reduction, above which we use regular angle normalization.
- SIN_COS_TABS_SIZE - Static variable in class net.jafama.CmnFastMath
- sinAndCos(double, DoubleWrapper) - Static method in class net.jafama.FastMath
-
Computes sine and cosine together.
- sinAndCos(double, DoubleWrapper) - Static method in class net.jafama.StrictFastMath
-
Computes sine and cosine together.
- sinh(double) - Static method in class net.jafama.FastMath
-
Some properties of sinh(x) = (exp(x)-exp(-x))/2: 1) defined on ]-Infinity,+Infinity[ 2) result in ]-Infinity,+Infinity[ 3) sinh(x) = -sinh(-x) (implies sinh(0) = 0) 4) sinh(epsilon) ~= epsilon 5) lim(sinh(x),x->+Infinity) = +Infinity (y increasing exponentially faster than x) 6) reaches +Infinity (double overflow) for x >= 710.475860073944, i.e.
- sinh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of sinh(x) = (exp(x)-exp(-x))/2: 1) defined on ]-Infinity,+Infinity[ 2) result in ]-Infinity,+Infinity[ 3) sinh(x) = -sinh(-x) (implies sinh(0) = 0) 4) sinh(epsilon) ~= epsilon 5) lim(sinh(x),x->+Infinity) = +Infinity (y increasing exponentially faster than x) 6) reaches +Infinity (double overflow) for x >= 710.475860073944, i.e.
- sinhAndCosh(double, DoubleWrapper) - Static method in class net.jafama.FastMath
-
Computes hyperbolic sine and hyperbolic cosine together.
- sinhAndCosh(double, DoubleWrapper) - Static method in class net.jafama.StrictFastMath
-
Computes hyperbolic sine and hyperbolic cosine together.
- sinQuick(double) - Static method in class net.jafama.FastMath
-
Quick sin, with accuracy of about 1.6e-3 (PI/invalid input: '<'look-up tabs size>) for |angle| invalid input: '<' 6588395.0 (Integer.MAX_VALUE * (2*PI/invalid input: '<'look-up tabs size>) - 2) (- 2 due to removing PI/2 before using cosine tab), and no accuracy at all for larger values.
- sinQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick sin, with accuracy of about 1.6e-3 (PI/invalid input: '<'look-up tabs size>) for |angle| invalid input: '<' 6588395.0 (Integer.MAX_VALUE * (2*PI/invalid input: '<'look-up tabs size>) - 2) (- 2 due to removing PI/2 before using cosine tab), and no accuracy at all for larger values.
- sinTab - Static variable in class net.jafama.CmnFastMath.MyTSinCos
- sqrt(double) - Static method in class net.jafama.FastMath
- sqrt(double) - Static method in class net.jafama.StrictFastMath
- SQRT_2 - Static variable in class net.jafama.CmnFastMath
- SQRT_LO_BITS - Static variable in class net.jafama.CmnFastMath
- SQRT_LO_TAB_SIZE - Static variable in class net.jafama.CmnFastMath
- sqrtQuick(double) - Static method in class net.jafama.FastMath
-
Quick sqrt, with with a max relative error of about 3.41e-2 for values in [Double.MIN_NORMAL,Double.MAX_VALUE], and worse accuracy outside this range.
- sqrtQuick(double) - Static method in class net.jafama.StrictFastMath
-
Quick sqrt, with with a max relative error of about 3.41e-2 for values in [Double.MIN_NORMAL,Double.MAX_VALUE], and worse accuracy outside this range.
- sqrtSlopeHiTab - Static variable in class net.jafama.CmnFastMath.MyTSqrt
- sqrtSlopeLoTab - Static variable in class net.jafama.CmnFastMath.MyTSqrt
- sqrtXSqrtHiTab - Static variable in class net.jafama.CmnFastMath.MyTSqrt
- sqrtXSqrtLoTab - Static variable in class net.jafama.CmnFastMath.MyTSqrt
- StrictFastMath - Class in net.jafama
-
Strict versions of FastMath methods.
- StrictFastMath() - Constructor for class net.jafama.StrictFastMath
-
Non-instantiable.
- subtractBounded(int, int) - Static method in class net.jafama.CmnFastMath
- subtractBounded(long, long) - Static method in class net.jafama.CmnFastMath
- subtractExact(int, int) - Static method in class net.jafama.CmnFastMath
- subtractExact(long, long) - Static method in class net.jafama.CmnFastMath
T
- tan(double) - Static method in class net.jafama.FastMath
-
Can have very bad relative error near +-PI/2, but of the same magnitude than the relative delta between StrictMath.tan(PI/2) and StrictMath.tan(nextDown(PI/2)).
- tan(double) - Static method in class net.jafama.StrictFastMath
-
Can have very bad relative error near +-PI/2, but of the same magnitude than the relative delta between StrictMath.tan(PI/2) and StrictMath.tan(nextDown(PI/2)).
- TAN_DELTA_HI - Static variable in class net.jafama.CmnFastMath
- TAN_DELTA_LO - Static variable in class net.jafama.CmnFastMath
- TAN_INDEXER - Static variable in class net.jafama.CmnFastMath
- TAN_MAX_VALUE_FOR_INT_MODULO - Static variable in class net.jafama.CmnFastMath
-
Max abs value for fast modulo, above which we use regular angle normalization.
- TAN_MAX_VALUE_FOR_TABS - Static variable in class net.jafama.CmnFastMath
-
Must be >= 45deg, and supposed to be >= 51.4deg, as fdlibm code is not supposed to work with values inferior to that (51.4deg is about (PI/2-Double.longBitsToDouble(0x3FE5942800000000L))).
- TAN_TABS_SIZE - Static variable in class net.jafama.CmnFastMath
- TAN_VIRTUAL_TABS_SIZE - Static variable in class net.jafama.CmnFastMath
-
We use indexing past look-up tables, so that indexing information allows for fast recomputation of angle in [0,PI/2] range.
- tanDer1DivF1Tab - Static variable in class net.jafama.CmnFastMath.MyTTan
- tanDer2DivF2Tab - Static variable in class net.jafama.CmnFastMath.MyTTan
- tanDer3DivF3Tab - Static variable in class net.jafama.CmnFastMath.MyTTan
- tanDer4DivF4Tab - Static variable in class net.jafama.CmnFastMath.MyTTan
- tanh(double) - Static method in class net.jafama.FastMath
-
Some properties of tanh(x) = sinh(x)/cosh(x) = (exp(2*x)-1)/(exp(2*x)+1): 1) defined on ]-Infinity,+Infinity[ 2) result in ]-1,1[ 3) tanh(x) = -tanh(-x) (implies tanh(0) = 0) 4) tanh(epsilon) ~= epsilon 5) lim(tanh(x),x->+Infinity) = 1 6) reaches 1 (double loss of precision) for x = 19.061547465398498
- tanh(double) - Static method in class net.jafama.StrictFastMath
-
Some properties of tanh(x) = sinh(x)/cosh(x) = (exp(2*x)-1)/(exp(2*x)+1): 1) defined on ]-Infinity,+Infinity[ 2) result in ]-1,1[ 3) tanh(x) = -tanh(-x) (implies tanh(0) = 0) 4) tanh(epsilon) ~= epsilon 5) lim(tanh(x),x->+Infinity) = 1 6) reaches 1 (double loss of precision) for x = 19.061547465398498
- TANH_1_THRESHOLD - Static variable in class net.jafama.CmnFastMath
-
Constant found experimentally: StrictMath.tanh(TANH_1_THRESHOLD) = 1, StrictMath.tanh(nextDown(TANH_1_THRESHOLD)) = FastMath.tanh(nextDown(TANH_1_THRESHOLD)) invalid input: '<' 1.
- tanTab - Static variable in class net.jafama.CmnFastMath.MyTTan
- timesBounded(int, int) - Static method in class net.jafama.NumbersUtils
- timesBounded(long, long) - Static method in class net.jafama.NumbersUtils
- timesExact(int, int) - Static method in class net.jafama.NumbersUtils
- timesExact(long, long) - Static method in class net.jafama.NumbersUtils
- toDegrees(boolean, int, int, double) - Static method in class net.jafama.FastMath
- toDegrees(boolean, int, int, double) - Static method in class net.jafama.StrictFastMath
- toDegrees(double) - Static method in class net.jafama.FastMath
-
Gives same result as Math.toDegrees for some particular values like Math.PI/2, Math.PI or 2*Math.PI, but is faster (no division).
- toDegrees(double) - Static method in class net.jafama.StrictFastMath
-
Gives same result as StrictMath.toDegrees for some particular values like Math.PI/2, Math.PI or 2*Math.PI, but is faster (no division).
- toDMS(double, IntWrapper, IntWrapper, DoubleWrapper) - Static method in class net.jafama.FastMath
- toDMS(double, IntWrapper, IntWrapper, DoubleWrapper) - Static method in class net.jafama.StrictFastMath
- toInt(long) - Static method in class net.jafama.CmnFastMath
- toInt(long) - Static method in class net.jafama.NumbersUtils
- toIntExact(long) - Static method in class net.jafama.CmnFastMath
- toRadians(boolean, int, int, double) - Static method in class net.jafama.FastMath
- toRadians(boolean, int, int, double) - Static method in class net.jafama.StrictFastMath
- toRadians(double) - Static method in class net.jafama.FastMath
-
Gives same result as Math.toRadians for some particular values like 90.0, 180.0 or 360.0, but is faster (no division).
- toRadians(double) - Static method in class net.jafama.StrictFastMath
-
Gives same result as StrictMath.toRadians for some particular values like 90.0, 180.0 or 360.0, but is faster (no division).
- toRange(double, double, double) - Static method in class net.jafama.FastMath
- toRange(double, double, double) - Static method in class net.jafama.NumbersUtils
- toRange(double, double, double) - Static method in class net.jafama.StrictFastMath
- toRange(float, float, float) - Static method in class net.jafama.FastMath
- toRange(float, float, float) - Static method in class net.jafama.NumbersUtils
- toRange(float, float, float) - Static method in class net.jafama.StrictFastMath
- toRange(int, int, int) - Static method in class net.jafama.CmnFastMath
- toRange(int, int, int) - Static method in class net.jafama.NumbersUtils
- toRange(long, long, long) - Static method in class net.jafama.CmnFastMath
- toRange(long, long, long) - Static method in class net.jafama.NumbersUtils
- toString() - Method in class net.jafama.DoubleWrapper
- toString() - Method in class net.jafama.IntWrapper
- toString(int) - Static method in class net.jafama.NumbersUtils
-
This method just delegates to Integer.toString(int), but is defined here to complete the API.
- toString(int, int) - Static method in class net.jafama.NumbersUtils
- toString(int, int, int) - Static method in class net.jafama.NumbersUtils
- toString(long) - Static method in class net.jafama.NumbersUtils
-
This method just delegates to Long.toString(long), but is defined here to complete the API.
- toString(long, int) - Static method in class net.jafama.NumbersUtils
- toString(long, int, int) - Static method in class net.jafama.NumbersUtils
- toStringBits(byte) - Static method in class net.jafama.NumbersUtils
- toStringBits(byte, int, int, boolean, boolean) - Static method in class net.jafama.NumbersUtils
- toStringBits(int) - Static method in class net.jafama.NumbersUtils
- toStringBits(int, int, int, boolean, boolean) - Static method in class net.jafama.NumbersUtils
- toStringBits(long) - Static method in class net.jafama.NumbersUtils
- toStringBits(long, int, int, boolean, boolean) - Static method in class net.jafama.NumbersUtils
- toStringBits(short) - Static method in class net.jafama.NumbersUtils
- toStringBits(short, int, int, boolean, boolean) - Static method in class net.jafama.NumbersUtils
- toStringBits_0_32_bitPosAlreadyChecked(int, int, int, int, boolean, boolean) - Static method in class net.jafama.NumbersUtils
-
Common method for byte, short and int.
- toStringCSN(double) - Static method in class net.jafama.NumbersUtils
- toStringNoCSN(double) - Static method in class net.jafama.NumbersUtils
- TWO_MATH_PI_IN_MINUS_PI_PI - Static variable in class net.jafama.CmnFastMath
-
2*Math.PI, normalized into [-PI,PI], as returned by StrictMath.asin(StrictMath.sin(2*Math.PI)) (asin behaves as identity for this).
- TWO_OVER_PI_TAB - Static variable in class net.jafama.CmnFastMath
-
Table of constants for 1/(PI/2), 282 Hex digits (enough for normalizing doubles).
- TWO_POW_23_F - Static variable in class net.jafama.CmnFastMath
- TWO_POW_24 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_26 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_27 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_512 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_52 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_66 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N24 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N26 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N27 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N28 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N512 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_N55 - Static variable in class net.jafama.CmnFastMath
- TWO_POW_TAB_SIZE - Static variable in class net.jafama.CmnFastMath
- TWOPI_HI - Static variable in class net.jafama.CmnFastMath
- TWOPI_HI - Static variable in class net.jafama.NumbersUtils
- TWOPI_INV - Static variable in class net.jafama.CmnFastMath
- TWOPI_LO - Static variable in class net.jafama.CmnFastMath
- TWOPI_LO - Static variable in class net.jafama.NumbersUtils
- twoPow(int) - Static method in class net.jafama.CmnFastMath
-
Returns the exact result, provided it's in double range, i.e.
- twoPow(int) - Static method in class net.jafama.NumbersUtils
-
Returns the exact result, provided it's in double range, i.e.
- twoPowAsIntBounded(int) - Static method in class net.jafama.NumbersUtils
- twoPowAsIntExact(int) - Static method in class net.jafama.NumbersUtils
- twoPowAsLongBounded(int) - Static method in class net.jafama.NumbersUtils
- twoPowAsLongExact(int) - Static method in class net.jafama.NumbersUtils
- twoPowNormal(int) - Static method in class net.jafama.CmnFastMath
- twoPowNormalOrSubnormal(int) - Static method in class net.jafama.CmnFastMath
- twoPowTab - Static variable in class net.jafama.CmnFastMath.MyTTwoPow
U
- ulp(double) - Static method in class net.jafama.FastMath
-
The ULP (Unit in the Last Place) is the distance to the next value larger in magnitude.
- ulp(double) - Static method in class net.jafama.StrictFastMath
-
The ULP (Unit in the Last Place) is the distance to the next value larger in magnitude.
- ulp(float) - Static method in class net.jafama.FastMath
-
The ULP (Unit in the Last Place) is the distance to the next value larger in magnitude.
- ulp(float) - Static method in class net.jafama.StrictFastMath
-
The ULP (Unit in the Last Place) is the distance to the next value larger in magnitude.
- USE_JDK_MATH - Static variable in class net.jafama.FastMath
- USE_JDK_MATH - Static variable in class net.jafama.StrictFastMath
- USE_POWTABS_FOR_ASIN - Static variable in class net.jafama.FastMath
- USE_POWTABS_FOR_ASIN - Static variable in class net.jafama.StrictFastMath
- USE_REDEFINED_LOG - Static variable in class net.jafama.FastMath
- USE_REDEFINED_LOG - Static variable in class net.jafama.StrictFastMath
- USE_REDEFINED_SQRT - Static variable in class net.jafama.FastMath
- USE_REDEFINED_SQRT - Static variable in class net.jafama.StrictFastMath
- USE_TWO_POW_TAB - Static variable in class net.jafama.CmnFastMath
-
Using two pow tab can just make things barely faster, and could relatively hurt in case of cache-misses, especially for methods that otherwise wouldn't rely on any tab, so we don't use it.
V
- value - Variable in class net.jafama.DoubleWrapper
- value - Variable in class net.jafama.IntWrapper
All Classes and Interfaces|All Packages|Constant Field Values