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, 15, 12, 0, 0)
flight_time_str = flight_time.strftime('%Y-%m-%d')
flight_index = f"KA-{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)
airport = LatLon(lat=14.945, lon=-23.4863889, label='RAI')
north_ec = LatLon(lat=15.884118, lon=-20.139438, label='north_ec')
earthcare = LatLon(lat=15.042972, lon=-20.30403, label='earthcare')
south_ec = LatLon(lat=14.201713, lon=-20.467758, label='south_ec')
leg_out = [
airport,
south_ec
]
leg_calval = [
south_ec,
earthcare,
north_ec
]
leg_home = [
north_ec,
airport
]
path = leg_out + leg_calval + 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)