Enum Interpolation
- java.lang.Object
-
- java.lang.Enum<Interpolation>
-
- org.opentrafficsim.road.gtu.strategical.od.Interpolation
-
- All Implemented Interfaces:
Serializable
,Comparable<Interpolation>
public enum Interpolation extends Enum<Interpolation>
Interpolation of demand.Copyright (c) 2013-2022 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version Sep 15, 2016
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) abstract int
integrate(Frequency frequency0, Time time0, Frequency frequency1, Time time1)
Integrates to the number of trips in given period.(package private) abstract Frequency
interpolate(Frequency frequency0, Time time0, Frequency frequency1, Time time1, Time time)
Interpolate between given frequencies.Frequency
interpolateVector(Time time, FrequencyVector demandVector, TimeVector timeVector, boolean sliceStart)
Returns interpolated value from array at given time.boolean
isLinear()
boolean
isStepWise()
static Interpolation
valueOf(String name)
Returns the enum constant of this type with the specified name.static Interpolation[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
STEPWISE
public static final Interpolation STEPWISE
Stepwise interpolation of demand.
-
LINEAR
public static final Interpolation LINEAR
Linear interpolation of demand.
-
-
Method Detail
-
values
public static Interpolation[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Interpolation c : Interpolation.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Interpolation valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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 type has no constant with the specified nameNullPointerException
- if the argument is null
-
interpolate
abstract Frequency interpolate(Frequency frequency0, Time time0, Frequency frequency1, Time time1, Time time)
Interpolate between given frequencies.- Parameters:
frequency0
- Frequency; frequency attime0
time0
- Time; time offrequency0
(≤time
)frequency1
- Frequency; frequency attime1
time1
- Time; time offrequency1
(>time
)time
- Time;time0
≤time
<time1
- Returns:
- interpolated frequency
-
integrate
abstract int integrate(Frequency frequency0, Time time0, Frequency frequency1, Time time1)
Integrates to the number of trips in given period.- Parameters:
frequency0
- Frequency; frequency attime0
time0
- Time; time offrequency0
(≤time
)frequency1
- Frequency; frequency attime1
time1
- Time; time offrequency1
(>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 Frequency interpolateVector(Time time, FrequencyVector demandVector, 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 atdemandVector
- FrequencyVector; demand vectortimeVector
- TimeVector; time vectorsliceStart
- 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
-
-