public final class LmrsUtil extends Object implements LmrsParameters
 Copyright (c) 2013-2018 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. 
 BSD-style license. See OpenTrafficSim License.
 
| Modifier and Type | Field and Description | 
|---|---|
static org.opentrafficsim.base.parameters.ParameterTypeAcceleration | 
BCRIT
Maximum critical deceleration, e.g. 
 | 
static org.opentrafficsim.base.parameters.ParameterTypeDuration | 
DT
Fixed model time step. 
 | 
static org.opentrafficsim.base.parameters.ParameterTypeDuration | 
T
Current car-following headway. 
 | 
static org.opentrafficsim.base.parameters.ParameterTypeDuration | 
TAU
Headway relaxation time. 
 | 
static org.opentrafficsim.base.parameters.ParameterTypeDuration | 
TMAX
Maximum car-following headway. 
 | 
static org.opentrafficsim.base.parameters.ParameterTypeDuration | 
TMIN
Minimum car-following headway. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
(package private) static boolean | 
acceptLaneChange(LanePerception perception,
                org.opentrafficsim.base.parameters.Parameters params,
                SpeedLimitInfo sli,
                CarFollowingModel cfm,
                double desire,
                org.djunits.value.vdouble.scalar.Speed ownSpeed,
                org.djunits.value.vdouble.scalar.Acceleration ownAcceleration,
                org.opentrafficsim.core.network.LateralDirectionality lat,
                GapAcceptance gapAcceptance)
Determine whether a lane change is acceptable (gap, lane markings, etc.). 
 | 
static SimpleOperationalPlan | 
determinePlan(LaneBasedGTU gtu,
             org.djunits.value.vdouble.scalar.Time startTime,
             CarFollowingModel carFollowingModel,
             LaneChange laneChange,
             LmrsData lmrsData,
             LanePerception perception,
             LinkedHashSet<MandatoryIncentive> mandatoryIncentives,
             LinkedHashSet<VoluntaryIncentive> voluntaryIncentives)
Determines a simple representation of an operational plan. 
 | 
static Desire | 
getLaneChangeDesire(org.opentrafficsim.base.parameters.Parameters parameters,
                   LanePerception perception,
                   CarFollowingModel carFollowingModel,
                   LinkedHashSet<MandatoryIncentive> mandatoryIncentives,
                   LinkedHashSet<VoluntaryIncentive> voluntaryIncentives,
                   Map<Class<? extends Incentive>,Desire> desireMap)
Determines lane change desire for the given RSU. 
 | 
(package private) static void | 
resetDesiredHeadway(org.opentrafficsim.base.parameters.Parameters params)
Resets value for T depending on level of lane change desire. 
 | 
(package private) static void | 
setDesiredHeadway(org.opentrafficsim.base.parameters.Parameters params,
                 double desire)
Sets value for T depending on level of lane change desire. 
 | 
static org.djunits.value.vdouble.scalar.Acceleration | 
singleAcceleration(org.djunits.value.vdouble.scalar.Length distance,
                  org.djunits.value.vdouble.scalar.Speed followerSpeed,
                  org.djunits.value.vdouble.scalar.Speed leaderSpeed,
                  double desire,
                  org.opentrafficsim.base.parameters.Parameters params,
                  SpeedLimitInfo sli,
                  CarFollowingModel cfm)
Determine acceleration from car-following with desire-adjusted headway. 
 | 
