Class IDMPlus

  • All Implemented Interfaces:
    CarFollowingModel, DesiredHeadwayModel, DesiredSpeedModel, Initialisable

    public class IDMPlus
    extends AbstractIDM
    Implementation of the IDM+. See Schakel, W.J., Knoop, V.L., and Van Arem, B. (2012), LMRS: Integrated Lane Change Model with Relaxation and Synchronization, Transportation Research Records: Journal of the Transportation Research Board, No. 2316, pp. 47-57. Note in the official versions of TRB and TRR some errors appeared due to the typesetting of the papers (not in the preprint provided here). A list of errata for the official versions is found here.

    Copyright (c) 2013-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
    BSD-style license. See OpenTrafficSim License.

    $LastChangedDate: 2015-07-24 02:58:59 +0200 (Fri, 24 Jul 2015) $, @version $Revision: 1147 $, by $Author: averbraeck $, initial version 5 apr. 2016
    Author:
    Wouter Schakel
    • Constructor Detail

      • IDMPlus

        public IDMPlus()
        Default constructor using default models for desired headway and desired speed.
      • IDMPlus

        public IDMPlus​(DesiredHeadwayModel desiredHeadwayModel,
                       DesiredSpeedModel desiredSpeedModel)
        Constructor with modular models for desired headway and desired speed.
        Parameters:
        desiredHeadwayModel - DesiredHeadwayModel; desired headway model
        desiredSpeedModel - 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 class AbstractIDM
        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.