public final class MathUtils extends Object
ArithmeticUtils,
Precision,
MathArrays| Modifier and Type | Field and Description |
|---|---|
static double |
PI_SQUARED
\(\pi^2\)
|
static double |
TWO_PI
\(2\pi\)
|
| Modifier and Type | Method and Description |
|---|---|
static void |
checkFinite(double x)
Check that the argument is a real number.
|
static void |
checkFinite(double[] val)
Check that all the elements are real numbers.
|
static void |
checkNotNull(Object o)
Checks that an object is not null.
|
static void |
checkNotNull(Object o,
Localizable pattern,
Object... args)
Checks that an object is not null.
|
static byte |
copySign(byte magnitude,
byte sign)
Returns the first argument with the sign of the second argument.
|
static int |
copySign(int magnitude,
int sign)
Returns the first argument with the sign of the second argument.
|
static long |
copySign(long magnitude,
long sign)
Returns the first argument with the sign of the second argument.
|
static short |
copySign(short magnitude,
short sign)
Returns the first argument with the sign of the second argument.
|
static boolean |
equals(double x,
double y)
Returns
true if the values are equal according to semantics of
Double.equals(Object). |
static int |
hash(double value)
Returns an integer hash code representing the given double value.
|
static int |
hash(double[] value)
Returns an integer hash code representing the given double array.
|
static <T extends RealFieldElement<T>> |
max(T e1,
T e2)
Find the maximum of two field elements.
|
static <T extends RealFieldElement<T>> |
min(T e1,
T e2)
Find the minimum of two field elements.
|
static double |
normalizeAngle(double a,
double center)
Normalize an angle in a 2π wide interval around a center value.
|
static double |
reduce(double a,
double period,
double offset)
Reduce
|a - offset| to the primary interval
[0, |period|). |
public static final double TWO_PI
public static final double PI_SQUARED
public static int hash(double value)
value - the value to be hashedpublic static boolean equals(double x,
double y)
true if the values are equal according to semantics of
Double.equals(Object).x - Valuey - Valuenew Double(x).equals(new Double(y))public static int hash(double[] value)
value - the value to be hashed (may be null)public static double normalizeAngle(double a,
double center)
This method has three main uses:
a = MathUtils.normalizeAngle(a, FastMath.PI);a = MathUtils.normalizeAngle(a, 0.0);angle = MathUtils.normalizeAngle(end, start) - start;Note that due to numerical accuracy and since π cannot be represented exactly, the result interval is closed, it cannot be half-closed as would be more satisfactory in a purely mathematical view.
a - angle to normalizecenter - center of the desired 2π interval for the resultpublic static <T extends RealFieldElement<T>> T max(T e1, T e2)
T - the type of the field elementse1 - first elemente2 - second elementpublic static <T extends RealFieldElement<T>> T min(T e1, T e2)
T - the type of the field elementse1 - first elemente2 - second elementpublic static double reduce(double a,
double period,
double offset)
Reduce |a - offset| to the primary interval
[0, |period|).
Specifically, the value returned is
a - |period| * floor((a - offset) / |period|) - offset.
If any of the parameters are NaN or infinite, the result is
NaN.
a - Value to reduce.period - Period.offset - Value that will be mapped to 0.[0 |period|),
that corresponds to a.public static byte copySign(byte magnitude,
byte sign)
throws MathArithmeticException
magnitude - Magnitude of the returned value.sign - Sign of the returned value.magnitude and with the
same sign as the sign argument.MathArithmeticException - if magnitude == Byte.MIN_VALUE
and sign >= 0.public static short copySign(short magnitude,
short sign)
throws MathArithmeticException
magnitude - Magnitude of the returned value.sign - Sign of the returned value.magnitude and with the
same sign as the sign argument.MathArithmeticException - if magnitude == Short.MIN_VALUE
and sign >= 0.public static int copySign(int magnitude,
int sign)
throws MathArithmeticException
magnitude - Magnitude of the returned value.sign - Sign of the returned value.magnitude and with the
same sign as the sign argument.MathArithmeticException - if magnitude == Integer.MIN_VALUE
and sign >= 0.public static long copySign(long magnitude,
long sign)
throws MathArithmeticException
magnitude - Magnitude of the returned value.sign - Sign of the returned value.magnitude and with the
same sign as the sign argument.MathArithmeticException - if magnitude == Long.MIN_VALUE
and sign >= 0.public static void checkFinite(double x)
throws NotFiniteNumberException
x - Argument.NotFiniteNumberException - if x is not a
finite real number.public static void checkFinite(double[] val)
throws NotFiniteNumberException
val - Arguments.NotFiniteNumberException - if any values of the array is not a
finite real number.public static void checkNotNull(Object o, Localizable pattern, Object... args) throws NullArgumentException
o - Object to be checked.pattern - Message pattern.args - Arguments to replace the placeholders in pattern.NullArgumentException - if o is null.public static void checkNotNull(Object o) throws NullArgumentException
o - Object to be checked.NullArgumentException - if o is null.Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.