---
jupytext:
  text_representation:
    extension: .md
    format_name: myst
    format_version: 0.12
    jupytext_version: 1.7.1
kernelspec:
  display_name: Python 3
  language: python
  name: python3
platform: ATR
flight_id: ATR-20240831a
takeoff: "2024-08-31 13:30:00Z"
landing: "2024-08-31 17:00:00Z"
departure_airport: GVAC
arrival_airport: GVAC
crew:
  - name: D Duchanoy
    job: Pilot
  - name: G Seurat
    job: Pilot
  - name: T André
    job: Mechanics
  - name: B Celou
    job: Expé Principal
  - name: G Cayez
    job: Expé 
  - name: Louis Jaffeux
    job: PI
  - name: S Bounissou
    job: LNG
  - name: CJA Bayley
    job: aWALI
  - name: P Coutris
    job: Microphys 1
  - name: A Schwarzenboeck
    job: Microphys 2
  - name: G Legac
    job: RASTA
  - name: L Forges
    job: BASTA
categories: [ec_under, c_atr]
orphan: true
---

{logo}`MAESTRO`

# Flight plan - {front}`flight_id`

```{badges}
```

## Flight plan
* The flight is planned to take off at {front}`takeoff` UTC and land at {front}`landing` UTC.
* Flight track designed for coordination with EarthCare, HALO, and KingAir

```{code-cell} python3
:tags: [hide-input]
from orcestra.flightplan import sal, bco, LatLon, IntoCircle, path_preview, plot_cwv
from datetime import datetime
import intake

cat = intake.open_catalog("https://tcodata.mpimet.mpg.de/internal.yaml")

date_time = datetime(2024, 8, 30, 12, 0, 0)
date_time_str = date_time.strftime('%Y-%m-%d')
flight_time = datetime(2024, 8, 31, 12, 0, 0)

radius = 70e3 # units: km
circle_atr = LatLon(lat=14.649, lon=-22.350, label="circle_atr")
halo_circle = IntoCircle(circle_atr, radius, 360)

airport = sal
wp1 = LatLon(lat=16.568, lon=-22.667, label='wp1')
wp2 = LatLon(lat=15.412, lon=-22.139, label='wp2')
wp3 = LatLon(lat=14.281, lon=-22.360, label='wp3')
ec_meet = LatLon(lat=14.848, lon=-22.249, label='ec_meet')


path = [airport, wp1, wp2, ec_meet, wp3, wp2, wp1, airport]

ds = cat.HIFS(refdate=date_time_str, reftime=date_time.hour).to_dask()
cwv_flight_time = ds["tcwv"].sel(time=flight_time, method = "nearest")

ax = path_preview(path)
path_preview([circle_atr.course(0, radius), halo_circle], ax=ax)  # HACK: Add HALO circle
ax.scatter(circle_atr.lon, circle_atr.lat, color="tab:orange")
ax.text(circle_atr.lon+0.05, circle_atr.lat, color="tab:orange", s='HALO_Circle', bbox=dict(facecolor='white',edgecolor='white', boxstyle='round,pad=0.1'))

ax.set_extent([-24, -20, 13.5, 17])

plot_cwv(cwv_flight_time)


```
<!-- ![Flight Levels](./LEVELS-ATR-20240826a.jpg) -->

<!-- * SAFIRE Flight Plan submitted to Air Traffic Control (ATC)

![Page 1](./SAFIRE-ATR-20240831a.jpg) -->

```{code-cell} python3
:tags: [hide-input]
import pandas as pd
from dataclasses import asdict

pd.DataFrame.from_records(map(asdict, path+[circle_atr])).set_index("label")
```

## Crew

```{crew}
```