Class DoubleMatrixRelWithAbs<AU extends AbsoluteLinearUnit<AU,RU>,A extends DoubleScalarAbs<AU,A,RU,R>,AV extends DoubleVectorAbs<AU,A,AV,RU,R,RV>,AM extends DoubleMatrixAbs<AU,A,AV,AM,RU,R,RV,RM>,RU extends Unit<RU>,R extends DoubleScalarRelWithAbs<AU,A,RU,R>,RV extends DoubleVectorRelWithAbs<AU,A,AV,RU,R,RV>,RM extends DoubleMatrixRelWithAbs<AU,A,AV,AM,RU,R,RV,RM>>
java.lang.Object
org.djunits.value.IndexedValue<U,S,M,DM>
org.djunits.value.base.Matrix<U,S,V,DoubleVectorData,M,DoubleMatrixData>
org.djunits.value.vdouble.matrix.base.DoubleMatrix<U,S,RV,RM>
org.djunits.value.vdouble.matrix.base.DoubleMatrixRel<RU,R,RV,RM>
org.djunits.value.vdouble.matrix.base.DoubleMatrixRelWithAbs<AU,A,AV,AM,RU,R,RV,RM>
- Type Parameters:
AU
- the absolute unit belonging to the relative unitA
- the absolute scalar type belonging to the absolute matrix typeAV
- the absolute vector type belonging to the absolute matrix typeAM
- the (immutable or mutable) absolute matrix typeRU
- the relative unit belonging to the absolute unitR
- the relative scalar type belonging to the relative matrix typeRV
- the relative vector type belonging to the relative matrix typeRM
- the relative (immutable or mutable) matrix type with this unit
- All Implemented Interfaces:
Serializable
,Cloneable
,Relative<RU,
,RM> RelWithAbs<AU,
,AM, RU, RM> Value<RU,
RM>
- Direct Known Subclasses:
AngleMatrix
,DurationMatrix
,LengthMatrix
,TemperatureMatrix
public abstract class DoubleMatrixRelWithAbs<AU extends AbsoluteLinearUnit<AU,RU>,A extends DoubleScalarAbs<AU,A,RU,R>,AV extends DoubleVectorAbs<AU,A,AV,RU,R,RV>,AM extends DoubleMatrixAbs<AU,A,AV,AM,RU,R,RV,RM>,RU extends Unit<RU>,R extends DoubleScalarRelWithAbs<AU,A,RU,R>,RV extends DoubleVectorRelWithAbs<AU,A,AV,RU,R,RV>,RM extends DoubleMatrixRelWithAbs<AU,A,AV,AM,RU,R,RV,RM>>
extends DoubleMatrixRel<RU,R,RV,RM>
implements RelWithAbs<AU,AM,RU,RM>
AbstractMutableDoubleMatrixRelWithAbs.java.
Copyright (c) 2019-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See DJUNITS License.
- Author:
- Alexander Verbraeck
- See Also:
-
Field Summary
Fields inherited from class org.djunits.value.vdouble.matrix.base.DoubleMatrix
data
-
Constructor Summary
ModifierConstructorDescriptionprotected
DoubleMatrixRelWithAbs
(DoubleMatrixData data, RU unit) Construct a new Relative Mutable DoubleMatrix. -
Method Summary
Modifier and TypeMethodDescriptionabstract AM
instantiateMatrixAbs
(DoubleMatrixData dmd, AU displayUnit) Instantiate a new absolute matrix of the class of this relative matrix.abstract A
instantiateScalarAbsSI
(double valueSI, AU displayUnit) Instantiate a new absolute scalar for the class of this relative matrix.abstract AV
instantiateVectorAbs
(DoubleVectorData dvd, AU displayUnit) Instantiate a new absolute vector of the class of this relative matrix.Add an Absolute value to this relative value.Methods inherited from class org.djunits.value.vdouble.matrix.base.DoubleMatrixRel
decrementBy, decrementBy, divide, divide, divide, divideBy, incrementBy, incrementBy, minus, multiplyBy, plus, times, times, times, zSum
Methods inherited from class org.djunits.value.vdouble.matrix.base.DoubleMatrix
abs, assign, ceil, checkColumnIndex, checkIndex, checkRowIndex, checkSquare, cols, determinantSI, equals, floor, get, getColumn, getColumnScalars, getColumnSI, getData, getDiagonal, getDiagonalScalars, getDiagonalSI, getInUnit, getInUnit, getRow, getRowScalars, getRowSI, getScalars, getSI, getValuesInUnit, getValuesInUnit, getValuesSI, hashCode, instantiateMatrix, instantiateScalarSI, instantiateVector, neg, rint, rows, set, setData, setInUnit, setInUnit, setSI, toDense, toSparse, toString, toString, toString, toString
Methods inherited from class org.djunits.value.base.Matrix
getVectorClass
Methods inherited from class org.djunits.value.IndexedValue
cardinality, checkCopyOnWrite, clone, getDisplayUnit, getScalarClass, getStorageType, immutable, isCopyOnWrite, isDense, isMutable, isSparse, mutable, setCopyOnWrite, setDisplayUnit, setMutable
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.djunits.value.Relative
divide, divide, minus, plus, times, times
Methods inherited from interface org.djunits.value.Value
isAbsolute, isRelative
-
Constructor Details
-
DoubleMatrixRelWithAbs
Construct a new Relative Mutable DoubleMatrix.- Parameters:
data
- DoubleMatrixData; an internal data objectunit
- RU; the unit
-
-
Method Details
-
plus
Description copied from interface:RelWithAbs
Add an Absolute value to this relative value. A new value is returned due to immutability. The unit of the result is the unit of the absolute operand.- Specified by:
plus
in interfaceRelWithAbs<AU extends AbsoluteLinearUnit<AU,
RU>, A extends DoubleScalarAbs<AU, A, RU, R>, AV extends DoubleVectorAbs<AU, A, AV, RU, R, RV>, AM extends DoubleMatrixAbs<AU, A, AV, AM, RU, R, RV, RM>> - Parameters:
increment
- A; A the right operand- Returns:
- A; the sum of this value and the operand
-
instantiateMatrixAbs
Instantiate a new absolute matrix of the class of this relative matrix. This can be used instead of the DoubleMatrix.instiantiate() methods in case another matrix of this relative with absolute class is known. The method is faster than DoubleMatrix.instantiate, and it will also work if the matrix is user-defined.- Parameters:
dmd
- DoubleMatrixData; the data used to instantiate the matrixdisplayUnit
- AU; the display unit of the absolute matrix- Returns:
- AM; an absolute matrix of the correct type, belonging to this relative matrix type
-
instantiateVectorAbs
Instantiate a new absolute vector of the class of this relative matrix. This can be used instead of the DoubleVector.instiantiate() methods in case another matrix of this relative with absolute class is known. The method is faster than DoubleVector.instantiate, and it will also work if the matrix or vector is user-defined.- Parameters:
dvd
- DoubleVectorData; the data used to instantiate the vectordisplayUnit
- AU; the display unit of the absolute vector- Returns:
- AV; an absolute vector of the correct type, belonging to this relative matrix type
-
instantiateScalarAbsSI
Instantiate a new absolute scalar for the class of this relative matrix. This can be used instead of the DoubleScalar.instiantiate() methods in case a matrix of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the matrix and/or scalar are user-defined.- Parameters:
valueSI
- double; the SI value of the absolute scalardisplayUnit
- AU; the unit in which the absolute value will be displayed- Returns:
- A; an absolute scalar of the correct type, belonging to this relative matrix type
-