Class Duration

All Implemented Interfaces:
Serializable, Cloneable, Comparable<Duration>, Scalar<DurationUnit,​Duration>, Scalar.Rel<DurationUnit,​Duration>, Scalar.RelWithAbs<TimeUnit,​Time,​DurationUnit,​Duration>, ValueFunctions<DurationUnit,​Duration>, Relative<DurationUnit,​Duration>, Value<DurationUnit,​Duration>, DoubleScalarInterface<DurationUnit,​Duration>, DoubleScalarInterface.Rel<DurationUnit,​Duration>, DoubleScalarInterface.RelWithAbs<TimeUnit,​Time,​DurationUnit,​Duration>

@Generated(value="org.djunits.generator.GenerateDJUNIT",
           date="2019-10-18T12:12:25.568Z")
public class Duration
extends AbstractDoubleScalarRelWithAbs<TimeUnit,​Time,​DurationUnit,​Duration>
Easy access methods for the Relative Duration DoubleScalar.

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

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

  • Constructor Details

    • Duration

      public Duration​(double value, DurationUnit unit)
      Construct Duration scalar.
      Parameters:
      value - double; double value
      unit - DurationUnit; unit for the double value
    • Duration

      public Duration​(Duration value)
      Construct Duration scalar.
      Parameters:
      value - Duration; Scalar from which to construct this instance
  • Method Details

    • instantiateRel

      public final Duration instantiateRel​(double value, DurationUnit unit)
      Construct a new Relative Immutable DoubleScalar of the right type. Each extending class must implement this method.
      Parameters:
      value - double; the double value
      unit - U; the unit
      Returns:
      R a new relative instance of the DoubleScalar of the right type
    • instantiateAbs

      public final Time instantiateAbs​(double value, TimeUnit unit)
      Construct a new Absolute Immutable DoubleScalar of the right type. Each extending class must implement this method.
      Parameters:
      value - double; the double value
      unit - AU; the absolute unit
      Returns:
      A a new absolute instance of the DoubleScalar of the right type
    • instantiateSI

      public static final Duration instantiateSI​(double value)
      Construct Duration scalar.
      Parameters:
      value - double; the double value in SI units
      Returns:
      Duration; the new scalar with the SI value
    • interpolate

      public static Duration interpolate​(Duration zero, Duration one, double ratio)
      Interpolate between two values.
      Parameters:
      zero - Duration; the low value
      one - Duration; the high value
      ratio - double; the ratio between 0 and 1, inclusive
      Returns:
      Duration; a Scalar at the ratio between
    • max

      public static Duration max​(Duration r1, Duration r2)
      Return the maximum value of two relative scalars.
      Parameters:
      r1 - Duration; the first scalar
      r2 - Duration; the second scalar
      Returns:
      Duration; the maximum value of two relative scalars
    • max

      public static Duration max​(Duration r1, Duration r2, Duration... rn)
      Return the maximum value of more than two relative scalars.
      Parameters:
      r1 - Duration; the first scalar
      r2 - Duration; the second scalar
      rn - Duration...; the other scalars
      Returns:
      Duration; the maximum value of more than two relative scalars
    • min

      public static Duration min​(Duration r1, Duration r2)
      Return the minimum value of two relative scalars.
      Parameters:
      r1 - Duration; the first scalar
      r2 - Duration; the second scalar
      Returns:
      Duration; the minimum value of two relative scalars
    • min

      public static Duration min​(Duration r1, Duration r2, Duration... rn)
      Return the minimum value of more than two relative scalars.
      Parameters:
      r1 - Duration; the first scalar
      r2 - Duration; the second scalar
      rn - Duration...; the other scalars
      Returns:
      Duration; the minimum value of more than two relative scalars
    • valueOf

      public static Duration valueOf​(String text)
      Returns a Duration representation of a textual representation of a value with a unit. The String representation that can be parsed is the double value in the unit, followed by the official abbreviation of the unit. Spaces are allowed, but not required, between the value and the unit.
      Parameters:
      text - String; the textual representation to parse into a Duration
      Returns:
      Duration; the Scalar representation of the value in its unit
      Throws:
      IllegalArgumentException - when the text cannot be parsed
      NullPointerException - when the text argument is null
    • of

      public static Duration of​(double value, String unitString)
      Returns a Duration based on a value and the textual representation of the unit.
      Parameters:
      value - double; the value to use
      unitString - String; the textual representation of the unit
      Returns:
      Duration; the Scalar representation of the value in its unit
      Throws:
      IllegalArgumentException - when the unit cannot be parsed or is incorrect
      NullPointerException - when the unitString argument is null
    • divide

      public final Dimensionless divide​(Duration v)
      Calculate the division of Duration and Duration, which results in a Dimensionless scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Dimensionless scalar as a division of Duration and Duration
    • times

      public final Dimensionless times​(Frequency v)
      Calculate the multiplication of Duration and Frequency, which results in a Dimensionless scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Dimensionless scalar as a multiplication of Duration and Frequency
    • times

      public final ElectricalCharge times​(ElectricalCurrent v)
      Calculate the multiplication of Duration and ElectricalCurrent, which results in a ElectricalCharge scalar.
      Parameters:
      v - Duration scalar
      Returns:
      ElectricalCharge scalar as a multiplication of Duration and ElectricalCurrent
    • times

      public final Mass times​(FlowMass v)
      Calculate the multiplication of Duration and FlowMass, which results in a Mass scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Mass scalar as a multiplication of Duration and FlowMass
    • times

      public final Volume times​(FlowVolume v)
      Calculate the multiplication of Duration and FlowVolume, which results in a Volume scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Volume scalar as a multiplication of Duration and FlowVolume
    • times

      public final Speed times​(Acceleration v)
      Calculate the multiplication of Duration and Acceleration, which results in a Speed scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Speed scalar as a multiplication of Duration and Acceleration
    • times

      public final Energy times​(Power v)
      Calculate the multiplication of Duration and Power, which results in a Energy scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Energy scalar as a multiplication of Duration and Power
    • times

      public final Length times​(Speed v)
      Calculate the multiplication of Duration and Speed, which results in a Length scalar.
      Parameters:
      v - Duration scalar
      Returns:
      Length scalar as a multiplication of Duration and Speed
    • times

      public final MagneticFlux times​(ElectricalPotential v)
      Calculate the multiplication of Duration and ElectricalPotential, which results in a MagneticFlux scalar.
      Parameters:
      v - Duration scalar
      Returns:
      MagneticFlux scalar as a multiplication of Duration and ElectricalPotential
    • times

      public final ElectricalInductance times​(ElectricalResistance v)
      Calculate the multiplication of Duration and ElectricalResistance, which results in a ElectricalInductance scalar.
      Parameters:
      v - Duration scalar
      Returns:
      ElectricalInductance scalar as a multiplication of Duration and ElectricalResistance
    • times

      public final ElectricalCapacitance times​(ElectricalConductance v)
      Calculate the multiplication of Duration and ElectricalConductance, which results in a ElectricalCapacitance scalar.
      Parameters:
      v - Duration scalar
      Returns:
      ElectricalCapacitance scalar as a multiplication of Duration and ElectricalConductance