Object: Flight Events
Version tag: flight_events_v0.0.2
Data source(s): OSN
Flight event type(s):
Currently the following flight event types are extracted:
level-start |
The start of a level segment. |
level-end |
The end of a level segment. |
top-of-descent |
The top-of-descent. |
top-of-climb |
The top-of-climb. |
take-off |
The take-off. |
landing |
The landing. |
first-xing-fl50/70/100/245 |
The first crossing of the flight level (FL) 50/70/100/245 during flight. |
last-xing-fl50/70/100/245 |
The last crossing of the flight level (FL) 50/70/100/245 during flight. |
entry-runway |
The entry of a runway at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
exit-runway |
The exit of a runway at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
entry-taxiway |
The entry of a taxiway at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
exit-taxiway |
The exit of a taxiway at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
entry-parking_position |
The entry of a parking position at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
exit-parking_position |
The exit of a parking position at an airport. Additional identifiable OpenStreetMap information of the runway is embedded in the info field in the form of a json. |
Flight event algorithm(s):
Phase derivations
Using OpenAP - The Open Model for Aircraft Performance and Emissions by Dr. Junzi Sun of the TU Delft, the state vectors of each flight were assessed and classified into various phases (GR
= Ground phase, LVL
= Level segment phase, CR
= Cruise phase, DE
= Descent phase, CL
= Climb phase). Using this the events are identified in each flight as follows:
level-start
: The first state vector in each level segment phase (LVL
).
level-end
: The last state vector in each level segment phase (LVL
).
top-of-climb
: The first state vector of the first cruise phase (CR
).
top-of-descent
: The last state vector of the last cruise phase (CR
).
take-off
: The first state vector of the climb phase (CL
) after a ground phase (GND
).
landing
: The first state vector of the ground phase (GND
) after a descent phase (DE
).
This algorithm has been adapted in this version to a native PySpark version for processing speed improvements.
Crossings
For each crossing of the respective flight levels (FL50/70/100/245) the algorithm is as follows:
- A smooth average flight level is calculated for each state vector.
- The flight values are compared between each subsequent state vector.
The first time it crosses a flight level of interest, the crossing state vector is recorded as a first-xing
event. The last time it crosses a flight level of interest, the crossing state vector is recorded as a last-xing
event.
Airport events
For each airport element (runway/taxiway/parking position) that we detect entry and exit in, the geographic information has been retrieved from OpenStreetMap. This information has been processed and made a geospatial grid using Uber H3. Following this, the trajectories have been matched to these grid cells at resolution 12.
A separate open source project is being developed to use this for small scale applications. See HexAero.