Class TtcRoomChecker
java.lang.Object
org.opentrafficsim.road.gtu.generator.TtcRoomChecker
- All Implemented Interfaces:
LaneBasedGtuGenerator.RoomChecker
Room checker based on time-to-collision. The room is considered ok if:
- The headway is larger than speed*1.0s + 3m
- time-to-collision < value
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
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncanPlace
(SortedSet<HeadwayGtu> leaders, LaneBasedGtuCharacteristics characteristics, org.djunits.value.vdouble.scalar.Duration since, LanePosition initialPosition) Return the maximum safe speed and position for a new GTU with the specified characteristics.final org.djunits.value.vdouble.scalar.Duration
getTtc()
Returns the TTC value.final String
toString()
-
Constructor Details
-
TtcRoomChecker
public TtcRoomChecker(org.djunits.value.vdouble.scalar.Duration ttc) Constructor.- Parameters:
ttc
- Duration; time to collision
-
-
Method Details
-
canPlace
public final LaneBasedGtuGenerator.Placement canPlace(SortedSet<HeadwayGtu> leaders, LaneBasedGtuCharacteristics characteristics, org.djunits.value.vdouble.scalar.Duration since, LanePosition initialPosition) throws NetworkException, GtuException Return the maximum safe speed and position for a new GTU with the specified characteristics. ReturnsPlacement.NO
if there is no safe speed and position. This method might be called with an empty leader set such that the desired speed can be implemented.- Specified by:
canPlace
in interfaceLaneBasedGtuGenerator.RoomChecker
- Parameters:
leaders
- SortedSet<HeadwayGtu>; leaders, usually 1, possibly more after a branchcharacteristics
- LaneBasedGtuCharacteristics; characteristics of the proposed new GTUsince
- Duration; time since the GTU wanted to arriveinitialPosition
- LanePosition; initial position- Returns:
- Speed; maximum safe speed, or null if a GTU with the specified characteristics cannot be placed at the current time
- Throws:
NetworkException
- this method may throw a NetworkException if it encounters an error in the network structureGtuException
- on parameter exception
-
getTtc
public final org.djunits.value.vdouble.scalar.Duration getTtc()Returns the TTC value.- Returns:
- Duration; TTC value
-
toString
-