Class AbstractLinearFreeControl
java.lang.Object
org.opentrafficsim.road.gtu.lane.control.AbstractActuatedControl
org.opentrafficsim.road.gtu.lane.control.AbstractLinearFreeControl
- All Implemented Interfaces:
LongitudinalControl
- Direct Known Subclasses:
LinearAcc
Class that splits the desired acceleration of a controller in a fixed linear free term, and a term for following determined
by the sub-class.
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
-
Field Summary
Modifier and TypeFieldDescriptionstatic final org.opentrafficsim.base.parameters.ParameterTypeDouble
Desired speed error gain parameter.Fields inherited from class org.opentrafficsim.road.gtu.lane.control.AbstractActuatedControl
TDACC, TDCACC, X0
-
Constructor Summary
ConstructorDescriptionAbstractLinearFreeControl
(DelayedActuation delayedActuation) Constructor using default sensors with no delay. -
Method Summary
Modifier and TypeMethodDescriptionfinal org.djunits.value.vdouble.scalar.Acceleration
getDesiredAcceleration
(LaneBasedGtu gtu, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.opentrafficsim.base.parameters.Parameters settings) Returns the desired acceleration from the longitudinal control.abstract org.djunits.value.vdouble.scalar.Acceleration
getFollowingAcceleration
(LaneBasedGtu gtu, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.opentrafficsim.base.parameters.Parameters settings) Returns the following acceleration of the longitudinal control.Methods inherited from class org.opentrafficsim.road.gtu.lane.control.AbstractActuatedControl
delayActuation, getAcceleration
-
Field Details
-
KF
public static final org.opentrafficsim.base.parameters.ParameterTypeDouble KFDesired speed error gain parameter.
-
-
Constructor Details
-
AbstractLinearFreeControl
Constructor using default sensors with no delay.- Parameters:
delayedActuation
- DelayedActuation; delayed actuation
-
-
Method Details
-
getDesiredAcceleration
public final org.djunits.value.vdouble.scalar.Acceleration getDesiredAcceleration(LaneBasedGtu gtu, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.opentrafficsim.base.parameters.Parameters settings) throws org.opentrafficsim.base.parameters.ParameterExceptionReturns the desired acceleration from the longitudinal control.- Specified by:
getDesiredAcceleration
in classAbstractActuatedControl
- Parameters:
gtu
- LaneBasedGtu; gtuleaders
- PerceptionCollectable<HeadwayGtu, LaneBasedGtu>; leaderssettings
- Parameters; system settings- Returns:
- Acceleration; desired acceleration
- Throws:
org.opentrafficsim.base.parameters.ParameterException
- if parameter is not present
-
getFollowingAcceleration
public abstract org.djunits.value.vdouble.scalar.Acceleration getFollowingAcceleration(LaneBasedGtu gtu, PerceptionCollectable<HeadwayGtu, LaneBasedGtu> leaders, org.opentrafficsim.base.parameters.Parameters settings) throws org.opentrafficsim.base.parameters.ParameterExceptionReturns the following acceleration of the longitudinal control. This method is only invoked if there is at least 1 leader.- Parameters:
gtu
- LaneBasedGtu; gtuleaders
- PerceptionCollectable<HeadwayGtu, LaneBasedGtu>; leaderssettings
- Parameters; system settings- Returns:
- Acceleration; following acceleration of the longitudinal control
- Throws:
org.opentrafficsim.base.parameters.ParameterException
- if parameter is not present
-