Class NewellFundamentalDiagramConfigurator


  • public class NewellFundamentalDiagramConfigurator
    extends FundamentalDiagramConfigurator<NewellFundamentalDiagramComponent>
    Configurator for Newell Fundamental diagram implementation. We allow one to overwrite the the capacity and maximum densities used for each FD but not the free speed, since the free speed is a physical value that is a given. Note that a change on the link segment level takes precedence over a change on the link segment type, i.e., the most specific overwrite is used in the final fundamental diagram applied on the link segment.

    In absence of a capacity the capacity is computed by the point of intersection of the free flow branch and congested branch, which for Newell is defined by only the free flow speed, maximum density and intersection points with the x-axis (density=0), by explicitly setting the capacity or moving the maximum density point the FD will adjust its backward wave speed to accommodate any change comapred to the default computed capacity/maximum density.

    Author:
    markr
    • Constructor Detail

      • NewellFundamentalDiagramConfigurator

        protected NewellFundamentalDiagramConfigurator()
        Constructor
    • Method Detail

      • setCapacityLinkSegmentPcuHourLane

        public void setCapacityLinkSegmentPcuHourLane​(MacroscopicLinkSegment linkSegment,
                                                      double capacityPcuHourLane)
        Set the capacity in pcu/h/lane to use for the Newell FD for a given link segment. This only impacts the backward wave speed used to keep the FD viable.
        Parameters:
        linkSegment - the specified link segment
        capacityPcuHourLane - to use
      • setMaximumDensityLinkSegmentPcuKmLane

        public void setMaximumDensityLinkSegmentPcuKmLane​(MacroscopicLinkSegment linkSegment,
                                                          double maxDensityPcuKmLane)
        Set the maximum density in pcu/km/lane to use for the Newell FD for a given link segment. This only impacts the backward wave speed used to keep the FD viable. one to change the capacity.
        Parameters:
        linkSegment - the specified link segment
        maxDensityPcuKmLane - to use
      • setCapacityLinkSegmentTypePcuHourLane

        public void setCapacityLinkSegmentTypePcuHourLane​(MacroscopicLinkSegmentType linkSegmentType,
                                                          double capacityPcuHourLane)
        Set the capacity in pcu/h/lane to use for the Newell FD for a given link segment type. This only impacts the backward wave speed used to keep the FD viable.
        Parameters:
        linkSegmentType - the specified link segment type
        capacityPcuHourLane - to use
      • setMaximumDensityLinkSegmentTypePcuKmLane

        public void setMaximumDensityLinkSegmentTypePcuKmLane​(MacroscopicLinkSegmentType linkSegmentType,
                                                              double maxDensityPcuKmLane)
        Set the maximum density in pcu/km/lane to use for the Newell FD for a given link segment type. This only impacts the backward wave speed used to keep the FD viable. one to change the capacity.
        Parameters:
        linkSegmentType - the specified link segment type
        maxDensityPcuKmLane - to use