Class FloatVectorRel<U extends Unit<U>,S extends FloatScalarRel<U,S>,RV extends FloatVectorRel<U,S,RV>>
java.lang.Object
org.djunits.value.IndexedValue<U,S,V,D>
org.djunits.value.base.Vector<U,S,V,FloatVectorData>
org.djunits.value.vfloat.vector.base.FloatVector<U,S,RV>
org.djunits.value.vfloat.vector.base.FloatVectorRel<U,S,RV>
- Type Parameters:
U
- the unitS
- the scalar type belonging to the vector typeRV
- the relative vector type with this unit
- All Implemented Interfaces:
Serializable
,Cloneable
,Iterable<S>
,Relative<U,
,RV> Value<U,
RV>
- Direct Known Subclasses:
FloatAbsorbedDoseVector
,FloatAccelerationVector
,FloatAmountOfSubstanceVector
,FloatAngularAccelerationVector
,FloatAngularVelocityVector
,FloatAreaVector
,FloatCatalyticActivityVector
,FloatDensityVector
,FloatDimensionlessVector
,FloatElectricalCapacitanceVector
,FloatElectricalChargeVector
,FloatElectricalConductanceVector
,FloatElectricalCurrentVector
,FloatElectricalInductanceVector
,FloatElectricalPotentialVector
,FloatElectricalResistanceVector
,FloatEnergyVector
,FloatEquivalentDoseVector
,FloatFlowMassVector
,FloatFlowVolumeVector
,FloatForceVector
,FloatFrequencyVector
,FloatIlluminanceVector
,FloatLinearDensityVector
,FloatLuminousFluxVector
,FloatLuminousIntensityVector
,FloatMagneticFluxDensityVector
,FloatMagneticFluxVector
,FloatMassVector
,FloatMomentumVector
,FloatPowerVector
,FloatPressureVector
,FloatRadioActivityVector
,FloatSIVector
,FloatSolidAngleVector
,FloatSpeedVector
,FloatTorqueVector
,FloatVectorRelWithAbs
,FloatVolumeVector
public abstract class FloatVectorRel<U extends Unit<U>,S extends FloatScalarRel<U,S>,RV extends FloatVectorRel<U,S,RV>>
extends FloatVector<U,S,RV>
implements Relative<U,RV>
AbstractMutableFloatVectorRel.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:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.djunits.value.vfloat.vector.base.FloatVector
FloatVector.Itr
-
Field Summary
Fields inherited from class org.djunits.value.vfloat.vector.base.FloatVector
data
-
Constructor Summary
ModifierConstructorDescriptionprotected
FloatVectorRel
(FloatVectorData data, U unit) Construct a new Relative Mutable FloatVector. -
Method Summary
Modifier and TypeMethodDescriptiondecrementBy
(RV decrement) Decrement all values of this vector by the decrement on a value by value basis.decrementBy
(S decrement) Decrement all values of this vector by the decrement.divide
(double divisor) Returns a new scalar/vector/matrix with value(s) divided by a factor.divide
(float divisor) Returns a new scalar/vector/matrix with value(s) divided by a factor.final <UT extends Unit<UT>,
ST extends FloatScalarRel<UT, ST>, VT extends FloatVectorRel<UT, ST, VT> & Relative<UT, VT>>
FloatSIVectordivide
(VT rel) Divide this Relative value by a Relative value for a vector or matrix.divideBy
(double divisor) Divide all values of this vector by the divisor.divideBy
(float divisor) Divide all values of this vector by the divisor.incrementBy
(RV increment) Increment all values of this vector by the increment on a value by value basis.incrementBy
(S increment) Increment all values of this vector by the increment.final RV
Subtract a Relative value from this Relative value.multiplyBy
(double multiplier) Multiply all values of this vector by the multiplier.multiplyBy
(float multiplier) Multiply all values of this vector by the multiplier.final RV
Add a Relative value to this Relative value.times
(double multiplier) Returns a new scalar/vector/matrix with value(s) multiplied by a factor.times
(float multiplier) Returns a new scalar/vector/matrix with value(s) multiplied by a factor.final <UT extends Unit<UT>,
ST extends FloatScalarRel<UT, ST>, VT extends FloatVectorRel<UT, ST, VT> & Relative<UT, VT>>
FloatSIVectortimes
(VT rel) Multiply a Relative value with this Relative value for a vector or matrix.final S
zSum()
Compute the sum of all SI values of this vector.Methods inherited from class org.djunits.value.vfloat.vector.base.FloatVector
abs, assign, ceil, checkIndex, checkSize, equals, floor, get, getData, getInUnit, getInUnit, getScalars, getSI, getValuesInUnit, getValuesInUnit, getValuesSI, hashCode, instantiateScalarSI, instantiateVector, iterator, neg, rint, set, setData, setInUnit, setInUnit, setSI, size, toDense, toSparse, toString, toString, toString, toString
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 java.lang.Iterable
forEach, spliterator
Methods inherited from interface org.djunits.value.Value
isAbsolute, isRelative
-
Constructor Details
-
FloatVectorRel
Construct a new Relative Mutable FloatVector.- Parameters:
data
- FloatVectorData; an internal data objectunit
- U; the unit
-
-
Method Details
-
zSum
Compute the sum of all SI values of this vector.- Returns:
- S; the sum of all values of this vector with the same display unit as this vector
-
plus
Description copied from interface:Relative
Add a Relative value to this Relative value. A new value is returned due to immutability.- Specified by:
plus
in interfaceRelative<U extends Unit<U>,
S extends FloatScalarRel<U, S>> - Parameters:
rel
- R; the value to add- Returns:
- R; the sum of this value and the operand as a new object
- Throws:
ValueRuntimeException
-
minus
Description copied from interface:Relative
Subtract a Relative value from this Relative value. A new value is returned due to immutability.- Specified by:
minus
in interfaceRelative<U extends Unit<U>,
S extends FloatScalarRel<U, S>> - Parameters:
rel
- R; the value to subtract- Returns:
- R; the difference of this value and the operand
- Throws:
ValueRuntimeException
-
incrementBy
Increment all values of this vector by the increment. This only works if the vector is mutable.- Parameters:
increment
- S; the scalar by which to increment all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case this vector is immutable
-
incrementBy
Increment all values of this vector by the increment on a value by value basis. This only works if this vector is mutable.- Parameters:
increment
- RV; the vector that contains the values by which to increment the corresponding values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case this vector is immutable or when the sizes of the vectors differ
-
decrementBy
Decrement all values of this vector by the decrement. This only works if the vector is mutable.- Parameters:
decrement
- S; the scalar by which to decrement all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case this vector is immutable
-
decrementBy
Decrement all values of this vector by the decrement on a value by value basis. This only works if this vector is mutable.- Parameters:
decrement
- RV; the vector that contains the values by which to decrement the corresponding values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case this vector is immutable or when the sizes of the vectors differ
-
multiplyBy
Multiply all values of this vector by the multiplier. This only works if the vector is mutable.- Parameters:
multiplier
- float; the factor by which to multiply all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case the vector is immutable
-
divideBy
Divide all values of this vector by the divisor. This only works if the vector is mutable.- Parameters:
divisor
- float; the value by which to divide all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case the vector is immutable
-
multiplyBy
Multiply all values of this vector by the multiplier. This only works if the vector is mutable.- Parameters:
multiplier
- double; the factor by which to multiply all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case the vector is immutable
-
divideBy
Divide all values of this vector by the divisor. This only works if the vector is mutable.- Parameters:
divisor
- double; the value by which to divide all values- Returns:
- RV; this modified vector
- Throws:
ValueRuntimeException
- in case the vector is immutable
-
times
public final <UT extends Unit<UT>,ST extends FloatScalarRel<UT, FloatSIVector timesST>, VT extends FloatVectorRel<UT, ST, VT> & Relative<UT, VT>> (VT rel) throws ValueRuntimeException, UnitException Multiply a Relative value with this Relative value for a vector or matrix. The multiplication is done value by value and store the result in a new Relative value. If both operands are dense, the result is a dense vector or matrix, otherwise the result is a sparse vector or matrix.- Type Parameters:
UT
- the unit type of the multiplierST
- the scalar type of the multiplierVT
- the vector type of the multiplier- Parameters:
rel
- VT; the right operand, which can be any vector type- Returns:
- FloatSIVector; the multiplication of this vector and the operand
- Throws:
ValueRuntimeException
- in case this vector or matrix and the operand have a different sizeUnitException
- on unit error
-
divide
public final <UT extends Unit<UT>,ST extends FloatScalarRel<UT, FloatSIVector divideST>, VT extends FloatVectorRel<UT, ST, VT> & Relative<UT, VT>> (VT rel) throws ValueRuntimeException, UnitException Divide this Relative value by a Relative value for a vector or matrix. The division is done value by value and store the result in a new Relative value. If both operands are dense, the result is a dense vector or matrix, otherwise the result is a sparse vector or matrix.- Type Parameters:
UT
- the unit type of the multiplierST
- the scalar type of the multiplierVT
- the vector type of the multiplier- Parameters:
rel
- VT; the right operand, which can be any vector type- Returns:
- FloatSIVector; the division of this vector and the operand
- Throws:
ValueRuntimeException
- in case this vector or matrix and the operand have a different sizeUnitException
- on unit error
-
times
Description copied from interface:Relative
Returns a new scalar/vector/matrix with value(s) multiplied by a factor. -
divide
Description copied from interface:Relative
Returns a new scalar/vector/matrix with value(s) divided by a factor. -
times
Description copied from interface:Relative
Returns a new scalar/vector/matrix with value(s) multiplied by a factor. -
divide
Description copied from interface:Relative
Returns a new scalar/vector/matrix with value(s) divided by a factor.
-