Package org.hipparchus
Interface FieldElement<T extends FieldElement<T>>
- Type Parameters:
T
- the type of the field elements
- All Known Subinterfaces:
CalculusFieldElement<T>
,Derivative<T>
,Derivative1<T>
,FieldDerivative<S,
,T> FieldDerivative1<S,
T>
- All Known Implementing Classes:
BigFraction
,BigReal
,Binary64
,Complex
,DerivativeStructure
,Dfp
,DfpDec
,FieldComplex
,FieldDerivativeStructure
,FieldGradient
,FieldTuple
,FieldUnivariateDerivative
,FieldUnivariateDerivative1
,FieldUnivariateDerivative2
,Fraction
,Gradient
,SparseGradient
,Tuple
,UnivariateDerivative
,UnivariateDerivative1
,UnivariateDerivative2
public interface FieldElement<T extends FieldElement<T>>
Interface representing field elements.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionCompute this + a.Compute this ÷ a.getField()
Get theField
to which the instance belongs.double
getReal()
Get the real value of the number.default boolean
isZero()
Check if an element is semantically equal to zero.multiply
(int n) Compute n × this.Compute this × a.negate()
Returns the additive inverse ofthis
element.Returns the multiplicative inverse ofthis
element.Compute this - a.
-
Method Details
-
getReal
double getReal()Get the real value of the number.- Returns:
- real value
-
add
Compute this + a.- Parameters:
a
- element to add- Returns:
- a new element representing this + a
- Throws:
NullArgumentException
- ifa
isnull
.
-
subtract
Compute this - a.- Parameters:
a
- element to subtract- Returns:
- a new element representing this - a
- Throws:
NullArgumentException
- ifa
isnull
.
-
negate
T negate()Returns the additive inverse ofthis
element.- Returns:
- the opposite of
this
.
-
multiply
Compute n × this. Multiplication by an integer number is defined as the following sum \[ n \times \mathrm{this} = \sum_{i=1}^n \mathrm{this} \]- Parameters:
n
- Number of timesthis
must be added to itself.- Returns:
- A new element representing n × this.
-
multiply
Compute this × a.- Parameters:
a
- element to multiply- Returns:
- a new element representing this × a
- Throws:
NullArgumentException
- ifa
isnull
.
-
divide
Compute this ÷ a.- Parameters:
a
- element to divide by- Returns:
- a new element representing this ÷ a
- Throws:
NullArgumentException
- ifa
isnull
.MathRuntimeException
- ifa
is zero
-
reciprocal
Returns the multiplicative inverse ofthis
element.- Returns:
- the inverse of
this
. - Throws:
MathRuntimeException
- ifthis
is zero
-
getField
Get theField
to which the instance belongs.- Returns:
Field
to which the instance belongs
-
isZero
default boolean isZero()Check if an element is semantically equal to zero.The default implementation simply calls
equals(getField().getZero())
. However, this may need to be overridden in some cases as due to compatibility withhashCode()
some classes implementsequals(Object)
in such a way that -0.0 and +0.0 are different, which may be a problem. It prevents for example identifying a diagonal element is zero and should be avoided when doing partial pivoting in LU decomposition.- Returns:
- true if the element is semantically equal to zero
- Since:
- 1.8
-