GEOS-ESM / GOCART

GOCART Aerosol model including process library and framework interfaces (MAPL, NUOPC, and CCPP)
Apache License 2.0
13 stars 13 forks source link

New YAML version of ExtData needs to be implemented #132

Open amdasilva opened 2 years ago

amdasilva commented 2 years ago

Background

@bena-nasa has refactored ExtData to use a more versatile YAML resource file. This is a mod that goes beyond GOCART (see below for a list of *ExtFiles.rc that need conversion).

Here are the general steps:

List of ExtData.rc needing conversion to YAML

./@GEOSchem_GridComp/MAMchem_GridComp/MAM7_ExtData.rc
./@GEOSchem_GridComp/TR_GridComp/TR_ExtData.rc
./@GEOSchem_GridComp/GMIchem_GridComp/GMI_GridComp/CCMI_REF-C2/GMI_ExtData.rc
./@GEOSchem_GridComp/GMIchem_GridComp/GMI_GridComp/CCMI_REF-C1/GMI_ExtData.rc
./@GEOSchem_GridComp/GMIchem_GridComp/GMI_GridComp/GMI_ExtData.rc
./@GEOSchem_GridComp/ChemEnv_ExtData.rc
./@GEOSchem_GridComp/HEMCO_GridComp/HEMCOgocart2g_ExtData.rc
./@GEOSchem_GridComp/HEMCO_GridComp/HEMCOgmi_ExtData.rc
./@GEOSchem_GridComp/GAAS_GridComp/GAAS_GridComp_ExtData.rc
./@GEOSchem_GridComp/Shared/HEMCO/@HEMCO/src/Interfaces/GEOS/HEMCOgocart_ExtData.rc
./@GEOSchem_GridComp/Shared/HEMCO/@HEMCO/src/Interfaces/GEOS/HEMCOgmi_ExtData.rc
./@GEOSchem_GridComp/CARMAchem_GridComp/CARMAchem_GridComp_ExtData.rc
./@GEOSchem_GridComp/DNA_GridComp/DNA_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/CA2G_GridComp/AMIP.20C/CA2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/CA2G_GridComp/AMIP/CA2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/CA2G_GridComp/CA2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SU2G_GridComp/AMIP.20C/SU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SU2G_GridComp/SU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SU2G_GridComp/AMIP/SU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SS2G_GridComp/AMIP.20C/SS2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SS2G_GridComp/SS2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/SS2G_GridComp/AMIP/SS2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/DU2G_GridComp/AMIP.20C/DU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/DU2G_GridComp/AMIP/DU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/DU2G_GridComp/DU2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/NI2G_GridComp/AMIP.20C/NI2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/NI2G_GridComp/AMIP/NI2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART2G_GridComp/NI2G_GridComp/NI2G_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO_GridComp/CO_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO_GridComp/AMIP.20C/CO_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO_GridComp/AMIP/CO_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/Rn_GridComp/Rn_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/Rn_GridComp/AMIP.20C/Rn_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/Rn_GridComp/AMIP/Rn_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CFC_GridComp/AMIP.20C/CFC_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CFC_GridComp/AMIP/CFC_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CFC_GridComp/CFC_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CH4_GridComp/CH4_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CH4_GridComp/AMIP.20C/CH4_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CH4_GridComp/AMIP/CH4_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO2_GridComp/AMIP.20C/CO2_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO2_GridComp/AMIP/CO2_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/CO2_GridComp/CO2_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/O3_GridComp/AMIP.20C/O3_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/O3_GridComp/O3_GridComp_ExtData.rc
./@GEOSchem_GridComp/@GOCART/ESMF/GOCART_GridComp/O3_GridComp/AMIP/O3_GridComp_ExtData.rc
./@GEOSchem_GridComp/StratChem_GridComp/SC_GridComp/StratChem_ExtData.rc
./@GEOSchem_GridComp/GEOSachem_GridComp/AMIP.20C/GEOSachem_ExtData.rc
./@GEOSchem_GridComp/GEOSachem_GridComp/AMIP/GEOSachem_ExtData.rc
./@GEOSchem_GridComp/GEOSachem_GridComp/GEOSachem_ExtData.rc
./@GEOSchem_GridComp/GEOSCHEMchem_GridComp/@geos-chem/run/GEOS/GEOSCHEMchem_ExtData.rc
./GEOSmoist_GridComp/WSUB_ExtData.rc 
amdasilva commented 2 years ago

Please make sure this feature includes the new ACG and StateSpecs and corresponding changes in HISTORY.rc (see issue #93). That is, fix that first. It is mOK to combine the PR for these 2 issues.

amdasilva commented 1 year ago

Although ExtData.yaml is implemented it is not the default and still needs testing.

bena-nasa commented 1 year ago

@amdasilva @vbuchard Assuming we have a full geosgcm release from @sdrabenh that now includes this new gocart release, we should all you need to do is set

USE_EXTDATA2G: .true.

in the CAP.rc to use it. We have modified gcm_setup/gcm_run.j to handle the new ExtData. In my testing it has been zero-diff. The only exception would be if you cross a "magic date", as this is handled internally in ExtData2G rather than via the ugly scripting.

Please, please test this, the sooner this becomes the default the better from a code maintenance/development perspective.