Skip to content

Commit

Permalink
Initial updates for splitting ACHEM from Chem GC
Browse files Browse the repository at this point in the history
  • Loading branch information
mathomp4 committed Jan 23, 2025
1 parent 5ee880e commit 6af44bb
Show file tree
Hide file tree
Showing 15 changed files with 323 additions and 307 deletions.
10 changes: 10 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This is a comment.
# Each line is a file pattern followed by one or more owners.
# Order is important; the last matching pattern takes the most
# precedence.

# The ACHEM Team owns all the files
* @GEOS-ESM/achem-team

# The GEOS CMake Team also a CODEOWNER for the CMakeLists.txt files in this repository
CMakeLists.txt @GEOS-ESM/cmake-team @GEOS-ESM/achem-team
File renamed without changes.
138 changes: 138 additions & 0 deletions ACHEM_ExtData.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
Collections:
ACHEM_CO-em-anthro_CMIP_CEDS_gn.x2304_y1441_t12.%y4.nc4:
template: ExtData/chemistry/CEDS/v2021-04-21-revised/sfc/CO-em-anthro_CMIP_CEDS_gn.x2304_y1441_t12.%y4.nc4
ACHEM_DMSclim_sfcconcentration.x360_y181_t12.Lana2011.nc4:
template: ExtData/chemistry/Lana/v2011/DMSclim_sfcconcentration.x360_y181_t12.Lana2011.nc4
ACHEM_GEIA.emis_NH3.ocean.x576_y361.t12.20080715_12z.nc4:
template: ExtData/chemistry/GEIA/v0.0.0/sfc/GEIA.emis_NH3.ocean.x576_y361.t12.20080715_12z.nc4
ACHEM_MERRA2_GMI.tavg24_3d_dac_Nv.x576_y361_t12.%y4.nc4:
template: ExtData/chemistry/MERRA2GMI/v0.0.0/L72/MERRA2_GMI.tavg24_3d_dac_Nv.x576_y361_t12.%y4.nc4
ACHEM_SOAG.emiss.x144_y91_t12.1990.nc4:
template: ExtData/chemistry/CAM/v0.0.0/sfc/SOAG.emiss.x144_y91_t12.1990.nc4
ACHEM_edgar-v42.emis_nh3.anthropogenic.x1152_y721.19700703T12z_20200703T00z.nc4:
template: ExtData/chemistry/MERRA2/v0.0.0/sfc/edgar-v42.emis_nh3.anthropogenic.x1152_y721.19700703T12z_20200703T00z.nc4
ACHEM_htap-v2.2.emis_so2.aviation_cds.x3600_y1800_t12.2010.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htap-v2.2.emis_so2.aviation_cds.x3600_y1800_t12.2010.nc4
ACHEM_htap-v2.2.emis_so2.aviation_crs.x3600_y1800_t12.2010.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htap-v2.2.emis_so2.aviation_crs.x3600_y1800_t12.2010.nc4
ACHEM_htap-v2.2.emis_so2.aviation_lto.x3600_y1800_t12.2010.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htap-v2.2.emis_so2.aviation_lto.x3600_y1800_t12.2010.nc4
ACHEM_htap-v2.2.emis_so2.ships.x3600_y1800_t12.2010.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htap-v2.2.emis_so2.ships.x3600_y1800_t12.2010.nc4
ACHEM_htapv2.2.emisso2.elevated.x3600y1800t12.2017.integrate.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htapv2.2.emisso2.elevated.x3600y1800t12.2017.integrate.nc4
ACHEM_htapv2.2.emisso2.surface.x3600y1800t12.2017.integrate.nc4:
template: ExtData/chemistry/HTAP/v2.2/sfc/htapv2.2.emisso2.surface.x3600y1800t12.2017.integrate.nc4
ACHEM_qfed2.emis_co.006.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_co.006.%y4%m2%d2.nc4
valid_range: "2014-12-01T12:00/2021-11-01T12:00"
ACHEM_qfed2.emis_nh3.006.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_nh3.006.%y4%m2%d2.nc4
valid_range: "2014-12-01T12:00/2021-11-01T12:00"
ACHEM_qfed2.emis_so2.006.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_so2.006.%y4%m2%d2.nc4
valid_range: "2014-12-01T12:00/2021-11-01T12:00"
ACHEM_qfed2.emis_co.061.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_co.061.%y4%m2%d2.nc4
valid_range: "2021-11-01T12:00/2025-01-01"
ACHEM_qfed2.emis_nh3.061.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_nh3.061.%y4%m2%d2.nc4
valid_range: "2021-11-01T12:00/2025-01-01"
ACHEM_qfed2.emis_so2.061.%y4%m2%d2.nc4:
template: ExtData/chemistry/QFED/v2.5r1-nrt/sfc/0.1/Y%y4/M%m2/qfed2.emis_so2.061.%y4%m2%d2.nc4
valid_range: "2021-11-01T12:00/2025-01-01"

