-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update netCDF code (in src/Shared/NcdfUtil) to use the netCDF-F90 interface #226
Conversation
src/Core/hcoio_write_std_mod.F90 - Set Compress=.FALSE. for the P0 variable. This prevents a netCDF error when netCDF tries to compress a zero-dimension variable. src/shared/NcdfUtil/hco_m_netcdf_*.F90 - Replaced"INCLUDE netcdf.inc" with "use netCDF" - Now use the NF90_ function and variables CHANGELOG.md - Updated accordingly Signed-off-by: Bob Yantosca <[email protected]>
src/Shared/NcdfUtil/hco_m_netcdf_io_define.F90 - Eliminate ELSE blocks by using never-nesting techniques - First execute the IF block in the #ifdef. If COMPRESS is not passed, or is false, or if ndims == 0, then do not create the variable with netCDF compression. Signed-off-by: Bob Yantosca <[email protected]>
Integration tests are running. |
When merged atop PR #1874 and PR #1876, GEOS-Chem Classic integration tests passed (except for TOMAS, which is a known issue that will be fixed later ==============================================================================
GEOS-Chem Classic: Execution Test Results
GCClassic #2c2dab8 GEOS-Chem submod updates: Merge PR #1874 and PR #1876 (GCHP updates)
GEOS-Chem #f9d697f18 Merge PR #1876 (Use standard format for AEIC monthly clim in ExtData.rc)
HEMCO #725972f PR #226 post-merge fixes: Update CHANGELOG.md
Using 24 OpenMP threads
Number of execution tests: 26
Submitted as SLURM job: 63112103
==============================================================================
Execution tests:
------------------------------------------------------------------------------
gc_05x0625_NA_47L_merra2_CH4........................Execute Simulation....PASS
gc_05x0625_NA_47L_merra2_fullchem...................Execute Simulation....PASS
gc_4x5_47L_merra2_fullchem..........................Execute Simulation....PASS
gc_4x5_47L_merra2_fullchem_TOMAS15..................Execute Simulation....FAIL
gc_4x5_47L_merra2_fullchem_TOMAS40..................Execute Simulation....FAIL
gc_4x5_merra2_aerosol...............................Execute Simulation....PASS
gc_4x5_merra2_carbon................................Execute Simulation....PASS
gc_4x5_merra2_CH4...................................Execute Simulation....PASS
gc_4x5_merra2_CO2...................................Execute Simulation....PASS
gc_4x5_merra2_fullchem..............................Execute Simulation....PASS
gc_4x5_merra2_fullchem_aciduptake...................Execute Simulation....PASS
gc_4x5_merra2_fullchem_APM..........................Execute Simulation....PASS
gc_4x5_merra2_fullchem_benchmark....................Execute Simulation....PASS
gc_4x5_merra2_fullchem_complexSOA...................Execute Simulation....PASS
gc_4x5_merra2_fullchem_complexSOA_SVPOA.............Execute Simulation....PASS
gc_4x5_merra2_fullchem_LuoWd........................Execute Simulation....PASS
gc_4x5_merra2_fullchem_marinePOA....................Execute Simulation....PASS
gc_4x5_merra2_fullchem_RRTMG........................Execute Simulation....PASS
gc_4x5_merra2_Hg....................................Execute Simulation....PASS
gc_4x5_merra2_metals................................Execute Simulation....PASS
gc_4x5_merra2_POPs_BaP..............................Execute Simulation....PASS
gc_4x5_merra2_tagCH4................................Execute Simulation....PASS
gc_4x5_merra2_tagCO.................................Execute Simulation....PASS
gc_4x5_merra2_tagO3.................................Execute Simulation....PASS
gc_4x5_merra2_TransportTracers......................Execute Simulation....PASS
gc_4x5_merra2_TransportTracers_LuoWd................Execute Simulation....PASS
Summary of test results:
------------------------------------------------------------------------------
Execution tests passed: 24
Execution tests failed: 2
Execution tests not yet completed: 0 Furthermore, most integration tests were identical to PR #1874 and PR #1876, except for APM (known issue) and RRTMG diagnostics (see #1869). Checking gc_05x0625_NA_47L_merra2_CH4
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_05x0625_NA_47L_merra2_fullchem
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_47L_merra2_fullchem
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_47L_merra2_fullchem_TOMAS15
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_47L_merra2_fullchem_TOMAS40
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_aerosol
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_carbon
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_CH4
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_CO2
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_aciduptake
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_APM
-> 2 differences found in OutputDir
* GCC_14.2.1_r10/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.Metrics.20190701_0000z.nc4
GCC_14.2.1_r11/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.Metrics.20190701_0000z.nc4
* GCC_14.2.1_r10/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.SpeciesConc.20190701_0000z.nc4
GCC_14.2.1_r11/rundirs/gc_4x5_merra2_fullchem_APM/OutputDir/GEOSChem.SpeciesConc.20190701_0000z.nc4
-> 1 difference found in Restarts
* GCC_14.2.1_r10/rundirs/gc_4x5_merra2_fullchem_APM/Restarts/GEOSChem.Restart.20190701_0100z.nc4
GCC_14.2.1_r11/rundirs/gc_4x5_merra2_fullchem_APM/Restarts/GEOSChem.Restart.20190701_0100z.nc4
Checking gc_4x5_merra2_fullchem_benchmark
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_complexSOA
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_complexSOA_SVPOA
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_LuoWd
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_marinePOA
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_fullchem_RRTMG
-> 1 difference found in OutputDir
* GCC_14.2.1_r10/rundirs/gc_4x5_merra2_fullchem_RRTMG/OutputDir/GEOSChem.RRTMG.20190701_0000z.nc4
GCC_14.2.1_r11/rundirs/gc_4x5_merra2_fullchem_RRTMG/OutputDir/GEOSChem.RRTMG.20190701_0000z.nc4
-> No differences in Restarts
Checking gc_4x5_merra2_Hg
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_metals
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_POPs_BaP
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_tagCH4
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_tagCO
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_tagO3
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_TransportTracers
-> No differences in OutputDir
-> No differences in Restarts
Checking gc_4x5_merra2_TransportTracers_LuoWd
-> No differences in OutputDir
-> No differences in Restarts |
Thanks @yantosca for working on this! We will submit a PR to update it downstream in HEMCO-CESM when 3.7.1 is released. |
When merged atop PR #1874 and PR #1876, all GCHP integration tests passed (except for TOMAS, which is a known issue that will be fixed later). ==============================================================================
GCHP: Execution Test Results
GCClassic #baad1bd GEOS-Chem submod updates: Merge PR #1874 and PR #1876 (GCHP updates)
GEOS-Chem #f9d697f18 Merge PR #1876 (Use standard format for AEIC monthly clim in ExtData.rc)
HEMCO #725972f PR #226 post-merge fixes: Update CHANGELOG.md
Number of execution tests: 5
Submitted as SLURM job: 63113136
==============================================================================
Execution tests:
------------------------------------------------------------------------------
gchp_merra2_fullchem................................Execute Simulation....PASS
gchp_merra2_fullchem_benchmark......................Execute Simulation....PASS
gchp_merra2_fullchem_RRTMG..........................Execute Simulation....PASS
gchp_merra2_tagO3...................................Execute Simulation....PASS
gchp_merra2_TransportTracers........................Execute Simulation....PASS
Summary of test results:
------------------------------------------------------------------------------
Execution tests passed: 5
Execution tests failed: 0
Execution tests not yet completed: 0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% All execution tests passed! %%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Furthermore, all GCHP integration tests were zero-diff w/r/t PR #1874 and PR #1876: Checking gchp_merra2_fullchem
-> No differences in OutputDir
-> No differences in Restarts
Checking gchp_merra2_fullchem_benchmark
-> No differences in OutputDir
-> No differences in Restarts
Checking gchp_merra2_fullchem_RRTMG
-> No differences in OutputDir
-> No differences in Restarts
Checking gchp_merra2_tagO3
-> No differences in OutputDir
-> No differences in Restarts
Checking gchp_merra2_TransportTracers
-> No differences in OutputDir
-> No differences in Restarts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to merge. Thanks Bob!
CHANGELOG.md - Now list the PR #226 (Update HEMCO netCDF I/O code to use the netCDF-F90 interface) under version 3.7.1. Signed-off-by: Bob Yantosca <[email protected]>
This merge brings PR #227 (Fix several minor issues not addressed in PR #226, by @yantosca) into the HEMCO 3.7.1 development stream. Important features added - Convert hco_m_netcdf_io_write.F90 module to use netCDF-F90 interface - Remove leftover calls to netCDF-F77 functions - Updated comment headers Signed-off-by: Bob Yantosca <[email protected]>
Name and Institution (Required)
Name: Bob Yantosca
Institution: Harvard + GCST
Confirm you have reviewed the following documentation
Describe the update
We have updated the HEMCO netCDF reading/writing routines in
src/Shared/NcdfUtil
from the netCDF-F77 interface to the netCDF-F90 interface. This is necessary to satisfy merging requirements for CESM.The updates mainly involve:
INCLUDE "netcdf.inc"
withUSE netCDF
NF_
withNF90_
in netCDF parameters and function callshco_m_netcdf_io_read.F90
was indented according to F90 free-format.Expected changes
This is a zero-diff update. No changes are expected.
Reference(s)
N/A
Related Github Issue(s)
Closes #225
Also tagging @jimmielin