Package org.hipparchus.util
Class BigReal
- java.lang.Object
-
- org.hipparchus.util.BigReal
-
- All Implemented Interfaces:
Serializable,Comparable<BigReal>,FieldElement<BigReal>
public class BigReal extends Object implements FieldElement<BigReal>, Comparable<BigReal>, Serializable
Arbitrary precision decimal number.This class is a simple wrapper around the standard
BigDecimalin order to implement theFieldElementinterface.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description BigReal(char[] in)Build an instance from a characters representation.BigReal(char[] in, int offset, int len)Build an instance from a characters representation.BigReal(char[] in, int offset, int len, MathContext mc)Build an instance from a characters representation.BigReal(char[] in, MathContext mc)Build an instance from a characters representation.BigReal(double val)Build an instance from a double.BigReal(double val, MathContext mc)Build an instance from a double.BigReal(int val)Build an instance from an int.BigReal(int val, MathContext mc)Build an instance from an int.BigReal(long val)Build an instance from a long.BigReal(long val, MathContext mc)Build an instance from a long.BigReal(String val)Build an instance from a String representation.BigReal(String val, MathContext mc)Build an instance from a String representation.BigReal(BigDecimal val)Build an instance from a BigDecimal.BigReal(BigInteger val)Build an instance from a BigInteger.BigReal(BigInteger unscaledVal, int scale)Build an instance from an unscaled BigInteger.BigReal(BigInteger unscaledVal, int scale, MathContext mc)Build an instance from an unscaled BigInteger.BigReal(BigInteger val, MathContext mc)Build an instance from a BigInteger.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BigRealadd(BigReal a)Compute this + a.BigDecimalbigDecimalValue()Get the BigDecimal value corresponding to the instance.intcompareTo(BigReal a)BigRealdivide(BigReal a)Compute this ÷ a.doubledoubleValue()Get the double value corresponding to the instance.booleanequals(Object other)Field<BigReal>getField()Get theFieldto which the instance belongs.doublegetReal()Get the real value of the number.RoundingModegetRoundingMode()Gets the rounding mode for division operations The default isRoundingMode.HALF_UPintgetScale()Sets the scale for division operations.inthashCode()BigRealmultiply(int n)Compute n × this.BigRealmultiply(BigReal a)Compute this × a.BigRealnegate()Returns the additive inverse ofthiselement.BigRealreciprocal()Returns the multiplicative inverse ofthiselement.voidsetRoundingMode(RoundingMode roundingMode)Sets the rounding mode for decimal divisions.voidsetScale(int scale)Sets the scale for division operations.BigRealsubtract(BigReal a)Compute this - a.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hipparchus.FieldElement
isZero
-
-
-
-
Constructor Detail
-
BigReal
public BigReal(BigDecimal val)
Build an instance from a BigDecimal.- Parameters:
val- value of the instance
-
BigReal
public BigReal(BigInteger val)
Build an instance from a BigInteger.- Parameters:
val- value of the instance
-
BigReal
public BigReal(BigInteger unscaledVal, int scale)
Build an instance from an unscaled BigInteger.- Parameters:
unscaledVal- unscaled valuescale- scale to use
-
BigReal
public BigReal(BigInteger unscaledVal, int scale, MathContext mc)
Build an instance from an unscaled BigInteger.- Parameters:
unscaledVal- unscaled valuescale- scale to usemc- to used
-
BigReal
public BigReal(BigInteger val, MathContext mc)
Build an instance from a BigInteger.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(char[] in)
Build an instance from a characters representation.- Parameters:
in- character representation of the value
-
BigReal
public BigReal(char[] in, int offset, int len)Build an instance from a characters representation.- Parameters:
in- character representation of the valueoffset- offset of the first character to analyzelen- length of the array slice to analyze
-
BigReal
public BigReal(char[] in, int offset, int len, MathContext mc)Build an instance from a characters representation.- Parameters:
in- character representation of the valueoffset- offset of the first character to analyzelen- length of the array slice to analyzemc- context to use
-
BigReal
public BigReal(char[] in, MathContext mc)Build an instance from a characters representation.- Parameters:
in- character representation of the valuemc- context to use
-
BigReal
public BigReal(double val)
Build an instance from a double.- Parameters:
val- value of the instance
-
BigReal
public BigReal(double val, MathContext mc)Build an instance from a double.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(int val)
Build an instance from an int.- Parameters:
val- value of the instance
-
BigReal
public BigReal(int val, MathContext mc)Build an instance from an int.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(long val)
Build an instance from a long.- Parameters:
val- value of the instance
-
BigReal
public BigReal(long val, MathContext mc)Build an instance from a long.- Parameters:
val- value of the instancemc- context to use
-
BigReal
public BigReal(String val)
Build an instance from a String representation.- Parameters:
val- character representation of the value
-
BigReal
public BigReal(String val, MathContext mc)
Build an instance from a String representation.- Parameters:
val- character representation of the valuemc- context to use
-
-
Method Detail
-
getReal
public double getReal()
Get the real value of the number.- Specified by:
getRealin interfaceFieldElement<BigReal>- Returns:
- real value
-
getRoundingMode
public RoundingMode getRoundingMode()
Gets the rounding mode for division operations The default isRoundingMode.HALF_UP- Returns:
- the rounding mode.
-
setRoundingMode
public void setRoundingMode(RoundingMode roundingMode)
Sets the rounding mode for decimal divisions.- Parameters:
roundingMode- rounding mode for decimal divisions
-
getScale
public int getScale()
Sets the scale for division operations. The default is 64- Returns:
- the scale
-
setScale
public void setScale(int scale)
Sets the scale for division operations.- Parameters:
scale- scale for division operations
-
add
public BigReal add(BigReal a)
Compute this + a.- Specified by:
addin interfaceFieldElement<BigReal>- Parameters:
a- element to add- Returns:
- a new element representing this + a
-
subtract
public BigReal subtract(BigReal a)
Compute this - a.- Specified by:
subtractin interfaceFieldElement<BigReal>- Parameters:
a- element to subtract- Returns:
- a new element representing this - a
-
negate
public BigReal negate()
Returns the additive inverse ofthiselement.- Specified by:
negatein interfaceFieldElement<BigReal>- Returns:
- the opposite of
this.
-
divide
public BigReal divide(BigReal a) throws MathRuntimeException
Compute this ÷ a.- Specified by:
dividein interfaceFieldElement<BigReal>- Parameters:
a- element to divide by- Returns:
- a new element representing this ÷ a
- Throws:
MathRuntimeException- ifais zero
-
reciprocal
public BigReal reciprocal() throws MathRuntimeException
Returns the multiplicative inverse ofthiselement.- Specified by:
reciprocalin interfaceFieldElement<BigReal>- Returns:
- the inverse of
this. - Throws:
MathRuntimeException- ifthisis zero
-
multiply
public BigReal multiply(BigReal a)
Compute this × a.- Specified by:
multiplyin interfaceFieldElement<BigReal>- Parameters:
a- element to multiply- Returns:
- a new element representing this × a
-
multiply
public BigReal multiply(int n)
Compute n × this. Multiplication by an integer number is defined as the following sum \[ n \times \mathrm{this} = \sum_{i=1}^n \mathrm{this} \]- Specified by:
multiplyin interfaceFieldElement<BigReal>- Parameters:
n- Number of timesthismust be added to itself.- Returns:
- A new element representing n × this.
-
compareTo
public int compareTo(BigReal a)
- Specified by:
compareToin interfaceComparable<BigReal>
-
doubleValue
public double doubleValue()
Get the double value corresponding to the instance.- Returns:
- double value corresponding to the instance
-
bigDecimalValue
public BigDecimal bigDecimalValue()
Get the BigDecimal value corresponding to the instance.- Returns:
- BigDecimal value corresponding to the instance
-
-