Class TimeMatrix

All Implemented Interfaces:
Serializable, Cloneable, Absolute, Matrix<TimeUnit,​Time,​TimeVector,​TimeMatrix>, Matrix.Abs<TimeUnit,​Time,​TimeVector,​TimeMatrix,​DurationUnit,​Duration,​DurationVector,​DurationMatrix>, ValueFunctions<TimeUnit,​TimeMatrix>, IndexedValue<TimeUnit,​Time,​TimeMatrix>, Value<TimeUnit,​TimeMatrix>, DoubleMatrixInterface<TimeUnit,​Time,​TimeVector,​TimeMatrix>

@Generated(value="org.djunits.generator.GenerateDJUNIT",
           date="2019-10-18T12:12:25.568Z")
public class TimeMatrix
extends AbstractDoubleMatrixAbs<TimeUnit,​Time,​TimeVector,​TimeMatrix,​DurationUnit,​Duration,​DurationVector,​DurationMatrix>
Immutable Time Matrix.

Copyright (c) 2013-2019 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See DJUNITS License.

Author:
Alexander Verbraeck, Peter Knoppers
See Also:
Serialized Form
  • Constructor Details

  • Method Details

    • getScalarClass

      public Class<Time> getScalarClass()
      Return the class of the corresponding scalar.
      Returns:
      Class<S>; the class of the corresponding scalar
    • getVectorClass

      public Class<TimeVector> getVectorClass()
      Return the class of the corresponding vector.
      Returns:
      Class<V>; the class of the corresponding vector
    • instantiateMatrix

      public TimeMatrix instantiateMatrix​(DoubleMatrixData dmd, TimeUnit displayUnit)
      Instantiate a new matrix of the class of this matrix. This can be used instead of the DoubleMatrix.instiantiate() methods in case another matrix of this 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 matrix
      displayUnit - U; the display unit of the matrix
      Returns:
      V; a matrix of the correct type
    • instantiateVector

      public TimeVector instantiateVector​(DoubleVectorData dvd, TimeUnit displayUnit)
      Instantiate a new vector of the class of this matrix. This can be used instead of the DoubleVector.instiantiate() methods in case another matrix of this class is known. The method is faster than DoubleVector.instantiate, and it will also work if the matrix and/or vector are user-defined.
      Parameters:
      dvd - DoubleVectorData; the data used to instantiate the vector
      displayUnit - U; the display unit of the vector
      Returns:
      V; a vector of the correct type
    • instantiateScalarSI

      public Time instantiateScalarSI​(double valueSI, TimeUnit displayUnit)
      Instantiate a new scalar for the class of this 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 scalar
      displayUnit - U; the unit in which the value will be displayed
      Returns:
      S; a scalar of the correct type, belonging to the matrix type
    • instantiateMatrixRel

      public DurationMatrix instantiateMatrixRel​(DoubleMatrixData dmd, DurationUnit displayUnit)
      Instantiate a new relative matrix of the class of this absolute matrix. This can be used instead of the DoubleMatrix.instiantiate() methods in case another matrix of this absolute matrix class is known. The method is faster than DoubleMatrix.instantiate, and it will also work if the matrix is user-defined.
      Specified by:
      instantiateMatrixRel in class AbstractDoubleMatrixAbs<TimeUnit,​Time,​TimeVector,​TimeMatrix,​DurationUnit,​Duration,​DurationVector,​DurationMatrix>
      Parameters:
      dmd - DoubleMatrixData; the data used to instantiate the matrix
      displayUnit - RU; the display unit of the relative matrix
      Returns:
      RM; a relative matrix of the correct type, belonging to this absolute matrix type
    • instantiateVectorRel

      public DurationVector instantiateVectorRel​(DoubleVectorData dvd, DurationUnit displayUnit)
      Instantiate a new relative vector of the class of this absolute matrix. This can be used instead of the DoubleVector.instiantiate() methods in case another matrix of this absolute matrix class is known. The method is faster than DoubleVector.instantiate, and it will also work if the matrix or vector is user-defined.
      Specified by:
      instantiateVectorRel in class AbstractDoubleMatrixAbs<TimeUnit,​Time,​TimeVector,​TimeMatrix,​DurationUnit,​Duration,​DurationVector,​DurationMatrix>
      Parameters:
      dvd - DoubleVectorData; the data used to instantiate the vector
      displayUnit - RU; the display unit of the relative vector
      Returns:
      RV; a relative vector of the correct type, belonging to this absolute matrix type
    • instantiateScalarRelSI

      public Duration instantiateScalarRelSI​(double valueSI, DurationUnit displayUnit)
      Instantiate a new relative scalar for the class of this absolute 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.
      Specified by:
      instantiateScalarRelSI in class AbstractDoubleMatrixAbs<TimeUnit,​Time,​TimeVector,​TimeMatrix,​DurationUnit,​Duration,​DurationVector,​DurationMatrix>
      Parameters:
      valueSI - double; the SI value of the relative scalar
      displayUnit - RU; the unit in which the relative value will be displayed
      Returns:
      R; a relative scalar of the correct type, belonging to this absolute matrix type