Class IDM
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.tactical.following.AbstractCarFollowingModel
-
- org.opentrafficsim.road.gtu.lane.tactical.following.AbstractIDM
-
- org.opentrafficsim.road.gtu.lane.tactical.following.IDM
-
- All Implemented Interfaces:
CarFollowingModel
,DesiredHeadwayModel
,DesiredSpeedModel
,Initialisable
public class IDM extends AbstractIDM
Implementation of the IDM. See https://en.wikipedia.org/wiki/Intelligent_driver_modelCopyright (c) 2013-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
$LastChangedDate: 2015-07-24 02:58:59 +0200 (Fri, 24 Jul 2015) $, @version $Revision: 1147 $, by $Author: averbraeck $, initial version 5 apr. 2016
BSD-style license. See OpenTrafficSim License.- Author:
- Wouter Schakel
-
-
Field Summary
-
Fields inherited from class org.opentrafficsim.road.gtu.lane.tactical.following.AbstractIDM
A, B, B0, DELTA, DESIRED_SPEED, FSPEED, HEADWAY, S0, T
-
Fields inherited from interface org.opentrafficsim.road.gtu.lane.tactical.following.CarFollowingModel
CAR_FOLLOWING_MODEL
-
-
Constructor Summary
Constructors Constructor Description IDM()
Default constructor using default models for desired headway and desired speed.IDM(DesiredHeadwayModel desiredHeadwayModel, DesiredSpeedModel desiredSpeedModel)
Constructor with modular models for desired headway and desired speed.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Acceleration
combineInteractionTerm(Acceleration aFree, Parameters parameters, Speed speed, Speed desiredSpeed, Length desiredHeadway, PerceptionIterable<? extends Headway> leaders)
Combines an interaction term with the free term.String
getLongName()
Return the complete name of the car-following model.String
getName()
Return the name of the car-following model.-
Methods inherited from class org.opentrafficsim.road.gtu.lane.tactical.following.AbstractIDM
dynamicDesiredHeadway, dynamicHeadwayTerm, followingAcceleration
-
Methods inherited from class org.opentrafficsim.road.gtu.lane.tactical.following.AbstractCarFollowingModel
desiredHeadway, desiredSpeed, followingAcceleration, init, toString
-
-
-
-
Constructor Detail
-
IDM
public IDM()
Default constructor using default models for desired headway and desired speed.
-
IDM
public IDM(DesiredHeadwayModel desiredHeadwayModel, DesiredSpeedModel desiredSpeedModel)
Constructor with modular models for desired headway and desired speed.- Parameters:
desiredHeadwayModel
- DesiredHeadwayModel; desired headway modeldesiredSpeedModel
- DesiredSpeedModel; desired speed model
-
-
Method Detail
-
getName
public final String getName()
Return the name of the car-following model.- Returns:
- name of the car-following model
-
getLongName
public final String getLongName()
Return the complete name of the car-following model.- Returns:
- complete name of the car-following model
-
combineInteractionTerm
protected final Acceleration combineInteractionTerm(Acceleration aFree, Parameters parameters, Speed speed, Speed desiredSpeed, Length desiredHeadway, PerceptionIterable<? extends Headway> leaders) throws ParameterException
Combines an interaction term with the free term. There should be at least 1 leader for this method.- Specified by:
combineInteractionTerm
in classAbstractIDM
- Parameters:
aFree
- Acceleration; Free term of acceleration.parameters
- Parameters; Parameters.speed
- Speed; Current speed.desiredSpeed
- Speed; Desired speed.desiredHeadway
- Length; Desired headway.leaders
- PerceptionIterable<? extends Headway>; Set of leader headways (guaranteed positive) and speeds, ordered by headway (closest first).- Returns:
- Combination of terms into a single acceleration.
- Throws:
ParameterException
- In case of parameter exception.
-
-