Package org.ojalgo.scalar
Interface SelfDeclaringScalar<S extends SelfDeclaringScalar<S>>
- All Superinterfaces:
AccessScalar<S>
,Comparable<S>
,Field<Scalar<S>>
,Group
,Group.Additive<Scalar<S>>
,Group.Multiplicative<Scalar<S>>
,NormedVectorSpace<Scalar<S>,
,S> NumberContext.Enforceable<S>
,NumberDefinition
,Operation
,Operation.Addition<Scalar<S>>
,Operation.Division<Scalar<S>>
,Operation.Multiplication<Scalar<S>>
,Operation.Subtraction<Scalar<S>>
,Ring<Scalar<S>>
,Scalar<S>
,ScalarOperation
,ScalarOperation.Addition<Scalar<S>,
,S> ScalarOperation.Division<Scalar<S>,
,S> ScalarOperation.Multiplication<Scalar<S>,
,S> ScalarOperation.Subtraction<Scalar<S>,
,S> Tensor<S,
,Scalar<S>> VectorSpace<Scalar<S>,
S>
- All Known Implementing Classes:
Amount
,ComplexNumber
,ExactDecimal
,Money
,Price
,Quadruple
,Quantity
,Quaternion
,RationalNumber
interface SelfDeclaringScalar<S extends SelfDeclaringScalar<S>>
extends Scalar<S>, NumberContext.Enforceable<S>
-
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>> -
Method Summary
Modifier and TypeMethodDescriptionadd
(double scalarAddend) default S
add
(float scalarAddend) This method will (most likely) be moved to some other interface in the future! Just have to figure out where it fits...divide
(double scalarDivisor) default S
divide
(float scalarDivisor) invert()
The multiplicative inverse.multiply
(double scalarMultiplicand) default S
multiply
(float scalarMultiplicand) negate()
The additive inverse of this.power
(int power) Multiply by itselfpower
times.signum()
this == this.signum().multiply(this.norm())
subtract
(double scalarSubtrahend) default S
subtract
(float scalarSubtrahend) Methods inherited from interface org.ojalgo.structure.AccessScalar
get
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface org.ojalgo.algebra.NormedVectorSpace
isSmall, norm
Methods inherited from interface org.ojalgo.type.context.NumberContext.Enforceable
enforce
Methods inherited from interface org.ojalgo.type.NumberDefinition
booleanValue, byteValue, doubleValue, floatValue, intValue, longValue, shortValue
Methods inherited from interface org.ojalgo.scalar.Scalar
add, dimensions, divide, isAbsolute, multiply, rank, subtract, toBigDecimal, toPlainString, toString
Methods inherited from interface org.ojalgo.tensor.Tensor
components, isSameShape
-
Method Details
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this + scalarAddend
.
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this + scalarAddend
.
-
add
- Specified by:
add
in interfaceScalarOperation.Addition<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this + scalarAddend
.
-
conjugate
S 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<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>>
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this / scalarDivisor
.
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this / scalarDivisor
.
-
divide
- Specified by:
divide
in interfaceScalarOperation.Division<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this / scalarDivisor
.
-
invert
S invert()Description copied from interface:Group.Multiplicative
The multiplicative inverse.- Specified by:
invert
in interfaceGroup.Multiplicative<S extends SelfDeclaringScalar<S>>
- Returns:
IDENTITY / this
.
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this * scalarMultiplicand
.
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this * scalarMultiplicand
.
-
multiply
- Specified by:
multiply
in interfaceScalarOperation.Multiplication<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this * multiplicand
.
-
negate
S negate()Description copied from interface:Group.Additive
The additive inverse of this.- Specified by:
negate
in interfaceGroup.Additive<S extends SelfDeclaringScalar<S>>
- Returns:
-this
.
-
power
Description copied from interface:Operation.Multiplication
Multiply by itselfpower
times.- Specified by:
power
in interfaceOperation.Multiplication<S extends SelfDeclaringScalar<S>>
-
signum
S signum()Description copied from interface:NormedVectorSpace
this == this.signum().multiply(this.norm())
- Specified by:
signum
in interfaceNormedVectorSpace<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
- A unit "vector"
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this - scalarSubtrahend
.
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this - scalarSubtrahend
.
-
subtract
- Specified by:
subtract
in interfaceScalarOperation.Subtraction<Scalar<S extends SelfDeclaringScalar<S>>,
S extends SelfDeclaringScalar<S>> - Returns:
this - scalarSubtrahend
.
-