Package org.djunits.quantity
Class Duration
- All Implemented Interfaces:
Serializable,Comparable<Duration>,Additive<Duration>,Scalable<Duration>,Value<Duration.Unit,Duration>
Duration is the interval of time between two events, measured in seconds (s). This quantity encodes a relative amount
of time. The Time quantity encodes an absolute time instant.
Copyright (c) 2025-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:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDuration.Unit encodes the units of relative time. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final DurationConstant with value NaN.static final DurationConstant with value -MAX_VALUE.static final DurationConstant with value NEGATIVE_INFINITY.static final DurationConstant with value one.static final DurationConstant with value MAX_VALUE.static final DurationConstant with value POSITIVE_INFINITY.static final DurationConstant with value zero. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal TimeAdd an (absolute) time to this duration, and return a time.final DimensionlessCalculate the division of Duration and Duration, which results in a Dimensionless quantity.instantiate(double si) Instantiate a quantity with an SI or base value.final SpeedCalculate the multiplication of Duration and Acceleration, which results in a Speed scalar.final AngularVelocityCalculate the multiplication of Duration and AngularAcceleration, which results in a AngularVelocity scalar.final AngleCalculate the multiplication of Duration and AngularVelocity, which results in a Angle scalar.final ElectricalCapacitanceCalculate the multiplication of Duration and ElectricalConductance, which results in a ElectricalCapacitance scalar.final ElectricalInductanceCalculate the multiplication of Duration and ElectricalResistance, which results in a ElectricalInductance scalar.final ElectricChargeCalculate the multiplication of Duration and ElectricCurrent, which results in a ElectricCharge scalar.final MagneticFluxCalculate the multiplication of Duration and ElectricPotential, which results in a MagneticFlux scalar.final MassCalculate the multiplication of Duration and FlowMass, which results in a Mass scalar.final VolumeCalculate the multiplication of Duration and FlowVolume, which results in a Volume scalar.final EnergyCalculate the multiplication of Duration and Power, which results in a Energy scalar.final LengthCalculate the multiplication of Duration and Speed, which results in a Length scalar.static DurationReturns a Duration based on a value and the textual representation of the unit, which can be localized.static DurationofSi(double si) Return a Duration instance based on an SI value.Return the reciprocal of this quantity (1/q).siUnit()Return the SI unit of this quantity.static DurationReturns a Duration representation of a textual representation of a value with a unit.Methods inherited from class org.djunits.quantity.def.Quantity
abs, add, as, compareTo, divide, doubleValue, eq, eq0, equals, floatValue, format, format, ge, ge0, getDisplayUnit, getInUnit, getInUnit, getName, gt, gt0, hashCode, instantiate, interpolate, intValue, isRelative, le, le0, longValue, lt, lt0, max, mean, min, multiply, ne, ne0, negate, of, product, scaleBy, setDisplayUnit, si, subtract, sum, toDisplayString, toDisplayString, toString, toString, toString, toString, toStringSIPrefixed, toStringSIPrefixed, toTextualString, toTextualString, valueOfMethods inherited from class java.lang.Number
byteValue, shortValueMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.djunits.value.Value
isAbsolute, setDisplayUnit
-
Field Details
-
ZERO
Constant with value zero. -
ONE
Constant with value one. -
NaN
Constant with value NaN. -
POSITIVE_INFINITY
Constant with value POSITIVE_INFINITY. -
NEGATIVE_INFINITY
Constant with value NEGATIVE_INFINITY. -
POS_MAXVALUE
Constant with value MAX_VALUE. -
NEG_MAXVALUE
Constant with value -MAX_VALUE.
-
-
Constructor Details
-
Duration
Instantiate a Duration quantity with a unit.- Parameters:
value- the value, expressed in the unitunit- the unit in which the value is expressed
-
Duration
Instantiate a Duration quantity with a unit, expressed as a String.- Parameters:
value- the value, expressed in the unitabbreviation- the String abbreviation of the unit in which the value is expressed
-
Duration
Construct Duration quantity.- Parameters:
value- Scalar from which to construct this instance
-
-
Method Details
-
ofSi
Return a Duration instance based on an SI value.- Parameters:
si- the si value- Returns:
- the Duration instance based on an SI value
-
instantiate
Description copied from class:QuantityInstantiate a quantity with an SI or base value.- Specified by:
instantiatein classQuantity<Duration,Duration.Unit> - Parameters:
si- the value expressed in the base (SI) unit- Returns:
- a quantity with the given SI-value and base (SI) unit
-
siUnit
Description copied from class:QuantityReturn the SI unit of this quantity.- Overrides:
siUnitin classQuantity<Duration,Duration.Unit> - Returns:
- the SI unit of this quantity
-
valueOf
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 a localized or English abbreviation of the unit. Spaces are allowed, but not required, between the value and the unit.- Parameters:
text- the textual representation to parse into a Duration- Returns:
- the Scalar representation of the value in its unit
- Throws:
IllegalArgumentException- when the text cannot be parsedNullPointerException- when the text argument is null
-
of
Returns a Duration based on a value and the textual representation of the unit, which can be localized.- Parameters:
value- the value to useunitString- the textual representation of the unit- Returns:
- the Scalar representation of the value in its unit
- Throws:
IllegalArgumentException- when the unit cannot be parsed or is incorrectNullPointerException- when the unitString argument is null
-
add
Add an (absolute) time to this duration, and return a time. The unit of the return value will be the unit of this duration, and the reference of the return value will be the reference belonging to the given time.R.add(A)= unit of R and reference value of A.- Parameters:
time- the absolute time to add- Returns:
- the absolute time plus this duration
-
divide
Calculate the division of Duration and Duration, which results in a Dimensionless quantity.- Parameters:
v- quantity- Returns:
- quantity as a division of Duration and Duration
-
multiply
Calculate the multiplication of Duration and ElectricCurrent, which results in a ElectricCharge scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and ElectricCurrent
-
multiply
Calculate the multiplication of Duration and FlowMass, which results in a Mass scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and FlowMass
-
multiply
Calculate the multiplication of Duration and FlowVolume, which results in a Volume scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and FlowVolume
-
multiply
Calculate the multiplication of Duration and Acceleration, which results in a Speed scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and Acceleration
-
multiply
Calculate the multiplication of Duration and Power, which results in a Energy scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and Power
-
multiply
Calculate the multiplication of Duration and Speed, which results in a Length scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and Speed
-
multiply
Calculate the multiplication of Duration and ElectricPotential, which results in a MagneticFlux scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and ElectricPotential
-
multiply
Calculate the multiplication of Duration and ElectricalResistance, which results in a ElectricalInductance scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and ElectricalResistance
-
multiply
Calculate the multiplication of Duration and ElectricalConductance, which results in a ElectricalCapacitance scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and ElectricalConductance
-
multiply
Calculate the multiplication of Duration and AngularVelocity, which results in a Angle scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and AngularVelocity
-
multiply
Calculate the multiplication of Duration and AngularAcceleration, which results in a AngularVelocity scalar.- Parameters:
v- scalar- Returns:
- scalar as a multiplication of Duration and AngularAcceleration
-
reciprocal
Description copied from class:QuantityReturn the reciprocal of this quantity (1/q).- Overrides:
reciprocalin classQuantity<Duration,Duration.Unit> - Returns:
- the reciprocal of this quantity, with the correct SI units
-