org.ojalgo.scalar
Class RationalNumber
java.lang.Object
java.lang.Number
org.ojalgo.scalar.RationalNumber
- All Implemented Interfaces:
- Serializable, Comparable<RationalNumber>, Scalar<RationalNumber>
public final class RationalNumber
- extends Number
- See Also:
- Serialized Form
NaN
public static final RationalNumber NaN
NEGATIVE_INFINITY
public static final RationalNumber NEGATIVE_INFINITY
ONE
public static final RationalNumber ONE
POSITIVE_INFINITY
public static final RationalNumber POSITIVE_INFINITY
ZERO
public static final RationalNumber ZERO
RationalNumber
public RationalNumber(BigDecimal aNmbr)
RationalNumber
public RationalNumber(double aNmbr)
RationalNumber
public RationalNumber(int aNumerator,
int aDenominator)
RationalNumber
public RationalNumber(long aNumerator,
long aDenominator)
gcd
public static BigInteger gcd(BigInteger aValue1,
BigInteger aValue2)
- Greatest Common Denominator
gcd
public static int gcd(int aValue1,
int aValue2)
- Greatest Common Denominator
gcd
public static long gcd(long aValue1,
long aValue2)
- Greatest Common Denominator
add
public RationalNumber add(double aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
add
public RationalNumber add(RationalNumber aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
compareTo
public int compareTo(RationalNumber aNmbr)
conjugate
public RationalNumber conjugate()
- See Also:
Scalar.conjugate(),
Scalar.invert(),
Scalar.negate()
divide
public RationalNumber divide(double aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
divide
public RationalNumber divide(RationalNumber aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
doubleValue
public double doubleValue()
- Specified by:
doubleValue in class Number
enforce
public RationalNumber enforce(NumberContext aCntxt)
equals
public boolean equals(Scalar<?> aSclr)
floatValue
public float floatValue()
- Specified by:
floatValue in class Number
getArgument
public double getArgument()
- See Also:
Scalar.getArgument(),
Scalar.getImaginary(),
Scalar.getModulus(),
Scalar.getReal()
getImaginary
public double getImaginary()
- See Also:
Scalar.getArgument(),
Scalar.getImaginary(),
Scalar.getModulus(),
Scalar.getReal()
getModulus
public double getModulus()
- See Also:
Scalar.getArgument(),
Scalar.getImaginary(),
Scalar.getModulus(),
Scalar.getReal()
getNumber
public RationalNumber getNumber()
getReal
public double getReal()
- See Also:
Scalar.getArgument(),
Scalar.getImaginary(),
Scalar.getModulus(),
Scalar.getReal()
intValue
public int intValue()
- Specified by:
intValue in class Number
invert
public RationalNumber invert()
- See Also:
Scalar.conjugate(),
Scalar.invert(),
Scalar.negate()
isInfinite
public boolean isInfinite()
- See Also:
Scalar.isAbsolute(),
Scalar.isInfinite(),
Scalar.isNaN(),
Scalar.isReal(),
Scalar.isZero()
isNaN
public boolean isNaN()
- See Also:
Scalar.isAbsolute(),
Scalar.isInfinite(),
Scalar.isNaN(),
Scalar.isReal(),
Scalar.isZero()
isReal
public boolean isReal()
- Returns:
- true if the absolute value of the imaginary part is less
than or equal to
PrimitiveMath.IS_ZERO; otherwise false.
- See Also:
Scalar.isAbsolute(),
Scalar.isInfinite(),
Scalar.isNaN(),
Scalar.isReal(),
Scalar.isZero()
longValue
public long longValue()
- Specified by:
longValue in class Number
multiply
public RationalNumber multiply(double aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
multiply
public RationalNumber multiply(RationalNumber aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
negate
public RationalNumber negate()
- See Also:
Scalar.conjugate(),
Scalar.invert(),
Scalar.negate()
power
public RationalNumber power(int anExp)
- See Also:
Scalar.power(int),
Scalar.root(int)
root
public RationalNumber root(int anExp)
- See Also:
Scalar.power(int),
Scalar.root(int)
round
public RationalNumber round(NumberContext aCntxt)
signum
public RationalNumber signum()
subtract
public RationalNumber subtract(double aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
subtract
public RationalNumber subtract(RationalNumber aNmbr)
- See Also:
Scalar.add(double),
Scalar.add(Number),
Scalar.divide(double),
Scalar.divide(Number),
Scalar.multiply(double),
Scalar.multiply(Number),
Scalar.subtract(double),
Scalar.subtract(Number)
toBigDecimal
public BigDecimal toBigDecimal()
toComplexNumber
public ComplexNumber toComplexNumber()
toString
public String toString()
- Overrides:
toString in class Object
equals
public final boolean equals(Object someObj)
- Overrides:
equals in class Object
hashCode
public final int hashCode()
- Overrides:
hashCode in class Object
isAbsolute
public final boolean isAbsolute()
- Specified by:
isAbsolute in interface Scalar<N extends Number>
- Returns:
- true if this is equal to its own modulus (non-negative
real part and no imaginary part); otherwise false.
- See Also:
Scalar.isAbsolute(),
Scalar.isInfinite(),
Scalar.isNaN(),
Scalar.isReal(),
Scalar.isZero()
isZero
public final boolean isZero()
- Specified by:
isZero in interface Scalar<N extends Number>
- Returns:
- true if the modulus is less than or equal to
PrimitiveMath.IS_ZERO; otherwise false.
- See Also:
Scalar.isAbsolute(),
Scalar.isInfinite(),
Scalar.isNaN(),
Scalar.isReal(),
Scalar.isZero()