diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cf2d99939..c709db509 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,6 +73,7 @@ jobs: repository: private-downstream-ci event_type: downstream-ci-hpc payload: '{"eccodes": "ecmwf/eccodes@${{ github.event.pull_request.head.sha || github.sha }}"}' +<<<<<<< HEAD codecov: name: code-coverage @@ -98,3 +99,5 @@ jobs: with: incoming_webhook: ${{ secrets.MS_TEAMS_INCOMING_WEBHOOK }} needs_context: ${{ toJSON(needs) }} +======= +>>>>>>> feature/chemId_mars diff --git a/definitions/aerosols.csv b/definitions/aerosols.csv new file mode 100644 index 000000000..b4c1652c4 --- /dev/null +++ b/definitions/aerosols.csv @@ -0,0 +1,18 @@ +chemId chemName name aerosolType constituentType localTablesVersion sourceSinkChemicalPhysicalProcess typeOfSizeInterval scaleFactorOfFirstSize scaledValueOfFirstSize scaleFactorOfSecondSize scaledValueOfSecondSize +901 aer_seasalt_003_05 Sea salt aerosol (0.03 - 0.5 um) 62008 7 8 3 7 5 +902 aer_seasalt_05_5 Sea salt aerosol (0.5 - 5 um) 62008 7 7 5 6 5 +903 aer_seasalt_5_20 Sea salt aerosol (5 - 20 um) 62008 7 6 5 5 2 +904 aer_dust_003_055 Dust aerosol (0.03 - 0.55 um) 62001 7 8 3 8 55 +905 aer_dust_055_09 Dust aerosol (0.55 - 0.9 um) 62001 7 8 55 7 9 +906 aer_dust_09_20 Dust aerosol (0.9 - 20 um) 62001 7 7 9 5 2 +907 aer_hicorgmat Hydrophilic organic matter aerosol 62015 +908 aer_hocorgmat Hydrophobic organic matter aerosol 62016 +909 aer_hicblackcarb Hydrophilic black carbon aerosol 62013 +910 aer_hocblackcarb Hydrophobic black carbon aerosol 62014 +911 aer_sulph Sulphate aerosol 62006 +912 aer_nitrfine Nitrate fine mode aerosol (<= 2.5 um) 62004 5 7 25 missing() missing() +913 aer_nitrcoars Nitrate coarse mode aerosol (>2.5 um) 62004 3 7 25 missing() missing() +914 aer_nh4 Ammonium aerosol 62003 +915 aer_biosecorg Biogenic secondary organic aerosol 62032 +916 aer_antsecorg Anthropogenic secondary organic aerosol 62033 +51 aer_NO3 Nitrate 62004 diff --git a/definitions/chemSpecies.csv b/definitions/chemSpecies.csv new file mode 100644 index 000000000..92a06ef66 --- /dev/null +++ b/definitions/chemSpecies.csv @@ -0,0 +1,130 @@ +chemId chemName name aerosolType constituentType localTablesVersion sourceSinkChemicalPhysicalProcess +203 O3 Ozone 1 +231 gO3 GEMS ozone 1 1 +4 CH4_c Methane (chemistry) 2 1 +59 H2O_c Water vapour (chemistry) 2 +57 CO2_c Carbon dioxide (chemistry) 3 1 +25 CO2 Carbon dioxide 3 +2 CO Carbon monoxide 4 +17 NO2 Nitrogen dioxide 5 +58 N2O_c Nitrous oxide (chemistry) 6 1 +31 N2O Nitrous oxide 6 +5 HCHO Formaldehyde 7 +8 SO2_v Volcanic sulfur dioxide 8 7 +233 SO2 Sulphur dioxide 8 +19 NH3 Ammonia 9 +21 NH4 Ammonium 10 +27 NO Nitrogen monoxide 11 +203 O Oxygen atom 12 +32 NO3 Nitrate radical 13 +28 HO2_r Hydroperoxy radical 14 +33 N2O5 Dinitrogen pentoxide 15 +86 HONO Nitrous acid 16 +6 HNO3 Nitric acid 17 +34 HO2NO2 Pernitric acid 18 +3 H2O2 Hydrogen peroxide 19 +199 H2 Dihydrogen 20 +173 N Nitrogen atom 21 +20 SO4 Sulfate 22 +11 Ra Radon 23 +175 Cl Chlorine atom 26 +174 ClO Chlorine monoxide 27 +69 Cl2O2 Dichlorine dioxide 28 +65 HOCl Hypochlorous acid 29 +64 ClONO2 Chlorine nitrate 30 +63 OClO Chlorine dioxide 31 +191 Br Bromine atom 32 +176 BrO Bromine monoxide 33 +193 BrCl Bromine monochloride 34 +68 HBr Hydrogen bromide 35 +70 HOBr Hypobromous acid 36 +194 BrONO2 Bromine nitrate 37 +60 O2 Dioxygen 38 +67 ClNO2 Nitryl chloride 39 +85 H2SO4 Sulfuric acid 40 +166 H2S Hydrogensulfide 41 +189 SO3 Sulfur trioxide 42 +192 Br2 Bromine 43 +202 HF Hydrogen fluoride 44 +232 SF6 Sulphur hexafluoride 45 +66 Cl2 Chlorine 46 +30 OH_r Hydroxyl radical 10000 +29 CH3O2_r Methylperoxy radical 10001 +42 CH3OH Methanol 10004 +7 CH3OOH Methyl peroxide 10005 +43 HCOOH Formic acid 10005 +226 HCN Hydrogen cyanide 10006 +224 CH3CN Acetonitrile 10007 +45 C2H6 Ethane 10008 +10 C2H4 Ethene 10009 +46 C2H5OH Ethanol 10011 +96 CH3COOH Acetic acid 10012 +13 PAN Peroxyacetyl nitrate 10013 +47 C3H8 Propane 10014 +48 C3H6 Propene 10015 +16 C5H8 Isoprene 10017 +22 MSA Methane sulfonic acid 10024 +23 CH3COCHO Methyl glyoxal 10025 +35 C2O3_r Peroxy acetyl radical 10026 +44 MCOOH Methacrylic acid 10027 +50 ISPD Methacrolein MVK (needs to go local) 10028 +110 MACR Methacrolein 10028 +52 CH3COCH3 Acetone 10029 +93 DIEN Butadiene 10031 +98 CH3CHO Acetaldehyde 10032 +101 GLYALD Glycolaldehyde 10033 +102 CRESOL Cresol 10034 +104 CH3COOOH Peracetic acid 10035 +108 EO Hoch2ch2o 10036 +106 EO2 Hoch2ch2o2 10037 +107 GLYOXAL Glyoxal 10038 +112 C3H7O2 Isopropyldioxidanyl 10039 +114 C3H7OOH Isopropyl hydroperoxide 10040 +118 HYAC Hydroxyacetone 10041 +119 PAA Peroxyacetic acid 10042 +138 MVK Methylvinylketone 10043 +139 PhO Phenoxy radical 10044 +190 OCS_c Carbonyl sulfide 10046 +195 CH2Br2 Dibromomethane 10047 +196 CH3O Methoxy radical 10048 +197 CHBr3 Tribromomethane 10049 +201 HCO Formyl radical 10050 +94 C2H5OOH Ethyl hydroperoxide 10052 +115 PO2 C3h6oho2 10053 +116 POOH C3h6ohooh 10054 +18 DMS Dimethyl sulfide 10500 +163 DMSO Dimethyl sulfoxyde 10501 +200 HCl Hydrogen chloride 20001 +71 CFC11 Trichlorofluoromethane 20002 +72 CFC12 Dichlorodifluoromethane 20003 +73 CFC113 Trichlorotrifluoroethane 20004 +74 CFC114 Dichlorotetrafluoroethane 20006 +75 CFC115 Chloropentafluoroethane 20007 +78 CH3Cl Methyl chloride 20015 +80 CH3Br Methyl bromide 20018 +26 Pb Lead 30296 +61 O2_1s Singlet sigma dioxygen 40000 +62 O2_1d Singlet Delta dioxygen 40001 +204 O_1d Excited oxygen atom 40002 +205 O_3p Ground state oxygen atom 40003 +129 NOx Nitrogen oxides 60003 +168 NOy All nitrogen oxides 60004 +126 BIGALK Lumped alkanes 60009 +49 C10H16 Terpenes 60012 +12 ALD2 Aldehydes 60018 +14 ROOH Peroxides 60019 +15 NO3_org Organic nitrates 60020 +36 ROR Organic ethers 60021 +40 NH2 Amine 60022 +105 KET Ketones 60023 +109 DCB Unsaturated dicarbonyls 60024 +111 UDD Unsaturated hydroxy dicarbonyl 60025 +113 HKET Hydroxy ketone 60026 +155 Ox Oxides 60027 +161 ISOPOOH Hoch2c(ooh)(ch3)ch=ch2 60032 +229 ISOPBO2 Isoprene peroxy type B 60056 +230 ISOPDO2 Isoprene peroxy type D mass mixing ratio 60057 +227 HPALD1 Hydroperoxy aldehydes type 1 60058 +228 HPALD2 Hydroperoxy aldehydes type 2 60058 +225 CH3O2NO2 Methyl peroxy nitrate 210182 +124 BIGENE Lumped alkenes 600100 diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 152644647..7c78987fa 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -5814,7 +5814,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -5822,7 +5821,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -5830,7 +5828,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -5838,7 +5835,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -5846,7 +5842,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -5854,7 +5849,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -5862,7 +5856,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -5870,7 +5863,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -5878,7 +5870,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -5886,7 +5877,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -5894,7 +5884,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -5902,7 +5891,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -5910,7 +5898,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -5918,7 +5905,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -5926,7 +5912,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -5934,7 +5919,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -5942,7 +5926,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -5950,7 +5933,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -5958,7 +5940,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -5966,7 +5947,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Aerosol number density diff --git a/definitions/grib2/chemFormula.def b/definitions/grib2/chemFormula.def new file mode 100644 index 000000000..48e1214c7 --- /dev/null +++ b/definitions/grib2/chemFormula.def @@ -0,0 +1,464 @@ +"O3" = { +constituentType = 0 ; +} +"H2O_c" = { +constituentType = 1 ; +} +"CO2" = { +constituentType = 3 ; +} +"CO" = { +constituentType = 4 ; +} +"NO2" = { +constituentType = 5 ; +} +"N2O" = { +constituentType = 6 ; +} +"HCHO" = { +constituentType = 7 ; +} +"SO2_v" = { +constituentType = 8 ; +sourceSinkChemicalPhysicalProcess = 7 ; +} +"SO2" = { +constituentType = 8 ; +} +"NH3" = { +constituentType = 9 ; +} +"NH4" = { +constituentType = 10 ; +} +"NO" = { +constituentType = 11 ; +} +"O" = { +constituentType = 12 ; +} +"NO3" = { +constituentType = 13 ; +} +"HO2_r" = { +constituentType = 14 ; +} +"N2O5" = { +constituentType = 15 ; +} +"HONO" = { +constituentType = 16 ; +} +"HNO3" = { +constituentType = 17 ; +} +"HO2NO2" = { +constituentType = 18 ; +} +"H2O2" = { +constituentType = 19 ; +} +"H2" = { +constituentType = 20 ; +} +"N" = { +constituentType = 21 ; +} +"SO4" = { +constituentType = 22 ; +} +"Ra" = { +constituentType = 23 ; +} +"Cl" = { +constituentType = 26 ; +} +"ClO" = { +constituentType = 27 ; +} +"Cl2O2" = { +constituentType = 28 ; +} +"HOCl" = { +constituentType = 29 ; +} +"ClONO2" = { +constituentType = 30 ; +} +"OClO" = { +constituentType = 31 ; +} +"Br" = { +constituentType = 32 ; +} +"BrO" = { +constituentType = 33 ; +} +"BrCl" = { +constituentType = 34 ; +} +"HBr" = { +constituentType = 35 ; +} +"HOBr" = { +constituentType = 36 ; +} +"BrONO2" = { +constituentType = 37 ; +} +"O2" = { +constituentType = 38 ; +} +"ClNO2" = { +constituentType = 39 ; +} +"H2SO4" = { +constituentType = 40 ; +} +"H2S" = { +constituentType = 41 ; +} +"SO3" = { +constituentType = 42 ; +} +"Br2" = { +constituentType = 43 ; +} +"HF" = { +constituentType = 44 ; +} +"SF6" = { +constituentType = 45 ; +} +"Cl2" = { +constituentType = 46 ; +} +"OH_r" = { +constituentType = 10000 ; +} +"CH3O2_r" = { +constituentType = 10001 ; +} +"CH3OH" = { +constituentType = 10004 ; +} +"CH3OOH" = { +constituentType = 10002 ; +} +"HCOOH" = { +constituentType = 10005 ; +} +"HCN" = { +constituentType = 10006 ; +} +"CH3CN" = { +constituentType = 10007 ; +} +"C2H6" = { +constituentType = 10008 ; +} +"C2H4" = { +constituentType = 10009 ; +} +"C2H5OH" = { +constituentType = 10011 ; +} +"CH3COOH" = { +constituentType = 10012 ; +} +"PAN" = { +constituentType = 10013 ; +} +"C3H8" = { +constituentType = 10014 ; +} +"C3H6" = { +constituentType = 10015 ; +} +"C5H8" = { +constituentType = 10017 ; +} +"MSA" = { +constituentType = 10024 ; +} +"CH3COCHO" = { +constituentType = 10025 ; +} +"C2O3_r" = { +constituentType = 10026 ; +} +"MCOOH" = { +constituentType = 10027 ; +} +"MACR" = { +constituentType = 10028 ; +} +"CH3COCH3" = { +constituentType = 10029 ; +} +"DIEN" = { +constituentType = 10031 ; +} +"CH3CHO" = { +constituentType = 10032 ; +} +"GLYALD" = { +constituentType = 10033 ; +} +"CRESOL" = { +constituentType = 10034 ; +} +"CH3COOOH" = { +constituentType = 10035 ; +} +"EO" = { +constituentType = 10036 ; +} +"EO2" = { +constituentType = 10037 ; +} +"GLYOXAL" = { +constituentType = 10038 ; +} +"C3H7O2" = { +constituentType = 10039 ; +} +"C3H7OOH" = { +constituentType = 10040 ; +} +"HYAC" = { +constituentType = 10041 ; +} +"PAA" = { +constituentType = 10042 ; +} +"MVK" = { +constituentType = 10043 ; +} +"PhO" = { +constituentType = 10044 ; +} +"OCS_c" = { +constituentType = 10046 ; +} +"CH2Br2" = { +constituentType = 10047 ; +} +"CH3O" = { +constituentType = 10048 ; +} +"CHBr3" = { +constituentType = 10049 ; +} +"HCO" = { +constituentType = 10050 ; +} +"C2H5OOH" = { +constituentType = 10052 ; +} +"PO2" = { +constituentType = 10053 ; +} +"POOH" = { +constituentType = 10054 ; +} +"DMS" = { +constituentType = 10500 ; +} +"DMSO" = { +constituentType = 10501 ; +} +"HCl" = { +constituentType = 20001 ; +} +"CFC11" = { +constituentType = 20002 ; +} +"CFC12" = { +constituentType = 20003 ; +} +"CFC113" = { +constituentType = 20004 ; +} +"CFC114" = { +constituentType = 20006 ; +} +"CFC115" = { +constituentType = 20007 ; +} +"CH3Cl" = { +constituentType = 20015 ; +} +"CH3Br" = { +constituentType = 20018 ; +} +"Pb" = { +constituentType = 30296 ; +} +"O2_1s" = { +constituentType = 40000 ; +} +"O2_1d" = { +constituentType = 40001 ; +} +"O_1d" = { +constituentType = 40002 ; +} +"O_3p" = { +constituentType = 40003 ; +} +"NOx" = { +constituentType = 60003 ; +} +"NOy" = { +constituentType = 60004 ; +} +"BIGALK" = { +constituentType = 60009 ; +} +"C10H16" = { +constituentType = 60012 ; +} +"ALD2" = { +constituentType = 60018 ; +} +"ROOH" = { +constituentType = 60019 ; +} +"NO3_org" = { +constituentType = 60020 ; +} +"ROR" = { +constituentType = 60021 ; +} +"NH2" = { +constituentType = 60022 ; +} +"KET" = { +constituentType = 60023 ; +} +"DCB" = { +constituentType = 60024 ; +} +"UDD" = { +constituentType = 60025 ; +} +"HKET" = { +constituentType = 60026 ; +} +"Ox" = { +constituentType = 60027 ; +} +"ISOPOOH" = { +constituentType = 60032 ; +} +"ISOPBO2" = { +constituentType = 10056 ; +} +"ISOPDO2" = { +constituentType = 10057 ; +} +"HPALD1" = { +constituentType = 10058 ; +} +"HPALD2" = { +constituentType = 10059 ; +} +"CH3O2NO2" = { +constituentType = 10055 ; +} +"BIGENE" = { +constituentType = 60010 ; +} +"aer_seasalt_003_05" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 5 ; +} +"aer_seasalt_05_5" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 6 ; +scaledValueOfSecondSize = 5 ; +} +"aer_seasalt_5_20" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 6 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"aer_dust_003_055" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 8 ; +scaledValueOfSecondSize = 55 ; +} +"aer_dust_055_09" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 55 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 9 ; +} +"aer_dust_09_20" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 9 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"aer_hicorgmat" = { +constituentType = 62015 ; +} +"aer_hocorgmat" = { +constituentType = 62016 ; +} +"aer_hicblackcarb" = { +constituentType = 62013 ; +} +"aer_hocblackcarb" = { +constituentType = 62014 ; +} +"aer_sulph" = { +constituentType = 62006 ; +} +"aer_nitrfine" = { +constituentType = 62004 ; +typeOfSizeInterval = 5 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"aer_nitrcoars" = { +constituentType = 62004 ; +typeOfSizeInterval = 3 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"aer_nh4" = { +constituentType = 62003 ; +} +"aer_biosecorg" = { +constituentType = 62032 ; +} +"aer_antsecorg" = { +constituentType = 62033 ; +} +"aer_NO3" = { +constituentType = 62004 ; +} diff --git a/definitions/grib2/chemId.def b/definitions/grib2/chemId.def new file mode 100644 index 000000000..2d3a6a7eb --- /dev/null +++ b/definitions/grib2/chemId.def @@ -0,0 +1,465 @@ +"236" = { + +constituentType = 0 ; +} +"59" = { +constituentType = 1 ; +} +"25" = { +constituentType = 3 ; +} +"2" = { +constituentType = 4 ; +} +"17" = { +constituentType = 5 ; +} +"31" = { +constituentType = 6 ; +} +"5" = { +constituentType = 7 ; +} +"8" = { +constituentType = 8 ; +sourceSinkChemicalPhysicalProcess = 7 ; +} +"233" = { +constituentType = 8 ; +} +"19" = { +constituentType = 9 ; +} +"21" = { +constituentType = 10 ; +} +"27" = { +constituentType = 11 ; +} +"203" = { +constituentType = 12 ; +} +"32" = { +constituentType = 13 ; +} +"28" = { +constituentType = 14 ; +} +"33" = { +constituentType = 15 ; +} +"86" = { +constituentType = 16 ; +} +"6" = { +constituentType = 17 ; +} +"34" = { +constituentType = 18 ; +} +"3" = { +constituentType = 19 ; +} +"199" = { +constituentType = 20 ; +} +"173" = { +constituentType = 21 ; +} +"20" = { +constituentType = 22 ; +} +"11" = { +constituentType = 23 ; +} +"175" = { +constituentType = 26 ; +} +"174" = { +constituentType = 27 ; +} +"69" = { +constituentType = 28 ; +} +"65" = { +constituentType = 29 ; +} +"64" = { +constituentType = 30 ; +} +"63" = { +constituentType = 31 ; +} +"191" = { +constituentType = 32 ; +} +"176" = { +constituentType = 33 ; +} +"193" = { +constituentType = 34 ; +} +"68" = { +constituentType = 35 ; +} +"70" = { +constituentType = 36 ; +} +"194" = { +constituentType = 37 ; +} +"60" = { +constituentType = 38 ; +} +"67" = { +constituentType = 39 ; +} +"85" = { +constituentType = 40 ; +} +"166" = { +constituentType = 41 ; +} +"189" = { +constituentType = 42 ; +} +"192" = { +constituentType = 43 ; +} +"202" = { +constituentType = 44 ; +} +"232" = { +constituentType = 45 ; +} +"66" = { +constituentType = 46 ; +} +"30" = { +constituentType = 10000 ; +} +"29" = { +constituentType = 10001 ; +} +"42" = { +constituentType = 10004 ; +} +"7" = { +constituentType = 10002 ; +} +"43" = { +constituentType = 10005 ; +} +"226" = { +constituentType = 10006 ; +} +"224" = { +constituentType = 10007 ; +} +"45" = { +constituentType = 10008 ; +} +"10" = { +constituentType = 10009 ; +} +"46" = { +constituentType = 10011 ; +} +"96" = { +constituentType = 10012 ; +} +"13" = { +constituentType = 10013 ; +} +"47" = { +constituentType = 10014 ; +} +"48" = { +constituentType = 10015 ; +} +"16" = { +constituentType = 10017 ; +} +"22" = { +constituentType = 10024 ; +} +"23" = { +constituentType = 10025 ; +} +"35" = { +constituentType = 10026 ; +} +"44" = { +constituentType = 10027 ; +} +"110" = { +constituentType = 10028 ; +} +"52" = { +constituentType = 10029 ; +} +"93" = { +constituentType = 10031 ; +} +"98" = { +constituentType = 10032 ; +} +"101" = { +constituentType = 10033 ; +} +"102" = { +constituentType = 10034 ; +} +"104" = { +constituentType = 10035 ; +} +"108" = { +constituentType = 10036 ; +} +"106" = { +constituentType = 10037 ; +} +"107" = { +constituentType = 10038 ; +} +"112" = { +constituentType = 10039 ; +} +"114" = { +constituentType = 10040 ; +} +"118" = { +constituentType = 10041 ; +} +"119" = { +constituentType = 10042 ; +} +"138" = { +constituentType = 10043 ; +} +"139" = { +constituentType = 10044 ; +} +"190" = { +constituentType = 10046 ; +} +"195" = { +constituentType = 10047 ; +} +"196" = { +constituentType = 10048 ; +} +"197" = { +constituentType = 10049 ; +} +"201" = { +constituentType = 10050 ; +} +"94" = { +constituentType = 10052 ; +} +"115" = { +constituentType = 10053 ; +} +"116" = { +constituentType = 10054 ; +} +"18" = { +constituentType = 10500 ; +} +"163" = { +constituentType = 10501 ; +} +"200" = { +constituentType = 20001 ; +} +"71" = { +constituentType = 20002 ; +} +"72" = { +constituentType = 20003 ; +} +"73" = { +constituentType = 20004 ; +} +"74" = { +constituentType = 20006 ; +} +"75" = { +constituentType = 20007 ; +} +"78" = { +constituentType = 20015 ; +} +"80" = { +constituentType = 20018 ; +} +"26" = { +constituentType = 30296 ; +} +"61" = { +constituentType = 40000 ; +} +"62" = { +constituentType = 40001 ; +} +"204" = { +constituentType = 40002 ; +} +"205" = { +constituentType = 40003 ; +} +"129" = { +constituentType = 60003 ; +} +"168" = { +constituentType = 60004 ; +} +"126" = { +constituentType = 60009 ; +} +"49" = { +constituentType = 60012 ; +} +"12" = { +constituentType = 60018 ; +} +"14" = { +constituentType = 60019 ; +} +"15" = { +constituentType = 60020 ; +} +"36" = { +constituentType = 60021 ; +} +"40" = { +constituentType = 60022 ; +} +"105" = { +constituentType = 60023 ; +} +"109" = { +constituentType = 60024 ; +} +"111" = { +constituentType = 60025 ; +} +"113" = { +constituentType = 60026 ; +} +"155" = { +constituentType = 60027 ; +} +"161" = { +constituentType = 60032 ; +} +"229" = { +constituentType = 10056 ; +} +"230" = { +constituentType = 10057 ; +} +"227" = { +constituentType = 10058 ; +} +"228" = { +constituentType = 10059 ; +} +"225" = { +constituentType = 10055 ; +} +"124" = { +constituentType = 60010 ; +} +"901" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 5 ; +} +"902" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 6 ; +scaledValueOfSecondSize = 5 ; +} +"903" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 6 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"904" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 8 ; +scaledValueOfSecondSize = 55 ; +} +"905" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 55 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 9 ; +} +"906" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 9 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"907" = { +constituentType = 62015 ; +} +"908" = { +constituentType = 62016 ; +} +"909" = { +constituentType = 62013 ; +} +"910" = { +constituentType = 62014 ; +} +"911" = { +constituentType = 62006 ; +} +"912" = { +constituentType = 62004 ; +typeOfSizeInterval = 5 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"913" = { +constituentType = 62004 ; +typeOfSizeInterval = 3 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"914" = { +constituentType = 62003 ; +} +"915" = { +constituentType = 62032 ; +} +"916" = { +constituentType = 62033 ; +} +"51" = { +constituentType = 62004 ; +} diff --git a/definitions/grib2/chemName.def b/definitions/grib2/chemName.def new file mode 100644 index 000000000..7a38f2a55 --- /dev/null +++ b/definitions/grib2/chemName.def @@ -0,0 +1,464 @@ +"Ozone" = { +constituentType = 0 ; +} +"Water vapour (chemistry)" = { +constituentType = 1 ; +} +"Carbon dioxide" = { +constituentType = 3 ; +} +"Carbon monoxide" = { +constituentType = 4 ; +} +"Nitrogen dioxide" = { +constituentType = 5 ; +} +"Nitrous oxide" = { +constituentType = 6 ; +} +"Formaldehyde" = { +constituentType = 7 ; +} +"Volcanic sulfur dioxide" = { +constituentType = 8 ; +sourceSinkChemicalPhysicalProcess = 7 ; +} +"Sulphur dioxide" = { +constituentType = 8 ; +} +"Ammonia" = { +constituentType = 9 ; +} +"Ammonium" = { +constituentType = 10 ; +} +"Nitrogen monoxide" = { +constituentType = 11 ; +} +"Oxygen atom" = { +constituentType = 12 ; +} +"Nitrate radical" = { +constituentType = 13 ; +} +"Hydroperoxy radical" = { +constituentType = 14 ; +} +"Dinitrogen pentoxide" = { +constituentType = 15 ; +} +"Nitrous acid" = { +constituentType = 16 ; +} +"Nitric acid" = { +constituentType = 17 ; +} +"Pernitric acid" = { +constituentType = 18 ; +} +"Hydrogen peroxide" = { +constituentType = 19 ; +} +"Dihydrogen" = { +constituentType = 20 ; +} +"Nitrogen atom" = { +constituentType = 21 ; +} +"Sulfate" = { +constituentType = 22 ; +} +"Radon" = { +constituentType = 23 ; +} +"Chlorine atom" = { +constituentType = 26 ; +} +"Chlorine monoxide" = { +constituentType = 27 ; +} +"Dichlorine dioxide" = { +constituentType = 28 ; +} +"Hypochlorous acid" = { +constituentType = 29 ; +} +"Chlorine nitrate" = { +constituentType = 30 ; +} +"Chlorine dioxide" = { +constituentType = 31 ; +} +"Bromine atom" = { +constituentType = 32 ; +} +"Bromine monoxide" = { +constituentType = 33 ; +} +"Bromine monochloride" = { +constituentType = 34 ; +} +"Hydrogen bromide" = { +constituentType = 35 ; +} +"Hypobromous acid" = { +constituentType = 36 ; +} +"Bromine nitrate" = { +constituentType = 37 ; +} +"Dioxygen" = { +constituentType = 38 ; +} +"Nitryl chloride" = { +constituentType = 39 ; +} +"Sulfuric acid" = { +constituentType = 40 ; +} +"Hydrogensulfide" = { +constituentType = 41 ; +} +"Sulfur trioxide" = { +constituentType = 42 ; +} +"Bromine" = { +constituentType = 43 ; +} +"Hydrogen fluoride" = { +constituentType = 44 ; +} +"Sulphur hexafluoride " = { +constituentType = 45 ; +} +"Chlorine" = { +constituentType = 46 ; +} +"Hydroxyl radical" = { +constituentType = 10000 ; +} +"Methylperoxy radical" = { +constituentType = 10001 ; +} +"Methanol" = { +constituentType = 10004 ; +} +"Methyl peroxide" = { +constituentType = 10002 ; +} +"Formic acid" = { +constituentType = 10005 ; +} +"Hydrogen cyanide" = { +constituentType = 10006 ; +} +"Acetonitrile" = { +constituentType = 10007 ; +} +"Ethane" = { +constituentType = 10008 ; +} +"Ethene" = { +constituentType = 10009 ; +} +"Ethanol" = { +constituentType = 10011 ; +} +"Acetic acid" = { +constituentType = 10012 ; +} +"Peroxyacetyl nitrate" = { +constituentType = 10013 ; +} +"Propane" = { +constituentType = 10014 ; +} +"Propene" = { +constituentType = 10015 ; +} +"Isoprene" = { +constituentType = 10017 ; +} +"Methane sulfonic acid" = { +constituentType = 10024 ; +} +"Methyl glyoxal" = { +constituentType = 10025 ; +} +"Peroxy acetyl radical" = { +constituentType = 10026 ; +} +"Methacrylic acid" = { +constituentType = 10027 ; +} +"Methacrolein" = { +constituentType = 10028 ; +} +"Acetone" = { +constituentType = 10029 ; +} +"Butadiene" = { +constituentType = 10031 ; +} +"Acetaldehyde" = { +constituentType = 10032 ; +} +"Glycolaldehyde" = { +constituentType = 10033 ; +} +"Cresol" = { +constituentType = 10034 ; +} +"Peracetic acid" = { +constituentType = 10035 ; +} +"Hoch2ch2o" = { +constituentType = 10036 ; +} +"Hoch2ch2o2" = { +constituentType = 10037 ; +} +"Glyoxal" = { +constituentType = 10038 ; +} +"Isopropyldioxidanyl" = { +constituentType = 10039 ; +} +"Isopropyl hydroperoxide" = { +constituentType = 10040 ; +} +"Hydroxyacetone" = { +constituentType = 10041 ; +} +"Peroxyacetic acid" = { +constituentType = 10042 ; +} +"Methylvinylketone" = { +constituentType = 10043 ; +} +"Phenoxy radical" = { +constituentType = 10044 ; +} +"Carbonyl sulfide" = { +constituentType = 10046 ; +} +"Dibromomethane" = { +constituentType = 10047 ; +} +"Methoxy radical" = { +constituentType = 10048 ; +} +"Tribromomethane" = { +constituentType = 10049 ; +} +"Formyl radical" = { +constituentType = 10050 ; +} +"Ethyl hydroperoxide" = { +constituentType = 10052 ; +} +"C3h6oho2" = { +constituentType = 10053 ; +} +"C3h6ohooh" = { +constituentType = 10054 ; +} +"Dimethyl sulfide" = { +constituentType = 10500 ; +} +"Dimethyl sulfoxyde" = { +constituentType = 10501 ; +} +"Hydrogen chloride" = { +constituentType = 20001 ; +} +"Trichlorofluoromethane" = { +constituentType = 20002 ; +} +"Dichlorodifluoromethane" = { +constituentType = 20003 ; +} +"Trichlorotrifluoroethane" = { +constituentType = 20004 ; +} +"Dichlorotetrafluoroethane" = { +constituentType = 20006 ; +} +"Chloropentafluoroethane" = { +constituentType = 20007 ; +} +"Methyl chloride" = { +constituentType = 20015 ; +} +"Methyl bromide" = { +constituentType = 20018 ; +} +"Lead" = { +constituentType = 30296 ; +} +"Singlet sigma dioxygen" = { +constituentType = 40000 ; +} +"Singlet Delta dioxygen" = { +constituentType = 40001 ; +} +"Excited oxygen atom" = { +constituentType = 40002 ; +} +"Ground state oxygen atom" = { +constituentType = 40003 ; +} +"Nitrogen oxides" = { +constituentType = 60003 ; +} +"All nitrogen oxides" = { +constituentType = 60004 ; +} +"Lumped alkanes" = { +constituentType = 60009 ; +} +"Terpenes" = { +constituentType = 60012 ; +} +"Aldehydes" = { +constituentType = 60018 ; +} +"Peroxides" = { +constituentType = 60019 ; +} +"Organic nitrates" = { +constituentType = 60020 ; +} +"Organic ethers" = { +constituentType = 60021 ; +} +"Amine" = { +constituentType = 60022 ; +} +"Ketones" = { +constituentType = 60023 ; +} +"Unsaturated dicarbonyls" = { +constituentType = 60024 ; +} +"Unsaturated hydroxy dicarbonyl" = { +constituentType = 60025 ; +} +"Hydroxy ketone" = { +constituentType = 60026 ; +} +"Oxides" = { +constituentType = 60027 ; +} +"Hoch2c(ooh)(ch3)ch=ch2" = { +constituentType = 60032 ; +} +"Isoprene peroxy type B" = { +constituentType = 10056 ; +} +"Isoprene peroxy type D" = { +constituentType = 10057 ; +} +"Hydroperoxy aldehydes type 1" = { +constituentType = 10058 ; +} +"Hydroperoxy aldehydes type 2" = { +constituentType = 10059 ; +} +"Methyl peroxy nitrate" = { +constituentType = 10055 ; +} +"Lumped alkenes" = { +constituentType = 60010 ; +} +"Sea salt aerosol (0.03 - 0.5 um)" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 5 ; +} +"Sea salt aerosol (0.5 - 5 um)" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 6 ; +scaledValueOfSecondSize = 5 ; +} +"Sea salt aerosol (5 - 20 um)" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 6 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"Dust aerosol (0.03 - 0.55 um)" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 8 ; +scaledValueOfSecondSize = 55 ; +} +"Dust aerosol (0.55 - 0.9 um)" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 55 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 9 ; +} +"Dust aerosol (0.9 - 20 um)" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 9 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"Hydrophilic organic matter aerosol" = { +constituentType = 62015 ; +} +"Hydrophobic organic matter aerosol" = { +constituentType = 62016 ; +} +"Hydrophilic black carbon aerosol" = { +constituentType = 62013 ; +} +"Hydrophobic black carbon aerosol" = { +constituentType = 62014 ; +} +"Sulphate aerosol" = { +constituentType = 62006 ; +} +"Nitrate fine mode aerosol (<= 2.5 um)" = { +constituentType = 62004 ; +typeOfSizeInterval = 5 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"Nitrate coarse mode aerosol (>2.5 um)" = { +constituentType = 62004 ; +typeOfSizeInterval = 3 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"Ammonium aerosol" = { +constituentType = 62003 ; +} +"Biogenic secondary organic aerosol" = { +constituentType = 62032 ; +} +"Anthropogenic secondary organic aerosol" = { +constituentType = 62033 ; +} +"Nitrate" = { +constituentType = 62004 ; +} diff --git a/definitions/grib2/chemShortName.def b/definitions/grib2/chemShortName.def new file mode 100644 index 000000000..48e1214c7 --- /dev/null +++ b/definitions/grib2/chemShortName.def @@ -0,0 +1,464 @@ +"O3" = { +constituentType = 0 ; +} +"H2O_c" = { +constituentType = 1 ; +} +"CO2" = { +constituentType = 3 ; +} +"CO" = { +constituentType = 4 ; +} +"NO2" = { +constituentType = 5 ; +} +"N2O" = { +constituentType = 6 ; +} +"HCHO" = { +constituentType = 7 ; +} +"SO2_v" = { +constituentType = 8 ; +sourceSinkChemicalPhysicalProcess = 7 ; +} +"SO2" = { +constituentType = 8 ; +} +"NH3" = { +constituentType = 9 ; +} +"NH4" = { +constituentType = 10 ; +} +"NO" = { +constituentType = 11 ; +} +"O" = { +constituentType = 12 ; +} +"NO3" = { +constituentType = 13 ; +} +"HO2_r" = { +constituentType = 14 ; +} +"N2O5" = { +constituentType = 15 ; +} +"HONO" = { +constituentType = 16 ; +} +"HNO3" = { +constituentType = 17 ; +} +"HO2NO2" = { +constituentType = 18 ; +} +"H2O2" = { +constituentType = 19 ; +} +"H2" = { +constituentType = 20 ; +} +"N" = { +constituentType = 21 ; +} +"SO4" = { +constituentType = 22 ; +} +"Ra" = { +constituentType = 23 ; +} +"Cl" = { +constituentType = 26 ; +} +"ClO" = { +constituentType = 27 ; +} +"Cl2O2" = { +constituentType = 28 ; +} +"HOCl" = { +constituentType = 29 ; +} +"ClONO2" = { +constituentType = 30 ; +} +"OClO" = { +constituentType = 31 ; +} +"Br" = { +constituentType = 32 ; +} +"BrO" = { +constituentType = 33 ; +} +"BrCl" = { +constituentType = 34 ; +} +"HBr" = { +constituentType = 35 ; +} +"HOBr" = { +constituentType = 36 ; +} +"BrONO2" = { +constituentType = 37 ; +} +"O2" = { +constituentType = 38 ; +} +"ClNO2" = { +constituentType = 39 ; +} +"H2SO4" = { +constituentType = 40 ; +} +"H2S" = { +constituentType = 41 ; +} +"SO3" = { +constituentType = 42 ; +} +"Br2" = { +constituentType = 43 ; +} +"HF" = { +constituentType = 44 ; +} +"SF6" = { +constituentType = 45 ; +} +"Cl2" = { +constituentType = 46 ; +} +"OH_r" = { +constituentType = 10000 ; +} +"CH3O2_r" = { +constituentType = 10001 ; +} +"CH3OH" = { +constituentType = 10004 ; +} +"CH3OOH" = { +constituentType = 10002 ; +} +"HCOOH" = { +constituentType = 10005 ; +} +"HCN" = { +constituentType = 10006 ; +} +"CH3CN" = { +constituentType = 10007 ; +} +"C2H6" = { +constituentType = 10008 ; +} +"C2H4" = { +constituentType = 10009 ; +} +"C2H5OH" = { +constituentType = 10011 ; +} +"CH3COOH" = { +constituentType = 10012 ; +} +"PAN" = { +constituentType = 10013 ; +} +"C3H8" = { +constituentType = 10014 ; +} +"C3H6" = { +constituentType = 10015 ; +} +"C5H8" = { +constituentType = 10017 ; +} +"MSA" = { +constituentType = 10024 ; +} +"CH3COCHO" = { +constituentType = 10025 ; +} +"C2O3_r" = { +constituentType = 10026 ; +} +"MCOOH" = { +constituentType = 10027 ; +} +"MACR" = { +constituentType = 10028 ; +} +"CH3COCH3" = { +constituentType = 10029 ; +} +"DIEN" = { +constituentType = 10031 ; +} +"CH3CHO" = { +constituentType = 10032 ; +} +"GLYALD" = { +constituentType = 10033 ; +} +"CRESOL" = { +constituentType = 10034 ; +} +"CH3COOOH" = { +constituentType = 10035 ; +} +"EO" = { +constituentType = 10036 ; +} +"EO2" = { +constituentType = 10037 ; +} +"GLYOXAL" = { +constituentType = 10038 ; +} +"C3H7O2" = { +constituentType = 10039 ; +} +"C3H7OOH" = { +constituentType = 10040 ; +} +"HYAC" = { +constituentType = 10041 ; +} +"PAA" = { +constituentType = 10042 ; +} +"MVK" = { +constituentType = 10043 ; +} +"PhO" = { +constituentType = 10044 ; +} +"OCS_c" = { +constituentType = 10046 ; +} +"CH2Br2" = { +constituentType = 10047 ; +} +"CH3O" = { +constituentType = 10048 ; +} +"CHBr3" = { +constituentType = 10049 ; +} +"HCO" = { +constituentType = 10050 ; +} +"C2H5OOH" = { +constituentType = 10052 ; +} +"PO2" = { +constituentType = 10053 ; +} +"POOH" = { +constituentType = 10054 ; +} +"DMS" = { +constituentType = 10500 ; +} +"DMSO" = { +constituentType = 10501 ; +} +"HCl" = { +constituentType = 20001 ; +} +"CFC11" = { +constituentType = 20002 ; +} +"CFC12" = { +constituentType = 20003 ; +} +"CFC113" = { +constituentType = 20004 ; +} +"CFC114" = { +constituentType = 20006 ; +} +"CFC115" = { +constituentType = 20007 ; +} +"CH3Cl" = { +constituentType = 20015 ; +} +"CH3Br" = { +constituentType = 20018 ; +} +"Pb" = { +constituentType = 30296 ; +} +"O2_1s" = { +constituentType = 40000 ; +} +"O2_1d" = { +constituentType = 40001 ; +} +"O_1d" = { +constituentType = 40002 ; +} +"O_3p" = { +constituentType = 40003 ; +} +"NOx" = { +constituentType = 60003 ; +} +"NOy" = { +constituentType = 60004 ; +} +"BIGALK" = { +constituentType = 60009 ; +} +"C10H16" = { +constituentType = 60012 ; +} +"ALD2" = { +constituentType = 60018 ; +} +"ROOH" = { +constituentType = 60019 ; +} +"NO3_org" = { +constituentType = 60020 ; +} +"ROR" = { +constituentType = 60021 ; +} +"NH2" = { +constituentType = 60022 ; +} +"KET" = { +constituentType = 60023 ; +} +"DCB" = { +constituentType = 60024 ; +} +"UDD" = { +constituentType = 60025 ; +} +"HKET" = { +constituentType = 60026 ; +} +"Ox" = { +constituentType = 60027 ; +} +"ISOPOOH" = { +constituentType = 60032 ; +} +"ISOPBO2" = { +constituentType = 10056 ; +} +"ISOPDO2" = { +constituentType = 10057 ; +} +"HPALD1" = { +constituentType = 10058 ; +} +"HPALD2" = { +constituentType = 10059 ; +} +"CH3O2NO2" = { +constituentType = 10055 ; +} +"BIGENE" = { +constituentType = 60010 ; +} +"aer_seasalt_003_05" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 5 ; +} +"aer_seasalt_05_5" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 6 ; +scaledValueOfSecondSize = 5 ; +} +"aer_seasalt_5_20" = { +constituentType = 62008 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 6 ; +scaledValueOfFirstSize = 5 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"aer_dust_003_055" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 3 ; +scaleFactorOfSecondSize = 8 ; +scaledValueOfSecondSize = 55 ; +} +"aer_dust_055_09" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 8 ; +scaledValueOfFirstSize = 55 ; +scaleFactorOfSecondSize = 7 ; +scaledValueOfSecondSize = 9 ; +} +"aer_dust_09_20" = { +constituentType = 62001 ; +typeOfSizeInterval = 7 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 9 ; +scaleFactorOfSecondSize = 5 ; +scaledValueOfSecondSize = 2 ; +} +"aer_hicorgmat" = { +constituentType = 62015 ; +} +"aer_hocorgmat" = { +constituentType = 62016 ; +} +"aer_hicblackcarb" = { +constituentType = 62013 ; +} +"aer_hocblackcarb" = { +constituentType = 62014 ; +} +"aer_sulph" = { +constituentType = 62006 ; +} +"aer_nitrfine" = { +constituentType = 62004 ; +typeOfSizeInterval = 5 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"aer_nitrcoars" = { +constituentType = 62004 ; +typeOfSizeInterval = 3 ; +scaleFactorOfFirstSize = 7 ; +scaledValueOfFirstSize = 25 ; +scaleFactorOfSecondSize = missing() ; +scaledValueOfSecondSize = missing() ; +} +"aer_nh4" = { +constituentType = 62003 ; +} +"aer_biosecorg" = { +constituentType = 62032 ; +} +"aer_antsecorg" = { +constituentType = 62033 ; +} +"aer_NO3" = { +constituentType = 62004 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/chemFormula.def b/definitions/grib2/localConcepts/ecmf/chemFormula.def new file mode 100644 index 000000000..42197760a --- /dev/null +++ b/definitions/grib2/localConcepts/ecmf/chemFormula.def @@ -0,0 +1,20 @@ +"gO3" = { +constituentType = 0 ; +localTablesVersion = 1 ; +} +"CH4_c" = { +constituentType = 2 ; +localTablesVersion = 1 ; +} +"CO2_c" = { +constituentType = 3 ; +localTablesVersion = 1 ; +} +"N2O_c" = { +constituentType = 6 ; +localTablesVersion = 1 ; +} +"ISPD" = { +constituentType = 65523 ; +localTablesVersion = 1 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/chemId.def b/definitions/grib2/localConcepts/ecmf/chemId.def new file mode 100644 index 000000000..bb0282226 --- /dev/null +++ b/definitions/grib2/localConcepts/ecmf/chemId.def @@ -0,0 +1,20 @@ +"231" = { +constituentType = 0 ; +localTablesVersion = 1 ; +} +"4" = { +constituentType = 2 ; +localTablesVersion = 1 ; +} +"57" = { +constituentType = 3 ; +localTablesVersion = 1 ; +} +"58" = { +constituentType = 6 ; +localTablesVersion = 1 ; +} +"50" = { +constituentType = 65523 ; +localTablesVersion = 1 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/chemName.def b/definitions/grib2/localConcepts/ecmf/chemName.def new file mode 100644 index 000000000..5b371a449 --- /dev/null +++ b/definitions/grib2/localConcepts/ecmf/chemName.def @@ -0,0 +1,20 @@ +"GEMS ozone" = { +constituentType = 0 ; +localTablesVersion = 1 ; +} +"Methane (chemistry)" = { +constituentType = 2 ; +localTablesVersion = 1 ; +} +"Carbon dioxide (chemistry)" = { +constituentType = 3 ; +localTablesVersion = 1 ; +} +"Nitrous oxide (chemistry)" = { +constituentType = 6 ; +localTablesVersion = 1 ; +} +"Methacrolein MVK" = { +constituentType = 65523 ; +localTablesVersion = 1 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/chemShortName.def b/definitions/grib2/localConcepts/ecmf/chemShortName.def new file mode 100644 index 000000000..42197760a --- /dev/null +++ b/definitions/grib2/localConcepts/ecmf/chemShortName.def @@ -0,0 +1,20 @@ +"gO3" = { +constituentType = 0 ; +localTablesVersion = 1 ; +} +"CH4_c" = { +constituentType = 2 ; +localTablesVersion = 1 ; +} +"CO2_c" = { +constituentType = 3 ; +localTablesVersion = 1 ; +} +"N2O_c" = { +constituentType = 6 ; +localTablesVersion = 1 ; +} +"ISPD" = { +constituentType = 65523 ; +localTablesVersion = 1 ; +} diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 4ab0d1c78..594c46fca 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -5814,7 +5814,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -5822,7 +5821,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -5830,7 +5828,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -5838,7 +5835,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -5846,7 +5842,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -5854,7 +5849,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -5862,7 +5856,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -5870,7 +5863,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -5878,7 +5870,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -5886,7 +5877,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -5894,7 +5884,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -5902,7 +5891,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -5910,7 +5898,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -5918,7 +5905,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -5926,7 +5912,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -5934,7 +5919,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -5942,7 +5926,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -5950,7 +5933,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -5958,7 +5940,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -5966,7 +5947,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Aerosol number density diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index c73115967..fdea2afd9 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -5814,7 +5814,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -5822,7 +5821,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -5830,7 +5828,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -5838,7 +5835,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -5846,7 +5842,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -5854,7 +5849,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -5862,7 +5856,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -5870,7 +5863,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -5878,7 +5870,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -5886,7 +5877,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -5894,7 +5884,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -5902,7 +5891,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -5910,7 +5898,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -5918,7 +5905,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -5926,7 +5912,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -5934,7 +5919,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -5942,7 +5926,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -5950,7 +5933,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -5958,7 +5940,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -5966,7 +5947,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Aerosol number density diff --git a/definitions/grib2/parameters.def b/definitions/grib2/parameters.def index 1052a79d5..b390b2d88 100644 --- a/definitions/grib2/parameters.def +++ b/definitions/grib2/parameters.def @@ -44,6 +44,21 @@ alias cfName=cfNameFallback; alias cfVarName=cfVarNameFallback; } +constant defaultChemId="unknown" :hidden; +constant defaultChemName="unknown" :hidden; +constant defaultChemShortName="unknown" :hidden; +constant defaultChemFormula="unknown" :hidden; + +concept chemId (defaultChemId,"chemId.def",conceptsDir2,conceptsDir1): no_copy,long_type,dump; +concept chemName (defaultChemName,"chemName.def",conceptsDir2,conceptsDir1): no_copy,dump; +concept chemShortName (defaultChemShortName,"chemShortName.def",conceptsDir2,conceptsDir1): no_copy,dump; +concept chemFormula (defaultChemFormula,"chemFormula.def",conceptsDir2,conceptsDir1): no_copy,dump; + +if(defined(constituentType)) { + alias mars.chem = chemId; + alias ls.chemShortName = chemShortName; +} + # modelName: Contribution from Daniel Lee @ DWD concept modelName (defaultName,"modelName.def",conceptsDir2,conceptsDir1): no_copy,dump,read_only; diff --git a/definitions/grib2/section.1.def b/definitions/grib2/section.1.def index 719a9399c..af7be8b26 100644 --- a/definitions/grib2/section.1.def +++ b/definitions/grib2/section.1.def @@ -97,17 +97,19 @@ concept stepType { "mode" = {selectStepTemplateInterval=1; stepTypeInternal="mode";} } -# 0=atmospheric chemical constituents -# 1=atmospheric chemical constituents based on a distribution function -# 2=atmospheric chemical constituents with source or sink -meta is_chemical g2_chemical(productDefinitionTemplateNumber, stepType, 0); -meta is_chemical_distfn g2_chemical(productDefinitionTemplateNumber, stepType, 1); -meta is_chemical_srcsink g2_chemical(productDefinitionTemplateNumber, stepType, 2); +if ( tablesVersion < 30 ) { + # 0=atmospheric chemical constituents + # 1=atmospheric chemical constituents based on a distribution function + # 2=atmospheric chemical constituents with source or sink + meta is_chemical g2_chemical(productDefinitionTemplateNumber, stepType, 0); + meta is_chemical_distfn g2_chemical(productDefinitionTemplateNumber, stepType, 1); + meta is_chemical_srcsink g2_chemical(productDefinitionTemplateNumber, stepType, 2); -# 0=aerosol -# 1=optical properties of aerosol -meta is_aerosol g2_aerosol(productDefinitionTemplateNumber, stepType, 0); -meta is_aerosol_optical g2_aerosol(productDefinitionTemplateNumber, stepType, 1); + # 0=aerosol + # 1=optical properties of aerosol + meta is_aerosol g2_aerosol(productDefinitionTemplateNumber, stepType, 0); + meta is_aerosol_optical g2_aerosol(productDefinitionTemplateNumber, stepType, 1); +} transient setCalendarId = 0 ; transient deleteCalendarId = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 0121e473c..93f3c2521 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -5814,7 +5814,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -5822,7 +5821,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -5830,7 +5828,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -5838,7 +5835,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -5846,7 +5842,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -5854,7 +5849,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -5862,7 +5856,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -5870,7 +5863,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -5878,7 +5870,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -5886,7 +5877,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -5894,7 +5884,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -5902,7 +5891,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -5910,7 +5898,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -5918,7 +5905,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -5926,7 +5912,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -5934,7 +5919,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -5942,7 +5926,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -5950,7 +5933,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -5958,7 +5940,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -5966,7 +5947,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Aerosol number density diff --git a/definitions/grib2/tables/local/ecmf/1/4.230.table b/definitions/grib2/tables/local/ecmf/1/4.230.table index b256f0afa..aa72cb8b6 100644 --- a/definitions/grib2/tables/local/ecmf/1/4.230.table +++ b/definitions/grib2/tables/local/ecmf/1/4.230.table @@ -1,4 +1,5 @@ # Code table 4.230 - Atmospheric chemical constituent type for ECMWF +65523 65523 Methacrolein MVK 65524 65524 Stratospheric Ozone 65525 65525 Nitrate aerosol 65526 65526 Condensable gas type 1 diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index e7a8459fe..c505c439b 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -5814,7 +5814,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -5822,7 +5821,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -5830,7 +5828,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -5838,7 +5835,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -5846,7 +5842,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -5854,7 +5849,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -5862,7 +5856,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -5870,7 +5863,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -5878,7 +5870,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -5886,7 +5877,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -5894,7 +5884,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -5902,7 +5891,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -5910,7 +5898,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -5918,7 +5905,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -5926,7 +5912,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -5934,7 +5919,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -5942,7 +5926,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -5950,7 +5933,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -5958,7 +5940,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -5966,7 +5947,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Aerosol number density diff --git a/tests/grib2_chemicals_aerosols.sh b/tests/grib2_chemicals_aerosols.sh index 192cd6340..0b4ac480d 100755 --- a/tests/grib2_chemicals_aerosols.sh +++ b/tests/grib2_chemicals_aerosols.sh @@ -93,7 +93,7 @@ grib_check_key_equals $temp aerosolType,typeOfSizeInterval '0 0' # ============================= # Plain chemicals tempSample=temp.sample.$label -${tools_dir}/grib_set -s tablesVersion=$latest,productDefinitionTemplateNumber=1 $sample2 $tempSample +${tools_dir}/grib_set -s tablesVersion=29,productDefinitionTemplateNumber=1 $sample2 $tempSample grib_check_key_equals $tempSample perturbationNumber '0' ${tools_dir}/grib_set -s is_chemical=1 $tempSample $temp