Package org.goplanit.assignment.ltm.sltm
Class PasFlowShiftDestinationBasedExecutor
- java.lang.Object
-
- org.goplanit.assignment.ltm.sltm.PasFlowShiftExecutor
-
- org.goplanit.assignment.ltm.sltm.PasFlowShiftDestinationBasedExecutor
-
public class PasFlowShiftDestinationBasedExecutor extends PasFlowShiftExecutor
Functionality to conduct a PAS flow shift based on underlying destination based bush approach. A destination-based bush approach no longer requires labelling and should therefore outperform origin-based alternatives.- Author:
- markr
-
-
Field Summary
-
Fields inherited from class org.goplanit.assignment.ltm.sltm.PasFlowShiftExecutor
bushEntrySegmentS1S2SendingFlows, EPSILON, pas, PAS_MIN_S2_FLOW_THRESHOLD, pasMergeVertexNumExitSegments, settings, totalEntrySegmentS1S2Flow, usedCongestedEntryEdgeSegments
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PasFlowShiftDestinationBasedExecutor(Pas pas, StaticLtmSettings settings, BushFlowLabel dummyLabel)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
executeBushFlowShift(RootedLabelledBush bush, EdgeSegment entrySegment, double bushFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush.-
Methods inherited from class org.goplanit.assignment.ltm.sltm.PasFlowShiftExecutor
activatePasS2RemovalIf, determineEntrySegmentFlowShift, getS1SendingFlow, getS2SendingFlow, getUsedCongestedEntrySegments, initialise, isPasS2RemovalAllowed, isTowardsEqualAlternativeFlowDistribution, run
-
-
-
-
Constructor Detail
-
PasFlowShiftDestinationBasedExecutor
protected PasFlowShiftDestinationBasedExecutor(Pas pas, StaticLtmSettings settings, BushFlowLabel dummyLabel)
Constructor- Parameters:
pas
- to usesettings
- to usedummyLabel
- used as only label for each destination bush
-
-
Method Detail
-
executeBushFlowShift
protected void executeBushFlowShift(RootedLabelledBush bush, EdgeSegment entrySegment, double bushFlowShift, double[] flowAcceptanceFactors)
Perform the flow shift for a given bush. Delegate to concrete class implementation- Specified by:
executeBushFlowShift
in classPasFlowShiftExecutor
- Parameters:
bush
- to perform shift forentrySegment
- entry segment at hand to apply flow shift forbushFlowShift
- the absolute shift to apply for the given PAS-bush-entrysegment combinationflowAcceptanceFactors
- to use
-
-