1) METEO-FRANCE Emanuele (observations, da, diagnostics) EE
2) JEDI IODA (obs, da, diagnostics, filtering) GM and EE
3) PROVIDENTIA - GHOST (obs, diagnostics, statistics/filtering, subsampling) DB
4) BSC Calum Obs preproc of DA (regridding/thinning, converters) CM
5) HARP (ESA, satellite focused, filtering, regridding, statistics) AV
6) CSO (observation operator, https://ci.tno.nl/gitlab/cams/cso) RG
8) SUper obs generation (https://egusphere.copernicus.org/preprints/2024/egusphere-2024-632/egusphere-2024-632.pdf) JE
9) BSC Jeronimo (lidars, converters, filtering, oversampling) JE, CM
10) BSC Guillaume (VIIRS preprocessing) GM, CM
11) Scripts used by climate people? CM https://earth.bsc.es/gitlab/ac/aerclim_evaluation
12) NES AV
13) Unit converter DB
14) ADC Toolbox AV


| Tool                           | Purpose                                                                                | Observations types                                                                                                                                                                                                                                                                                                                                                                                                                                                               | Features                                                                                                                                                                                                                                                                                                                                                                                                                                              | Language                                                       | Code  modularity/HPC readiness                                                                                                                | Number of developers / Public repo                                                                                                      |     |     |
| ------------------------------ | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --- | --- |
| MF Emanuele scripts            | Pre-postprocessor for DA                                                               | Gas/aerosols, ground/satellite(L1/L2), total/partial columns, profiles, profiles with kernels, radiances, about 20 instruments in total                                                                                                                                                                                                                                                                                                                                          | HDF/Netcdf storage, converters, averager/undersampler, plotters, can store model results at observation positions, observations algebra to compute model evaluation, basic filtering                                                                                                                                                                                                                                                                  | Python                                                         | Highly modular (one class per instrument) / Little optimized (just numpy, single proc)                                                        | < 5, private [here](https://earth.bsc.es/gitlab/eemili/da-tools)                                                                        |     |     |
| IODA                           | Data assimilation obs code                                                             | many (meteo, ocean, composition, land?)                                                                                                                                                                                                                                                                                                                                                                                                                                          | Many storage possibilities (cloud?), can be used independently from JEDI DA?                                                                                                                                                                                                                                                                                                                                                                          | C++, (some FORTRAN libs), Python API                           | Very abstract, MPI layer                                                                                                                      | > 30, public repo, but private dev repo                                                                                                 |     |     |
| PROVIDENTIA - GHOST            | Obs statistics - model evaluation                                                      |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                |                                                                                                                                               |                                                                                                                                         |     |     |
| BSC Calum                      | Observational Preprocessor for the Monarch-DA                                          | In-situ observations (EEA data from different sources)/VIIRS Satellite data/Sentinel 3 SLSTR data                                                                                                                                                                                                                                                                                                                                                                                | Python based preprocessor for the data, both Object and functional programming. Uses pandas as a base converting both csv and netcdf data into dataframes. It includes, filters needed for the Monarch-DA (Uncertainties/Grid repr/Averaging over grid cells etc). Grid Tools to rotate the grid and to join the observations with the grid (Used for the satellite data). Fortran scipts to rotate and output to DA format (binary - needs changing) | Python and a bit of Fortran                                    | Very monarch-DA based, but some functional tools and filtering could be used in the new processor                                             | 2/3, [repo](https://earth.bsc.es/gitlab/es/monarch-DA/-/tree/BDRC-U1-oper-DA/obs_preproc?ref_type=heads)                                |     |     |
| HARP                           | Preprocess satellite, model, and/or correlative data                                   | ACE FTS L2, ADM-Aeolus L1b/L2a/L2b, Aura OMI/TES/MLS/HIRDLS L2 + OMI L3, CALIPSO (Lidar L2), CLOUDNET L2, AERLINET, ECMWF GRIB (includes CAMS global model data), ENVISAT GOMOS/MIPAS/SCIAMACHY L1/L2, ERS GOME L1/L2, ESA CCI Aerosol/Cloud/GHG/Ozone, GEOMS FTIR/Lidar/MWR/Pandora/Sonde/UVVIS-DOAS data (NDACC/EVDC), GOSAT FTS L1/L2, Metop GOME-2/IASI L1/L2, NPP Suomi (CrIS/OMPS/VIIRS) L2, ODIN OSIRIS/SMR L2, QA4ECV NO2/HCHO L2, Sentinel 5P L1/L2, TEMIS ozone fields | Ingest product data, import/export of data from/into HARP-specific data format (a convention on top of netCDF3/HDF4/HDF5), advanced filtering, automatic unit conversion, regridding in any dimension, vertical smoothing of atmospheric profiles, creating L3 grids, built-in AFGL86 and USSTD76 climatology data                                                                                                                                    | C with import/export interfaces for Python, R, Matlab, and IDL | Built-in classes, it does not seem possible to use it in multiple processes, but it is very fast (possibly because it has been built using C) | 10, S[&]T, [repo](https://github.com/stcorp/harp) and [docs](https://stcorp.github.io/harp/doc/html/)                                   |     |     |
| CSO                            | Prepare data for assimilation of satellite observations in regional air quality models | Synthetic Sentinel-4 and Sentinel 5p data (TROPOMI instrument NO2,SO2,HCHO,CO,CHOCHO,) and others                                                                                                                                                                                                                                                                                                                                                                                | pre-processor in Python (download, selection, regridding, inspection and conversion, super observations, co-locate pixels, catalogues) + observation operator in Fortran (simulating S4/S5p (or other) retrievals from model state)                                                                                                                                                                                                                   | Python/Fortran                                                 | modular, very well documented, MPI for observation operator routines                                                                          | CAMS, [repo](https://ci.tno.nl/gitlab/cams/cso)                                                                                         |     |     |
| BSC Jeronimo scripts           | Pre-postprocessor for MONARCH DA                                                       | aerosol satellite (VIIRS and IASI), LIVAS (CALIOP) and earlinet extinction coefficients                                                                                                                                                                                                                                                                                                                                                                                          | Filtering from L2 flags and Dust from PuGinoux filter, horizontal averaging with weigths computed by the area/proportional area intersection between regular grids, binary DA format and netCDF writing, support monarch rotated grid, support large time windows (incremental IO)                                                                                                                                                                    | Python                                                         | targeted to dust and monarch DA, quite messy code: not designed originaly to share it,  can run in WS                                         | 1, private [ here ]( https://earth.bsc.es/gitlab/jescriba/preproc-satellitepreproc )                                                    |     |     |
| BSC Guillaume scripts          |                                                                                        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                |                                                                                                                                               |                                                                                                                                         |     |     |
| AC-CLIM repo                   |                                                                                        |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                |                                                                                                                                               |                                                                                                                                         |     |     |
| NES (NetCDF for Earth Science) | Data post-processing and geospatial operations in parallel                             | NetCDF files in CF conventions (regular, rotated, nested rotated, LCC and Mercator grids and points datasets)                                                                                                                                                                                                                                                                                                                                                                    | Read and write netCDF files in serial and parallel transparently, create netCDF files from scratch in different geographical projections, do vertical, horizontal and conservative interpolations, calculate daily statistics, create shapefiles and make spatial joins, calculate the area of each cell in a grid or in a set of geometries.                                                                                                         | Python                                                         | Full control over parallelization, highly modular                                                                                             | 4 (Carles, Alba, An-Chi and Carmen from BSC), [repo](https://earth.bsc.es/gitlab/es/NES/)                                               |     |     |
| Unit converter                 | Conversion of units (used in Providentia)                                              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                                                       | Python                                                         |                                                                                                                                               | 1 (Dene from BSC), [repo](https://earth.bsc.es/gitlab/ac/unit-converter)                                                                |     |     |
| ADC Toolbox                    | Model evaluation using satellite data                                                  | Forecast data from CAMS model vs. L2 near real-time and offline data from TROPOMI (NO2, O3, CO, SO2, HCHO), IASI (O3, CO, SO2) and GOME-2 (NO2, O3, SO2, HCHO) sensors. Reanalysis monthly data from CAMS model vs. L3 monthly data from TROPOMI (NO2), IASI (O3, CO) and GOME-2 (NO2) sensors.                                                                                                                                                                                  | Scripts to download satellite data for TROPOMI, IASI and GOME-2 given the dates and species, binning and regridding, computation of levels pressure, conversion of units, application of the averaging kernels, datasets merge, geostatistical comparison and trend analysis                                                                                                                                                                          | Python                                                         | Functional programming, it cannot be used in parallel                                                                                         | 1 (Alba from BSC supervised by Federico Fierli, Antje Inness and Miha Razinger), [repo](https://github.com/ECMWFCode4Earth/adc-toolbox) |     |     |
