Package org.goplanit.assignment
Class StaticTrafficAssignment
- java.lang.Object
-
- org.goplanit.component.PlanitComponent<NetworkLoading>
-
- org.goplanit.supply.networkloading.NetworkLoading
-
- org.goplanit.assignment.TrafficAssignment
-
- org.goplanit.assignment.StaticTrafficAssignment
-
- All Implemented Interfaces:
Serializable
,Comparable<IdAble>
,EventListener
,PlanitComponentListener
,InteractorAccessee
,TrafficAssignmentComponentAccessee
,EventListener
,ExternalIdAble
,IdAble
- Direct Known Subclasses:
AlgorithmB
,TraditionalStaticAssignment
public abstract class StaticTrafficAssignment extends TrafficAssignment
A static traffic assignment class with some commonalities implemented shared across static assignment implementations- Author:
- markr
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.goplanit.assignment.TrafficAssignment
ALGORITHM_B, ELTM, initialLinkSegmentCostByTimePeriod, initialLinkSegmentCostTimePeriodAgnostic, SLTM, TRADITIONAL_STATIC_ASSIGNMENT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
StaticTrafficAssignment(StaticTrafficAssignment other, boolean deepCopy)
Copy Constructorprotected
StaticTrafficAssignment(IdGroupingToken groupId)
Constructor
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract StaticTrafficAssignment
deepClone()
deep clone on planit component should attempt to also update internal dependencies between deep cloned containers where possiblevoid
executeEquilibration()
Execute equilibration over all time periods and modesprotected void
executeTimePeriod(TimePeriod timePeriod)
Perform assignment for a given time periodprotected abstract void
executeTimePeriod(TimePeriod timePeriod, Set<Mode> modes)
Execute the time period for the registered modesabstract StaticTrafficAssignment
shallowClone()
Create a shallow copy of this entity-
Methods inherited from class org.goplanit.assignment.TrafficAssignment
checkForEmptyComponents, createLoggingPrefix, createOutputTypeAdapter, createTransportNetwork, disbandTransportNetwork, execute, finalizeAfterExecution, getDemands, getGapFunction, getInfrastructureNetwork, getIterationIndex, getOutputManager, getPhysicalCost, getSmoothing, getTotalNumberOfNetworkSegments, getTotalNumberOfNetworkVertices, getTrafficAssignmentComponent, getTransportNetwork, getVirtualCost, getZoning, initialiseBeforeExecution, logAllSettings, logRegisteredComponentName, registerComponent, reset, setDemands, setGapFunction, setInfrastructureNetwork, setInitialLinkSegmentCost, setInitialLinkSegmentCost, setOutputManager, setPhysicalCost, setSmoothing, setVirtualCost, setZoning, verifyComponentCompatibility, verifyNetworkDemandZoningCompatibility
-
Methods inherited from class org.goplanit.component.PlanitComponent
collectSettingsAsKeyValueMap, equals, getComponentType, getExternalId, getId, getIdGroupingToken, getKnownSupportedEventTypes, getXmlId, hashCode, onPlanitComponentEvent, setExternalId, setXmlId
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.goplanit.utils.event.EventListener
hasKnownSupportedEventTypes
-
Methods inherited from interface org.goplanit.utils.id.ExternalIdAble
appendExternalId, appendExternalId, getIdsAsString, getSplitExternalId, getSplitExternalId, hasExternalId, hasXmlId, setXmlId
-
Methods inherited from interface org.goplanit.utils.id.IdAble
compareTo, idEquals, idHashCode
-
Methods inherited from interface org.goplanit.interactor.InteractorAccessee
getCompatibleAccessor
-
-
-
-
Constructor Detail
-
StaticTrafficAssignment
protected StaticTrafficAssignment(IdGroupingToken groupId)
Constructor- Parameters:
groupId
- for id generation
-
StaticTrafficAssignment
protected StaticTrafficAssignment(StaticTrafficAssignment other, boolean deepCopy)
Copy Constructor- Parameters:
other
- to copydeepCopy
- when true, create a eep copy, shallow copy otherwise
-
-
Method Detail
-
executeTimePeriod
protected abstract void executeTimePeriod(TimePeriod timePeriod, Set<Mode> modes) throws PlanItException
Execute the time period for the registered modes- Parameters:
timePeriod
- to executemodes
- to consider- Throws:
PlanItException
- thrown if error
-
executeTimePeriod
protected void executeTimePeriod(TimePeriod timePeriod) throws PlanItException
Perform assignment for a given time period- Parameters:
timePeriod
- the time period for the current assignment- Throws:
PlanItException
- thrown if there is an error
-
executeEquilibration
public void executeEquilibration() throws PlanItException
Execute equilibration over all time periods and modes- Specified by:
executeEquilibration
in classTrafficAssignment
- Throws:
PlanItException
- thrown if there is an error
-
shallowClone
public abstract StaticTrafficAssignment shallowClone()
Create a shallow copy of this entity- Specified by:
shallowClone
in interfaceIdAble
- Specified by:
shallowClone
in classTrafficAssignment
- Returns:
- shallow copy of entity
-
deepClone
public abstract StaticTrafficAssignment deepClone()
deep clone on planit component should attempt to also update internal dependencies between deep cloned containers where possible- Specified by:
deepClone
in interfaceIdAble
- Specified by:
deepClone
in classTrafficAssignment
- Returns:
- deep copy of entity
-
-