public class IDMPlus extends AbstractGTUFollowingModel
Copyright (c) 2013-2015 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
TOODANGEROUS
Constructor and Description |
---|
IDMPlus()
Construct a new IDM+ car following model with reasonable values (reasonable for passenger cars).
|
IDMPlus(org.djunits.value.vdouble.scalar.Acceleration a,
org.djunits.value.vdouble.scalar.Acceleration b,
org.djunits.value.vdouble.scalar.Length.Rel s0,
org.djunits.value.vdouble.scalar.Time.Rel tSafe,
double delta)
Construct a new IDMPlus car following model.
|
Modifier and Type | Method and Description |
---|---|
org.djunits.value.vdouble.scalar.Acceleration |
computeAcceleration(org.djunits.value.vdouble.scalar.Speed followerSpeed,
org.djunits.value.vdouble.scalar.Speed followerMaximumSpeed,
org.djunits.value.vdouble.scalar.Speed leaderSpeed,
org.djunits.value.vdouble.scalar.Length.Rel headway,
org.djunits.value.vdouble.scalar.Speed speedLimit)
Compute the acceleration that would be used to follow a leader.
TODO We should probably add a be ready to stop before argument to prevent vehicles that cannot see their leader, or should slow down for a crossing from accelerating to unsafe speeds. |
String |
getLongName()
Return complete textual information about this instantiation of this GTU following model.
|
String |
getName()
Return the name of this GTU following model.
|
org.djunits.value.vdouble.scalar.Time.Rel |
getStepSize()
Return the step size of this GTU following model.
|
org.djunits.value.vdouble.scalar.Acceleration |
maximumSafeDeceleration()
Return the maximum safe deceleration for use in gap acceptance models.
|
computeAcceleration, computeAcceleration, computeAccelerationWithNoLeader, minimumHeadway
public IDMPlus()
public IDMPlus(org.djunits.value.vdouble.scalar.Acceleration a, org.djunits.value.vdouble.scalar.Acceleration b, org.djunits.value.vdouble.scalar.Length.Rel s0, org.djunits.value.vdouble.scalar.Time.Rel tSafe, double delta)
a
- DoubleScalar.Abs<AccelerationUnit>; the maximum acceleration of a stationary vehicle (normal value is 1
m/s/s)b
- DoubleScalar.Abs<AccelerationUnit>; the maximum deemed-safe deceleration (this is a positive value)s0
- DoubleScalar.Rel<LengthUnit>; the minimum stationary headwaytSafe
- DoubleScalar.Rel<TimeUnit>; the minimum time-headwaydelta
- double; the speed limit adherence (1.0; mean free speed equals the speed limit; 1.1: mean free speed equals
110% of the speed limit; etc.)public final org.djunits.value.vdouble.scalar.Acceleration computeAcceleration(org.djunits.value.vdouble.scalar.Speed followerSpeed, org.djunits.value.vdouble.scalar.Speed followerMaximumSpeed, org.djunits.value.vdouble.scalar.Speed leaderSpeed, org.djunits.value.vdouble.scalar.Length.Rel headway, org.djunits.value.vdouble.scalar.Speed speedLimit)
followerSpeed
- DoubleScalar.Abs<SpeedUnit>; the speed of the follower at the current timefollowerMaximumSpeed
- DoubleScalar.Abs<SpeedUnit>; the maximum speed that the follower is capable of driving
atleaderSpeed
- DoubleScalar.Abs<SpeedUnit>; the speed of the follower at the current timeheadway
- DoubleScalar.Rel<LengthUnit>; the net headway (distance between the front of the follower to
the rear of the leader) at the current timespeedLimit
- DoubleScalar.Abs<SpeedUnit>; the local speed limitpublic final org.djunits.value.vdouble.scalar.Time.Rel getStepSize()
public final org.djunits.value.vdouble.scalar.Acceleration maximumSafeDeceleration()
public final String getName()
public final String getLongName()
Copyright © 2014–2015 Delft University of Technology. All rights reserved.