Package org.ojalgo.scalar
Class PrimitiveScalar
java.lang.Object
org.ojalgo.scalar.PrimitiveScalar
- All Implemented Interfaces:
Comparable<Double>
,Field<Scalar<Double>>
,Group
,Group.Additive<Scalar<Double>>
,Group.Multiplicative<Scalar<Double>>
,NormedVectorSpace<Scalar<Double>,
,Double> Operation
,Operation.Addition<Scalar<Double>>
,Operation.Division<Scalar<Double>>
,Operation.Multiplication<Scalar<Double>>
,Operation.Subtraction<Scalar<Double>>
,Ring<Scalar<Double>>
,ScalarOperation
,ScalarOperation.Addition<Scalar<Double>,
,Double> ScalarOperation.Division<Scalar<Double>,
,Double> ScalarOperation.Multiplication<Scalar<Double>,
,Double> ScalarOperation.Subtraction<Scalar<Double>,
,Double> VectorSpace<Scalar<Double>,
,Double> Scalar<Double>
,AccessScalar<Double>
,Tensor<Double,
,Scalar<Double>> NumberContext.Enforceable<PrimitiveScalar>
,NumberDefinition
public final class PrimitiveScalar
extends Object
implements Scalar<Double>, NumberContext.Enforceable<PrimitiveScalar>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.ojalgo.algebra.Group
Group.Additive<T>, Group.Multiplicative<T>
Nested classes/interfaces inherited from interface org.ojalgo.algebra.Operation
Operation.Addition<T>, Operation.Division<T>, Operation.Multiplication<T>, Operation.Subtraction<T>
Nested classes/interfaces inherited from interface org.ojalgo.scalar.Scalar
Scalar.Factory<N extends Comparable<N>>
Nested classes/interfaces inherited from interface org.ojalgo.algebra.ScalarOperation
ScalarOperation.Addition<T,
N extends Comparable<N>>, ScalarOperation.Division<T, N extends Comparable<N>>, ScalarOperation.Multiplication<T, N extends Comparable<N>>, ScalarOperation.Subtraction<T, N extends Comparable<N>> -
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final NumberContext
static final Scalar.Factory
<Double> private final double
static final PrimitiveScalar
static final PrimitiveScalar
static final PrimitiveScalar
static final PrimitiveScalar
static final PrimitiveScalar
static final PrimitiveScalar
static final PrimitiveScalar
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadd
(double arg) add
(float scalarAddend) int
This method will (most likely) be moved to some other interface in the future! Just have to figure out where it fits...divide
(double arg) divide
(float scalarDivisor) double
enforce
(NumberContext context) boolean
float
get()
int
hashCode()
int
intValue()
invert()
The multiplicative inverse.boolean
static boolean
isAbsolute
(double value) static boolean
isInfinite
(double value) static boolean
isNaN
(double value) boolean
isSmall
(double comparedTo) static boolean
isSmall
(double comparedTo, double value) long
multiply
(double arg) multiply
(float scalarMultiplicand) negate()
The additive inverse of this.double
norm()
this == this.signum().multiply(this.norm())
static PrimitiveScalar
of
(double value) power
(int power) Multiply by itselfpower
times.signum()
this == this.signum().multiply(this.norm())
subtract
(double arg) subtract
(float scalarSubtrahend) toString()
toString
(NumberContext context) static PrimitiveScalar
valueOf
(double value) static PrimitiveScalar
valueOf
(Comparable<?> number) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.ojalgo.type.NumberDefinition
booleanValue, byteValue, shortValue
Methods inherited from interface org.ojalgo.scalar.Scalar
add, dimensions, divide, multiply, rank, subtract, toPlainString
Methods inherited from interface org.ojalgo.tensor.Tensor
components, isSameShape
-
Field Details
-
FACTORY
-
NaN
-
NEG
-
NEGATIVE_INFINITY
-
ONE
-
POSITIVE_INFINITY
-
TWO
-
ZERO
-
CONTEXT
-
myValue
private final double myValue
-
-
Constructor Details
-
PrimitiveScalar
public PrimitiveScalar() -
PrimitiveScalar
private PrimitiveScalar(double value)
-
-
Method Details
-
isAbsolute
public static boolean isAbsolute(double value) -
isInfinite
public static boolean isInfinite(double value) -
isNaN
public static boolean isNaN(double value) -
isSmall
public static boolean isSmall(double comparedTo, double value) -
of
-
valueOf
-
valueOf
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<Double>,
Double> - Returns:
this + scalarAddend
.
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<Double>,
Double> - Returns:
this + scalarAddend
.
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<Double>,
Double> - Returns:
this + scalarAddend
.
-
compareTo
- Specified by:
compareTo
in interfaceComparable<Double>
-
conjugate
Description copied from interface:VectorSpace
This method will (most likely) be moved to some other interface in the future! Just have to figure out where it fits...
The conjugate transpose of a matrix and/or the conjugate of a scalar/field like ComplexNumber or Quaternion.
The conjugate transpose of a real matrix is simply its transpose.
- Specified by:
conjugate
in interfaceVectorSpace<Scalar<Double>,
Double>
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<Double>,
Double> - Returns:
this / scalarDivisor
.
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<Double>,
Double> - Returns:
this / scalarDivisor
.
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<Double>,
Double> - Returns:
this / scalarDivisor
.
-
doubleValue
public double doubleValue()- Specified by:
doubleValue
in interfaceNumberDefinition
-
enforce
- Specified by:
enforce
in interfaceNumberContext.Enforceable<PrimitiveScalar>
-
equals
-
floatValue
public float floatValue()- Specified by:
floatValue
in interfaceNumberDefinition
-
get
- Specified by:
get
in interfaceAccessScalar<Double>
-
hashCode
public int hashCode() -
intValue
public int intValue()- Specified by:
intValue
in interfaceNumberDefinition
-
invert
Description copied from interface:Group.Multiplicative
The multiplicative inverse.- Specified by:
invert
in interfaceGroup.Multiplicative<Scalar<Double>>
- Returns:
IDENTITY / this
.
-
isAbsolute
public boolean isAbsolute()- Specified by:
isAbsolute
in interfaceScalar<Double>
- Returns:
- true if this is equal to its own norm, modulus or absolute value (non-negative real part and no imaginary part); otherwise false.
- See Also:
-
isSmall
public boolean isSmall(double comparedTo) - Specified by:
isSmall
in interfaceNormedVectorSpace<Scalar<Double>,
Double> - Parameters:
comparedTo
- What to compare with- Returns:
- true if this is small compared to the magnitude of the input reference value.
-
longValue
public long longValue()- Specified by:
longValue
in interfaceNumberDefinition
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<Double>,
Double> - Returns:
this * scalarMultiplicand
.
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<Double>,
Double> - Returns:
this * multiplicand
.
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<Double>,
Double> - Returns:
this * scalarMultiplicand
.
-
negate
Description copied from interface:Group.Additive
The additive inverse of this.- Specified by:
negate
in interfaceGroup.Additive<Scalar<Double>>
- Returns:
-this
.
-
norm
public double norm()Description copied from interface:NormedVectorSpace
this == this.signum().multiply(this.norm())
- Specified by:
norm
in interfaceNormedVectorSpace<Scalar<Double>,
Double> - Returns:
- The norm
-
power
Description copied from interface:Operation.Multiplication
Multiply by itselfpower
times.- Specified by:
power
in interfaceOperation.Multiplication<Scalar<Double>>
-
signum
Description copied from interface:NormedVectorSpace
this == this.signum().multiply(this.norm())
- Specified by:
signum
in interfaceNormedVectorSpace<Scalar<Double>,
Double> - Returns:
- A unit "vector"
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<Double>,
Double> - Returns:
this - scalarSubtrahend
.
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<Double>,
Double> - Returns:
this - scalarSubtrahend
.
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<Double>,
Double> - Returns:
this - scalarSubtrahend
.
-
toBigDecimal
- Specified by:
toBigDecimal
in interfaceScalar<Double>
-
toString
-
toString
-