-[easygems](https://easy.gems.dkrz.de/index.html): high-resolution coupled runs with ICON and IFS-FESOM from NextGEMS. There are many examples for processing and handling data.
Detailed information of ICON-Sapphire simulations can be found [here](https://owncloud.gwdg.de/index.php/apps/onlyoffice/s/rgYtnOROmJkmZRg?fileId=3122041030).
<details><summary><b>Table of Sapphire projects and simulations </b></summary>
-[easygems](https://easy.gems.dkrz.de/index.html): high-resolution coupled runs with ICON and IFS-FESOM from NextGEMS. There are many examples for processing and handling data.
To access raw output, one needs to know the location of the files. Since most Ruby data has not been catalogued yet, we'll access them directly from their output path. Available Ruby simulations and their respective output locations are tabulated [here](#Ruby-as-of-10122024)
#### Command line
Let's take the example from a CMIP7 experiment, `slo1826`.
One can use `query_yaml` to browse through the catalogue, look into its tree structure, available streams, output variables, possibly find location of output :smirk:, etc. Some details for the usage of `query_yaml` can be found on [easygems webpage](https://easy.gems.dkrz.de/Processing/Intake/query_yaml.html).
#### To use `query_yaml`, load the necessary modules
```bash
module use /work/k20200/k202134/hsm-tools/outtake/module
-`query_yaml -c ${rubycat}` or `query_yaml --ruby` will list a hierarchy of simulations (data tree structure included) that is on the specified catalogue. For all query_yaml examples using ruby catalogue, you can substitute `-c ${rubycat}` with `--ruby`.
<details><summary>text dump snippet from "query_yaml -c ${rubycat}" </summary>
```
cmip7
slo1774
atm_2d_ml
atm_3d_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_fx
oce_ice
oce_moc
oce_mon
slo1781
atm_2d_ml
atm_3d_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
slo1782
atm_2d_ml
atm_3d_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
slo1826
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_fx
oce_ice
oce_moc
oce_mon
slo1827
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
slo1828
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1774_001
atm_2d_ml
atm_3d_ml
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1774_002
atm_2d_ml
atm_3d_ml
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1774_003
atm_2d_ml
atm_3d_ml
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1826_001
atm_2d_ml
atm_3d_ml
atm_day_pl
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_day_pl
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1826_002
atm_2d_ml
atm_3d_ml
atm_day_pl
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_day_pl
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
tvp1826_003
atm_2d_ml
atm_3d_ml
atm_day_pl
atm_hfreq_inst_ml
atm_hfreq_mean_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_day_pl
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
dragon
dap010_r3b7-r2b9
atm_2d_hfq
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
lnd_mon
oce_kin
oce_moc
oce_mon
oce_qps
hel24282_r3b7_ctrl
hel24312_r5b7_ctrl
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_fx
oce_mon
oce_qps
hel24315_r5b7_ctrl
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_fx
oce_mon
oce_qps
hel24316_r5b7_ctrl
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_fx
oce_mon
oce_qps
hel24317_r5b7_ctrl
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_fx
oce_mon
oce_qps
epoc
epoc2_004
epoc2_010
epoc2_0??
hamocc
FC001_XPPslo1774
atm_2d_ml
atm_3d_ml
atm_mon
hamocc
hamocc_2d_tendencies
hamocc_EU_tendencies
hamocc_monitor
hamocc_sediment
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
FC04_XPPslo1802
atm_2d_ml
atm_3d_ml
atm_mon
hamocc
hamocc_2d_tendencies
hamocc_3d_tendencies
hamocc_EU_tendencies
hamocc_monitor
hamocc_sediment
hd_meanflow
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
oce_ssh
oce_zos
slo1774
atm_2d_ml
atm_3d_ml
atm_mon
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_fx
oce_ice
oce_moc
oce_mon
slo1802
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
jsb_2d
lnd_mon
oce_dbg
oce_def
oce_ice
oce_moc
oce_mon
oce_ssh
oce_zos
ocemix
mss0008_r5b8_ctrl
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_flx
oce_mon
oce_qps
oce_tke
mss0009_r5b8
atm_2d_ml
atm_3d_ml
atm_mon
hd_meanflow
oce_flx
oce_mon
oce_qps
oce_tke
```
</details>
-`query_yaml -c ${rubycat} cmip7 slo1826 atm_2d_ml` gives list of variable in stream
-`query_yaml -c ${rubycat} cmip7 slo1826 atm_2d_ml --var t_2m --cdo` gives path to data
-`cdo showtimestamp $(query_yaml -c ${rubycat} cmip7 slo1826 atm_2d_ml --var t_2m --cdo | head -n 1)` gives the date time stamps in the first file, indicating the output frequency
> **Sapphire**
-`query_yaml -c ${sappcat} ICON` will list only ICON-Sapphire simulations that are part of the general catalogue. Note that this is from NextGEMS cycle3 onwards.
<details><summary>text dump snippet from "query_yaml -c ${sappcat} ICON" </summary>
<details><summary>text dump snippet from "query_yaml -c ${sappcat} ICON ngc3028" </summary>
```
Choices for this dataset:
name description type allowed default
0 time time resolution of the dataset str [PT30M, PT3H, P1D] P1D
1 zoom zoom resolution of the dataset int [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0] 0
Variables:
a_tracer_v_to (time, depth_half, cell) sea water vertical diffusivity
atmos_fluxes_frshflux_evaporation (time, cell)
atmos_fluxes_frshflux_precipitation (time, cell)
......
```
</details>
-`query_yaml -c ${sappcat} ICON ngc3028 --search_args time=PT3H zoom=5` lists the variables available available at 3-hourly intervals and on zoom 5
-`query_yaml -c ${sappcat} ICON ngc3028 --search_args time=PT3H zoom=5 --var=hfls --uri --cdo` gives the path for latent heat flux at 3-hourly intervals and on zoom 5
> **EERIE**
-`query_yaml -c ${eeriecat} dkrz disk model-output icon-esm-er eerie-control-1950 v20231106 ocean native 2d_monthly_mean` gives list of variable in stream
<details><summary>text dump snippet from "query_yaml -c ${eeriecat} dkrz disk model-output icon-esm-er eerie-control-1950 v20231106 ocean native 2d_monthly_mean" </summary>
```
Choices for this dataset:
Variables:
Qbot (time, lev, ncells) Conductive heat flux at ice-ocean interface
Qtop (time, lev, ncells) Energy flux available for surface melting
Wind_Speed_10m (time, ncells) Wind Speed at 10m height
......
```
</details>
-`query_yaml -c ${eeriecat} dkrz disk model-output icon-esm-er eerie-control-1950 v20231106 atmos native 2d_monthly_mean --var tas --uri --cdo` gives path to data
-[EERIE data access on shell environment](https://pad.gwdg.de/nSKolAzGQY2zLz3oOr0QSQ?both#EERIE-data-access-on-shell-environment-for-cdo-operations) from hackathon starter pack
### Python (Sapphire)
[nextGEMS data access via intake](https://pad.gwdg.de/nSKolAzGQY2zLz3oOr0QSQ?both#NextGEMS-data-access-via-intake) from hackathon starter pack
[EERIE data access via intake](https://pad.gwdg.de/nSKolAzGQY2zLz3oOr0QSQ?both#EERIE-data-access-via-intake) from hackathon starter pack