Class TrafficLightUtil
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.tactical.util.TrafficLightUtil
-
public final class TrafficLightUtil extends Object
Static methods regarding traffic lights for composition in tactical planners.Copyright (c) 2013-2022 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version May 13, 2016
- Author:
- Wouter Schakel
-
-
Field Summary
Fields Modifier and Type Field Description static org.opentrafficsim.base.parameters.ParameterTypeAcceleration
B_YELLOW
Maximum deceleration for stopping for yellow traffic light.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Acceleration
respondToTrafficLight(org.opentrafficsim.base.parameters.Parameters parameters, HeadwayTrafficLight headwayTrafficLight, CarFollowingModel carFollowingModel, Speed speed, SpeedLimitInfo speedLimitInfo)
Returns an acceleration as response to a traffic light, being positive infinity if ignored.static Acceleration
respondToTrafficLights(org.opentrafficsim.base.parameters.Parameters parameters, Iterable<HeadwayTrafficLight> headwayTrafficLights, CarFollowingModel carFollowingModel, Speed speed, SpeedLimitInfo speedLimitInfo)
Returns an acceleration as response to a set of traffic lights, being positive infinity if ignored.
-
-
-
Method Detail
-
respondToTrafficLights
public static Acceleration respondToTrafficLights(org.opentrafficsim.base.parameters.Parameters parameters, Iterable<HeadwayTrafficLight> headwayTrafficLights, CarFollowingModel carFollowingModel, Speed speed, SpeedLimitInfo speedLimitInfo) throws org.opentrafficsim.base.parameters.ParameterException
Returns an acceleration as response to a set of traffic lights, being positive infinity if ignored. The response is governed by the car-following model in case a traffic light is yellow or red. A constant deceleration to stop is also calculated, and the highest acceleration of both is used. If this value is below -bYellow (B_YELLOW), the traffic light is ignored, which usually occurs only during the yellow phase. By using the highest acceleration of the car-following model and the constant deceleration, it is ensured that comfortable deceleration is applied if approaching a red traffic light from far away, while strong deceleration is only applied if required and appropriately represents stopping for yellow.- Parameters:
parameters
- Parameters; parametersheadwayTrafficLights
- Iterable<HeadwayTrafficLight>; set of headway traffic lightscarFollowingModel
- CarFollowingModel; car following modelspeed
- Speed; speedspeedLimitInfo
- SpeedLimitInfo; speed limit info- Returns:
- acceleration as response to a traffic light, being positive infinity if ignored
- Throws:
org.opentrafficsim.base.parameters.ParameterException
- if a parameter is not definedNullPointerException
- if any input is nullIllegalArgumentException
- if the traffic light is not downstream
-
respondToTrafficLight
public static Acceleration respondToTrafficLight(org.opentrafficsim.base.parameters.Parameters parameters, HeadwayTrafficLight headwayTrafficLight, CarFollowingModel carFollowingModel, Speed speed, SpeedLimitInfo speedLimitInfo) throws org.opentrafficsim.base.parameters.ParameterException
Returns an acceleration as response to a traffic light, being positive infinity if ignored. The response is governed by the car-following model in case the traffic light is yellow or red. A constant deceleration to stop is also calculated, and the highest acceleration of both is used. If this value is below -bYellow (B_YELLOW), the traffic light is ignored, which usually occurs only during the yellow phase. By using the highest acceleration of the car-following model and the constant deceleration, it is ensured that comfortable deceleration is applied if approaching a red traffic light from far away, while strong deceleration is only applied if required and appropriately represents stopping for yellow.- Parameters:
parameters
- Parameters; parametersheadwayTrafficLight
- HeadwayTrafficLight; headway traffic lightcarFollowingModel
- CarFollowingModel; car following modelspeed
- Speed; speedspeedLimitInfo
- SpeedLimitInfo; speed limit info- Returns:
- acceleration as response to a traffic light, being positive infinity if ignored
- Throws:
org.opentrafficsim.base.parameters.ParameterException
- if a parameter is not definedNullPointerException
- if any input is nullIllegalArgumentException
- if the traffic light is not downstream
-
-