Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
fee4089
Update docs for new gfas dataset
drieg Apr 22, 2026
d1f8bd7
Continue with gfasclim stuff
drieg Apr 23, 2026
3ef4f26
Further development pieces
drieg Apr 24, 2026
02d07ea
GitHub Action: Apply Pep8-formatting
invalid-email-address Apr 24, 2026
d342e16
Add correct meta to season
drieg Apr 24, 2026
65b02bf
Current state
drieg Apr 24, 2026
71b1bef
Merge remote-tracking branch 'origin/wildfireclim' into wildfireclim
drieg Apr 24, 2026
616d7dc
GitHub Action: Apply Pep8-formatting
invalid-email-address Apr 24, 2026
198e3ad
Merge remote-tracking branch 'origin/master' into wildfireclim
drieg Apr 28, 2026
0f60186
White spaces
drieg Apr 28, 2026
e858947
Add wildfire clim stuff to consistency check
drieg Apr 29, 2026
46b099a
Compiling version
drieg Apr 29, 2026
ecc5932
Add season metadata for gfasclim
drieg May 13, 2026
5bf4c38
Some fixes, but not yet fully working
drieg May 13, 2026
8e02382
Fix issues
drieg Jun 11, 2026
7cc11f1
Try to fix CI
drieg Jun 11, 2026
bd54537
Add new global experiment to testlist
drieg Jun 12, 2026
8e30664
Try to add test
drieg Jun 15, 2026
fbb6b82
GitHub Action: Apply Pep8-formatting
invalid-email-address Jun 15, 2026
e5ba2c8
Fix grid file name
drieg Jun 15, 2026
2959bf0
Merge remote-tracking branch 'origin/wildfireclim' into wildfireclim
drieg Jun 15, 2026
69726f4
Rename and fix typo
drieg Jun 15, 2026
1494eb7
Make sure all necessary binaries are executed for new icon_global test
drieg Jun 16, 2026
d73deb6
Fix data type
drieg Jun 16, 2026
41626fe
Hopefully fix get_data script
drieg Jun 18, 2026
432a8cc
Shorten truncated line
drieg Jun 22, 2026
3b630f3
Add gfasclim to mmpim global namelist
drieg Jun 22, 2026
b1e1238
Corrected typo in tolerance_check_cdo.py
stelliom Jun 23, 2026
3206d6e
Correct comment
drieg Jun 23, 2026
3f31a55
Update test/testsuite/testlist_icon.xml
drieg Jun 23, 2026
4900cac
Update python/extpar_gfasclim_to_buffer.py
stelliom Jun 23, 2026
0fca782
Use R02B04 global grid
stelliom Jun 23, 2026
d8d924a
Merge branch 'master' into wildfireclim
stelliom Jun 23, 2026
123212d
Added GFASCLIM buffer to gitignore
stelliom Jun 23, 2026
5a88588
Small fixes to the docs
stelliom Jun 23, 2026
007620e
Add switch to enable/disable gfasclim in Python wrapper
stelliom Jun 23, 2026
cb6b08b
Updated references
stelliom Jun 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ modules.env
/bin/extpar_topo_to_buffer.exe
/bin/extpar_cdnc_to_buffer.py
/bin/extpar_edgar_to_buffer.py
/bin/extpar_gfasclim_to_buffer.py
/mod/*
/src/info_extpar.f90

Expand Down
1 change: 1 addition & 0 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ script_files:= \
$(srcdir)/python/extpar_era_to_buffer.py \
$(srcdir)/python/extpar_ndvi_to_buffer.py \
$(srcdir)/python/extpar_edgar_to_buffer.py \
$(srcdir)/python/extpar_gfasclim_to_buffer.py \
$(srcdir)/python/extpar_cdnc_to_buffer.py \
$(srcdir)/python/extpar_ahf_to_buffer.py \
$(srcdir)/python/extpar_aot_to_buffer.py \
Expand Down
1 change: 1 addition & 0 deletions docs/compile_run.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ The main python scripts
* *extpar_isa_to_buffer.py*
* *extpar_cdnc_to_buffer.py*
* *extpar_edgar_to_buffer.py*
* *extpar_gfasclim_to_buffer.py*
* *extpar_art_to_buffer.py*

can be treated like the Fortran binaries and copied to the `run/` directory. Make sure the *namelist.py* is also present in the `run/` directory.
Expand Down
1 change: 1 addition & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ _1. EXTPAR settings as JSON, see official docs_
"enable_cdnc": false,
"enable_edgar": false,
"enable_art": false,
"enable_gfasclim": false,
"use_array_cache": false,
"lsgsl": false,
"lfilter_oro": false,
Expand Down
4 changes: 4 additions & 0 deletions docs/user_manual/user_manual_01_overall_description.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ repository, contact the current EXTPAR source code administrator.
| MODIS derived soil albedo values | Community Land Model 3.5 | 30' |
| CAMEL Emissivity | NASA | 5km |
| EDGAR Emissions | European Commission /JRC/PBL | 0.1 degree |
| GFAS Wildfire Emissions | Copernicus Atmosphere Monitoring Service (CAMS) | 0.1 degree |
| MODIS cloud droplet number climatology Q06 | NASA | 1 degree |

<center>*Table 1: Input raw datasets*</center>
Expand Down Expand Up @@ -193,6 +194,9 @@ The output fields with the external parameters are shown here:
| Annual sulfur dioxide carbon emissions | emi_so2 | $kg\,m^{-2}\,s^{-1}$ | EDGAR |
| Annual ammonia emissions | emi_nh3 | $kg\,m^{-2}\,s^{-1}$ | EDGAR |
| Annual nitrogen oxides emissions | emi_nox | $kg\,m^{-2}\,s^{-1}$ | EDGAR |
| Seasonal black carbon emissions due to wildfires | bcfire | $kg\,m^{-2}\,s^{-1}$ | GFAS |
| Seasonal organic carbon emissions due to wildfires | ocfire | $kg\,m^{-2}\,s^{-1}$ | GFAS |
| Seasonal sulfur dioxide carbon emissions due to wildfires | so2fire | $kg\,m^{-2}\,s^{-1}$ | GFAS |
| Monthly cloud droplet number climatology | cdnc | $cm^{-3}$ | MODIS |

<center>*Table 2: Output external parameters*</center>
3 changes: 3 additions & 0 deletions docs/user_manual/user_manual_02_software_modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ The interpolation algorithms selected are:
- **albedo** *distance-weighted average remapping*
- **NDVI** *first order conservative remapping*
- **EDGAR** *first order conservative remapping*
- **GFASCLIM** *first order conservative remapping*
- **CDNC** *first order conservative remapping*
- **CRU climatology** *distance-weighted average remapping*
- **emissivity** *first order conservative remapping*
Expand Down Expand Up @@ -112,7 +113,9 @@ calling the final program for the important consistency check.
- `extpar_emiss_to_buffer`
- `extpar_art_to_buffer`
- `extpar_era_to_buffer`
- `extpar_cdnc_to_buffer`
- `extpar_edgar_to_buffer`
- `extpar_gfasclim_to_buffer`

These programs generate intermediate NetCDF files ("buffer") with
the aggregated data.
Expand Down
52 changes: 43 additions & 9 deletions docs/user_manual/user_manual_04_python_modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@ in the paragraph *Data processing* of each Python module.

The namelist `namelist.py` contains the Python dictionaries
`input_alb`, `input_tclim`, `input_emiss`, `input_ndvi`,
`input_ahf`, `input_isa`, `input_art`, `input_aot` and `input_edgar`. These dictionaries
`input_ahf`, `input_isa`, `input_art`, `input_aot`, `input_cdnc`,
`input_edgar` and `input_gfasclim`. These dictionaries
replace their corresponding Fortran namelist files `INPUT_`.

`input_alb` provides information about the albedo data type and the
Expand All @@ -48,28 +49,35 @@ or fine) as well as the paths and filenames of the input/output data.
data (full range or long-wave) and the filename and paths of the
input/output data.

`input_ndvi` only provides information about the the path and the
`input_ndvi` only provides information about the path and the
filenames of the input/output data.

`input_era` only provides information about the the path and the
`input_era` only provides information about the path and the
filenames of the input/output data.

`input_isa` contains a switch determine the type of ISA data and
provides information about the the path and the filenames of the
`input_isa` contains a switch to determine the type of ISA data and
provides information about the path and the filenames of the
input/output data.

`input_ahf` contains a switch determine the type of AHF data and
provides information about the the path and the filenames of the
`input_ahf` contains a switch to determine the type of AHF data and
provides information about the path and the filenames of the
input/output data.

`input_edgar` only provides information about the the path and the
`input_cdnc` contains a switch to determine the type of CDNC data and
provides information about the path and the filenames of the
input/output data.

`input_edgar` only provides information about the path and the
filenames of the input/output data.

`input_gfasclim` only provides information about the path and the
filenames of the input/output data.

`input_aot` contains a switch to select the type of AOT data and
provides information about the path and the filenames of the input/output
data.

`input_art` only provides information about the the path and the
`input_art` only provides information about the path and the
filenames of the input/output data.

## extpar_alb_to_buffer
Expand Down Expand Up @@ -375,6 +383,32 @@ interpolation. No other processing steps take place.
- Output: buffer file with EDGAR data (input_edgar:
edgar_buffer_file)

## extpar_gfasclim_to_buffer

### Short description of the subprogram *extpar_gfasclim_to_buffer*

The executable *extpar_gfasclim_to_buffer* allows the interpolation of
global emission data for black carbon, organic carbon and sulfur dioxide
originating from wildfires needed for the 2D-Aerosol in ICON to the target grid.

The namelist contains only the path to the raw data, the raw data file
name and the name of the buffer file.

The remapping to the target grid uses the *first order conservative*
interpolation. No other processing steps take place.

### Used namelist files and data in-/output:

- namelists files: namelist.py (dict: input_gfasclim), INPUT_grid_org,
INPUT_ICON_GRID

- generate namelist: INPUT_gfasclim

- data input: gfasclim2015-2024.nc

- Output: buffer file with GFASCLIM data (input_gfasclim:
gfasclim_buffer_file)

## extpar_cdnc_to_buffer

### Short description of the subprogram *extpar_cdnc_to_buffer*
Expand Down
10 changes: 10 additions & 0 deletions docs/user_manual/user_manual_06_namelist_input.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ Whereas for the Fortran namelists and the Python dictionaries the user can speci
| INPUT_AOT | settings for aerosol data | `extpar_aot_to_buffer` | `extpar_aot_to_buffer` |
| INPUT_ART | settings for HWSD USDA data | `extpar_art_to_buffer` | |
| INPUT_EDGAR | settings for EDGAR data | `extpar_edgar_to_buffer` | `extpar_consistency_check` |
| INPUT_GFASCLIM | settings for GFASCLIM data | `extpar_gfasclim_to_buffer` | `extpar_consistency_check` |
| INPUT_CDNC | settings for cdnc data | `extpar_cdnc_to_buffer` | `extpar_consistency_check` |
| INPUT_ERA | settings for ERA data | `extpar_era_to_buffer` | `extpar_consistency_check` |
| INPUT_CHECK | settings for the consistency check | runscript | `extpar_consistency_check` |
Expand Down Expand Up @@ -207,6 +208,15 @@ The COSMO grid is defined by a rotated latlon-grid.
| `raw_data_edgar_filename_nh3` | character | | | Filename of EDGAR ammonia raw data |
| `raw_data_edgar_filename_nox` | character | | | Filename of EDGAR nitrogen oxides raw data |

## GFASCLIM Data

### DICT `input_gfasclim` (namelist.py)

| Parameter | Type | Default | Unit | Description |
|-----------|------|---------|------|-------------|
| `raw_data_gfasclim_path` | character | | | Path to GFASCLIM raw data |
| `raw_data_gfasclim_filename` | character | | | Filename of GFASCLIM raw data |

## CDNC Data

### DICT `input_cdnc` (namelist.py)
Expand Down
24 changes: 20 additions & 4 deletions python/WrapExtpar.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ def main():
enable_cdnc = config.get('enable_cdnc', False)
enable_edgar = config.get('enable_edgar', False)
enable_art = config.get('enable_art', False)
enable_gfasclim = config.get('enable_gfasclim', False)
use_array_cache = config.get('use_array_cache', False)
lsgsl = config.get('lsgsl', False)
lfilter_oro = config.get('lfilter_oro', False)
Expand All @@ -95,10 +96,10 @@ def main():
igrid_type, args.input_grid, iaot_type, ilu_type, ialb_type,
isoil_type, itopo_type, it_cl_type, iera_type, iemiss_type, icdnc_type,
ilookup_table_lu, enable_cdnc, enable_edgar, enable_art,
use_array_cache, nhori, radtopo_radius, tcorr_lapse_rate, tcorr_offset,
args.raw_data_path, args.run_dir, args.account, args.host,
args.no_batch_job, lurban, l_terra_urb, lsgsl, lfilter_oro,
l_use_corine, infill_corine, lradtopo)
enable_gfasclim, use_array_cache, nhori, radtopo_radius,
tcorr_lapse_rate, tcorr_offset, args.raw_data_path, args.run_dir,
args.account, args.host, args.no_batch_job, lurban, l_terra_urb, lsgsl,
lfilter_oro, l_use_corine, infill_corine, lradtopo)


def generate_external_parameters(igrid_type,
Expand All @@ -116,6 +117,7 @@ def generate_external_parameters(igrid_type,
enable_cdnc,
enable_edgar,
enable_art,
enable_gfasclim,
use_array_cache,
nhori,
radtopo_radius,
Expand Down Expand Up @@ -158,6 +160,7 @@ def generate_external_parameters(igrid_type,
'enable_cdnc': enable_cdnc,
'enable_edgar': enable_edgar,
'enable_art': enable_art,
'enable_gfasclim': enable_gfasclim,
'use_array_cache': use_array_cache,
'l_use_corine': l_use_corine,
'infill_corine': infill_corine,
Expand Down Expand Up @@ -772,6 +775,16 @@ def setup_edgar_namelist(args):
return namelist


def setup_gfasclim_namelist(args):
namelist = {}

namelist['raw_data_gfasclim_path'] = args['raw_data_path']
namelist['raw_data_gfasclim_filename'] = 'gfasclim2015-2024.nc'
namelist['gfasclim_buffer_file'] = 'gfasclim_buffer.nc'

return namelist


def setup_check_namelist(args):
namelist = {}

Expand Down Expand Up @@ -811,6 +824,7 @@ def setup_namelist(args) -> dict:
namelist.update(setup_emiss_namelist(args))
namelist.update(setup_cdnc_namelist(args))
namelist.update(setup_edgar_namelist(args))
namelist.update(setup_gfasclim_namelist(args))
namelist.update(setup_art_namelist(args))
namelist.update(setup_check_namelist(args))

Expand Down Expand Up @@ -845,6 +859,8 @@ def setup_runscript(args):
executables.append('"extpar_edgar_to_buffer.py" ')
if args['enable_art']:
executables.append('"extpar_art_to_buffer.py" ')
if args['enable_gfasclim']:
executables.append('"extpar_gfasclim_to_buffer.py" ')

executables.append('"extpar_consistency_check.exe" ')

Expand Down
Loading
Loading