Class AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>

java.lang.Object
org.djunits.vecmat.def.AbsVectorMatrix<A,Q,VA,VQ,VAT>
org.djunits.vecmat.def.AbsVector<A,Q,AbsVector1<A,Q>,Vector1<Q>,AbsVector1<A,Q>>
org.djunits.vecmat.d1.AbsVector1<A,Q>
Type Parameters:
A - the absolute quantity type
Q - the corresponding relative quantity type
All Implemented Interfaces:
Serializable, Iterable<A>, Value<AbsVector1<A,Q>,Q>, AbsVector.Row<AbsVector1<A,Q>,Q>

public class AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>> extends AbsVector<A,Q,AbsVector1<A,Q>,Vector1<Q>,AbsVector1<A,Q>> implements AbsVector.Row<AbsVector1<A,Q>,Q>
AbsVector1 implements a vector with one real-valued entry representing an absolute quantity. The vector is immutable, except for the display unit, which can be changed. Some of the method that have been defined already for a generic vector have been re-implemented for efficiency.

Copyright (c) 2026-2026 Delft University of Technology, Jaffalaan 5, 2628 BX Delft, the Netherlands. All rights reserved. See for project information https://djunits.org. The DJUNITS project is distributed under a three-clause BSD-style license.

Author:
Alexander Verbraeck
See Also:
  • Constructor Details

    • AbsVector1

      public AbsVector1(Vector1<Q> relativeVector, Reference<?,A,Q> reference)
      Create a new AbsVector1 with a display unit and a reference point.
      Parameters:
      relativeVector - the vector with values relative to the reference point
      reference - the reference point for the absolute values
  • Method Details

    • instantiate

      public AbsVector1<A,Q> instantiate(Vector1<Q> relativeVector, Reference<?,A,Q> reference)
      Description copied from class: AbsVectorMatrix
      Return a new vector or matrix with the given SI or BASE values for the relative vector or matrix.
      Specified by:
      instantiate in class AbsVectorMatrix<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>,Vector1<Q extends Quantity<Q>>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>>
      Parameters:
      relativeVector - the underlying relative vector or matrix with SI values relative to the reference point
      reference - the reference point for the relative SI values
      Returns:
      a new matrix with the provided SI or BASE values
    • transpose

      public AbsVector1<A,Q> transpose()
      Description copied from class: AbsVectorMatrix
      Return a transposed absolute vector or matrix, where rows and columns have been swapped.
      Specified by:
      transpose in class AbsVectorMatrix<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>,Vector1<Q extends Quantity<Q>>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>>
      Returns:
      a transposed absolute vector or matrix, where rows and columns have been swapped
    • isColumnVector

      public boolean isColumnVector()
      Description copied from class: AbsVector
      Return whether this vector is a column vector.
      Overrides:
      isColumnVector in class AbsVector<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>,Vector1<Q extends Quantity<Q>>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>>
      Returns:
      whether this vector is a column vector
    • isRowVector

      public boolean isRowVector()
      Description copied from class: AbsVector
      Return whether this vector is a row vector.
      Overrides:
      isRowVector in class AbsVector<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>,Vector1<Q extends Quantity<Q>>,AbsVector1<A extends AbsQuantity<A,Q,?>,Q extends Quantity<Q>>>
      Returns:
      whether this vector is a row vector
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(double xInUnit, Unit<?,Q> unit, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      xInUnit - the x-value expressed in the unit
      unit - the unit of the data, which will also be used as the display unit
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(Q x, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      x - the x-value expressed as a quantity
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(A absX)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      absX - the v1-value expressed as an absolute quantity
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(double[] dataInUnit, Unit<?,Q> unit, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      dataInUnit - the x-value expressed as an array in the display unit
      unit - the unit of the data, which will also be used as the display unit
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • ofSi

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> ofSi(double xSi, Unit<?,Q> displayUnit, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      xSi - the x-value expressed as an array in the SI units
      displayUnit - the display unit to use
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • ofSi

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> ofSi(double[] dataSi, Unit<?,Q> displayUnit, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      dataSi - the x-value expressed as an array in the SI units
      displayUnit - the display unit to use
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(Q[] data, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      data - the x-value expressed as an array of quantities
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(A[] absData)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      absData - the {x} value expressed as an array of absolute quantities
      Returns:
      a new AbsVector1 with a unit
    • of

      public static <A extends AbsQuantity<A, Q, R>, Q extends Quantity<Q>, R extends Reference<R, A, Q>> AbsVector1<A,Q> of(Vector1<Q> relativeVector, R reference)
      Create an AbsVector1 without needing generics.
      Type Parameters:
      A - the absolute quantity type
      Q - the quantity type
      R - the reference type
      Parameters:
      relativeVector - the relative vector
      reference - the reference point for the absolute quantities
      Returns:
      a new AbsVector1 with a unit