From 874f9d1cb7070e239cd69f3c80b4f410ea7da172 Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Fri, 25 Jun 2021 15:10:57 -0600 Subject: [PATCH 01/30] Updated big compute recommendations in docs. Added a remark that hyper-threading can improve model throughput by up to 50%. --- docs/source/getting-started/requirements.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/source/getting-started/requirements.rst b/docs/source/getting-started/requirements.rst index bf1855bff..3325c61b9 100644 --- a/docs/source/getting-started/requirements.rst +++ b/docs/source/getting-started/requirements.rst @@ -70,6 +70,7 @@ Big Compute Recommendations These hardware recommendations are for users that are interested in tackling large bleeding-edge computational problems: +* Hyper-threading can improve simulation throughput (reportedly up to 50%) * A high-performance-computing cluster (or a cloud-HPC service like AWS) * 1--50 nodes From bf5a55e5d33b649049a5920f1cd8e3289baddf8e Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Thu, 1 Jul 2021 13:31:03 -0400 Subject: [PATCH 02/30] Update to CEDS v2 as the default global anthropogenic emissions inventory Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index fdfaef4d4..e74b8d428 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit fdfaef4d4d5abee70c842ea959d011ac426a929c +Subproject commit e74b8d428dd467e2c8beb21c153d7c38a1ca93df From bad598ef585977ced86ce8c14892d1d5a5453f2e Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Thu, 1 Jul 2021 15:08:37 -0400 Subject: [PATCH 03/30] Add trace metals simulation as option in GEOS-Chem Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index e74b8d428..931b5cbf1 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit e74b8d428dd467e2c8beb21c153d7c38a1ca93df +Subproject commit 931b5cbf1696ad850891b438abcc727d2932325b From 0b752540034145017ee320dc8ac01c757387a579 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Tue, 6 Jul 2021 11:38:40 -0400 Subject: [PATCH 04/30] Update MODIS LAI product used in GEOS-Chem and disable several diagnostics in benchmark simulations Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 931b5cbf1..f148a1d43 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 931b5cbf1696ad850891b438abcc727d2932325b +Subproject commit f148a1d43379e88980aaeeb6b23400463868ac77 From 1bf9a4b8f3d2e58a99c9bfacaf9dceb5a91c1080 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Tue, 6 Jul 2021 16:19:41 -0400 Subject: [PATCH 05/30] Merge GEOS-Chem 'bugfixes' branch into dev Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 3a9cde82d..9396c2286 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 3a9cde82df6fb1b36ff3fd00e74db1359c4bfc14 +Subproject commit 9396c22866d2f0ccfffa3ddd6ad2bac9f698a509 From 15162f9c83d79310253eecbddc1a37cfa5a7ffa6 Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Wed, 7 Jul 2021 15:46:38 -0400 Subject: [PATCH 06/30] GEOS-Chem submod update: Add lon_bnds, lat_bnds to GCC History output files This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: 08a3ea2d2 Merge branch 'feature/HistoryUpdates' into dev This implements geoschem/geoschem #774, which adds the "lat_bnds" and "lon_bnds" arrays to the netCDF files produced by the GEOS-Chem Classic History component. Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 9396c2286..08a3ea2d2 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 9396c22866d2f0ccfffa3ddd6ad2bac9f698a509 +Subproject commit 08a3ea2d2d0a31a7843069c40914fc16e21d2004 From 211c0b6ac57ff61c28ceb7622918a55644c091e5 Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Wed, 7 Jul 2021 17:26:30 -0400 Subject: [PATCH 07/30] GEOS-Chem submod update: Disable metals int tests with GEOS-FP met This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: 60de89d23 Temporarily disable the trace metal integration tests with GEOS-FP met Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 08a3ea2d2..60de89d23 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 08a3ea2d2d0a31a7843069c40914fc16e21d2004 +Subproject commit 60de89d23a83b73c169eb532e33773aeaa463706 From 80995d7b8f00b44c4391a8ace11dcce003fa3b96 Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Fri, 9 Jul 2021 15:20:31 -0400 Subject: [PATCH 08/30] GEOS-Chem submod update: Fix scale factors and MW for C3H8, C2H6 for AEIC This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: 173e82780 Merge branch 'bugfix/christophkeller/aeic_emissions_voc_scaling' into dev ea31497eb Fix incorrect mol weights in species_database and HEMCO_Config templates This update makes sure that the AEIC emissions are properly scaled from atoms C to molec species. Also, we have fixed the MW of EOH in the species_database.yml to be 46.07, which is the latest accepted value. Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 60de89d23..173e82780 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 60de89d23a83b73c169eb532e33773aeaa463706 +Subproject commit 173e82780927ccb29adb49efb9b02fec5faa6e4c From f0bb980c33edafdc536265accb17148195a45497 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Fri, 9 Jul 2021 16:37:19 -0400 Subject: [PATCH 09/30] Add minor fix for species_database.yml in GEOS-Chem Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 173e82780..ed94109f5 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 173e82780927ccb29adb49efb9b02fec5faa6e4c +Subproject commit ed94109f5aa81bf58e5a3b0f6809721ef8ae6002 From 207b31350340fb79bbc2f4927b5d451a514edf1a Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Mon, 12 Jul 2021 17:31:46 -0400 Subject: [PATCH 10/30] GEOS-Chem submod update: Add Luo et al 2020 wetdep as an option This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: 37eeef37b Merge branch 'dev' of ssh://github.com/geoschem/geos-chem into feature/luo_wd ff28a9ac4 Merge branch 'bugfix/luo_wd_spcdb' into feature/luo_wd 6a3497720 Merge branch 'feature/luo_wd' into feature/dev+luo_wd This brings the Luo et al 2020 wetdep scheme into GEOS-Chem. Right now it is an option, to invoke it, configure with -DLUO_WETDEP=y. Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index ed94109f5..37eeef37b 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit ed94109f5aa81bf58e5a3b0f6809721ef8ae6002 +Subproject commit 37eeef37b67d8d657e6cee06e1c94fa79b3a1c4f From 53a869290c98c1bf4a40b008be5717444b30996b Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Tue, 13 Jul 2021 14:52:33 -0400 Subject: [PATCH 11/30] GEOS-Chem submod update: Remove extra entries in species database for DMS This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: f82cf0930 Bug fix: Remove extranous entries in species database for DMS This removed incorrect entries from the DMS metadata in the file src/GEOS-Chem/run/shared/species_database.yml, which led to floating- point exceptions. Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 37eeef37b..f82cf0930 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 37eeef37b67d8d657e6cee06e1c94fa79b3a1c4f +Subproject commit f82cf093016027ae9baa126022cc5563eeb25b8c From 6baeb92590cb0e810cf3726277018a172b68a382 Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Tue, 13 Jul 2021 16:57:41 -0400 Subject: [PATCH 12/30] GEOS-Chem submod update: Fix typo in HEMCO_Config.rc.metals This commit informs the GCHP superproject about the following commits that were pushed to the Github geoschem/geos-chem repository 44135fcfb Fix typo in HEMCO_Config.rc.metals template file This fixes an issue in the config file for the metals specialty simulation. It does not affect any GCHP simulations. Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index f82cf0930..44135fcfb 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit f82cf093016027ae9baa126022cc5563eeb25b8c +Subproject commit 44135fcfb3583a81f1413b745e1c15e7d23eaeeb From 8505aea678fa2abba534d0b8a8d59d188def795e Mon Sep 17 00:00:00 2001 From: Bob Yantosca Date: Wed, 14 Jul 2021 11:04:10 -0400 Subject: [PATCH 13/30] GEOS-Chem submod update: Fixed typo when setting WD_ConfFacI2G_Luo This commit informs the GCClassic superproject about the following commits that were pushed to the Github geoschem/geos-chem repository: d263d2937 Bug fix: correct typo when setting WD_ConvFacI2G_Luo Signed-off-by: Bob Yantosca --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 44135fcfb..d263d2937 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 44135fcfb3583a81f1413b745e1c15e7d23eaeeb +Subproject commit d263d2937ff80012ce989eb8710ba89d260624af From 460d2769d819a9d37884a56738abda7cd7e7b33d Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Wed, 14 Jul 2021 15:17:18 -0400 Subject: [PATCH 14/30] Merge HEMCO_INTERFACE updates from Haipeng Lin Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/HEMCO_GridComp/HEMCO | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO index 051d59b39..42054ed87 160000 --- a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO +++ b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO @@ -1 +1 @@ -Subproject commit 051d59b391b2cad24c3ef1da96f54ad5a184ac78 +Subproject commit 42054ed87a77444028391fdac5f7e79465932d1b From 7bae33d04ad1f4dcf461080511fdc14a00e45dad Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Wed, 14 Jul 2021 15:30:17 -0400 Subject: [PATCH 15/30] Merge updates for blowing snow emissions Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- src/GCHP_GridComp/HEMCO_GridComp/HEMCO | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index d263d2937..934ec1683 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit d263d2937ff80012ce989eb8710ba89d260624af +Subproject commit 934ec168380782e7a8a1c9dffa28210de19ae44b diff --git a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO index 42054ed87..645124af5 160000 --- a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO +++ b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO @@ -1 +1 @@ -Subproject commit 42054ed87a77444028391fdac5f7e79465932d1b +Subproject commit 645124af50e0fab44d9c1e8a264f0f85efbd75e5 From ddf9785fe5f7074641c19e554dfc963dff6d89c3 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Fri, 16 Jul 2021 12:20:48 -0400 Subject: [PATCH 16/30] Apply MAPL kludge to fix incorrect lev positive attribute in History files History collection output files now have lev positive 'up' rather than 'down' for all collections except emissions. Please note that this is a quick and dirty fix that will be replaced with a more elegant and robust solution in the future. Also note that adding collections for non-GEOS-Chem gridcomps or HEMCO emissions will require further edits to MAPL to ensure the positive attribute is correct. For these cases positive should be 'down' unless the data arrays are vertically flipped. Signed-off-by: Lizzie Lundgren --- src/MAPL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MAPL b/src/MAPL index a464a1b3c..005860546 160000 --- a/src/MAPL +++ b/src/MAPL @@ -1 +1 @@ -Subproject commit a464a1b3c161db1ecc2e9749e0241b9f8c537cb4 +Subproject commit 005860546b2e4bbb17236be0d25e55281f90186d From 46241b791c1084ea3358d149d89baa0db028e9b2 Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Fri, 16 Jul 2021 13:17:12 -0400 Subject: [PATCH 17/30] Add fixes for Yuan-processed MODIS LAI; Update input files for GCHP CO2 simulation Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 934ec1683..2120e2418 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 934ec168380782e7a8a1c9dffa28210de19ae44b +Subproject commit 2120e241847507e314f35f5064641c64e4fe927f From a6080e9519ddfed46d94697af1bfa2303d5be9b2 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Tue, 27 Jul 2021 12:04:41 -0400 Subject: [PATCH 18/30] Update MAPL to prevent minimum cmake version 3.14 The TYPE keyword argument to install(PROGRAMS) in MAPL was introduced in cmake 3.14. To avoid the need to increase cmake_minimum_required(3.14) we should use DESTINATION rather than TYPE. Signed-off-by: Lizzie Lundgren --- src/MAPL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MAPL b/src/MAPL index 005860546..0bfb4661e 160000 --- a/src/MAPL +++ b/src/MAPL @@ -1 +1 @@ -Subproject commit 005860546b2e4bbb17236be0d25e55281f90186d +Subproject commit 0bfb4661eb111feeeae6fb92cb8421b8d16da4bc From 1444b7ea05eb8c67eedd5a4b0df6a711f54cf12a Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Tue, 27 Jul 2021 12:15:07 -0400 Subject: [PATCH 19/30] Minor updates to GCHP Harvard example run scripts and integration tests > GCHP integration test updates: reduce number of tests and fix bug > Change GCHP benchmark resource allocation to 96 cores over 2 nodes > Update Harvard GCHP run scripts to remove lower mem for Transport Tracers > Update example multirun script resources to match benchmark run script > Update GCHP multi-run scripts for compatibility with 13.1 rundirs > Add core count error check to GCHP run script gchp.local.run Signed-off-by: Lizzie Lundgren --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 2120e2418..710bae781 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 2120e241847507e314f35f5064641c64e4fe927f +Subproject commit 710bae7810784cae1d98fe3e3b77e3e649eed0d9 From 72132a580bd3e14d1b0126c934a2f63cd5552214 Mon Sep 17 00:00:00 2001 From: Lizzie Lundgren Date: Tue, 27 Jul 2021 12:20:58 -0400 Subject: [PATCH 20/30] Populate State_Met FRSEAICE with MAPL import values This field is now used by GCHP for blowing snow source of sea salt aerosols in HEMCO sea salt extension. Signed-off-by: Lizzie Lundgren --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 710bae781..9b92b7961 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 710bae7810784cae1d98fe3e3b77e3e649eed0d9 +Subproject commit 9b92b79614e308f61aa3afa0ec27944ad12b997d From b5bb81e9114d1115b683e7d961e1b142fca4bf01 Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Tue, 27 Jul 2021 09:48:49 -0500 Subject: [PATCH 21/30] Fixes #120. Added LUO_WETDEP preprocessor definition if -DLUO_WETDEP=ON. --- src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt b/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt index 86da2082d..1d6171c5f 100755 --- a/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt +++ b/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt @@ -80,10 +80,14 @@ target_compile_options(GEOSChemBuildProperties > ) +#--------------------------------------------------------------------- +# Assign preprocessor definitions +#--------------------------------------------------------------------- target_compile_definitions(GEOSChemBuildProperties INTERFACE $<$:LINUX_IFORT> $<$:LINUX_GFORTRAN> + $<$:LUO_WETDEP> ) # Print the options that are turned on in GEOS-Chem From 21beabd174e555c6fa83de25c02256ba2757a2dd Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Tue, 27 Jul 2021 19:52:51 -0400 Subject: [PATCH 22/30] Further fixes for compiling with -DLUO_WETDEP=on The previous fix for LUO_WETDEP still resulted in the following in CMakeCache.txt: //No help, variable specified on the command line. LUO_WETDEP:UNINITIALIZED=on To resolve this, we now follow what is done for the RRTMG option. That is, set LUO_WETDEP at the top of src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt. The line for LUO_WETDEP passed to target_compile_definitions has been moved to the section for the other GEOS-Chem build properties instead of the section for compiler options. This fix now results in the following output in CMakeCache.txt when building with -DLUO_WETDEP=on: //Switch to build the Luo et al (2020) wetdep scheme into GEOS-Chem LUO_WETDEP:BOOL=on Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt b/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt index 1d6171c5f..fa35ae768 100755 --- a/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt +++ b/src/GCHP_GridComp/GEOSChem_GridComp/CMakeLists.txt @@ -7,6 +7,9 @@ set(USE_REAL8 ON CACHE BOOL set(RRTMG OFF CACHE BOOL "Switch to build RRTMG as a component of GEOS-Chem" ) +set(LUO_WETDEP OFF CACHE BOOL + "Switch to build the Luo et al (2020) wetdep scheme into GEOS-Chem" +) # Local variables set(GC_EXTERNAL_CONFIG TRUE) @@ -24,6 +27,7 @@ target_compile_definitions(GEOSChemBuildProperties INTERFACE $<$:USE_REAL8> $<$:RRTMG> $<$:ADJOINT> $<$:REVERSE_OPERATORS> + $<$:LUO_WETDEP> ) target_link_libraries(GEOSChemBuildProperties INTERFACE @@ -80,14 +84,10 @@ target_compile_options(GEOSChemBuildProperties > ) -#--------------------------------------------------------------------- -# Assign preprocessor definitions -#--------------------------------------------------------------------- target_compile_definitions(GEOSChemBuildProperties INTERFACE $<$:LINUX_IFORT> $<$:LINUX_GFORTRAN> - $<$:LUO_WETDEP> ) # Print the options that are turned on in GEOS-Chem From 80acb52ed86f2ba15fb81052c2e981ef0f3bdeda Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Thu, 5 Aug 2021 13:42:45 -0400 Subject: [PATCH 23/30] Update version in CMakeLists.txt to 13.2.0 Signed-off-by: Melissa Sulprizio --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 31f8c0de6..4c3397efb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required (VERSION 3.13) project (gchp_ctm - VERSION 13.1.0 + VERSION 13.2.0 LANGUAGES Fortran CXX C ) From a2c05cdca8b8fdd7353ae6d74c1034b8cfcb4ad4 Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Mon, 9 Aug 2021 13:36:42 -0500 Subject: [PATCH 24/30] Added 'Other Recommendations' to requirements page. Included details about ranking and binding processes --- docs/requirements.txt | 3 ++- docs/source/getting-started/requirements.rst | 9 ++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index d6071d004..4630a3d32 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -2,4 +2,5 @@ sphinx sphinx_rtd_theme sphinxcontrib-bibtex -recommonmark \ No newline at end of file +recommonmark +docutils==0.16 # temporary fix for unordered lists not rendering properly diff --git a/docs/source/getting-started/requirements.rst b/docs/source/getting-started/requirements.rst index 3325c61b9..65ae92f04 100644 --- a/docs/source/getting-started/requirements.rst +++ b/docs/source/getting-started/requirements.rst @@ -70,7 +70,6 @@ Big Compute Recommendations These hardware recommendations are for users that are interested in tackling large bleeding-edge computational problems: -* Hyper-threading can improve simulation throughput (reportedly up to 50%) * A high-performance-computing cluster (or a cloud-HPC service like AWS) * 1--50 nodes @@ -79,3 +78,11 @@ computational problems: * Lots of storage. Several TB is sufficient, but tens or hundreds of TB is better. +Other Recommendations +^^^^^^^^^^^^^^^^^^^^^ + +* Hyper-threading may improve simulation throughput, particularly at low core counts +* MPI process should be bound sequentially across cores and nodes (e.g., a simulation with 48-processes with 24 processes per node + should bind rank 0 to CPU L#0, rank 1 to CPU L#1, etc. on the first node, and rank 24 to CPU L#0, rank 1 to CPU L#1, etc. on the + second node). This should be the default, but it's worth checking if your performance is lower than expected. With OpenMPI the + `--report-bindings` argument will show you how processes are ranked and binded. From 8c253706a875090e8d7f604a7b9e8f3b1c3874ae Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Fri, 13 Aug 2021 12:29:50 -0500 Subject: [PATCH 25/30] Updated configu file documentation. Large update to HISTORY.rc documenation. --- docs/source/supplement/config-files.rst | 453 +----------------- .../supplement/config-files/ExtData.rst | 46 ++ docs/source/supplement/config-files/HEMCO.rst | 40 ++ .../supplement/config-files/HISTORY.rst | 312 ++++++++++++ .../supplement/config-files/input_geos.rst | 14 + .../source/supplement/config-files/others.rst | 239 +++++++++ docs/source/supplement/satellite-overpass.rst | 2 +- 7 files changed, 662 insertions(+), 444 deletions(-) create mode 100644 docs/source/supplement/config-files/ExtData.rst create mode 100644 docs/source/supplement/config-files/HEMCO.rst create mode 100644 docs/source/supplement/config-files/HISTORY.rst create mode 100644 docs/source/supplement/config-files/input_geos.rst create mode 100644 docs/source/supplement/config-files/others.rst diff --git a/docs/source/supplement/config-files.rst b/docs/source/supplement/config-files.rst index 0127cd8e6..28c50b18c 100644 --- a/docs/source/supplement/config-files.rst +++ b/docs/source/supplement/config-files.rst @@ -1,17 +1,19 @@ Configuration Files =================== + GCHP is controlled using a set of resource configuration files that are included in the GCHP run directory, most of which are denoted by suffix :file:`.rc`. These files contain all run-time information required by GCHP. Files include: -* :file:`CAP.rc` -* :file:`ExtData.rc` -* :file:`GCHP.rc` -* :file:`input.geos` -* :file:`HEMCO_Config.rc` -* :file:`HEMCO_Diagn.rc` -* :file:`input.nml` -* :file:`HISTORY.rc` + +.. toctree:: + :maxdepth: 1 + + config-files/HISTORY.rst + config-files/HEMCO.rst + config-files/ExtData.rst + config-files/input_geos.rst + config-files/others.rst Much of the labor of updating the configuration files has been eliminated by run directory shell script :file:`runConfig.sh`. It is important to remember that sourcing :file:`runConfig.sh` will overwrite settings in other configuration files, and you therefore should never manually update other configuration files unless you know the specific option is not available in :file:`runConfig.sh`. @@ -62,438 +64,3 @@ See the individual subsections on each file for additional information. :file:`HISTORY.rc` Config file for the MAPL History component. Configures diagnostic output from GCHP. ---------------------------------- - -:file:`CAP.rc` --------------- - -:file:`CAP.rc` is the configuration file for the top-level gridded component called CAP. -This gridded component can be thought of as the primary driver of GCHP. -Its config file handles general runtime settings for GCHP including time parameters, performance profiling routines, and system-wide timestep (hearbeat). -Combined with output file :file:`cap_restart`, :file:`CAP.rc` configures the exact dates for the next GCHP run. - -ROOT_NAME - Sets the name MAPL uses to initialize the ROOT child gridded component component within CAP. CAP uses this name in all operations when querying and interacting with ROOT. It is set to GCHP. - -ROOT_CF - Resource configuration file for the ROOT component. It is set to :file:`GCHP.rc`. - -HIST_CF - Resource configuration file for the MAPL HISTORY gridded component (another child gridded component of CAP). It is set to :file:`HISTORY.rc`. - -BEG_DATE - Simulation begin date in format YYYYMMDD hhmmss. This parameter is overrided in the presence of output file :file:`cap_restart` containing a different start date. - -END_DATE - Simulation end date in format YYYYMMDD hhmmss. If BEG_DATE plus duration (JOB_SGMT) is before END_DATE then simulation will end at BEG_DATE + JOB_SGMT. If it is after then simulation will end at END_DATE. - -JOB_SGMT - Simulation duration in format YYYYMMDD hhmmss. The duration must be less than or equal to the difference between start and end date or the model will crash. - -HEARTBEAT_DT - The timestep of the ESMF/MAPL internal clock, in seconds. All other timesteps in GCHP must be a multiple of HEARTBEAT_DT. ESMF queries all components at each heartbeat to determine if computation is needed. The result is based upon individual component timesteps defined in :file:`GCHP.rc`. - -MAPL_ENABLE_TIMERS - Toggles printed output of runtime MAPL timing profilers. This is set to YES. Timing profiles are output at the end of every GCHP run. - -MAPL_ENABLE_MEMUTILS - Enables runtime output of the programs' memory usage. This is set to YES. - -PRINTSPEC - Allows an abbreviated model run limited to initializat and print of Import and Export state variable names. Options include: - - * 0 (default): Off - * 1: Imports and Exports only - * 2: Imports only - * 3: Exports only - -USE_SHMEM - This setting is deprecated but still has an entry in the file. - -REVERSE_TIME - Enables running time backwards in CAP. Default is 0 (off). - ---------------------------------- - -:file:`ExtData.rc` ------------------- - -:file:`ExtData.rc` contains input variable and file read information for GCHP. -Explanatory information about the file is located at the top of the configuration file in all run directories. -The file format is the same as that used in the GEOS model, and GMAO/NASA documentation for it can be found at the ExtData component page on the GEOS-5 wiki. - -The following two parameters are set at the top of the file: - -Ext_AllowExtrat - Logical toggle to use data from nearest year available. This is set to true for GCHP. Note that GEOS-Chem Classic accomplishes the same effect but with more flexibility in :file:`HEMCO_Config.rc`. That functionality of :file:`HEMCO_Config.rc` is ignored in GCHP. - -DEBUG_LEVEL - Turns MAPL ExtData debug prints on/off. This is set to 0 in GCHP (off), but may be set to 1 to enable. Beware that turning on ExtData debug prints greatly slows down the model, and prints are only done from the root thread. Use this when debugging problems with input files. - -The rest of the file contains space-delimited lines, one for each variable imported to the model from an external file. -Columns are as follows in order as they appear left to right in the file: - -Export Name - Name of imported met field (e.g. ALBD) or HEMCO emissions container name (e.g. GEIA_NH3_ANTH). - -Units - Unit string nested within single quotes. '1' indicates there is no unit conversion from the native units in the netCDF file. -Clim - Enter Y if the file is a 12 month climatology, otherwise enter N. If you specify it is a climatology ExtData the data can be on either one file or 12 files if they are templated appropriately with one per month. -Conservative - Enter Y the data should be regridded in a mass conserving fashion through a tile file. :literal:`F;{VALUE}` can also be used for fractional regridding. Otherwise enter N to use the non-conervative bilinear regridding. - -Refresh - Time Template Possible values include: - - * -: The field will only be updated once the first time ExtData runs - * 0: Update the variable at every step. ExtData will do a linear interpolation to the current time using the available data. - * %y4-%m2-%h2T%h2:%n2:00: Set the recurring time to update the file. The file will be updated when the evaluated template changes. For example, a template in the form %y4-%m2-%d2T12:00:00 will cause the variable to be updated at the start of a new day (i.e. when the clock hits 2007-08-02T00:00:00 it will update the variable but the time it will use for reading and interpolation is 2007-08-02T12:00:00). - -Offset Factor - Factor the variable will be shifted by. Use none for no shifting. - -Scale Factor - Factor the variable will be scaled by. Use none for no scaling. - -External File Variable - The name of the variable in the netCDF data file, e.g. ALBEDO in met fields. - -External File Template - Path to the netCDF data file. If not using the data, specify :file:`/dev/null` to reduce processing time. If there are no tokens in the template name ExtData will assume that all the data is on one file. Note that if the data on file is at a different resolution that the application grid, the underlying I/O library ExtData uses will regrid the data to the application grid. - ---------------------------------- - -:file:`GCHP.rc` ------------------- - -:file:`GCHP.rc` is the resource configuration file for the ROOT component within GCHP. -The ROOT gridded component includes three children gridded components, including one each for GEOS-Chem, FV3 advection, and the data utility environment needed to support them. - -NX, NY - Number of grid cells in the two MPI sub-domain dimensions. NX * NY must equal the number of CPUs. NY must be a multiple of 6. - -GCHP.GRID_TYPE - Type of grid GCHP will be run at. Should always be Cubed-Sphere. - -GCHP.GRIDNAME - Descriptive grid label for the simulation. The default grid name is PE24x144-CF. The grid name includes how the pole is treated, the face side length, the face side length times six, and whether it is a Cubed Sphere Grid or Lat/Lon. The name PE24x144-CF indicates polar edge (PE), 24 cells along one face side, 144 for 24*6, and a cubed-sphere grid (CF). Many options here are defined in MAPL_Generic. - - .. note:: Must be consistent with IM and JM. - -GCHP.NF - Number of cubed-sphere faces. This is set to 6. - -GCHP.IM_WORLD - Number of grid cells on the side of a single cubed sphere face. - -GCHP.IM - Number of grid cells on the side of a single cubed sphere face. - -GCHP.JM - Number of grid cells on one side of a cubed sphere face, times 6. This represents a second dimension if all six faces are stacked in a 2-dimensional array. Must be equal to IM*6. - -GCHP.LM - Number of vertical grid cells. This must be equal to the vertical resolution of the offline meteorological fields (72) since MAPL cannot regrid vertically. - -GCHP.STRETCH_FACTOR - Ratio of configured global resolution to resolution of targeted high resolution region if using stretched grid. - -GCHP.TARGET_LON - Target longitude for high resolution region if using stretched grid. - -GCHP.TARGET_LAT - Target latitude for high resolution region if using stretched grid. - -IM - Same as GCHP.IM and GCHP.IM_WORLD. - -JM - Same as GCHP.JM. - -LM - Same as GCHP.LM. - -GEOChem_CTM - If set to 1, tells FVdycore that it is operating as a transport model rather than a prognostic model. - -AdvCore_Advection - Toggles offline advection. 0 is off, and 1 is on. - -DYCORE - Should either be set to OFF (default) or ON. This value does nothing, but MAPL will crash if it is not declared. - -HEARTBEAT_DT - The timestep in seconds that the DYCORE Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -SOLAR_DT - The timestep in seconds that the SOLAR Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -IRRAD_DT - The timestep in seconds that the IRRAD Component should be called. ESMF checks this value during its timestep check. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -RUN_DT - The timestep in seconds that the RUN Component should be called. - -GCHPchem_DT - The timestep in seconds that the GCHPchem Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -RRTMG_DT - The timestep in seconds that RRTMG should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -DYNAMICS_DT - The timestep in seconds that the FV3 advection Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. - -SOLARAvrg, IRRADAvrg - Default is 0. - -GCHPchem_REFERENCE_TIME - HHMMSS reference time used for GCHPchem MAPL alarms. - -PRINTRC - Specifies which resource values to print. Options include 0: non-default values, and 1: all values. Default setting is 0. - -PARALLEL_READFORCING - Enables or disables parallel I/O processes when writing the restart files. Default value is 0 (disabled). - -NUM_READERS, NUM_WRITERS - Number of simultaneous readers. Should divide evenly unto NY. Default value is 1. - -BKG_FREQUENCY - Active observer when desired. Default value is 0. - -RECORD_FREQUENCY - Frequency of periodic restart file write in format HHMMSS. - -RECORD_REF_DATE - Reference date(s) used to determine when to write periodic restart files. - -RECORD_REF_TIME - Reference time(s) used to determine when to write periodic restart files. - -GCHOchem_INTERNAL_RESTART_FILE - The filename of the internal restart file to be written. - -GCHPchem_INTERNAL_RESTART_TYPE - The format of the internal restart file. Valid types include pbinary and pnc4. Only use pnc4 with GCHP. - -GCHPchem_INTERNAL_CHECKPOINT_FILE - The filename of the internal checkpoint file to be written. - -GCHPchem_INTERNAL_CHECKPOINT_TYPE - The format of the internal checkstart file. Valid types include pbinary and pnc4. Only use pnc4 with GCHP. - -GCHPchem_INTERNAL_HEADER - Only needed when the file type is set to pbinary. Specifies if a binary file is self-describing. - -DYN_INTERNAL_RESTART_FILE - The filename of the DYNAMICS internal restart file to be written. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. - -DYN_INTERNAL_RESTART_TYPE - The format of the DYNAMICS internal restart file. Valid types include pbinary and pnc4. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. - -DYN_INTERNAL_CHECKPOINT_FILE - The filename of the DYNAMICS internal checkpoint file to be written. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. - -DYN_INTERNAL_CHECKPOINT_TYPE - The format of the DYNAMICS internal checkpoint file. Valid types include pbinary and pnc4. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. - -DYN_INTERNAL_HEADER - Only needed when the file type is set to pbinary. Specifies if a binary file is self-describing. - -RUN_PHASES - GCHP uses only one run phase. The GCHP gridded component for chemistry, however, has the capability of two. The two-phase feature is used only in GEOS. - -HEMCO_CONFIG - Name of the HEMCO configuration file. Default is :file:`HEMCO_Config.rc` in GCHP. - -STDOUT_LOGFILE - Log filename template. Default is :file:`PET%%%%%.GEOSCHEMchem.log`. This file is not actually used for primary standard output. - -STDOUT_LOGLUN - Logical unit number for stdout. Default value is 700. - -MEMORY_DEBUG_LEVEL - Toggle for memory debugging. Default is 0 (off). - -WRITE_RESTART_BY_OSERVER - Determines whether MAPL restart write should use o-server. This must be set to YES for high core count (>1000) runs to avoid hanging during file write. It is NO by default. - ---------------------------------- - -:file:`input.geos` ------------------- - -Information about the :file:`input.geos` file is the same as for GEOS-Chem Classic with a few exceptions. -See the :file:`input.geos` file wiki page for an overview of the file. - -The :file:`input.geos` file used in GCHP is different in the following ways: - -* Start/End datetimes are ignored. Set this information in :file:`CAP.rc` instead. -* Root data directory is ignored. All data paths are specified in :file:`ExtData.rc` instead with the exception of the FAST-JX data directory which is still listed (and used) in :file:`input.geos`. -* Met field is ignored. Met field source is described in file paths in :file:`ExtData.rc`. -* GC classic timers setting is ineffectual. GEOS-Chem Classic timers code is not compiled when building GCHP. - -Other parts of the GEOS-Chem Classic :file:`input.geos` file that are not relevant to GCHP are simply not included in the file that is copied to the GCHP run directory. - ---------------------------------- - -:file:`HEMCO_Config.rc` ------------------------ - -Like :file:`input.geos`, information about the :file:`HEMCO_Config.rc` file is the same as for GEOS-Chem Classic with a few exceptions. -Refer to the HEMCO documentation for an overview of the file. - -Some content of the :file:`HEMCO_Config.rc` file is ignored by GCHP. -This is because MAPL ExtData handles file input rather than HEMCO in GCHP. - -Items at the top of the file that are ignored include: - -* ROOT data directory path -* METDIR path -* DiagnPrefix -* DiagnFreq -* Wildcard - -In the BASE EMISSIONS section and beyond, columns that are ignored include: - -* sourceFile -* sourceVar -* sourceTime -* C/R/E -* SrcDim -* SrcUnit - -All of the above information is specified in file :file:`ExtData.rc` instead with the exception of diagnostic prefix and frequency. Diagnostic filename and frequency information is specified in :file:`HISTORY.rc`. - ---------------------------------- - -:file:`HEMCO_Diagn.rc` ------------------------ - -Like in GEOS-Chem Classic, the :file:`HEMCO_Diagn.rc` file is used to map between HEMCO containers and output file diagnostic names. -However, while all uncommented diagnostics listed in :file:`HEMCO_Diagn.rc` are output as HEMCO diagnostics in GEOS-Chem Classic, only the subset also listed in :file:`HISTORY.rc` are output in GCHP. -See the HEMCO documentation for an overview of the file. - ---------------------------------- - -:file:`input.nml` ------------------ - -input.nml controls specific aspects of the FV3 dynamical core used for advection. Entries in input.nml are described below. - -&fms_nml - Header for the FMS namelist which includes all variables directly below the header. - -print_memory_usage - Toggles memory usage prints to log. However, in practice turning it on or off does not have any effect. - -domain_stack_size - Domain stack size in bytes. This is set to 20000000 in GCHP to be large enough to use very few cores in a high resolution run. If the domain size is too small then you will get an "mpp domain stack size overflow error" in advection. If this happens, try increasing the domain stack size in this file. - -&fv_core_nml - Header for the finite-volume dynamical core namelist. This is commented out by default unless running on a stretched grid. Due to the way the file is read, commenting out the header declaration requires an additional comment character within the string, e.g. :literal:`#&fv#_core_nml`. - -do_schmidt - Logical for whether to use Schmidt advection. Set to .true. if using stretched grid; otherwise this entry is commented out. - -stretch_fac - Stretched grid factor, equal to the ratio of grid resolution in targeted high resolution region to the configured run resolution. This is commented out if not using stretched grid. - -target_lat - Target latitude of high resolution region if using stretched grid. This is commented out if not using stretched grid. - -target_lon - Target longitude of high resolution region if using stretched grid. This is commented out if not using stretched grid. - ---------------------------------- - -:file:`HISTORY.rc` ------------------- - -The :file:`HISTORY.rc` configuration file controls the diagnostic files output by GCHP. Information is organized into several sections: - -1. Single parameters set at the top of the file -2. Grid label declaration list -3. Definition for each grid in grid label list -4. Variable collection declaration list -5. Definition for each collection in collection list. - -Single parameters set at the top of :file:`HISTORY.rc` are as follows and apply to all collections: - -EXPID - Filename prefix concatenated with each collection template string to define file path. It is set to OutputDir/GCHP so that all output diagnostic files are output to run subdirectory OutputDir and have filename begin with GCHP. - -EXPDSC - Export description included as attribute "Title" in output files - -CoresPerNode - Number of CPUs per node for your simulation. - -VERSION - Optional parameter included as attribute in output file. - -The grid labels section of :file:`HISTORY.rc` declares a list of descriptive grid strings followed by a definition for each declared grid label. -Grids not in the grid label list may have definitions in the file; however, this will prevent them from being used in output collections. -See the :file:`HISTORY.rc` grid label section for syntax on declaring and defining grid labels. - -Keywords that may be used for grid label definitions are in the table below. -Note that this list is not exhaustive; MAPL may have additional keywords that may be used that have not yet been explored for use with GCHP. - -GRID_TYPE - Type of grid. May be Cubed-Sphere or LatLon. - -IM_WORLD - Side length of one cubed-sphere face, e.g. 24 if grid resolution is C24, or number of longitudinal grid boxes if lat-lon. - -JM_WORLD - Same as IM_WORLD but multiplied by 6 (number of faces), or number of latitudinal grid boxes if lat-lon. - -POLE - For lat-lon grids only. PC if latitudes are pole-centered and PE if latitudes are polar edge. - -DATELINE - For lat-lon grids only. DC if longitudes are dateline-centered and DE if longitudes are dateline-edge. - -LAT_RANGE - For lat-lon grids only. Regional grid latitudinal bounds. - -LON_RANGE - For lat-lon grids only. Regional grid longitudinal bounds. - -LM - Number of vertical levels. - -The collections section of :file:`HISTORY.rc` declares a list of descriptive strings that define unique collections of output variables and settings. -As with grid labels, it is followed by a definition for each declared collection. -Collections not in the collection list, or present but commented out, may have definitions in the file; however, this will prevent them from being output. -See the :file:`HISTORY.rc` collection section for syntax on declaring and defining output collections. - -Keywords that may be used for collection definitions are in the table below. -Note that this list is not exhaustive; MAPL may have additional keywords that may be used that have not yet been explored for use with GCHP. - -{COLLECTION}.template - The output filename suffix that is appended to global parameter EXPID to define full output file path. Including a date string, such as '%y4%m2%d2, will insert the simulation start day following GrADS conventions. The default template for GCHP is set to %y4%m2%d2_%h2%n2z.nc4. - -{COLLECTION}.format - Character string defining the file format. Options include CFIO (default) for netCDF-4 or flat for binary files. Always output as CFIO when using GCHP. - -{COLLECTION}.grid_label - Declared grid label for output grid. If excluded the collection will be output on the cubed-sphere grid at native resolution, e.g. C24 if you run GCHP with grid resolution C24. - -{COLLECTION}.conservative - For lat-lon grids only. Set to 1 to conservatively regrid from cubed-sphere to lat-lon upon output. Exclude or set to 0 to use bilinear interpolation instead (not recommended). - -{COLLECTION}.frequency - The frequency at which output values are computed and archived, in format HHMMSS. For example, 010000 will calculate diagnostics every hour. The method of calculation is determined by the mode keyword. Unlike GEOS-Chem Classic, you cannot specify number of days, months, or years. - -{COLLECTION}.duration - The frequency at which files are written, in format HHMMSS. For example, 240000 will output daily files. The number of times in the file are determined by the frequency keyword. Unlike GEOS-Chem Classic, you cannot specify number of days, months, or years. - -{COLLECTION}.mode - Method of diagnostic calculation. Options are either instantaneous or time-averaged. - -{COLLECTION}.fields - List of character string pairs including diagnostic name and gridded component. All GCHP diagnostics belong to the GCHPchem gridded component. - -Diagnostic names have prefixes that determine where MAPL History will look for them. Prefixes Emis, Inv, and Hco are HEMCO diagnostics and must have definitions in config file :file:`HEMCO_Diagn.rc`. Prefixes Chem and Met are GEOS-Chem state variables stored in objects State_Chm and State_Met respectively. Prefix SPC corresponds to internal state species, meaning the same arrays that are output to the restart file. Prefix GEOS is reserved for use in the GEOS model. All other diagnostic name prefixes are interpreted as variables stored in the GEOS-Chem State_Diag object. \ No newline at end of file diff --git a/docs/source/supplement/config-files/ExtData.rst b/docs/source/supplement/config-files/ExtData.rst new file mode 100644 index 000000000..27baa0fa8 --- /dev/null +++ b/docs/source/supplement/config-files/ExtData.rst @@ -0,0 +1,46 @@ +ExtData.rc +================== + +:file:`ExtData.rc` contains input variable and file read information for GCHP. +Explanatory information about the file is located at the top of the configuration file in all run directories. +The file format is the same as that used in the GEOS model, and GMAO/NASA documentation for it can be found at the ExtData component page on the GEOS-5 wiki. + +The following two parameters are set at the top of the file: + +Ext_AllowExtrat + Logical toggle to use data from nearest year available. This is set to true for GCHP. Note that GEOS-Chem Classic accomplishes the same effect but with more flexibility in :file:`HEMCO_Config.rc`. That functionality of :file:`HEMCO_Config.rc` is ignored in GCHP. + +DEBUG_LEVEL + Turns MAPL ExtData debug prints on/off. This is set to 0 in GCHP (off), but may be set to 1 to enable. Beware that turning on ExtData debug prints greatly slows down the model, and prints are only done from the root thread. Use this when debugging problems with input files. + +The rest of the file contains space-delimited lines, one for each variable imported to the model from an external file. +Columns are as follows in order as they appear left to right in the file: + +Export Name + Name of imported met field (e.g. ALBD) or HEMCO emissions container name (e.g. GEIA_NH3_ANTH). + +Units + Unit string nested within single quotes. '1' indicates there is no unit conversion from the native units in the netCDF file. +Clim + Enter Y if the file is a 12 month climatology, otherwise enter N. If you specify it is a climatology ExtData the data can be on either one file or 12 files if they are templated appropriately with one per month. +Conservative + Enter Y the data should be regridded in a mass conserving fashion through a tile file. :literal:`F;{VALUE}` can also be used for fractional regridding. Otherwise enter N to use the non-conervative bilinear regridding. + +Refresh + Time Template Possible values include: + + * -: The field will only be updated once the first time ExtData runs + * 0: Update the variable at every step. ExtData will do a linear interpolation to the current time using the available data. + * %y4-%m2-%h2T%h2:%n2:00: Set the recurring time to update the file. The file will be updated when the evaluated template changes. For example, a template in the form %y4-%m2-%d2T12:00:00 will cause the variable to be updated at the start of a new day (i.e. when the clock hits 2007-08-02T00:00:00 it will update the variable but the time it will use for reading and interpolation is 2007-08-02T12:00:00). + +Offset Factor + Factor the variable will be shifted by. Use none for no shifting. + +Scale Factor + Factor the variable will be scaled by. Use none for no scaling. + +External File Variable + The name of the variable in the netCDF data file, e.g. ALBEDO in met fields. + +External File Template + Path to the netCDF data file. If not using the data, specify :file:`/dev/null` to reduce processing time. If there are no tokens in the template name ExtData will assume that all the data is on one file. Note that if the data on file is at a different resolution that the application grid, the underlying I/O library ExtData uses will regrid the data to the application grid. diff --git a/docs/source/supplement/config-files/HEMCO.rst b/docs/source/supplement/config-files/HEMCO.rst new file mode 100644 index 000000000..2ea98f5e8 --- /dev/null +++ b/docs/source/supplement/config-files/HEMCO.rst @@ -0,0 +1,40 @@ + +HEMCO_Config.rc, HEMCO_Diagn.rc +================================== + +HEMCO_Config.rc +----------------------- + +Like :file:`input.geos`, information about the :file:`HEMCO_Config.rc` file is the same as for GEOS-Chem Classic with a few exceptions. +Refer to the HEMCO documentation for an overview of the file. + +Some content of the :file:`HEMCO_Config.rc` file is ignored by GCHP. +This is because MAPL ExtData handles file input rather than HEMCO in GCHP. + +Items at the top of the file that are ignored include: + +* ROOT data directory path +* METDIR path +* DiagnPrefix +* DiagnFreq +* Wildcard + +In the BASE EMISSIONS section and beyond, columns that are ignored include: + +* sourceFile +* sourceVar +* sourceTime +* C/R/E +* SrcDim +* SrcUnit + +All of the above information is specified in file :file:`ExtData.rc` instead with the exception of diagnostic prefix and frequency. Diagnostic filename and frequency information is specified in :file:`HISTORY.rc`. + +--------------------------------- + +HEMCO_Diagn.rc +----------------------- + +Like in GEOS-Chem Classic, the :file:`HEMCO_Diagn.rc` file is used to map between HEMCO containers and output file diagnostic names. +However, while all uncommented diagnostics listed in :file:`HEMCO_Diagn.rc` are output as HEMCO diagnostics in GEOS-Chem Classic, only the subset also listed in :file:`HISTORY.rc` are output in GCHP. +See the HEMCO documentation for an overview of the file. diff --git a/docs/source/supplement/config-files/HISTORY.rst b/docs/source/supplement/config-files/HISTORY.rst new file mode 100644 index 000000000..9de27c8e1 --- /dev/null +++ b/docs/source/supplement/config-files/HISTORY.rst @@ -0,0 +1,312 @@ +HISTORY.rc +========== + +:file:`HISTORY.rc` is the file that configures GCHP's output. It has the following format + +.. code-block:: none + + EXPID: OutputDir/GCHP + EXPDSC: GEOS-Chem_devel + CoresPerNode: 30 + VERSION: 1 + + + + + + + + +:EXPID: + This is the file prefix for all collections. :code:`OutputDir/GCHP` means that collections + will be to a direcotry named :file:`OutputDir/`, and the file names will start with `GCHP`. + +:CoresPerNode: + The number of cores per node for your GCHP simulation. + +:EXPDSC: + Leave this as it is. + +:VERSION: + Leave this as it is. + +The format and description of :ref:`\ `, +:ref:`\ `, and +and :ref:`\ ` sections are given below. + + +.. _defining-grid-labels: + +Defining Grid Labels +-------------------- + +You can specify custom grids for you output. For example, a regional 0.05°x0.05° grid covering +North America. This way your collections are regridded online. There are two advantages to doing +this + +#. It eliminates the need to regrid your simulation data in a post-processing step. +#. It saves disk space if you are interested in regional output. + +You can define as many grids as you want. A collection can define :code:`grid_label` to select +a custom grid. If a collection does not define :code:`grid_label` the simulation's grid is assumed. + +Below is the format for the :code:`` section in :file:`HISTORY.rc`. + +.. code-block:: none + + GRID_LABELS: MY_FIRST_GRID # My custom grid for C96 output + MY_SECOND_GRID # My custom grid for global 0.5x0.625 output + MY_THIRD_GRID # My custom grid for regional 0.05x0.05 output + :: + MY_FIRST_GRID.GRID_TYPE: Cubed-Sphere + MY_FIRST_GRID.IM_WORLD: 96 + MY_FIRST_GRID.JM_WORLD: 576 # 576=6x96 + + MY_SECOND_GRID.GRID_TYPE: LatLon + MY_SECOND_GRID.IM_WORLD: 360 + MY_SECOND_GRID.JM_WORLD: 181 + MY_SECOND_GRID.POLE: PC # pole-centered + MY_SECOND_GRID.DATELINE: DC # dateline-centered + + MY_THIRD_GRID.GRID_TYPE: LatLon + MY_THIRD_GRID.IM_WORLD: 80 + MY_THIRD_GRID.JM_WORLD: 40 + MY_THIRD_GRID.POLE: XY + MY_THIRD_GRID.DATELINE: XY + MY_THIRD_GRID.LON_RANGE: 0 80 # regional boundaries + MY_THIRD_GRID.LAT_RANGE: -30 10 + +SPEC NAMES + +:GRID_TYPE: + The type of grid. Valid options are :code:`Cubed-Sphere` or :code:`LatLon`. + +:IM_WORLD: + The number of grid boxes in the i-dimension. For a :code:`LatLon` grid this is the number of longitude + grid-boxes. For a :code:`Cubed-Sphere` grid this is the cubed-sphere size (e.g., 48 for C48). + +:JM_WORLD: + The number of grid boxes in the j-dimension. For a :code:`LatLon` grid this is the number of latitude + grid-boxes. For a :code:`Cubed-Sphere` grid this is six times the cubed-sphere size (e.g., 288 for C48). + +:POLE: + Required if the grid type is :code:`LatLon`. :code:`POLE` defines the latitude coordinates of the grid. For global + lat-lon grids the valid options are :code:`PC` (pole-centered) or :code:`PE` (polar-edge). Here, "center" or "edge" + refers to whether the grid has boxes that are centered on the poles, or whether the grid has boxes with + edges at the poles. For regional grids :code:`POLE` should be set to :code:`XY` and the grid will have boxes with + edges at the regional boundaries. + +:DATELINE: + Required if the grid type is :code:`LatLon`. :code:`DATELINE` defines the longitude coordinates of the grid. For global + lat-lon grids the valid options are :code:`DC` (dateline-centered), :code:`DE` (dateline-edge), :code:`GC` (grenwich-centered), + or :code:`GE` (grenwich-edge). If :code:`DC` or :code:`DE`, then the longitude coordinates will span (-180°, 180°). If + :code:`GC` or :code:`GE`, then the longitude coordinates will span (0°, 360°). Similar to :code:`POLE`, "center" or "edge" + refer to whether the grid has boxes that are centered at -180° or 0°, or whether the grid has boxes with + edges at -180° or 0°. For regional grids :code:`DATELINE` should be set to `XY` and the grid will have boxes with + edges at the regional boundaries. + +:LON_RANGE: + Required for regional :code:`LatLon` grids. :code:`LON_RANGE` defines the longitude bounds of the regional grid. + +:LAT_RANGE: + Required for regional :code:`LatLon` grids. :code:`LAT_RANGE` defines the latitude bounds of the regional grid. + + +.. _defining-active-collections: + +Defining Active Collections +--------------------------- + +Collections are activated by defining them in the :code:`COLLECTIONS` list. For instructions on defining collections, see +:ref:`defining-collections`. + + +Below is the format for the :code:`` section of :file:`HISTORY.rc`. + +.. code-block:: none + + COLLECTIONS: 'MyCollection1', + 'MyCollection2', + :: + +This example activates collections named "MyCollection1" and "MyCollection2". + +.. _defining-collections: + +Defining Collections +-------------------- + +A collection is + +.. code-block:: none + + MyCollection1.template: '%y4%m2%d2_%h2%n2z.nc4', + MyCollection1.format: 'CFIO', + MyCollection1.frequency: 010000 + MyCollection1.duration: 240000 + MyCollection1.mode: 'time-averaged' + MyCollection1.fields: 'SpeciesConc_O3 ', 'GCHPchem', + 'SpeciesConc_NO ', 'GCHPchem', + 'SpeciesConc_NO2 ', 'GCHPchem', + 'Met_BXHEIGHT ', 'GCHPchem', + 'Met_AIRDEN ', 'GCHPchem', + 'Met_AD ', 'GCHPchem', + :: + + + +**Output file configuration** + +:template: + This is the file name suffix for the collection. The path to the collection's files + is obtained by concatenating :code:`EXPID` with the collection name and the value of + :code:`template`. + +:format: + Defines the file format of the collection. Valid values are :code:`'CFIO'` for CF + compliant NetCDF (recommended), or :code:`'flat'` for GrADS style flat files. + +:duration: + Defines the frequency at which files are generated. The format is :code:`HHMMSS`. For example, + :code:`1680000` means that a file is generated every 168 hours (7 days). + +:timeStampStart: *[optional]* + Only used if :code:`mode` is :code:`'time-averaged'`. If :code:`.true.` + the file is timestamped according to the start of the accumulation interval (which depends on + :code:`frequency`, :code:`ref_date`, and :code:`ref_time`). If :code:`.false.` the file is + timestamped according to the middle of the accumulation interval. If :code:`timeStampStart` is + not set then the default value is false. + +**Sampling configuration** + +:mode: + Defines the sampling method. Valid values are :code:`'time-averaged'` or :code:`'instantaneous'`. + +:frequency: + Defines the time frequency of collection's data. Said another way, this defines the time separation + (time step) of the time coordinate for the collection. The format is :code:`HHMMSS`. For example, + :code:`010000` means that the collection's time coordinate will have a 1-hour time step. If + :code:`frequency` is less than :code:`duration` multiple time steps are written to each file. + +:acc_interval: *[optional]* + Only valid if :code:`mode` is :code:`'time-averaged'`. This specifies the length of the time + average. By default it is equal to :code:`frequency`. + +:ref_date: *[optional]* + The reference date from which the frequency is based. The format is :code:`YYYYMMDD`. For example, + a frequency of :code:`1680000` (7 days) with a reference date of `20210101` means that the time coordinate + will be weeks since 2021-01-01. The default value is the simulation's start date. + +:ref_time: *[optional]* + The reference time from which the frequency is based. The format is :code:`HHMMSS`. + The default value is :code:`000000`. See :code:`ref_date`. + +:fields: + Defines the list of fields that this collection should use. The format (per-field) is + :code:`'FieldName', 'GridCompName',`. For example, :code:`'SpeciesConc_O3', 'GCHPchem',` specifies + that this collection should include the `SpeciesConc_O3` field from the `GCHPchem` gridded component. + + Fields from multiple gridded components can be included in the same collection. However, a collection + must not mix fields that are defined at the center of vertical levels and the edges of vertical levels + (e.g., `Met_PMID` and `Met_PEDGE` cannot be included in the same collection.) + +**Output grid configuration** + +:grid_label: *[optional]* + Defines the grid that this collection should be output on. The lable must match on of the grid labels defined + in :ref:`\ `. If :code:`grid_label` isn't set then the collection + uses the simulation's horizontal grid. + +:levels: *[optional]* + Defines the model levels that this collection should use (i.e., a subset of the simulation levels). + The format is a space-separated list of values. The lowest layer is 1 and the highest layer is 72. + For example, :code:`1 2 5` would select the first, second, and fifth level of the simulation. + +:track_file: *[optional]* + Defines the path to a 1D track file along which the collection is sampled. See :ref:`output-along-a-track` for + more info. + +:recycle_track: *[optional]* + Only valid if a :code:`track_file` is defined. Specifies that the track file should be reused every day. If + :code:`.true.` the dates in the track file are automatically forced to the simulation's current date. The + default value is false. + +**Other configuration** + +:end_date: *[optional]* + A date at which the collection is deactivated (turned off). By default there is no end date. + +:end_time: *[optional]* + Time at which the collection is deactivated (turned off) on the :code:`end_date`. + + +Example :file:`HISTORY.rc` configuration +---------------------------------------- + +Below is an example :file:`HISTORY.rc` that configures two output collection + +1. 30-min instantaneous concentrations of O3, NO, NO2, and some meteorological parameters + for the lowest 10 model levels on a 0.1°x0.1° covering the US. Each file contains one + day of data. +2. 24-hour time averages of O3, NO, and NO2 concentrations, NO emissions, and some meteorological + parameters. The horizontal grid is the simulation's grid. All vertical levels are use. Each + file contains one week worth of data, and files are generated relative to 2017-01-01. + +.. code-block:: none + + EXPID: OutputDir/GCHP + EXPDSC: GEOS-Chem_devel + CoresPerNode: 6 + VERSION: 1 + + GRID_LABELS: RegionalGrid_US + :: + RegionalGrid_US.GRID_TYPE: LatLon + RegionalGrid_US.IM_WORLD: 640 + RegionalGrid_US.JM_WORLD: 290 + RegionalGrid_US.POLE: XY + RegionalGrid_US.DATELINE: XY + RegionalGrid_US.LON_RANGE: -127 -63 + RegionalGrid_US.LAT_RANGE: 23 52 + + COLLECTIONS: 'Inst30minGases', + 'DailyAvgGasesAndNOEmissions', + :: + Inst30minGases.template: '%y4%m2%d2_%h2%n2z.nc4', + Inst30minGases.format: 'CFIO', + Inst30minGases.frequency: 003000 + Inst30minGases.duration: 240000 + Inst30minGases.mode: 'instantaneous' + Inst30minGases.grid_label: RegionalGrid_US + Inst30minGases.levels: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 + Inst30minGases.fields: 'SpeciesConc_O3 ', 'GCHPchem', + 'SpeciesConc_NO ', 'GCHPchem', + 'SpeciesConc_NO2 ', 'GCHPchem', + 'Met_BXHEIGHT ', 'GCHPchem', + 'Met_AIRDEN ', 'GCHPchem', + 'Met_AD ', 'GCHPchem', + 'Met_PS1WET ', 'GCHPchem', + :: + DailyAvgGasesAndNOEmissions.template: '%y4%m2%d2_%h2%n2z.nc4', + DailyAvgGasesAndNOEmissions.format: 'CFIO', + DailyAvgGasesAndNOEmissions.ref_date: 20170101 + DailyAvgGasesAndNOEmissions.frequency: 240000 + DailyAvgGasesAndNOEmissions.duration: 1680000 + DailyAvgGasesAndNOEmissions.mode: 'time-averaged' + DailyAvgGasesAndNOEmissions.fields: 'SpeciesConc_O3 ', 'GCHPchem', + 'SpeciesConc_NO ', 'GCHPchem', + 'SpeciesConc_NO2 ', 'GCHPchem', + 'EmisNO_Total ', 'GCHPchem', + 'EmisNO_Aircraft ', 'GCHPchem', + 'EmisNO_Anthro ', 'GCHPchem', + 'EmisNO_BioBurn ', 'GCHPchem', + 'EmisNO_Lightning', 'GCHPchem', + 'EmisNO_Ship ', 'GCHPchem', + 'EmisNO_Soil ', 'GCHPchem', + 'EmisNO2_Anthro ', 'GCHPchem', + 'EmisNO2_Ship ', 'GCHPchem', + 'EmisO3_Ship ', 'GCHPchem', + 'Met_BXHEIGHT ', 'GCHPchem', + 'Met_AIRDEN ', 'GCHPchem', + 'Met_AD ', 'GCHPchem', + :: diff --git a/docs/source/supplement/config-files/input_geos.rst b/docs/source/supplement/config-files/input_geos.rst new file mode 100644 index 000000000..e89f609a2 --- /dev/null +++ b/docs/source/supplement/config-files/input_geos.rst @@ -0,0 +1,14 @@ +input.geos +================= + +Information about the :file:`input.geos` file is the same as for GEOS-Chem Classic with a few exceptions. +See the :file:`input.geos` file wiki page for an overview of the file. + +The :file:`input.geos` file used in GCHP is different in the following ways: + +* Start/End datetimes are ignored. Set this information in :file:`CAP.rc` instead. +* Root data directory is ignored. All data paths are specified in :file:`ExtData.rc` instead with the exception of the FAST-JX data directory which is still listed (and used) in :file:`input.geos`. +* Met field is ignored. Met field source is described in file paths in :file:`ExtData.rc`. +* GC classic timers setting is ineffectual. GEOS-Chem Classic timers code is not compiled when building GCHP. + +Other parts of the GEOS-Chem Classic :file:`input.geos` file that are not relevant to GCHP are simply not included in the file that is copied to the GCHP run directory. diff --git a/docs/source/supplement/config-files/others.rst b/docs/source/supplement/config-files/others.rst new file mode 100644 index 000000000..ce54ba37d --- /dev/null +++ b/docs/source/supplement/config-files/others.rst @@ -0,0 +1,239 @@ +CAP.rc, GCHP.rc, input.nml +============================== + +CAP.rc +------ + +:file:`CAP.rc` is the configuration file for the top-level gridded component called CAP. +This gridded component can be thought of as the primary driver of GCHP. +Its config file handles general runtime settings for GCHP including time parameters, performance profiling routines, and system-wide timestep (hearbeat). +Combined with output file :file:`cap_restart`, :file:`CAP.rc` configures the exact dates for the next GCHP run. + +ROOT_NAME + Sets the name MAPL uses to initialize the ROOT child gridded component component within CAP. CAP uses this name in all operations when querying and interacting with ROOT. It is set to GCHP. + +ROOT_CF + Resource configuration file for the ROOT component. It is set to :file:`GCHP.rc`. + +HIST_CF + Resource configuration file for the MAPL HISTORY gridded component (another child gridded component of CAP). It is set to :file:`HISTORY.rc`. + +BEG_DATE + Simulation begin date in format YYYYMMDD hhmmss. This parameter is overrided in the presence of output file :file:`cap_restart` containing a different start date. + +END_DATE + Simulation end date in format YYYYMMDD hhmmss. If BEG_DATE plus duration (JOB_SGMT) is before END_DATE then simulation will end at BEG_DATE + JOB_SGMT. If it is after then simulation will end at END_DATE. + +JOB_SGMT + Simulation duration in format YYYYMMDD hhmmss. The duration must be less than or equal to the difference between start and end date or the model will crash. + +HEARTBEAT_DT + The timestep of the ESMF/MAPL internal clock, in seconds. All other timesteps in GCHP must be a multiple of HEARTBEAT_DT. ESMF queries all components at each heartbeat to determine if computation is needed. The result is based upon individual component timesteps defined in :file:`GCHP.rc`. + +MAPL_ENABLE_TIMERS + Toggles printed output of runtime MAPL timing profilers. This is set to YES. Timing profiles are output at the end of every GCHP run. + +MAPL_ENABLE_MEMUTILS + Enables runtime output of the programs' memory usage. This is set to YES. + +PRINTSPEC + Allows an abbreviated model run limited to initializat and print of Import and Export state variable names. Options include: + + * 0 (default): Off + * 1: Imports and Exports only + * 2: Imports only + * 3: Exports only + +USE_SHMEM + This setting is deprecated but still has an entry in the file. + +REVERSE_TIME + Enables running time backwards in CAP. Default is 0 (off). + +---------------------------------- + +GCHP.rc +------------------ + +:file:`GCHP.rc` is the resource configuration file for the ROOT component within GCHP. +The ROOT gridded component includes three children gridded components, including one each for GEOS-Chem, FV3 advection, and the data utility environment needed to support them. + +NX, NY + Number of grid cells in the two MPI sub-domain dimensions. NX * NY must equal the number of CPUs. NY must be a multiple of 6. + +GCHP.GRID_TYPE + Type of grid GCHP will be run at. Should always be Cubed-Sphere. + +GCHP.GRIDNAME + Descriptive grid label for the simulation. The default grid name is PE24x144-CF. The grid name includes how the pole is treated, the face side length, the face side length times six, and whether it is a Cubed Sphere Grid or Lat/Lon. The name PE24x144-CF indicates polar edge (PE), 24 cells along one face side, 144 for 24*6, and a cubed-sphere grid (CF). Many options here are defined in MAPL_Generic. + + .. note:: Must be consistent with IM and JM. + +GCHP.NF + Number of cubed-sphere faces. This is set to 6. + +GCHP.IM_WORLD + Number of grid cells on the side of a single cubed sphere face. + +GCHP.IM + Number of grid cells on the side of a single cubed sphere face. + +GCHP.JM + Number of grid cells on one side of a cubed sphere face, times 6. This represents a second dimension if all six faces are stacked in a 2-dimensional array. Must be equal to IM*6. + +GCHP.LM + Number of vertical grid cells. This must be equal to the vertical resolution of the offline meteorological fields (72) since MAPL cannot regrid vertically. + +GCHP.STRETCH_FACTOR + Ratio of configured global resolution to resolution of targeted high resolution region if using stretched grid. + +GCHP.TARGET_LON + Target longitude for high resolution region if using stretched grid. + +GCHP.TARGET_LAT + Target latitude for high resolution region if using stretched grid. + +IM + Same as GCHP.IM and GCHP.IM_WORLD. + +JM + Same as GCHP.JM. + +LM + Same as GCHP.LM. + +GEOChem_CTM + If set to 1, tells FVdycore that it is operating as a transport model rather than a prognostic model. + +AdvCore_Advection + Toggles offline advection. 0 is off, and 1 is on. + +DYCORE + Should either be set to OFF (default) or ON. This value does nothing, but MAPL will crash if it is not declared. + +HEARTBEAT_DT + The timestep in seconds that the DYCORE Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +SOLAR_DT + The timestep in seconds that the SOLAR Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +IRRAD_DT + The timestep in seconds that the IRRAD Component should be called. ESMF checks this value during its timestep check. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +RUN_DT + The timestep in seconds that the RUN Component should be called. + +GCHPchem_DT + The timestep in seconds that the GCHPchem Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +RRTMG_DT + The timestep in seconds that RRTMG should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +DYNAMICS_DT + The timestep in seconds that the FV3 advection Component should be called. This must be a multiple of HEARTBEAT_DT in :file:`CAP.rc`. + +SOLARAvrg, IRRADAvrg + Default is 0. + +GCHPchem_REFERENCE_TIME + HHMMSS reference time used for GCHPchem MAPL alarms. + +PRINTRC + Specifies which resource values to print. Options include 0: non-default values, and 1: all values. Default setting is 0. + +PARALLEL_READFORCING + Enables or disables parallel I/O processes when writing the restart files. Default value is 0 (disabled). + +NUM_READERS, NUM_WRITERS + Number of simultaneous readers. Should divide evenly unto NY. Default value is 1. + +BKG_FREQUENCY + Active observer when desired. Default value is 0. + +RECORD_FREQUENCY + Frequency of periodic restart file write in format HHMMSS. + +RECORD_REF_DATE + Reference date(s) used to determine when to write periodic restart files. + +RECORD_REF_TIME + Reference time(s) used to determine when to write periodic restart files. + +GCHOchem_INTERNAL_RESTART_FILE + The filename of the internal restart file to be written. + +GCHPchem_INTERNAL_RESTART_TYPE + The format of the internal restart file. Valid types include pbinary and pnc4. Only use pnc4 with GCHP. + +GCHPchem_INTERNAL_CHECKPOINT_FILE + The filename of the internal checkpoint file to be written. + +GCHPchem_INTERNAL_CHECKPOINT_TYPE + The format of the internal checkstart file. Valid types include pbinary and pnc4. Only use pnc4 with GCHP. + +GCHPchem_INTERNAL_HEADER + Only needed when the file type is set to pbinary. Specifies if a binary file is self-describing. + +DYN_INTERNAL_RESTART_FILE + The filename of the DYNAMICS internal restart file to be written. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. + +DYN_INTERNAL_RESTART_TYPE + The format of the DYNAMICS internal restart file. Valid types include pbinary and pnc4. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. + +DYN_INTERNAL_CHECKPOINT_FILE + The filename of the DYNAMICS internal checkpoint file to be written. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. + +DYN_INTERNAL_CHECKPOINT_TYPE + The format of the DYNAMICS internal checkpoint file. Valid types include pbinary and pnc4. Please note that FV3 is not configured in GCHP to use an internal state and therefore will not have a restart file. + +DYN_INTERNAL_HEADER + Only needed when the file type is set to pbinary. Specifies if a binary file is self-describing. + +RUN_PHASES + GCHP uses only one run phase. The GCHP gridded component for chemistry, however, has the capability of two. The two-phase feature is used only in GEOS. + +HEMCO_CONFIG + Name of the HEMCO configuration file. Default is :file:`HEMCO_Config.rc` in GCHP. + +STDOUT_LOGFILE + Log filename template. Default is :file:`PET%%%%%.GEOSCHEMchem.log`. This file is not actually used for primary standard output. + +STDOUT_LOGLUN + Logical unit number for stdout. Default value is 700. + +MEMORY_DEBUG_LEVEL + Toggle for memory debugging. Default is 0 (off). + +WRITE_RESTART_BY_OSERVER + Determines whether MAPL restart write should use o-server. This must be set to YES for high core count (>1000) runs to avoid hanging during file write. It is NO by default. + +---------------------------------- + +input.nml +----------------- + +input.nml controls specific aspects of the FV3 dynamical core used for advection. Entries in input.nml are described below. + +&fms_nml + Header for the FMS namelist which includes all variables directly below the header. + +print_memory_usage + Toggles memory usage prints to log. However, in practice turning it on or off does not have any effect. + +domain_stack_size + Domain stack size in bytes. This is set to 20000000 in GCHP to be large enough to use very few cores in a high resolution run. If the domain size is too small then you will get an "mpp domain stack size overflow error" in advection. If this happens, try increasing the domain stack size in this file. + +&fv_core_nml + Header for the finite-volume dynamical core namelist. This is commented out by default unless running on a stretched grid. Due to the way the file is read, commenting out the header declaration requires an additional comment character within the string, e.g. :literal:`#&fv#_core_nml`. + +do_schmidt + Logical for whether to use Schmidt advection. Set to .true. if using stretched grid; otherwise this entry is commented out. + +stretch_fac + Stretched grid factor, equal to the ratio of grid resolution in targeted high resolution region to the configured run resolution. This is commented out if not using stretched grid. + +target_lat + Target latitude of high resolution region if using stretched grid. This is commented out if not using stretched grid. + +target_lon + Target longitude of high resolution region if using stretched grid. This is commented out if not using stretched grid. diff --git a/docs/source/supplement/satellite-overpass.rst b/docs/source/supplement/satellite-overpass.rst index e2938aafa..310eeb595 100644 --- a/docs/source/supplement/satellite-overpass.rst +++ b/docs/source/supplement/satellite-overpass.rst @@ -1,4 +1,4 @@ - +.. _output-along-a-track: Output Along a Track ==================== From 3b2069b5abbd2ad268ac336ac6e5b5761a103c5b Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Thu, 19 Aug 2021 12:33:08 -0400 Subject: [PATCH 26/30] Fix bug in implementation of LUO_WETDEP option in GEOS-Chem Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/GEOSChem_GridComp/geos-chem | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem index 9b92b7961..3d82b3a6a 160000 --- a/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem +++ b/src/GCHP_GridComp/GEOSChem_GridComp/geos-chem @@ -1 +1 @@ -Subproject commit 9b92b79614e308f61aa3afa0ec27944ad12b997d +Subproject commit 3d82b3a6ad2dcb0843e752616f7f761820a1a1aa From c8870209d95669e0174a70b9fa7117260f683b3d Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Mon, 23 Aug 2021 09:29:33 -0500 Subject: [PATCH 27/30] Updated recommended ExData mirror --- docs/source/user-guide/getting-input-data.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/source/user-guide/getting-input-data.rst b/docs/source/user-guide/getting-input-data.rst index eb1e7b46b..3bb680bb4 100644 --- a/docs/source/user-guide/getting-input-data.rst +++ b/docs/source/user-guide/getting-input-data.rst @@ -4,7 +4,8 @@ Downloading Input Data Input data for GEOS-Chem is available from the following FTP servers: -* http://geoschemdata.computecanada.ca/ExtData/ (preferred) +* http://geoschemdata.wustl.edu/ExtData/ (preferred) +* http://geoschemdata.computecanada.ca/ExtData/ * http://ftp.as.harvard.edu/gcgrid/data/ExtData/ Notably, you will need four types of input data to run GCHP: From 9771240ddfa51fbb21486e4f81918f47f8591348 Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Tue, 24 Aug 2021 18:13:54 -0500 Subject: [PATCH 28/30] Updated README to include GEOS-Chem publications --- README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 973e10048..ada54ab65 100755 --- a/README.md +++ b/README.md @@ -8,10 +8,13 @@ -This is the GEOS-Chem High Performance (GCHP) source code. You can find the documentation here: -- **https://gchp.readthedocs.io/en/latest/** +The is the official repository for GEOS-Chem High Performance (GCHP). -If you aren't sure where to start, try starting with the [Quickstart Guide](https://gchp.readthedocs.io/en/latest/getting-started/quick-start.html). +:bulb: Documentation: https://gchp.readthedocs.io/en/latest/ + +:book: Publications: [GEOS-Chem on Google Scholar](https://scholar.google.com/citations?user=ho-sNj4AAAAJ) + +:fast_forward: Quickstart guide: [here](https://gchp.readthedocs.io/en/latest/getting-started/quick-start.html) ### About GEOS-Chem From 4fed26163114b905aca3a09aff2dc8ea703d8449 Mon Sep 17 00:00:00 2001 From: Liam Bindle Date: Wed, 25 Aug 2021 10:38:10 -0500 Subject: [PATCH 29/30] added 'conservative' and alias instructions to HISTORY.rc docs --- docs/source/supplement/config-files/HISTORY.rst | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/source/supplement/config-files/HISTORY.rst b/docs/source/supplement/config-files/HISTORY.rst index 9de27c8e1..b66733d86 100644 --- a/docs/source/supplement/config-files/HISTORY.rst +++ b/docs/source/supplement/config-files/HISTORY.rst @@ -208,7 +208,11 @@ A collection is Fields from multiple gridded components can be included in the same collection. However, a collection must not mix fields that are defined at the center of vertical levels and the edges of vertical levels - (e.g., `Met_PMID` and `Met_PEDGE` cannot be included in the same collection.) + (e.g., `Met_PMID` and `Met_PEDGE` cannot be included in the same collection). + + Variables can be renamed in the output by adding :code:`'your_custom_name',` at the end. For example, + :code:`'SpeciesConc_O3', 'GCHPchem', 'ozone_concentration',` would rename the SpeciesConc_O3 field to + "ozone_concentration" in the output file. **Output grid configuration** @@ -217,6 +221,11 @@ A collection is in :ref:`\ `. If :code:`grid_label` isn't set then the collection uses the simulation's horizontal grid. +:conservative: *[optional]* + Defines whether or not regridding to the output grid should use ESMF's first-order conservative method. Valid + values are :code:`0` or :code:`1`. It is recommended you set this to :code:`1` if you are using :code:`grid_label`. + The default value is :code:`0`. + :levels: *[optional]* Defines the model levels that this collection should use (i.e., a subset of the simulation levels). The format is a space-separated list of values. The lowest layer is 1 and the highest layer is 72. From aa10f3c7258f8dd7db259d7151f23a0197cee10b Mon Sep 17 00:00:00 2001 From: Melissa Sulprizio Date: Tue, 7 Sep 2021 14:56:08 -0400 Subject: [PATCH 30/30] Update documentation for HEMCO 3.1.0 Signed-off-by: Melissa Sulprizio --- src/GCHP_GridComp/HEMCO_GridComp/HEMCO | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO index 645124af5..466966b21 160000 --- a/src/GCHP_GridComp/HEMCO_GridComp/HEMCO +++ b/src/GCHP_GridComp/HEMCO_GridComp/HEMCO @@ -1 +1 @@ -Subproject commit 645124af50e0fab44d9c1e8a264f0f85efbd75e5 +Subproject commit 466966b21fdc9e7dffd085743f921709408197f9