public static final org.opentrafficsim.base.parameters.ParameterTypeDuration DT
public static final org.opentrafficsim.base.parameters.ParameterTypeDuration TMIN
public static final org.opentrafficsim.base.parameters.ParameterTypeDuration T
public static final org.opentrafficsim.base.parameters.ParameterTypeDuration TMAX
public static final org.opentrafficsim.base.parameters.ParameterTypeDuration TAU
public static final org.opentrafficsim.base.parameters.ParameterTypeAcceleration BCRIT
public static SimpleOperationalPlan determinePlan(LaneBasedGTU gtu, org.djunits.value.vdouble.scalar.Time startTime, CarFollowingModel carFollowingModel, LaneChange laneChange, LmrsData lmrsData, LanePerception perception, LinkedHashSet<MandatoryIncentive> mandatoryIncentives, LinkedHashSet<VoluntaryIncentive> voluntaryIncentives) throws org.opentrafficsim.core.gtu.GTUException, org.opentrafficsim.core.network.NetworkException, org.opentrafficsim.base.parameters.ParameterException, org.opentrafficsim.core.gtu.plan.operational.OperationalPlanException
gtu - gtustartTime - start timecarFollowingModel - car-following modellaneChange - lane change statuslmrsData - LMRS dataperception - perceptionmandatoryIncentives - set of mandatory lane change incentivesvoluntaryIncentives - set of voluntary lane change incentivesorg.opentrafficsim.core.gtu.GTUException - gtu exceptionorg.opentrafficsim.core.network.NetworkException - network exceptionorg.opentrafficsim.base.parameters.ParameterException - parameter exceptionorg.opentrafficsim.core.gtu.plan.operational.OperationalPlanException - operational plan exceptionpublic static Desire getLaneChangeDesire(org.opentrafficsim.base.parameters.Parameters parameters, LanePerception perception, CarFollowingModel carFollowingModel, LinkedHashSet<MandatoryIncentive> mandatoryIncentives, LinkedHashSet<VoluntaryIncentive> voluntaryIncentives, Map<Class<? extends Incentive>,Desire> desireMap) throws org.opentrafficsim.base.parameters.ParameterException, org.opentrafficsim.core.gtu.GTUException, org.opentrafficsim.core.gtu.plan.operational.OperationalPlanException
parameters - parametersperception - perceptioncarFollowingModel - car-following modelmandatoryIncentives - mandatory incentivesvoluntaryIncentives - voluntary incentivesdesireMap - map where calculated desires are stored inorg.opentrafficsim.base.parameters.ParameterException - if a parameter is not definedorg.opentrafficsim.core.gtu.GTUException - if there is no mandatory incentive, the model requires at least oneorg.opentrafficsim.core.gtu.plan.operational.OperationalPlanException - perception exceptionstatic boolean acceptLaneChange(LanePerception perception, org.opentrafficsim.base.parameters.Parameters params, SpeedLimitInfo sli, CarFollowingModel cfm, double desire, org.djunits.value.vdouble.scalar.Speed ownSpeed, org.djunits.value.vdouble.scalar.Acceleration ownAcceleration, org.opentrafficsim.core.network.LateralDirectionality lat, GapAcceptance gapAcceptance) throws org.opentrafficsim.base.parameters.ParameterException, org.opentrafficsim.core.gtu.plan.operational.OperationalPlanException
perception - perceptionparams - parameterssli - speed limit infocfm - car-following modeldesire - level of lane change desireownSpeed - own speedownAcceleration - current car-following accelerationlat - lateral direction for synchronizationgapAcceptance - gap-acceptance modelorg.opentrafficsim.base.parameters.ParameterException - if a parameter is not definedorg.opentrafficsim.core.gtu.plan.operational.OperationalPlanException - perception exceptionstatic void setDesiredHeadway(org.opentrafficsim.base.parameters.Parameters params,
                              double desire)
                       throws org.opentrafficsim.base.parameters.ParameterException
params - parametersdesire - lane change desireorg.opentrafficsim.base.parameters.ParameterException - if T, TMIN or TMAX is not in the parametersstatic void resetDesiredHeadway(org.opentrafficsim.base.parameters.Parameters params)
                         throws org.opentrafficsim.base.parameters.ParameterException
params - parametersorg.opentrafficsim.base.parameters.ParameterException - if T is not in the parameterspublic static org.djunits.value.vdouble.scalar.Acceleration singleAcceleration(org.djunits.value.vdouble.scalar.Length distance,
                                                                               org.djunits.value.vdouble.scalar.Speed followerSpeed,
                                                                               org.djunits.value.vdouble.scalar.Speed leaderSpeed,
                                                                               double desire,
                                                                               org.opentrafficsim.base.parameters.Parameters params,
                                                                               SpeedLimitInfo sli,
                                                                               CarFollowingModel cfm)
                                                                        throws org.opentrafficsim.base.parameters.ParameterException
distance - distance from follower to leaderfollowerSpeed - speed of followerleaderSpeed - speed of leaderdesire - level of lane change desireparams - parameterssli - speed limit infocfm - car-following modelorg.opentrafficsim.base.parameters.ParameterException - if a parameter is not definedCopyright © 2014–2018 Delft University of Technology. All rights reserved.