Flight plan - HALO-20240816a#
ec_under ec_track c_north c_mid c_south ec_south c_atrCrew#
The flight is planned to take off at 2024-08-16 10:30:00+00:00.
Job |
Name |
---|---|
PI |
Bjorn Stevens |
WALES |
Georgios Dekoutsidis |
HAMP |
Jakob Deutloff |
Dropsondes |
Helene Glöckner |
Smart/VELOX |
Anna Luebke |
SpecMACS |
Lea Volkmer |
Scientist |
Martin Singh |
Ground contact |
Cathy Hohenegger |
Flight plan#
Show code cell source
from orcestra.flightplan import sal, bco, LatLon, IntoCircle, path_preview, plot_cwv
from datetime import datetime
import intake
import easygems.healpix as egh
cat = intake.open_catalog("https://tcodata.mpimet.mpg.de/internal.yaml")
# Define dates for forecast initialization and flight
issued_time = datetime(2024, 8, 15, 0, 0, 0)
issued_time_str = issued_time.strftime('%Y-%m-%d')
flight_time = datetime(2024, 8, 16, 16, 0, 0)
flight_time_str = flight_time.strftime('%Y-%m-%d')
flight_index = f"HALO-{flight_time.strftime('%Y%m%d')}a"
print("Initalization date of IFS forecast: " + issued_time_str + "\nFlight date: " + flight_time_str + "\nFlight index: " + flight_index)
radius = 1.852 * 72e3 # factor of 1.852 is km/nm (definition)
atr_radius = 1.852 * 38e3
airport = sal
c_atr = LatLon(lat=17.43333, lon=-23.500000, label='c_atr')
c_north = LatLon(lat=11.0045, lon=-31.4247, label='c_north')
c_mid = LatLon(lat=7.119, lon=-32.1586, label='c_mid')
c_south = LatLon(lat=3.2327, lon=-32.8863, label='c_south')
ec_north = LatLon(lat=12.2994, lon=-31.1748, label='ec_north')
ec_south = LatLon(lat=1.5, lon=-33.2358, label='ec_south')
ec_under = LatLon(lat=8.4143, lon=-31.9163, label='ec_under')
leg_south = [
airport,
ec_north,
ec_south
]
leg_circles = [
IntoCircle(c_south, radius, 360),
IntoCircle(c_mid, radius, 360),
ec_under,
IntoCircle(c_north, radius, 360, enter=90),
]
leg_home = [
ec_north,
IntoCircle(c_atr, atr_radius, -360, enter = 180),
airport
]
path = leg_south + leg_circles + leg_home
cat = intake.open_catalog("https://tcodata.mpimet.mpg.de/internal.yaml")
ds = cat.HIFS(datetime=issued_time).to_dask().pipe(egh.attach_coords)
cwv_flight_time = ds["tcwv"].sel(time=flight_time, method = "nearest")
ax = path_preview(path)
plot_cwv(cwv_flight_time)
Initalization date of IFS forecast: 2024-08-15
Flight date: 2024-08-16
Flight index: HALO-20240816a
Show code cell source
import pandas as pd
from dataclasses import asdict
pd.DataFrame.from_records(map(asdict, [ec_north, c_north, c_mid, c_south, ec_south, ec_under, c_atr])).set_index("label")
lat | lon | fl | time | note | |
---|---|---|---|---|---|
label | |||||
ec_north | 12.29940 | -31.1748 | None | None | None |
c_north | 11.00450 | -31.4247 | None | None | None |
c_mid | 7.11900 | -32.1586 | None | None | None |
c_south | 3.23270 | -32.8863 | None | None | None |
ec_south | 1.50000 | -33.2358 | None | None | None |
ec_under | 8.41430 | -31.9163 | None | None | None |
c_atr | 17.43333 | -23.5000 | None | None | None |
Show code cell source
from orcestra.flightplan import export_flightplan
export_flightplan("HALO-20240816a", path)