Flight plan - HALO-20240816a

Contents

Flight plan - HALO-20240816a#

ec_under ec_track c_north c_mid c_south ec_south c_atr

Crew#

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#

Hide 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
../_images/b2a40f2c249545d2a2b67129f6404d3df6295705fa582a25644a061e5bec7ff5.png
Hide 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
Hide code cell source
from orcestra.flightplan import export_flightplan

export_flightplan("HALO-20240816a", path)