Skip to content

Commit

Permalink
Merging EMC's latest code into RRFS_dev (#35)
Browse files Browse the repository at this point in the history
* NOAA GSL UPP updates (NOAA-EMC#413)

* Turn on GSD cloud ceiling calculation for RRFS dev.

* Updates to UPP for RRFS applications (#3)

* Updates to UPP for RRFS applications:
1) Adding a RRFS-specific .xml control file and a corresponding .txt flat file.  Note that script changes (pending) are needed to leverage the new flat file.  However, this code will work in current real-time configurations.
2) Adding GSL experimental ceiling diagnostics, GSL visibility diagnostic, and GSL sea-level pressure reduction (MAPS).  Also adding TKE and aerosol number concentrations.
3) Code clean-up for ceiling-related diagnostics; added comments, etc.
4) Removing several non-needed variables, originally inherited from FV3-SAR community configuration.

* Updating UPP control files to specify GRIB2 generating center as "noaa_fsl_boulder" and the generating process as "hrrr".  The "hrrr" specification is temporary, and will eventually be switched to "rrfs" once required changes to the "NCEPLIBS-g2tmpl" library are available. (#4)

* Fix some out-of-bounds reads that caused the RRFS UPP to crash. (#5)

* Adding README file (#7)

* Adding README file to describe process of making a "flat" file.

* Updates to README to improve explanation of input/output files.

* Code to read in Flash Flood Guidance (FFG) and Average Recurrence Interval (ARI) precipitation datasets for comparison with model QPF within UPP.

* Fixed a syntax error in SURFCE.f

* Getting rid of GRIB1 output option to be consistent with rest of code.

* Changing field numbers to avoid conflict with existing RRFS-dev1 fields.

* Putting exceedance grids in flat files for testing in RRFS UPP.

* Corrected the 1h and run total precip names for calculating exceedances in SURFCE.f

* Bug fix in SURFCE.f if statements.

* Removing changes to RQSTFLD.F since GRIB1 is no longer used in UPP.

* Merging NOAA-GSL development on top of NOAA-EMC UPP for testing.

* Correcting minor typos in SURFCE.f to allow testing.

* Update code based on testing with RRFS cases.

* Update part of the code based on current EMC develop branch for comparing the test results with the merged version.(#9)

* Fixed several bugs in the code.

* Modifications to SURFCE.f to check for existence of FFG files.

* Bug fixes for FFG file existence check, and changes to handle rotated lat-lon grid interpolation for FFG

* Bug fixes for FFG existence checks in SURFCE.f

* Another bug fix for SURFCE.f

* Updating XML and flat txt files to include a 65th vertical level to be consistent with updated FV3LAM model with higher model top. (#13)

* Code cleanup for QPF - FFG comparison.  Comparison put into subroutine.

* Cleanup of SURFCE.f; moving the FFG comparisons into a subroutine.

* Final cleanup of exceedance code for QPF vs FFG.

* Removing some commented out variable declarations.

* Additional cleanup recommended by Ming: we really only need two exceedance variables; one for 1h FFG and one for run total FFG exceedances.

* Further cleanup of FFG code, simplifying to two fields (1h acc and run total acc)

* Adding ARI comparison fields for 2y, 5y, 10y, and 100y ARIs.

* Changes to output 9 soil levels from FV3LAM if we are running 9 level RUC LSM.

* Adding flat txt file for UPP.

* Commenting out the use of the ARI exceedances for now.  We can switch them on later.

* Bug fix in INITPOST_NETCDF.f : need to use both ncid2d and ncid3d in this subroutine!

* Adding NOAA-GSL code changes on top of latest NOAA-EMC UPP.

* Couple of bug fixes in NOAA-EMC code.  Bugs were leading to PRMSL and -10C REFD being all zeroes.

* Cleaning up code to get rid of unnecessary differences from EMC.

* Putting all new GSL variables into EMC's unified post_avblflds.xml.  Note that EMC's unified post_avblflds.xml does not validate using the avblflds Schema.

* Updating postconfig-NT.txt file for GSL RRFS based on merged post_avblflds.xml file.

* Adding RRFS control files to makefile.

* Changing back scale for WEASD_ON_SURFACE to previous default, thanks to suggestion from Wen Meng.

* Reverting name of cldfra based on feedback from Eric Aligo.

* Reverting changes in fv3lam_post_avblflds.xml since GSL new variables are now included in post_avblflds.xml

* Changing experimental ceiling level type from "ceiling" to "cloud_ceilng"

* Updating 3drtma_postcntrl.xml with revised name for GSD_EXP_CEILING.  This also affects postxconfig-NT-3drtma.txt.  postxconfig-NT-fv3lam_rrfs.txt also changed due to changes in post_avblflds.xml

* Introducing if statement for call of NGMSLP, to avoid calling unless it is needed.

Co-authored-by: Ming.Hu <[email protected]>
Co-authored-by: Christina Holt <[email protected]>
Co-authored-by: Christina Holt <[email protected]>
Co-authored-by: Jaymes Kenyon <[email protected]>
Co-authored-by: Samuel Trahan (NOAA contractor) <[email protected]>

* Doxygen for CALDWP.f

* Further refinement.

* Doxygen CALDRG.f (NOAA-EMC#424)

* Doxygen for CALDRG.f

* Delete CALDWP.f

* Revert "Delete CALDWP.f"

This reverts commit 575cd93.

* Sync changes from UPP for GFSV16 (NOAA-EMC#422)

* Add gtg code as submodule.

* Remove manage_externals.

* Sync with the changes from GFSV16.

* Add change logs for POSTGRB2TBL default setting.

* Disable recursive checkout on gtg code (NOAA-EMC#427)

* add option to build with GTG code or stubs (NOAA-EMC#430)

* add option to build with GTG code or stubs

* make IP optional depending on GTG option.

* GTG code depends on a file that only resides in the gtg repo

* fix a big boo-boo

* move sorc/post_gtg.fd to sorc/ncep_post.fd/post_gtg.fd and update build path to GTG

* correct the name of the submodule.  fix mixed indents

* move map_routines.F90 into the GTG src list

* Add options in build script (NOAA-EMC#435)

* Add command line arguments in compile_upp.sh for options, e.g. building with gtg code,
building with wrfio stub code, turning on cmake verbose.

* Remove legacy GNU make capability.

* Clean up legacy read interfaces (NOAA-EMC#437)

* Remove read interfaces INITPOST_GFS_NEMS, INITPOST_GFS_NEMS_MPIIO and INITPOST_GFS_NMM.

* Change linking order for w3nco and nemsio

* Remove INITPOST_GFS_NETCDF

* Remove INITPOST_GFS_NEMS.f, INITPOST_GFS_NETCDF.f, INITPOST_NEMS.f, INITPOST_NEMS_MPIIO.f from UPP code.

* Fix build failture.

* Clean up legacy makefile

* Clean up another two makefiles

* Add back INITPOST_GFS_NETCDF

* Port UPP develop branch on wcoss2 (NOAA-EMC#439)

* Add changes for WCOSS2 Acorn.

* Add changes for Dogwood.

* Add changes for WCOSS2.

* Change modulefile on wcoss2 in LUA format based on Kate's comments.

* Add machine recognition for cactus and WCOSS1 P3.5 based on Eric's comments

* Exception handling if anl input not found (NOAA-EMC#443) (NOAA-EMC#444)

* modified:   scripts/exgdas_atmos_nceppost.sh

* modified:   scripts/exgfs_atmos_nceppost.sh

* Update regional FV3 read interface with parallel netcdf read (NOAA-EMC#441)

* Changes for parallel netcdf read for regional FV3 interface

* Clean up debugging code

* Replace small with the one defined in params_mod based on Huiya's comments.

* Update documentation to reflect updates to develop (fortran namelist/RQSTFLD removal) (NOAA-EMC#445)

* exec is selectable for executable directory (NOAA-EMC#448)

* Doxygen for CALGUST (NOAA-EMC#451)

* Doxygen for CALDRG.f

* This is part of Issue NOAA-EMC#392
Fixes the doxygen warnings in CALGUST.f

Please review this subroutine. Thank you.

* The fix in  CALUPDHEL.f (NOAA-EMC#458)

* Modify CALUPDHEL.f for restricting undefined grids in computation.

* Update VERSION to 10.0.12.

* Bug fix for SLLEVEL bound issue when not RUC LSM (NOAA-EMC#463)

Co-authored-by: Tracy <[email protected]>

* Doxygen caldrg caldwcp calgust refinement (NOAA-EMC#464)

* Further refinement to the tables and logs.

* Further refinement to the tables and logs. (NOAA-EMC#455)

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#460)

Fixes the doxygen warnings in CALHEL.f CALHEL2.f CALHEL3.f

Please review this subroutine. Thank you.

* Unify global and regional FV3 read interfaces (NOAA-EMC#453)

* Unify the interfaces for reading FV3 outputs in netcdf.

* Remove interface INITPOST_GFS_NETCDF_PARA.

* Remove INITPOST_GFS_NETCDF.f.

* Remove the capability of serial netcdf reading FV3 outputs.

* Correct reading rswinc.

* Remove duplication in CLDRAD.f.

* Remove duplicated avgalbedo reading

* Add changes for reading pwat from model.

* Clean up commented out code

* Clean up duplicated lines

* Add ability to compile script to use non-intel compilers; add Cheyenne modulefiles for gnu and intel (NOAA-EMC#468)

* Add cheyenne modulefile

* Intel 19 --> 2021

* Add ability to specify compiler; move all existing modulefiles to ${name}_intel since they are all for intel compilers; add "cheyenne_gnu" modulefile

* Revert move of intel modulefiles; now the implicit default for a modulefile is intel, only gnu and other compilers will have the compiler name appended to the modulefile

* Allow for lua modulefiles with ".lua" appended

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#465)

Fixes the doxygen warnings in CALLCL.f CALMCVG.f CALMICT.f

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#466)

Fixes the doxygen warnings in CALPBL.f CALPBLREGIME.f CALPOT.f CALPW.f.

* Doxygen in CALRAD_WCLOUD_newcrtm.f CALRCH.f CALSTRM.f CALTAU.f CALTHTE.f CALUPDHEL.f. (NOAA-EMC#467)

* This is part of Issue NOAA-EMC#392.
Fixes the doxygen warnings in CALRAD_WCLOUD_newcrtm.f CALRCH.f
CALSTRM.f CALTAU.f CALTHTE.f CALUPDHEL.f.

* Fixed typo.

* Update to PR NOAA-EMC#458.

* Doxygen in CALVOR.f, CALWXT_BOURG.f, CLDRAD.f, COLLECT.f, COLLECT_LOC.f, DEALLOCATE.f, and DEALLOCATE.f (NOAA-EMC#469)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in CALVOR.f, CALWXT_BOURG.f, CLDRAD.f, COLLECT.f, COLLECT_LOC.f, DEALLOCATE.f, and DEALLOCATE.f.

* Fixed minor bug  in CALVOR.f.

* Update to PR#453.

* More updates.

* Doxygen in EXCH.f, FDLVL.f, FILL_PSETFLD.f, FRZLVL.f, and FRZLVL2.f. (NOAA-EMC#470)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in EXCH.f, FDLVL.f, FILL_PSETFLD.f, FRZLVL.f, and FRZLVL2.f.

* Minor fix and Added new features from Ed's comments.

* Format enhancement from Edward's comments.

* Updated documentation.

* Doxygen in GFSPOSTSIG.F NGMFLD.f OTLFT.f OTLIFT.f PARA_RANGE.f PROCESS.f and retrieve_index.f. (NOAA-EMC#477)

* This is part of Issue NOAA-EMC#392.

Fix the doxygen warnings in GFSPOSTSIG.F NGMFLD.f OTLFT.f OTLIFT.f PARA_RANGE.f PROCESS.f and retrieve_index.f.

* Minor fix.

* Update table for NGMFLD.f.

* Doxygen in GET_BITS.f, GPVS.f, LFMFLD.f, LFMFLD_GFS.f, MDL2P.f, MDL2STD_P.f, MDL2THANDPV.f, and MSFPS.f. (NOAA-EMC#474)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in GET_BITS.f, GPVS.f, LFMFLD.f, LFMFLD_GFS.f, MDL2P.f, MDL2STD_P.f, MDL2THANDPV.f, and MSFPS.f.

* Minor fix.

* Doxygen in kinds_mod.F, native_endianness.f, UPP_MATH.f and UPP_PHYSICS.f. (NOAA-EMC#479)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in kinds_mod.F, native_endianness.f, UPP_MATH.f and UPP_PHYSICS.f.

* Further enhancement from Ed's comment.

* Bug fix in UPP build script on Catcus (NOAA-EMC#481)

* Doxygen in SCLFLD.f SELECT_CHANNELS.f SET_OUTFLDS.f SETUP_SERVERS.f SMOOTH.f TRPAUS.f TRPAUS_NAM.f WETFRZLV.f WRFPOST.f and ZENSUN.f (NOAA-EMC#480)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in SCLFLD.f SELECT_CHANNELS.f SET_OUTFLDS.f SETUP_SERVERS.f SMOOTH.f TRPAUS.f TRPAUS_NAM.f WETFRZLV.f WRFPOST.f ZENSUN.f

* Further enhancement from Ed's comment.

* Update readme (NOAA-EMC#486)

* Starting UPP version numbers with 10.0.0 for develop branch

* Add codeowners file to develop

* Update README

* Formatting updates

* update inline post supported applications

* Additional updates to supported models

Co-authored-by: Kate Fossell <[email protected]>

* Doxygen in GFSPOST.F (NOAA-EMC#476)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in GFSPOST.F and GFSPOSTSIG.F.

* Testing:revert GFSPOST.F

* Testing: Revert GFSPOSTSIG.F and test GFSPOST.F only.

* Convert list to a table.

* Add more document.

* Add more document.

* Add more document.

* Fixed indentation.

* Minor fixes.

* Further refinement from Ed's comment.

* Doxygen in INITPOST.F, INITPOST_GFS_NEMS_MPIIO, INITPOST_NEMS.f and INITPOST_NETCDF.f. (NOAA-EMC#473)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in INITPOST.F, INITPOST_GFS_NEMS_MPIIO, INITPOST_NEMS.f and INITPOST_NETCDF.f.

* Minor fix.

* Minor fix.

* Further refinement from Ed's comments.

* Minor bug fix.

* This is part of Issue NOAA-EMC#392. (NOAA-EMC#487)

Fixes the doxygen warnings in BOUND.f.

* fix a bug in AOD calculation (NOAA-EMC#489)

* fixed a bug in AOD calculation

* add mie aod and surface dust pm10

* remove enddo in line 5211 in CLDRAD.f

* parm updates for dust pm10

* increment version of develop (NOAA-EMC#502)

Co-authored-by: Kate Fossell <[email protected]>

* Add camshe to codeowners for public docs and run script (NOAA-EMC#506)

Co-authored-by: Kate Fossell <[email protected]>

* Update gfs itag files for in-line post. (NOAA-EMC#508)

* Merge release/public-v3 (NOAA-EMC#509)

* run_upp script got the following updates:
-updated directory name
-updated executable path
-added error message for binarynemsiompiio option
-added netcdfpara option

* Further refinement from Tracy's comment.

* Minor fix.

* More minor change from Tracy.

* Link update from Tracy.

* Documentation updates for release

* minor updates based on comments

* minor revisions to documentation

* Increment version for public release

* update informat - only netcdfpara

* Removed netcdf option and rename GFS input file names.

* Minor change.

Co-authored-by: kayee <[email protected]>
Co-authored-by: Tracy <[email protected]>
Co-authored-by: Kate Fossell <[email protected]>

* Documentation changes (NOAA-EMC#511)

* Remove mention of Guassian grid for FV3

* Fix latest change to table

* Remove app-specific tables

* 2D Decomposition (NOAA-EMC#339)

* Changes to support 2D Decomposition shape changes.  Full I dimension remains in all arrays bu
t SURFCE is altered to use isx:iex bounds which are equivalent to IM which is equivalent to 1:IM

* test of commit only  added one comment to PROCESS.f

* comment test 2

* Added more routines to 2D decomposition

* Changed isx and iex to ISTA and IEND in listed routines.   ISTA had prior use in MDL2P.f and that needed changing.
IEND had prior use in PARA_CONFIG, changed to IENDJ in PARA_CONFIG2 where needed PARA_CONFIG did not
need changing

* test commit of new base into clone

* repair of a bunch of changed routines somehow corrupted by a merge 5/3/2021

* fixed 5/25 problem

* added ctlblk change to support ista and iend partial I dimensons

* added para_range2 to PARA_RANGE.f to support 2D decomposition

* Modified MPI_FIRST.f to support a 2D decomposition but the actual numbers used
remain the 1D special case and the changes just add two more indices for start and end I domains
and logic to convert scatter counts and displacements to the product of the I and J subdomain sizes rather than I full domain x J subdomain.

* Added support for halo settings of 2D boundaries i.e ista_2l to match the 1D analogs long present in the source
6/1/2021

* Added definitions for ista_2u, and ista_2u in MPI_FIRST.f

* Reshaped arrays  in MDL2FLD.f to support 2D decomposition.  Modified TWO (only) loops to try thie

* Remove TIMEF.f.

* 20210702 JesseMeng modify MPI_FIRST.f MDLFLD.f for 2D decomposition

* 20210706 BoCui modify INITPOST_GFS_NETCDF_PARA.f

* 20210707 JesseMeng modified grib2_module.f for 2d decomposition

* test version INITPOST_GFS_NETCDF_PARA.f

* test version INITPOST_GFS_NETCDF_PARA.f and MPI_FIRST.f

* 20210713 BoCui test INITPOST_GFS_NETCDF_PARA.f, MPI_FIRST.f and ALLOCATE_ALL.f

* 20210713 BoCui test INITPOST_GFS_NETCDF_PARA.f, MPI_FIRST.f and ALLOCATE_ALL.f

* 20210719 BoCui Modified CLDRAD.f for 2d decomposition

* 20210816 Jesse Meng commit George's EXCH update for 1 layer 2D halos transforming

* 20210816 Jesse Meng remove ifcore in EXCH

* 20210903 Bo Cui update ALLOCATE_ALL.f after new merge from 'upstream/develop'

* 20210903 Bo Cui Added new routines to 2D decomposition

* 20210903 Jesse Meng fixed the ieql allocation bug in ALLOCATE_ALL.f

* 20210904 Bo Cui fixed CLDRAD.f

* 20210913 Jesse Meng commit progress of 2D decomposition

* 20210917 Bo Cui add new routines to 2D decomposition

* 20210917 Jesse Meng remove 4 legacy files

* 20210917 Jesse Meng remove legacy code SLP_NMM EXCH2

* 20210917 Jesse Meng remove legacy code INITPOST_GFS_SIGIO.f INITPOST_GFS_NEMS.f

* 20210917 Jesse Meng add INITPOST_GFS_NEMS.f back to avoid compiling error.

* 20210930 Jesse Meng add George's itag/numx entry and progress on 2D decompose

* 20211015 Jesse Meng progress on 2D DECOMPOSITION

* 20211017 Bo Cui add new subroutines to UPP 2D decomposition

* 20211026 Jesse Meng commit progress in 2D DECOMPOSITION

* 20211026 Jesse Meng fix INITPOST_GFS_NETCDF_PARA.f for 2D DECOMPOSITION

* 20211026 Jesse Meng update SURFCE.f for 2D DECOMPOSITION

* 20211103 Jesse Meng commit progress of 2D DECOMPOSITION

* 20211106 Bo Cui commit progress of 2D decomposition

* 20211109 Jesse Meng updates for 2D DECOMPOSITION

* 20211110 Jesse Meng updates in 2D DECOMPOSITION

* 20211112 Jesse Meng updates for 2D DECOMPOSITION

* 20211115 Jesse Meng updates for 2D DECOMPOSITION

* 20211119 Jesse Meng updates for 2D DECOMPOSITION

* 20211201 Jesse Meng move CALVOR to UPP_PHYSICS module; implement fullpole in MPI_FIRST

* 20211202 Jesse Meng minor update of MPI_FIRST using mpi_allgatherv

* 20211203 Jesse Meng implement fullpole in MDL2THANDPV and CALDIV

* 20211207 Jesse Meng update MISCLN.f SURFCE.f

* 20211208 Jesse Meng add parm/hafs_nosat files

* 20211213 Bo Cui updates for 2D decomposition

* 20211213 Jesse Meng update the merged 'upstream/develop' and 'post_2d_decomp' branch to 2d_decomp style

* 20211215 Jesse Meng use i=0:im+1 for GFS in MPI_FIRST and EXCH

* 20211216 Jesse Meng minor update UPP_PHYSICS for i=0:im+1 expansion

* 20220104 Jesse Meng add George's minor fix in EXHC.f

* 20220118 Jesse Meng commit George's cleaned up code.

* 20220203 Jesse Meng - update MAPSSLP.f to be consistent with develop branch.

* 20220222 Jesse Meng add checkcoords flag in EXCH.f to move around George's debug code.

* 20220302 Jesse Meng Restrict computation from undefined grids

* 20220304 Bo Cui Add a reset of numx=1 if remainder of num_procs/numx is not 0

* 20220310 Jesse Meng Add a reset of numx=1 if(numx>num_procs/2)

* 20220322 Jesse Meng mpi_allgatherv change communicator to MPI_COMM_COMP

* 20220328 Jesse Meng bug fix for passing 2d subarrays between subroutines

* 20220328 Jesse Meng minor fix for CLDRAD call BOUND variable array size

* 20220330 Jesse Meng fix cloud cover variabes full field collection in 2d decomp

* 20220401 Jesse Meng minor fix for CALMCVG.f and update CALUPDHEL.f with develop

* 20220414 BoCui  sync and merge UPP/develop into post_2d_decomp (#7)

* Added lambert conformal projection for FV3SAR and handled composite reflectivity correctly (#14) (#2)

* exec is selectable for executable directory (NOAA-EMC#448)

* Doxygen for CALGUST (NOAA-EMC#451)

* Doxygen for CALDRG.f

* This is part of Issue NOAA-EMC#392
Fixes the doxygen warnings in CALGUST.f

Please review this subroutine. Thank you.

* The fix in  CALUPDHEL.f (NOAA-EMC#458)

* Modify CALUPDHEL.f for restricting undefined grids in computation.

* Update VERSION to 10.0.12.

* Bug fix for SLLEVEL bound issue when not RUC LSM (NOAA-EMC#463)

Co-authored-by: Tracy <[email protected]>

* Doxygen caldrg caldwcp calgust refinement (NOAA-EMC#464)

* Further refinement to the tables and logs.

* Further refinement to the tables and logs. (NOAA-EMC#455)

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#460)

Fixes the doxygen warnings in CALHEL.f CALHEL2.f CALHEL3.f

Please review this subroutine. Thank you.

* Unify global and regional FV3 read interfaces (NOAA-EMC#453)

* Unify the interfaces for reading FV3 outputs in netcdf.

* Remove interface INITPOST_GFS_NETCDF_PARA.

* Remove INITPOST_GFS_NETCDF.f.

* Remove the capability of serial netcdf reading FV3 outputs.

* Correct reading rswinc.

* Remove duplication in CLDRAD.f.

* Remove duplicated avgalbedo reading

* Add changes for reading pwat from model.

* Clean up commented out code

* Clean up duplicated lines

* Add ability to compile script to use non-intel compilers; add Cheyenne modulefiles for gnu and intel (NOAA-EMC#468)

* Add cheyenne modulefile

* Intel 19 --> 2021

* Add ability to specify compiler; move all existing modulefiles to ${name}_intel since they are all for intel compilers; add "cheyenne_gnu" modulefile

* Revert move of intel modulefiles; now the implicit default for a modulefile is intel, only gnu and other compilers will have the compiler name appended to the modulefile

* Allow for lua modulefiles with ".lua" appended

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#465)

Fixes the doxygen warnings in CALLCL.f CALMCVG.f CALMICT.f

* This is part of Issue NOAA-EMC#392 (NOAA-EMC#466)

Fixes the doxygen warnings in CALPBL.f CALPBLREGIME.f CALPOT.f CALPW.f.

* Doxygen in CALRAD_WCLOUD_newcrtm.f CALRCH.f CALSTRM.f CALTAU.f CALTHTE.f CALUPDHEL.f. (NOAA-EMC#467)

* This is part of Issue NOAA-EMC#392.
Fixes the doxygen warnings in CALRAD_WCLOUD_newcrtm.f CALRCH.f
CALSTRM.f CALTAU.f CALTHTE.f CALUPDHEL.f.

* Fixed typo.

* Update to PR NOAA-EMC#458.

* Doxygen in CALVOR.f, CALWXT_BOURG.f, CLDRAD.f, COLLECT.f, COLLECT_LOC.f, DEALLOCATE.f, and DEALLOCATE.f (NOAA-EMC#469)

* This is part of Issue NOAA-EMC#392.

Fixes the doxygen warnings in CALVOR.f, CALWXT_BOURG.f, CLDRAD.f, COLLECT.f, COLLECT_LOC.f, DEALLOCATE.f, and DEALLOCATE.f.

* Fixed minor bug  in CALVOR.f.

* Update to PR#453.

* More updates.

* 20220411 Bo Cui 2D decompositio CALVOR.f and INITPOST_NETCDF.f

* 20220411 Bo Cui update doxgen and global and regional FV3 read interface

* 20220414 Bo Cui: remove read_netcdf_2d_scatter and read_netcdf_3d_scatter from INITPOST_NETCDF.f

* 20220415 Bo Cui delete CALVOR.f, add exch of gdlon in INITPOST_NETCDF.f

* 20220421 Bo Cui Doxygen in UPP_PHYSICS.f,add restriction run 2D decomp only for GFS/FV3R in WRFPOST.f

Co-authored-by: WenMeng-NOAA <[email protected]>
Co-authored-by: Wen Meng <[email protected]>
Co-authored-by: Chan-Hoo.Jeon-NOAA <[email protected]>
Co-authored-by: kayeekayee <[email protected]>
Co-authored-by: Tracy Hertneky <[email protected]>
Co-authored-by: Tracy <[email protected]>
Co-authored-by: Michael Kavulich <[email protected]>

* 20220502 Bo Cui code cleanup

* 20220512 Jesse Meng minor fix for INITPOST_GFS_NEMS_MPIIO.f calling EXCH

* 20220525 Jesse Meng minor fix to 2d_decomp syntax

* Update VERSION to 11.0.0

* 20220607 Jesse Meng add variable declaration block in PARA_RANGE.f

* 20220608 Jesse Meng remove blank spaces in sorc/ncep_post.fd/AllGETHERV_GSD.f

* Add 2D decomp overview documentation (#6)

* Add 2D decomp overview documentation

* Update 2D overview

Co-authored-by: George Vandenberghe <[email protected]>
Co-authored-by: wx15gv <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: Bo Cui <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: Jesse.Meng <[email protected]>
Co-authored-by: BoCui-NOAA <[email protected]>
Co-authored-by: Chan-Hoo.Jeon-NOAA <[email protected]>
Co-authored-by: kayeekayee <[email protected]>
Co-authored-by: Tracy Hertneky <[email protected]>
Co-authored-by: Tracy <[email protected]>
Co-authored-by: Michael Kavulich <[email protected]>
Co-authored-by: Jesse Meng <[email protected]>
Co-authored-by: Kate Fossell <[email protected]>

* Fix for absv computation in RRFS (NOAA-EMC#516)

* read in dx/dy instead of calculating them (NOAA-EMC#523)

* read in dx/dy instead of caculating them

* add the change log for dxdy code change

* change 2011 to 2022 in the change log

* Upgrade intel/impi version to 2022.1.2 on Hera and Orion (NOAA-EMC#527)

* Update modulefiles on hera.

* tweaking hera.lua

* Update modulefile on orion

* add spack-based ci. (NOAA-EMC#528)

* add spack-based ci.
replace dependency on w3nco with w3emc.
Update w3emc to 2.9.2 on all machines (wcoss2 is already at 2.9.2)

* remove deprecated hera and orion env. modulefiles

* update nemsio version to 2.5.4. Flush cache

* First attempt to add RRFS_dev development on top of latest EMC develop branch

* Geting rid of unnecesary changes in MISCLN.f

* Making reading in of wet1 consistent with new netcdf parallel read.

* Updating fix files.

* Bringing in the latest EMC develop branch.

* Cosmetic changes to be consistent with EMC's develop branch

Co-authored-by: Ming.Hu <[email protected]>
Co-authored-by: Christina Holt <[email protected]>
Co-authored-by: Christina Holt <[email protected]>
Co-authored-by: Jaymes Kenyon <[email protected]>
Co-authored-by: Samuel Trahan (NOAA contractor) <[email protected]>
Co-authored-by: kayee <[email protected]>
Co-authored-by: WenMeng-NOAA <[email protected]>
Co-authored-by: Rahul Mahajan <[email protected]>
Co-authored-by: lgannoaa <[email protected]>
Co-authored-by: Tracy Hertneky <[email protected]>
Co-authored-by: Chan-Hoo.Jeon-NOAA <[email protected]>
Co-authored-by: Tracy <[email protected]>
Co-authored-by: Michael Kavulich <[email protected]>
Co-authored-by: Kate Fossell <[email protected]>
Co-authored-by: Kate Fossell <[email protected]>
Co-authored-by: lipan-NOAA <[email protected]>
Co-authored-by: Tracy <[email protected]>
Co-authored-by: George Vandenberghe <[email protected]>
Co-authored-by: wx15gv <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: Bo Cui <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: wx22mj <[email protected]>
Co-authored-by: Jesse.Meng <[email protected]>
Co-authored-by: BoCui-NOAA <[email protected]>
Co-authored-by: Jesse Meng <[email protected]>
Co-authored-by: LinZhu-NOAA <[email protected]>
  • Loading branch information
33 people authored Aug 5, 2022
1 parent 5c158e5 commit 1bba2bc
Show file tree
Hide file tree
Showing 310 changed files with 11,760 additions and 37,218 deletions.
6 changes: 3 additions & 3 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
* @WenMeng-NOAA


# DTC support for public releases and documentation
docs/* @hertneky @fossell
scripts/run_upp @hertneky @fossell
# Support for public releases and documentation
docs/* @hertneky @fossell @camshe
scripts/run_upp @hertneky @fossell @camshe

66 changes: 0 additions & 66 deletions .github/workflows/build_and_test.yml

This file was deleted.

96 changes: 96 additions & 0 deletions .github/workflows/gcc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: GCC Linux Build
on: [push, pull_request, workflow_dispatch]


# Use custom shell with -l so .bash_profile is sourced
# without having to do it in manually every step
defaults:
run:
shell: bash -leo pipefail {0}

env:
cache_key: gcc2 # The number (#) following the cache_key "gcc" is to flush Action cache.
CC: gcc-10
FC: gfortran-10
CXX: g++-10

# A note on flushing Action cache and relevance to "cache_key" above.
# There is no way to flush the Action cache, and hence a number (#) is appended
# to the "cache_key" (gcc).
# If the dependencies change, increment this number and a new cache will be
# generated by the dependency build step "setup"
# There is a Github issue to force clear the cache.
# See discussion on:
# https://stackoverflow.com/questions/63521430/clear-cache-in-github-actions

# The jobs are split into:
# 1. a dependency build step (setup), and
# 2. a UPP build step (build)
# The setup is run once and the environment is cached,
# so each build of UPP can reuse the cached dependencies to save time (and compute).

jobs:
setup:
runs-on: ubuntu-latest

steps:
# Cache spack, compiler and dependencies
- name: cache-env
id: cache-env
uses: actions/cache@v2
with:
path: |
spack
~/.spack
key: spack-${{ runner.os }}-${{ env.cache_key }}

- name: checkout-upp # This is for getting spack.yaml
if: steps.cache-env.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
path: UPP

# Install dependencies using Spack
- name: install-dependencies-with-spack
if: steps.cache-env.outputs.cache-hit != 'true'
run: |
git clone -c feature.manyFiles=true https://github.com/NOAA-EMC/spack.git
source spack/share/spack/setup-env.sh
spack env create upp-env UPP/ci/spack.yaml
spack env activate upp-env
spack compiler find
spack external find
spack add [email protected]
spack concretize
spack install --dirty -v
build:
needs: setup
runs-on: ubuntu-latest

steps:
- name: checkout-upp
uses: actions/checkout@v2
with:
path: UPP

- name: cache-env
id: cache-env
uses: actions/cache@v2
with:
path: |
spack
~/.spack
key: spack-${{ runner.os }}-${{ env.cache_key }}

- name: build-upp
run: |
source spack/share/spack/setup-env.sh
spack env activate upp-env
export CC=mpicc
export FC=mpif90
cd UPP
mkdir -p build && cd build
cmake -DCMAKE_INSTALL_PREFIX=../install ..
make -j2 VERBOSE=1
make install
114 changes: 114 additions & 0 deletions .github/workflows/intel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
name: Intel Linux Build
on: [push, pull_request, workflow_dispatch]

# Use custom shell with -l so .bash_profile is sourced which loads intel/oneapi/setvars.sh
# without having to do it in manually every step
defaults:
run:
shell: bash -leo pipefail {0}

# Set I_MPI_CC/F90 so Intel MPI wrapper uses icc/ifort instead of gcc/gfortran
env:
cache_key: intel2 # The number (#) following the cache_key "intel" is to flush Action cache.
CC: icc
FC: ifort
CXX: icpc
I_MPI_CC: icc
I_MPI_F90: ifort

# A note on flushing Action cache and relevance to "cache_key" above.
# There is no way to flush the Action cache, and hence a number (#) is appended
# to the "cache_key" (intel).
# If the dependencies change, increment this number and a new cache will be
# generated by the dependency build step "setup"
# There is a Github issue to force clear the cache.
# See discussion on:
# https://stackoverflow.com/questions/63521430/clear-cache-in-github-actions

# The jobs are split into:
# 1. a dependency build step (setup), and
# 2. a UPP build step (build)
# The setup is run once and the environment is cached,
# so each build of UPP can reuse the cached dependencies to save time (and compute).

jobs:
setup:
runs-on: ubuntu-latest

steps:
# Cache spack, compiler and dependencies
- name: cache-env
id: cache-env
uses: actions/cache@v2
with:
path: |
spack
~/.spack
/opt/intel
key: spack-${{ runner.os }}-${{ env.cache_key }}

- name: install-intel-compilers
if: steps.cache-env.outputs.cache-hit != 'true'
run: |
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt-get update
sudo apt-get install intel-oneapi-dev-utilities intel-oneapi-mpi-devel intel-oneapi-openmp intel-oneapi-compiler-fortran intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
echo "source /opt/intel/oneapi/setvars.sh" >> ~/.bash_profile
- name: checkout-upp # This is for getting spack.yaml
if: steps.cache-env.outputs.cache-hit != 'true'
uses: actions/checkout@v2
with:
path: UPP

# Install dependencies using Spack
- name: install-dependencies-with-spack
if: steps.cache-env.outputs.cache-hit != 'true'
run: |
git clone -c feature.manyFiles=true https://github.com/NOAA-EMC/spack.git
source spack/share/spack/setup-env.sh
spack env create upp-env UPP/ci/spack.yaml
spack env activate upp-env
spack compiler find
spack external find
spack add intel-oneapi-mpi
spack concretize
spack install --dirty -v
build:
needs: setup
runs-on: ubuntu-latest

steps:
- name: checkout-upp
uses: actions/checkout@v2
with:
path: UPP

- name: install-intel
run: |
echo "source /opt/intel/oneapi/setvars.sh" >> ~/.bash_profile
- name: cache-env
id: cache-env
uses: actions/cache@v2
with:
path: |
spack
~/.spack
/opt/intel
key: spack-${{ runner.os }}-${{ env.cache_key }}

- name: build-upp
run: |
source spack/share/spack/setup-env.sh
spack env activate upp-env
export CC=mpiicc
export FC=mpiifort
cd UPP
mkdir -p build && cd build
cmake -DCMAKE_INSTALL_PREFIX=../install ..
make -j2 VERBOSE=1
make install
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
# USE CAUTION WHEN ADDING WILDCARDS, as some builds use different filename #
# conventions than others #
##############################################################################
build/
install/
build*/
install*/

*.[aox]
*.mod
Expand Down
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[submodule "post_gtg.fd"]
path = sorc/ncep_post.fd/post_gtg.fd
url = https://github.com/NCAR/UPP_GTG
update = none
7 changes: 5 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
option(OPENMP "use OpenMP threading" ON)
option(BUILD_POSTEXEC "Build NCEPpost executable" ON)
option(BUILD_WITH_WRFIO "Build NCEPpost with WRF-IO library" OFF)
option(BUILD_WITH_GTG "Build NCEPpost with NCAR/GTG" OFF)
option(ENABLE_DOCS "Enable generation of doxygen-based documentation." OFF)

if(NOT CMAKE_BUILD_TYPE MATCHES "^(Debug|Release|RelWithDebInfo|MinSizeRel)$")
Expand Down Expand Up @@ -47,14 +48,16 @@ find_package(bacio REQUIRED)
find_package(crtm REQUIRED)
find_package(g2 REQUIRED)
find_package(g2tmpl REQUIRED)
find_package(ip REQUIRED)
if(BUILD_WITH_GTG)
find_package(ip REQUIRED)
endif()

if(BUILD_POSTEXEC)
find_package(nemsio REQUIRED)
find_package(sfcio REQUIRED)
find_package(sigio REQUIRED)
find_package(sp REQUIRED)
find_package(w3nco REQUIRED)
find_package(w3emc REQUIRED)
if(BUILD_WITH_WRFIO)
find_package(wrf_io REQUIRED)
endif()
Expand Down
9 changes: 0 additions & 9 deletions Externals.cfg

This file was deleted.

Loading

0 comments on commit 1bba2bc

Please sign in to comment.