extend the arrival candidates
This commit is contained in:
@@ -61,15 +61,17 @@ class Inbound:
|
|||||||
flightTime, flightTimeUntilIaf, trackmiles, arrivalRoute = self.arrivalEstimation(identifier.Runway, star, weatherModel)
|
flightTime, flightTimeUntilIaf, trackmiles, arrivalRoute = self.arrivalEstimation(identifier.Runway, star, weatherModel)
|
||||||
|
|
||||||
avgSpeed = trackmiles / (float(flightTime.seconds) / 3600.0)
|
avgSpeed = trackmiles / (float(flightTime.seconds) / 3600.0)
|
||||||
ttg = flightTime - timedelta(minutes = (trackmiles / (avgSpeed * 1.1)) * 60)
|
# the closer we get to the IAF the less time delta can be achieved by short cuts, delay vectors or speeds
|
||||||
ttl = timedelta(minutes = (trackmiles / (avgSpeed * 0.9)) * 60) - flightTime
|
ratio = min(2.0, max(0.0, self.Report.distanceToIAF / (trackmiles - self.Report.distanceToIAF)))
|
||||||
|
possibleTimeDelta = (trackmiles / (avgSpeed * 0.9)) * 60
|
||||||
|
timeDelta = timedelta(minutes = (possibleTimeDelta - flightTime.total_seconds() / 60) * ratio)
|
||||||
ita = self.ReportTime + flightTime
|
ita = self.ReportTime + flightTime
|
||||||
earliest = ita - ttg
|
earliest = ita - timeDelta
|
||||||
latest = ita + ttl
|
latest = ita + timeDelta
|
||||||
|
|
||||||
self.ArrivalCandidates[identifier.Runway.Name] = ArrivalData(ttg = ttg, star = star, ita = ita, earliest = earliest,
|
self.ArrivalCandidates[identifier.Runway.Name] = ArrivalData(ttg = timeDelta, star = star, ita = ita, earliest = earliest,
|
||||||
entry = flightTimeUntilIaf, touchdown = flightTime,
|
entry = flightTimeUntilIaf, touchdown = flightTime,
|
||||||
ttl = ttl, latest = latest)
|
ttl = timeDelta, latest = latest, route = arrivalRoute, trackmiles = trackmiles)
|
||||||
|
|
||||||
# calculate the first values for later plannings
|
# calculate the first values for later plannings
|
||||||
for candidate in self.ArrivalCandidates:
|
for candidate in self.ArrivalCandidates:
|
||||||
|
|||||||
Reference in New Issue
Block a user