Enum Class Interpolation

java.lang.Object
java.lang.Enum<Interpolation>
org.opentrafficsim.road.od.Interpolation
All Implemented Interfaces:
Serializable, Comparable<Interpolation>, Constable

public enum Interpolation extends Enum<Interpolation>
Interpolation of demand.

Copyright (c) 2013-2024 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, Wouter Schakel
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    Linear interpolation of demand.
    Stepwise interpolation of demand.
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) abstract int
    integrate(org.djunits.value.vdouble.scalar.Frequency frequency0, org.djunits.value.vdouble.scalar.Time time0, org.djunits.value.vdouble.scalar.Frequency frequency1, org.djunits.value.vdouble.scalar.Time time1)
    Integrates to the number of trips in given period.
    (package private) abstract org.djunits.value.vdouble.scalar.Frequency
    interpolate(org.djunits.value.vdouble.scalar.Frequency frequency0, org.djunits.value.vdouble.scalar.Time time0, org.djunits.value.vdouble.scalar.Frequency frequency1, org.djunits.value.vdouble.scalar.Time time1, org.djunits.value.vdouble.scalar.Time time)
    Interpolate between given frequencies.
    final org.djunits.value.vdouble.scalar.Frequency
    interpolateVector(org.djunits.value.vdouble.scalar.Time time, org.djunits.value.vdouble.vector.FrequencyVector demandVector, org.djunits.value.vdouble.vector.TimeVector timeVector, boolean sliceStart)
    Returns interpolated value from array at given time.
    boolean
     
    boolean
     
    Returns the enum constant of this class with the specified name.
    static Interpolation[]
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • STEPWISE

      public static final Interpolation STEPWISE
      Stepwise interpolation of demand.
    • LINEAR

      public static final Interpolation LINEAR
      Linear interpolation of demand.
  • Method Details

    • values

      public static Interpolation[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static Interpolation valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • interpolate

      abstract org.djunits.value.vdouble.scalar.Frequency interpolate(org.djunits.value.vdouble.scalar.Frequency frequency0, org.djunits.value.vdouble.scalar.Time time0, org.djunits.value.vdouble.scalar.Frequency frequency1, org.djunits.value.vdouble.scalar.Time time1, org.djunits.value.vdouble.scalar.Time time)
      Interpolate between given frequencies.
      Parameters:
      frequency0 - Frequency; frequency at time0
      time0 - Time; time of frequency0 (≤ time)
      frequency1 - Frequency; frequency at time1
      time1 - Time; time of frequency1 (> time)
      time - Time; time0time < time1
      Returns:
      interpolated frequency
    • integrate

      abstract int integrate(org.djunits.value.vdouble.scalar.Frequency frequency0, org.djunits.value.vdouble.scalar.Time time0, org.djunits.value.vdouble.scalar.Frequency frequency1, org.djunits.value.vdouble.scalar.Time time1)
      Integrates to the number of trips in given period.
      Parameters:
      frequency0 - Frequency; frequency at time0
      time0 - Time; time of frequency0 (≤ time)
      frequency1 - Frequency; frequency at time1
      time1 - Time; time of frequency1 (> time)
      Returns:
      number of trips in given period
    • isStepWise

      public boolean isStepWise()
      Returns:
      whether this is step-wise interpolation
    • isLinear

      public boolean isLinear()
      Returns:
      whether this is linear interpolation
    • interpolateVector

      public final org.djunits.value.vdouble.scalar.Frequency interpolateVector(org.djunits.value.vdouble.scalar.Time time, org.djunits.value.vdouble.vector.FrequencyVector demandVector, org.djunits.value.vdouble.vector.TimeVector timeVector, boolean sliceStart)
      Returns interpolated value from array at given time. If time is outside of the vector range, 0 is returned.
      Parameters:
      time - Time; time to determine the frequency at
      demandVector - FrequencyVector; demand vector
      timeVector - TimeVector; time vector
      sliceStart - boolean; whether the time is at the start of an arbitrary time slice
      Returns:
      interpolated value from array at given time, or 0 when time is outside of range