use a new function to create the fixed preceedings and use the information in the runway manager

This commit is contained in:
Sven Czarnian
2021-12-21 10:45:32 +01:00
parent a2ea26ab5d
commit 13837fdb62
4 changed files with 56 additions and 23 deletions

View File

@@ -6,7 +6,8 @@ class Configuration:
def __init__(self, **kwargs):
# the AMAN specific information
self.RunwayConstraints = kwargs.get('constraints', None)
self.PreceedingInbounds = kwargs.get('preceeding', None)
self.PreceedingRunwayInbounds = kwargs.get('preceedingRunways', None)
self.PreceedingIafInbounds = kwargs.get('preceedingIafs', None)
self.EarliestArrivalTime = kwargs.get('earliest', None)
self.WeatherModel = kwargs.get('weather', None)
self.AirportConfiguration = kwargs.get('config', None)

View File

@@ -1,5 +1,7 @@
#!/usr/bin/env python
import copy
from datetime import datetime, timedelta
from aman.config.RunwaySequencing import RunwayAssignmentType
@@ -11,15 +13,9 @@ class RunwayManager:
def __init__(self, configuration : Configuration):
self.Spacings = SpacingConstraints()
self.Configuration = configuration
self.RunwayInbounds = copy.deepcopy(configuration.PreceedingRunwayInbounds)
self.IafInbounds = copy.deepcopy(configuration.PreceedingIafInbounds)
# initialize the tracker which inbound arrives at which runway
self.RunwayInbounds = {}
if None != configuration.PreceedingInbounds:
for runway in configuration.PreceedingInbounds:
self.RunwayInbounds[runway] = configuration.PreceedingInbounds[runway]
for runway in configuration.RunwayConstraints.ActiveArrivalRunways:
if not runway.Runway.Name in self.RunwayInbounds:
self.RunwayInbounds[runway.Runway.Name] = None
def calculateEarliestArrivalTime(self, runway : str, node : Node, earliestArrivalTime : datetime):
constrainedETA = None