Class LengthMatrix

All Implemented Interfaces:
Serializable, Cloneable, Relative<LengthUnit,LengthMatrix>, RelWithAbs<PositionUnit,PositionMatrix,LengthUnit,LengthMatrix>, Value<LengthUnit,LengthMatrix>

@Generated(value="org.djunits.generator.GenerateDJUNIT", date="2023-07-23T14:06:38.224104100Z") public class LengthMatrix extends DoubleMatrixRelWithAbs<PositionUnit,Position,PositionVector,PositionMatrix,LengthUnit,Length,LengthVector,LengthMatrix>
Immutable Length Matrix.

Copyright (c) 2013-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, Peter Knoppers
See Also:
  • Constructor Details

    • LengthMatrix

      public LengthMatrix(DoubleMatrixData data, LengthUnit displayUnit)
      Construct a LengthMatrix from an internal data object.
      Parameters:
      data - DoubleMatrixData; the internal data object for the matrix
      displayUnit - LengthUnit; the display unit of the matrix data
    • LengthMatrix

      public LengthMatrix(double[][] data, LengthUnit displayUnit, StorageType storageType)
      Construct a LengthMatrix from a double[][] object. The double values are expressed in the displayUnit, and will be printed using the displayUnit.
      Parameters:
      data - double[][]; the data for the matrix, expressed in the displayUnit
      displayUnit - LengthUnit; the unit of the values in the data array, and display unit when printing
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(double[][] data, LengthUnit displayUnit)
      Construct a LengthMatrix from a double[][] object. The double values are expressed in the displayUnit. Assume that the StorageType is DENSE since we offer the data as an array of an array.
      Parameters:
      data - double[][]; the data for the matrix
      displayUnit - LengthUnit; the unit of the values in the data array, and display unit when printing
    • LengthMatrix

      public LengthMatrix(double[][] data, StorageType storageType)
      Construct a LengthMatrix from a double[][] object with SI-unit values.
      Parameters:
      data - double[][]; the data for the matrix, in SI units
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(double[][] data)
      Construct a LengthMatrix from a double[][] object with SI-unit values. Assume that the StorageType is DENSE since we offer the data as an array of an array.
      Parameters:
      data - double[][]; the data for the matrix, in SI units
    • LengthMatrix

      public LengthMatrix(Length[][] data, LengthUnit displayUnit, StorageType storageType)
      Construct a LengthMatrix from an array of an array of Length objects. The Length values are each expressed in their own unit, but will be internally stored as SI values, all expressed in the displayUnit when printing.
      Parameters:
      data - Length[][]; the data for the matrix
      displayUnit - LengthUnit; the display unit of the values when printing
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(Length[][] data, LengthUnit displayUnit)
      Construct a LengthMatrix from an array of an array of Length objects. The Length values are each expressed in their own unit, but will be internally stored as SI values, all expressed in the displayUnit when printing. Assume that the StorageType is DENSE since we offer the data as an array of an array.
      Parameters:
      data - Length[][]; the data for the matrix
      displayUnit - LengthUnit; the display unit of the values when printing
    • LengthMatrix

      public LengthMatrix(Length[][] data, StorageType storageType)
      Construct a LengthMatrix from an array of an array of Length objects. The Length values are each expressed in their own unit, but will be internally stored as SI values, and expressed using SI units when printing. since we offer the data as an array of an array.
      Parameters:
      data - Length[][]; the data for the matrix
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(Length[][] data)
      Construct a LengthMatrix from an array of an array of Length objects. The Length values are each expressed in their own unit, but will be internally stored as SI values, and expressed using SI units when printing. Assume that the StorageType is DENSE since we offer the data as an array of an array.
      Parameters:
      data - Length[][]; the data for the matrix
    • LengthMatrix

      public LengthMatrix(Collection<DoubleSparseValue<LengthUnit,Length>> data, LengthUnit displayUnit, int rows, int cols, StorageType storageType)
      Construct a LengthMatrix from a (sparse) collection of DoubleSparseValue objects. The displayUnit indicates the unit in which the values in the collection are expressed, as well as the unit in which they will be printed.
      Parameters:
      data - Collection<DoubleSparseValue>; the data for the matrix
      displayUnit - LengthUnit; the display unit of the matrix data, and the unit of the data points
      rows - int; the number of rows of the matrix
      cols - int; the number of columns of the matrix
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(Collection<DoubleSparseValue<LengthUnit,Length>> data, LengthUnit displayUnit, int rows, int cols)
      Construct a LengthMatrix from a (sparse) collection of DoubleSparseValue objects. The displayUnit indicates the unit in which the values in the collection are expressed, as well as the unit in which they will be printed. Assume the storage type is SPARSE, since we offer the data as a collection.
      Parameters:
      data - Collection<DoubleSparseValue>; the data for the matrix
      displayUnit - LengthUnit; the display unit of the matrix data, and the unit of the data points
      rows - int; the number of rows of the matrix
      cols - int; the number of columns of the matrix
    • LengthMatrix

      public LengthMatrix(Collection<DoubleSparseValue<LengthUnit,Length>> data, int rows, int cols, StorageType storageType)
      Construct a LengthMatrix from a (sparse) collection of DoubleSparseValue objects. The displayUnit indicates the unit in which the values in the collection are expressed, as well as the unit in which they will be printed. Use the SI unit or base unit as the displayUnit.
      Parameters:
      data - Collection<DoubleSparseValue>; the data for the matrix
      rows - int; the number of rows of the matrix
      cols - int; the number of columns of the matrix
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Matrix
    • LengthMatrix

      public LengthMatrix(Collection<DoubleSparseValue<LengthUnit,Length>> data, int rows, int cols)
      Construct a LengthMatrix from a (sparse) collection of DoubleSparseValue objects. The displayUnit indicates the unit in which the values in the collection are expressed, as well as the unit in which they will be printed. Use the SI unit or base unit as the displayUnit. Assume the storage type is SPARSE, since we offer the data as a collection.
      Parameters:
      data - Collection<DoubleSparseValue>; the data for the matrix
      rows - int; the number of rows of the matrix
      cols - int; the number of columns of the matrix
  • Method Details

    • getScalarClass

      public Class<Length> getScalarClass()
      Return the class of the corresponding scalar.
      Specified by:
      getScalarClass in class IndexedValue<LengthUnit,Length,LengthMatrix,DoubleMatrixData>
      Returns:
      Class<S>; the class of the corresponding scalar
    • getVectorClass

      public Class<LengthVector> getVectorClass()
      Return the class of the corresponding vector.
      Specified by:
      getVectorClass in class Matrix<LengthUnit,Length,LengthVector,DoubleVectorData,LengthMatrix,DoubleMatrixData>
      Returns:
      Class<V>; the class of the corresponding vector
    • instantiateMatrix

      public LengthMatrix instantiateMatrix(DoubleMatrixData dmd, LengthUnit 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.
      Specified by:
      instantiateMatrix in class DoubleMatrix<LengthUnit,Length,LengthVector,LengthMatrix>
      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 LengthVector instantiateVector(DoubleVectorData dvd, LengthUnit 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.
      Specified by:
      instantiateVector in class DoubleMatrix<LengthUnit,Length,LengthVector,LengthMatrix>
      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 Length instantiateScalarSI(double valueSI, LengthUnit 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.
      Specified by:
      instantiateScalarSI in class DoubleMatrix<LengthUnit,Length,LengthVector,LengthMatrix>
      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
    • instantiateMatrixAbs

      public PositionMatrix instantiateMatrixAbs(DoubleMatrixData dmd, PositionUnit displayUnit)
      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.
      Specified by:
      instantiateMatrixAbs in class DoubleMatrixRelWithAbs<PositionUnit,Position,PositionVector,PositionMatrix,LengthUnit,Length,LengthVector,LengthMatrix>
      Parameters:
      dmd - DoubleMatrixData; the data used to instantiate the matrix
      displayUnit - AU; the display unit of the absolute matrix
      Returns:
      AM; an absolute matrix of the correct type, belonging to this relative matrix type
    • instantiateVectorAbs

      public PositionVector instantiateVectorAbs(DoubleVectorData dvd, PositionUnit displayUnit)
      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.
      Specified by:
      instantiateVectorAbs in class DoubleMatrixRelWithAbs<PositionUnit,Position,PositionVector,PositionMatrix,LengthUnit,Length,LengthVector,LengthMatrix>
      Parameters:
      dvd - DoubleVectorData; the data used to instantiate the vector
      displayUnit - AU; the display unit of the absolute vector
      Returns:
      AV; an absolute vector of the correct type, belonging to this relative matrix type
    • instantiateScalarAbsSI

      public Position instantiateScalarAbsSI(double valueSI, PositionUnit displayUnit)
      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.
      Specified by:
      instantiateScalarAbsSI in class DoubleMatrixRelWithAbs<PositionUnit,Position,PositionVector,PositionMatrix,LengthUnit,Length,LengthVector,LengthMatrix>
      Parameters:
      valueSI - double; the SI value of the absolute scalar
      displayUnit - 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