Samplings:
ACHEM_sample_0:
update_frequency: PT24H
update_offset: PT12H
update_reference_time: '0'
ACHEM_sample_1:
extrapolation: clim
update_frequency: PT24H
update_offset: PT12H
update_reference_time: '0'
ACHEM_sample_2:
extrapolation: clim

Exports:
CO_BF_VOC:
collection: /dev/null
regrid: CONSERVE
sample: ACHEM_sample_1
variable: emcobf
CO_BIOMASS_VOC:
- {starting: "2014-12-01T12:00",collection: ACHEM_qfed2.emis_co.006.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
- {starting: "2021-11-01T12:00",collection: ACHEM_qfed2.emis_co.061.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
CO_FS_VOC:
collection: ACHEM_CO-em-anthro_CMIP_CEDS_gn.x2304_y1441_t12.%y4.nc4
regrid: CONSERVE
sample: ACHEM_sample_0
variable: co
DMS_CONC_OCEAN:
collection: ACHEM_DMSclim_sfcconcentration.x360_y181_t12.Lana2011.nc4
linear_transformation:
- 0.0
- 1.0e-06
regrid: CONSERVE
sample: ACHEM_sample_1
variable: conc
H2O2:
collection: ACHEM_MERRA2_GMI.tavg24_3d_dac_Nv.x576_y361_t12.%y4.nc4
variable: h2o2
NH3_EMIS:
collection: ACHEM_edgar-v42.emis_nh3.anthropogenic.x1152_y721.19700703T12z_20200703T00z.nc4
regrid: CONSERVE
variable: emi_nh3
NH3_EMIS_FIRE:
- {starting: "2014-12-01T12:00",collection: ACHEM_qfed2.emis_nh3.006.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
- {starting: "2021-11-01T12:00",collection: ACHEM_qfed2.emis_nh3.061.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
NH3_EMIS_OCEAN:
collection: ACHEM_GEIA.emis_NH3.ocean.x576_y361.t12.20080715_12z.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: emiss_ocn
NO3:
collection: ACHEM_MERRA2_GMI.tavg24_3d_dac_Nv.x576_y361_t12.%y4.nc4
variable: no3
OH:
collection: ACHEM_MERRA2_GMI.tavg24_3d_dac_Nv.x576_y361_t12.%y4.nc4
variable: oh
SO2_EMIS_AIRCRAFT_CDS:
collection: ACHEM_htap-v2.2.emis_so2.aviation_cds.x3600_y1800_t12.2010.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: so2_aviation
SO2_EMIS_AIRCRAFT_CRS:
collection: ACHEM_htap-v2.2.emis_so2.aviation_crs.x3600_y1800_t12.2010.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: so2_aviation
SO2_EMIS_AIRCRAFT_LTO:
collection: ACHEM_htap-v2.2.emis_so2.aviation_lto.x3600_y1800_t12.2010.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: so2_aviation
SO2_EMIS_ENERGY:
collection: ACHEM_htapv2.2.emisso2.elevated.x3600y1800t12.2017.integrate.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: sanl2
SO3_EMIS_FIRE:
- {starting: "2014-12-01T12:00",collection: ACHEM_qfed2.emis_so3.006.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
- {starting: "2021-11-01T12:00",collection: ACHEM_qfed2.emis_so3.061.%y4%m2%d2.nc4,regrid: CONSERVE,sample: ACHEM_sample_0,variable: biomass}
SO2_EMIS_NONENERGY:
collection: ACHEM_htapv2.2.emisso2.surface.x3600y1800t12.2017.integrate.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: sanl1
SO2_EMIS_SHIPPING:
collection: ACHEM_htap-v2.2.emis_so2.ships.x3600_y1800_t12.2010.nc4
regrid: CONSERVE
sample: ACHEM_sample_1
variable: so2_ship
SOAG_EMIS:
collection: ACHEM_SOAG.emiss.x144_y91_t12.1990.nc4
sample: ACHEM_sample_2
variable: soag

6 changes: 3 additions & 3 deletions GEOS_AChemGridComp.rc → ACHEM_GridComp.rc
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
#
# Resource file for the GEOS aerosol chemistry grid component.
#
# 15 Aug 2012 A. Darmenov
# 15 Aug 2012 A. Darmenov
#--------------------------------------------------------------------

verbose: .True.


# MAM chemistry
# MAM chemistry
# -------------------------------------
gas_chemistry: .false.
aqueous_chemistry: .false.
Expand All @@ -21,7 +21,7 @@ ocs_surface_vmr: 490.0e-12 # 'mol/mol'

# VOC chemistry and parameters
# -------------------------------------
voc_chemistry: .true.
voc_chemistry: .true.
voc_BiomassBurnFactor: 0.013 # 'g/g CO'
voc_AnthroFactor: 0.069 # 'g/g CO'
voc_MW: 0.150 # 'kg/mol'
Expand Down
20 changes: 10 additions & 10 deletions GEOS_AChemGridCompMod.F90 → ACHEM_GridCompMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
!-------------------------------------------------------------------------
!BOP
!
! !MODULE: GEOS_AChemGridCompMod -
! !MODULE: ACHEM_GridCompMod -
!
! !INTERFACE:
!
module GEOS_AChemGridCompMod
module ACHEM_GridCompMod
!
! !USES:
!
Expand Down Expand Up @@ -169,7 +169,7 @@ subroutine SetServices(GC, RC)
! Load private Config Attributes
! ------------------------------
self%CF = ESMF_ConfigCreate(__RC__)
call ESMF_ConfigLoadFile(self%CF, 'GEOS_AChemGridComp.rc', __RC__)
call ESMF_ConfigLoadFile(self%CF, 'ACHEM_GridComp.rc', __RC__)

call ESMF_ConfigGetAttribute(self%CF, self%verbose, label='verbose:', default=.false., __RC__)

Expand Down Expand Up @@ -721,7 +721,7 @@ subroutine SetServices(GC, RC)

! !EXTERNAL STATE:
OPTIONAL_CHEM_EXPORT: if (self%mam_chem) then
#include "GEOS_AChem_ExportSpec___.h"
#include "ACHEM_ExportSpec___.h"
end if OPTIONAL_CHEM_EXPORT


Expand Down Expand Up @@ -961,7 +961,7 @@ subroutine Initialize_(GC, IMPORT, EXPORT, CLOCK, rc)
! Declare pointers to IMPORT/EXPORT/INTERNAL states
! -------------------------------------------------
#if(0)
#include "GEOS_AChem_DeclarePointer___.h"
#include "ACHEM_DeclarePointer___.h"
#endif

! Get my name and set-up traceback handle
Expand Down Expand Up @@ -991,7 +991,7 @@ subroutine Initialize_(GC, IMPORT, EXPORT, CLOCK, rc)
! Get pointers to IMPORT/EXPORT/INTERNAL states
! ---------------------------------------------
#if(0)
#include "GEOS_AChem_GetPointer___.h"
#include "ACHEM_GetPointer___.h"
#endif

! Extract relevant runtime information
Expand Down Expand Up @@ -1307,7 +1307,7 @@ subroutine Run_(GC, IMPORT, EXPORT, CLOCK, rc)
! Declare pointers to IMPORT/EXPORT/INTERNAL states
! -------------------------------------------------
#if(0)
#include "GEOS_AChem_DeclarePointer___.h"
#include "ACHEM_DeclarePointer___.h"
#endif

! Get my name and set-up traceback handle
Expand All @@ -1318,7 +1318,7 @@ subroutine Run_(GC, IMPORT, EXPORT, CLOCK, rc)
! Get pointers to IMPORT/EXPORT/INTERNAL states
! ---------------------------------------------
#if(0)
#include "GEOS_AChem_GetPointer___.h"
#include "ACHEM_GetPointer___.h"
#else

#endif
Expand Down Expand Up @@ -2135,7 +2135,7 @@ subroutine Run_(GC, IMPORT, EXPORT, CLOCK, rc)
! Note that we do not update the OH concentration
! Could (should?) integrate this with gas_chemistry below
! Right now the VOC calculation is optional, specified in
! in GEOS_AchemGridComp.rc, but the export is coupled to
! in ACHEM_GridComp.rc, but the export is coupled to
! GOCART if both GOCART and ACHEM are running, so fill
! in with zero in case it is requested.

Expand Down Expand Up @@ -3868,4 +3868,4 @@ pure function day_of_year(nymd) result (doy)
end function day_of_year


end module GEOS_AChemGridCompMod
end module ACHEM_GridCompMod
16 changes: 8 additions & 8 deletions GEOSachem_Registry.rc → ACHEM_Registry.rc
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@
#
# -----------------------------------------------------------------

COMP_NAME: GEOS_AChem
COMP_NAME: ACHEM

# Only change the Registry version when major structural changes
# occurs, not changes in content
# --------------------------------------------------------------
MAPL_REGISTRY_VERSION: 1.00
MAPL_REGISTRY_VERSION: 1.00

# ------------
# Import State
# ------------

<ImportSpec name="GEOS_AChem", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,default,long_name">
<ImportSpec name="ACHEM", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,default,long_name">
# ----------------------|------------|-----|---|----|---|---|-----|------|--------------------------
# Short | | | V |Item|Intervl| Sub | Def | Long
# Name | Units | Dim |Loc|Type| R | A |Tiles| ault | Name
Expand All @@ -39,7 +39,7 @@ COMP_NAME: GEOS_AChem
TS | K | xy | | | | | | | Surface skin temperature
U10N | m s-1 | xy | | | | | | | Equivalent neutral 10 meter eastward wind
V10N | m s-1 | xy | | | | | | | Equivalent neutral 10 meter northward wind
FROCEAN | 1 | xy | | | | | | | Fraction of ocean
FROCEAN | 1 | xy | | | | | | | Fraction of ocean
FRLAND | 1 | xy | | | | | | | Fraction of land
FRLAKE | 1 | xy | | | | | | | Fraction of lake
FRLANDICE | 1 | xy | | | | | | | Fraction of land ice
Expand All @@ -54,7 +54,7 @@ COMP_NAME: GEOS_AChem
H2O2 | mol mol-1 | xyz | C | | | | | | Hydrogen peroxide (H2O2)
O3 | kg kg-1 | xyz | C | | | | | | Ozone (mass mixing ratio)
# ---------------------|------------|-----|---|----|---|---|-----|------|--------------------------
# OHSTRAT | mol mol-1 | xyz | C | | | | | | Hydroxyl radical
# OHSTRAT | mol mol-1 | xyz | C | | | | | | Hydroxyl radical
# O3P | mol mol-1 | xyz | C | | | | | | O triplet P
# OCS_JRATE | s-1 | xyz | C | | | | | | OCS photolysis rates
# ----------------------|------------|-----|---|----|---|---|-----|------|--------------------------
Expand Down Expand Up @@ -83,7 +83,7 @@ COMP_NAME: GEOS_AChem
# Export State
# ------------

<ExportSpec name="GEOS_AChem", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,long_name">
<ExportSpec name="ACHEM", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,long_name">
# ----------------------|---------------|-----|---|----|---|---|-----|------------------------------
# Short | | | V |Item|Intervl| Sub | Long
# Name | Units | Dim |Loc|Type| R | A |Tiles| Name
Expand Down Expand Up @@ -119,7 +119,7 @@ COMP_NAME: GEOS_AChem
CMD_S_H2SO4 | kg m-2 | xy | | | | | | Column mass density of H2SO4 in kg-S m-2
CMD_S_GAS | kg m-2 | xy | | | | | | Column mass density of sulfur in gas phase in kg-S m-2
#
CMD_N_NH3 | kg m-2 | xy | | | | | | Column mass density of NH3 in kg-N m-2
CMD_N_NH3 | kg m-2 | xy | | | | | | Column mass density of NH3 in kg-N m-2
CMD_N_GAS | kg m-2 | xy | | | | | | Column mass density of nitrogen in kg-N m-2
#
CMD_DMS | kg m-2 | xy | | | | | | Column mass density of DMS
Expand Down Expand Up @@ -209,7 +209,7 @@ COMP_NAME: GEOS_AChem
# Note: 1) For friendlies, use "D" for dynamics, "T" for turbulence and "C" for convection, or "S" for self (add to EXPORT state); leave blank otherwise
# 2) If quantity requires no restart, put an 'x' in the No Rst column

<InternalSpec name="GEOS_AChem", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,default,norestart,halowidth,friendlyto,long_name">
<InternalSpec name="ACHEM", cols="short_name,units,dims,vlocation,stat,refresh_interval,averaging_interval,num_subtiles,default,norestart,halowidth,friendlyto,long_name">
# ----------------------|------------|-----|---|----|---|---|-----|------|----|----|---------|------
# Short | | | V |Item|Intervl| Sub | Def | No | Ha | Friends | Long
# Name | Units | Dim |Loc|Type| R | A |Tiles| ault | Rst| lo | | Name
Expand Down
File renamed without changes.
6 changes: 3 additions & 3 deletions AMIP/GEOS_AChemGridComp.rc → AMIP.20C/ACHEM_GridComp.rc
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
#
# Resource file for the GEOS aerosol chemistry grid component.
#
# 15 Aug 2012 A. Darmenov
# 15 Aug 2012 A. Darmenov
#--------------------------------------------------------------------

verbose: .True.


# MAM chemistry
# MAM chemistry
# -------------------------------------
gas_chemistry: .false.
aqueous_chemistry: .false.
Expand All @@ -21,7 +21,7 @@ ocs_surface_vmr: 490.0e-12 # 'mol/mol'

# VOC chemistry and parameters
# -------------------------------------
voc_chemistry: .true.
voc_chemistry: .true.
voc_BiomassBurnFactor: 0.013 # 'g/g CO'
voc_AnthroFactor: 0.069 # 'g/g CO'
voc_MW: 0.150 # 'kg/mol'
Expand Down
File renamed without changes.
Loading

0 comments on commit 6af44bb

Please sign in to comment.