Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
193 commits
Select commit Hold shift + click to select a range
ee9382c
On branch jm-nrl-32bitfp-24cc09e
Nov 7, 2021
c059894
Update sflx.f
michalakes Nov 12, 2021
215071e
Update sflx.f
michalakes Nov 12, 2021
fd3bfac
TODO: used-before-defined -- someone please check
michalakes Nov 12, 2021
39c409e
Update module_bl_mynn.F90
michalakes Nov 12, 2021
aad45d9
Fix for use before defined -- cu_gf_deep.F90
michalakes Nov 12, 2021
cb6dabd
Cray fix -- unit numbers cannot be 100-102
michalakes Nov 12, 2021
532a518
Changes to be committed:
Aug 17, 2022
6e2dc35
From neptune repository:
Aug 17, 2022
277cb3c
From NEPTUNE repo:
Aug 17, 2022
45013be
From neptune repository:
Aug 17, 2022
f2525f0
From neptune repository:
matusmartini Aug 18, 2022
401fe5b
From neptune repository:
matusmartini Aug 18, 2022
c79a2cc
From NEPTUNE repo:
matusmartini Aug 18, 2022
fa77fb1
From NEPTUNE repo:
matusmartini Aug 19, 2022
aee0b13
From NEPTUNE repo:
matusmartini Aug 19, 2022
1699ba2
From NEPTUNE repo:
matusmartini Aug 19, 2022
9f0cd63
From NEPTUNE repo:
matusmartini Aug 19, 2022
101d589
From NEPTUNE repo:
matusmartini Aug 19, 2022
47a1662
From NEPTUNE repo:
matusmartini Aug 19, 2022
f7d0d3b
From NEPTUNE repo:
matusmartini Aug 19, 2022
83ae92d
From NEPTUNE repo:
matusmartini Aug 19, 2022
fc09681
Merge pull request #1 from NEPTUNE/local_updates
Aug 19, 2022
4f5ddfe
Begin reverting some NRL changes and adding NRL specific mixing lengt…
Aug 22, 2022
5601468
Continue reverting
Aug 22, 2022
d8cc987
Even more reverting
Aug 22, 2022
1e7d927
Test commit
Aug 25, 2022
e2c566e
Revert "Test commit"
Aug 25, 2022
3c1c72f
Add missing code to NRL option
Aug 25, 2022
ce322fb
Apply suggestions from code review
Aug 25, 2022
4914789
Apply suggestions from code review
Aug 25, 2022
e726fbb
Update physics/module_bl_mynn.F90
Aug 25, 2022
f8553cd
Merge pull request #4 from NEPTUNE/2-mynn-pbl-nrl-mixing
Aug 25, 2022
6778f31
Merge tag 'v6.0.0' into 3-update-to-ccppv6
Aug 29, 2022
f000a53
Lower optimization of grell-frietas convection because it was really…
Aug 29, 2022
cbe4730
Change bare stops to call ccpp_external_abort
Aug 30, 2022
3b3cc9d
#3 Fix merge issues with elm
matusmartini Sep 8, 2022
f611bcf
Bug fixes in physics/cu_gf_deep.F90 physics/cu_gf_driver.F90 for bit-…
climbfuji Jun 5, 2022
8528a6e
Merge pull request #5 from NEPTUNE/3-update-to-ccppv6-ncar-cp
Sep 12, 2022
9eb4714
Merge remote-tracking branch 'origin/main' into 3-update-to-ccppv6-nc…
Sep 13, 2022
1e94b0d
Merge pull request #6 from NEPTUNE/3-update-to-ccppv6-ncar-cp
Nov 23, 2022
83d42c3
Merge pull request #7 from NEPTUNE/3-update-to-ccppv6
Nov 23, 2022
43fe779
#135 Comment out prints for large virtual skin theta. They are high
matusmartini Jan 19, 2023
09c2ab7
Merge pull request #10 from NEPTUNE/3-update-to-ccppv6
Jan 19, 2023
dcd1983
#11 Change the location of the rrtmg submoudle to Dustins fork becau…
May 31, 2023
34452ea
Merge pull request #12 from NEPTUNE/11-rrtmgp-submodule-location
May 31, 2023
30efb72
On branch neptune-issue-158
Feb 28, 2023
f698e22
#13 Bring updates and bugfixes from MPASv8.0.0
matusmartini Jun 24, 2023
6c4763d
#13 Fix units discrepancies between MPAS and CCPP. This fixes early
Jun 28, 2023
87458eb
#13 Clean up declarations
matusmartini Jul 19, 2023
7901e44
#13 Cleanup. Now the updated code is close to MPASv8.0.0. These code…
matusmartini Jul 20, 2023
aed51cd
Merge branch '13-tiedtke-update' of https://github.nrlmry.navy.mil/NE…
matusmartini Jul 20, 2023
e269945
#13 Fix intent on fluxes in cutypen
matusmartini Jul 20, 2023
8dd5762
Merge pull request #14 from NEPTUNE/13-tiedtke-update
Jul 26, 2023
d37ad77
Add COAMPSTC Drag formulation to the mynn surface layer scheme
Aug 23, 2023
99447c2
Bugfix so that isftcflx=5 to uses the CORE 3.0 formulation for roug…
Sep 7, 2023
e051848
Set limiter to PBL moist static energy based on IFS documentation
Feb 26, 2024
8dc6fa4
Add comments in code to explain why this change was made
Feb 26, 2024
8aca9ec
Merge pull request #19 from NEPTUNE/18-fix-to-tiedtke-shallow-convection
Feb 26, 2024
0e6fcad
Bug fixes in physics/cu_gf_deep.F90 and physics/module_nst_water_prop…
climbfuji May 8, 2024
2d6fe53
Merge pull request #21 from NEPTUNE/feature/bugfix/implicit_notype_gcc12
May 17, 2024
841432f
Copy Tiedtke convection modifications to a separate branch where only…
Jul 17, 2024
53b9502
More comments and respacing
Jul 17, 2024
3115ead
Remove shallow convection partitioning flag, since it requires change…
Jul 17, 2024
e6f611f
Isolate some tuning parameters. More comments
Jul 17, 2024
7583a51
Minor updates to comments
Aug 14, 2024
619ce36
Merge pull request #22 from NEPTUNE/20-tiedtke-comments-and-spacing
areinecke Aug 15, 2024
20fa4b2
#23 Fix ccpp_instance dimensions, inconsistent units in GFS_debug
matusmartini Aug 26, 2024
1458d05
#23 Print data for the first CCPP instance
matusmartini Aug 27, 2024
9e5261d
#23 Make debug prints CCPP_instance specific
matusmartini Aug 27, 2024
550eb79
#23 Fix indexing for ccpp instances
matusmartini Aug 27, 2024
be42705
#23 Fix dimensions to ccpp_block_count or number_of_openmp_threads. …
matusmartini Aug 28, 2024
71008e9
#23 Revert meta file changes for openmp threads. Thanks to Dom Heinz…
matusmartini Aug 28, 2024
36e16fc
Merge pull request #24 from NEPTUNE/23-fix-ccpp-debug
Aug 28, 2024
ab0dbb4
Add physics/NRL_parse_tracers.F90 as a replacement for GFDL_parse_tra…
climbfuji Sep 19, 2024
a974d55
Remove physics/{GFDL,NRL}_parse_tracers.F90 (#27)
climbfuji Sep 27, 2024
4b28674
Adjust tiedtke tuning parameters based on NEPTUNE testing and
Oct 1, 2024
a859362
Merge pull request #28 from NEPTUNE/feature/neptune_tiedtke_tune
areinecke Oct 2, 2024
3567e07
Update cu_ntiedtke.F90: add comments for recent tuning parameter changes
climbfuji Oct 3, 2024
155017f
Merge pull request #29 from NEPTUNE/feature/tiedtke_comments_tuning_p…
Oct 3, 2024
f7a3352
Bug fix in physics/module_sf_noahmp_glacier.F90: only compute glacier…
climbfuji Oct 8, 2024
6dd4e4c
Merge pull request #30 from NEPTUNE/bugfix/noahmp_snowalb_bats_glacier
climbfuji Oct 9, 2024
dcf95d4
Make aero_dir_fdb, smoke_ext and dust_ext optional in physics/GFS_rrt…
climbfuji Oct 23, 2024
ff94e24
Fix incorrect declaration of dtend array in metadata files (active ->…
climbfuji Oct 23, 2024
21b2a2e
Merge pull request #31 from NEPTUNE/feature/support_ccpp_framework_up…
climbfuji Oct 31, 2024
bb63523
Add physics/GFS_phys_time_vary.neptune.{F90,meta}, physics/GFS_rad_ti…
climbfuji Nov 1, 2024
6bd1253
Merge pull request #33 from NEPTUNE/feature/add_neptune_interstitials
climbfuji Nov 6, 2024
b218611
In CMakeLists.txt, apply Intel classic compiler settings to Intel LLV…
climbfuji Nov 15, 2024
f5bc660
Merge pull request #34 from NEPTUNE/feature/support_for_ifx
climbfuji Nov 15, 2024
a12ba45
Update GFS_debug to work with contiguous data (no more GFS_data, and …
climbfuji Nov 28, 2024
d0c02a7
Merge pull request #35 from NEPTUNE/feature/update_gfs_debug_contiguo…
climbfuji Dec 2, 2024
9702614
Bug fix in physics/ugwp_driver_v0.F to prevent using uninitialized Bn…
climbfuji Dec 3, 2024
8fd82e8
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Dec 4, 2024
87880be
Merge pull request #36 from NEPTUNE/bugfix/ugwp_driver_v0_uninit
climbfuji Dec 4, 2024
933819b
Update .gitmodules to point to NRL Enterprise GitHub mirror of rte-rr…
climbfuji Dec 9, 2024
3c59f08
Merge pull request #38 from NEPTUNE/feature/mirror_rte_rrtmgp_dtc_ccpp
climbfuji Dec 10, 2024
c80f1e1
Update physics/radiation_astronomy.f, physics/GFS_rrtmg_setup.F90, ph…
climbfuji Dec 30, 2024
5f3772e
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Jan 1, 2025
c410f2d
Add physics/mpiutil.F90
climbfuji Jan 2, 2025
eadc317
Add reading of input data with mpiroot for physics/radiation_aerosols…
climbfuji Jan 2, 2025
d637aea
physics/mpiutil.F90: fix 'use mpi' statement and convert to Unix line…
climbfuji Jan 2, 2025
2a4bc21
Update physics/GFS_phys_time_vary.neptune.* physics/GFS_radiation_sur…
climbfuji Jan 2, 2025
5be8f7f
Update physics/aerinterp.F90, physics/cires_tauamf_data.F90, physics/…
climbfuji Jan 2, 2025
dcd472c
Remove bad 'endif' in physics/aerinterp.F90
climbfuji Jan 2, 2025
7d4dd74
Fix wrong broadcast logic in physics/radiation_gases.f
climbfuji Jan 3, 2025
8dfa969
Remove debugging prints from physics/radiation_gases.f
climbfuji Jan 3, 2025
aa7b328
Update physics/mpiutil.F90
climbfuji Jan 3, 2025
f83d527
Merge pull request #3 from NEPTUNE/feature/radiation_astronomy_read_s…
climbfuji Jan 3, 2025
e4e3e55
Revert NRL bug fix for cosz==0 in module_sf_noahmp_glacier.F90 and ap…
climbfuji Mar 7, 2025
6deee54
Update cmake build to support NEPTUNE cmake (aka use modern cmake and…
climbfuji Mar 12, 2025
e4c4d47
Update CMakeLists.txt with changes from UFS (#9)
climbfuji Mar 21, 2025
7a83488
In physics/GFS_phys_time_vary.neptune.F90, read data outside of OpenM…
climbfuji May 9, 2025
999d69a
#15 Remove option 101 in MYNN PBL
matusmartini May 19, 2025
4164423
Merge pull request #16 from NEPTUNE/15-remove-101-option-in-mynn
areinecke May 20, 2025
a65891a
Add support for LLVM clang/clang++/flang; run basic checks in GitHub …
climbfuji May 21, 2025
579e4c3
Update modulefiles/** to spack-stack-dev-20250701 (#25)
climbfuji Jul 2, 2025
c6cad28
CCPP v7.0.0 Update (#31)
Sep 25, 2025
6a34d00
#28 Use mpi_f08 and update mpi communicator variables respecitvely in
matusmartini Aug 29, 2025
b83e42b
Remove ifdef mpi block
matusmartini Oct 3, 2025
ac01657
Bring pre-v7 updates to mpi_f08 to mp_thompson_post.F90
matusmartini Oct 3, 2025
9764f45
#28 Remove ifdef MPI blocks but keep those that are in NCAR main
matusmartini Oct 6, 2025
1bdb157
#28 Remove ifdef MPI blocks from machine.F Also remove it from
matusmartini Oct 6, 2025
b5d3421
Trigger CI
climbfuji Oct 8, 2025
9d3e2ca
Update spack-stack to spack-stack-dev-20251002 (#35)
climbfuji Oct 8, 2025
585f0f3
Merge branch 'neptune' into 28-mpi-comm-v7
climbfuji Oct 9, 2025
a1dbf1a
Merge pull request #34 from NEPTUNE/28-mpi-comm-v7
areinecke Oct 10, 2025
9f3bb04
Disable OpenMP for certain computations in init phase in physics/Radi…
climbfuji Nov 5, 2025
dafb18a
Multiple cumulative bucket periods (#38)
Nov 12, 2025
34022e1
Enable GitHub actions testing on Atlantis
climbfuji Dec 9, 2025
7a85a7d
physics/CONV/Grell_Freitas/cu_gf_deep.F90: NRL update to use ECMWF ve…
climbfuji Dec 9, 2025
6a5f1b8
Update physics/CONV/nTiedtke/cu_ntiedtke.F90 with NCAR ccpp-physics m…
climbfuji Dec 9, 2025
5788909
Update comments in physics/CONV/SAMF/samfdeepcnv.f and physics/CONV/S…
climbfuji Dec 9, 2025
a41987e
physics/GWD/cires_ugwpv1_oro.F90: ccpp_external_abort
climbfuji Dec 9, 2025
29c23a9
Original commit 45013beb798387400bd7b33a46518587ee2a5614: physics/GWD…
climbfuji Dec 9, 2025
fa73cab
Bug fix in physics/GWD/ugwp_driver_v0.F to prevent using uninitialize…
climbfuji Dec 4, 2024
814ba57
Multiple cumulative bucket periods (#38)
Nov 12, 2025
21fda72
Update physics/Interstitials/UFS_SCM_NEPTUNE/GFS_debug.* to use chunk…
climbfuji Feb 27, 2024
b68f035
physics/Interstitials/UFS_SCM_NEPTUNE/GFS_debug.F90: remove unneeded …
climbfuji Dec 9, 2025
5b147a9
Add Interstitials/UFS_SCM_NEPTUNE/{GFS_phys_time_vary.neptune.*,GFS_r…
climbfuji Dec 9, 2025
638adec
Disable OpenMP for certain computations in init phase in physics/Radi…
climbfuji Nov 5, 2025
1488a97
Change indices i3 and j3 in routine aer_property in radiation_aerosol…
climbfuji Jun 4, 2025
0c7543a
Read and broadcast initial data with mpiroot; use mpi_f08,
climbfuji Dec 9, 2025
12eb40d
physics/Interstitials/UFS_SCM_NEPTUNE/GFS_suite_stateout_update.meta:…
climbfuji Dec 9, 2025
d7a9b0a
physics/Interstitials/UFS_SCM_NEPTUNE/GFS_surface_composites_inter.*:…
climbfuji Dec 9, 2025
65ae404
physics/Interstitials/UFS_SCM_NEPTUNE/gcycle.F90: ifdef out INTERNAL_…
climbfuji Dec 9, 2025
969c9e9
Remove unused variables from physics/Interstitials/UFS_SCM_NEPTUNE/ma…
climbfuji Dec 9, 2025
e7ef2c5
physics/Interstitials/UFS_SCM_NEPTUNE/sfcsub.F: ccpp_external_abort, …
climbfuji Dec 9, 2025
bfae14c
Remove physics/MP/GFDL/GFDL_parse_tracers.F90; ccpp_external_abort in…
climbfuji Dec 9, 2025
5857979
Clean up CMakeLists.txt: mpi_f08, cmake@3.18, fix flags, neptune-atmo…
climbfuji Dec 9, 2025
8c062c5
.gitmodules: point to NRL Enterprise GitHub for RTE-RRTMGP submodule
climbfuji Dec 9, 2025
85bee47
.gitignore: add VIM swap files
climbfuji Dec 9, 2025
cee382e
physics/MP/Morrison_Gettelman/*.F*: ccpp_external_abort
climbfuji Dec 9, 2025
44aec62
physics/MP/Thompson/*: do_cloud_tuning, multi-instance, ccpp_external…
climbfuji Dec 9, 2025
913e1f5
physics/PBL/SATMEDMF/satmedmfvdifq.*: turbulent_mixing_length argumen…
climbfuji Dec 9, 2025
8dd9379
physics/Radiation/mersenne_twister.f, physics/Radiation/RRTMG/rad?w_m…
climbfuji Dec 9, 2025
6cd44f4
physics/Radiation/radiation_clouds.f
climbfuji Dec 9, 2025
4109391
physics/SFC_Layer/MYNN/module_sf_mynn.F90: ISFTCFLX 5 option COAMPSTC…
climbfuji Dec 9, 2025
f9ba253
physics/SFC_Models/Land/Noah/set_soilveg.f
climbfuji Dec 9, 2025
98a96a3
physics/SFC_Models/Land/Noah/surface_perturbation.F90: cdfgam call wi…
climbfuji Dec 9, 2025
9d04ed6
physics/SFC_Models/Land/Noahmp/module_sf_noahmp_glacier.F90: bug fix …
climbfuji Dec 9, 2025
e425e1f
physics/SFC_Models/Land/RUC/module_sf_ruclsm.F90, physics/SFC_Models/…
climbfuji Dec 9, 2025
0c557ff
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Dec 9, 2025
1133b55
physics/Interstitials/UFS_SCM_NEPTUNE/GFS_surface_composites_inter.F9…
climbfuji Dec 9, 2025
aa96c61
physics/Interstitials/UFS_SCM_NEPTUNE/gcycle.F90: one additional ccpp…
climbfuji Dec 9, 2025
bc07f3a
Merge pull request #40 from NEPTUNE/bugfix/repair_neptune_git_commit_…
climbfuji Dec 10, 2025
65e1b23
Replace ccpp_external_abort with correct CCPP method to set errmsg and
climbfuji Dec 12, 2025
1ca1316
Fix ancient fixed-line length compile errors in physics/Radiation/rad…
climbfuji Dec 12, 2025
a41691d
Merge pull request #46 from NEPTUNE/feature/replace_ccpp_external_abo…
climbfuji Dec 13, 2025
d1b0fc0
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
climbfuji Dec 15, 2025
97bc274
number_of_coefficients_in_ozone_data --> number_of_coefficients_in_oz…
climbfuji Dec 16, 2025
e6a0d6e
Bug fixes after merging NCAR main
climbfuji Dec 16, 2025
b87e494
Fix stupid bug in physics/Radiation/radiation_gases.f: add back in ac…
climbfuji Dec 19, 2025
4b74cc2
Apply suggestions from code review
climbfuji Dec 30, 2025
f6920b9
Merge pull request #49 from NEPTUNE/feature/ccpp_phys_update_from_nca…
climbfuji Dec 30, 2025
9928ea7
physics/SFC_Models/Land/Noahmp/lnd_iau_mod.F90: close namelist file w…
climbfuji Dec 31, 2025
4cafa4e
physics/GWD/cires_ugwp_module.F90: if opening the namelist file fails…
climbfuji Dec 31, 2025
c8d9d22
Merge pull request #51 from NEPTUNE/bugfix/ugwp_check_file_open_and_l…
climbfuji Dec 31, 2025
04250fa
Update to spack-stack-2.0.0, remove upstream pull request and issue t…
climbfuji Jan 6, 2026
a4ad5e8
Merge branch 'main' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp-ph…
climbfuji Jan 6, 2026
a957447
physics/Interstitials/UFS_SCM_NEPTUNE/GFS_*.neptune.meta: relative_pa…
climbfuji Jan 6, 2026
50b1cfc
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Jan 7, 2026
3866032
Merge pull request #53 from NEPTUNE/feature/update_neptune_from_upstr…
climbfuji Jan 7, 2026
7cc1a02
Bug fixes in physics/Interstitials/UFS_SCM_NEPTUNE/GFS_time_vary_pre.…
climbfuji Jan 7, 2026
e593b69
Restore original .github/workflows/basic_checks.yml, use separate .gi…
climbfuji Jan 7, 2026
2fa3f81
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Jan 8, 2026
0ce4bad
In physics/Radiation/radiation_astronomy.f, replace hardcoded zero wi…
climbfuji Jan 8, 2026
b509657
Merge branch 'neptune' of https://github.nrlmry.navy.mil/NEPTUNE/ccpp…
climbfuji Jan 12, 2026
7119c2e
Merge branch 'feature/bugfix_time_vary_pre_errmsg_w3kind' of https://…
climbfuji Jan 12, 2026
bd5df95
Update GitHub actions test name for Atlantis
climbfuji Jan 12, 2026
5dede78
Merge pull request #54 from NEPTUNE/feature/bugfix_time_vary_pre_errm…
climbfuji Jan 13, 2026
14ea6cd
Prevent division by zero when applying free convection adjustment in…
Jan 16, 2026
75dce13
Merge pull request #56 from NEPTUNE/55-bug-division-by-zero-in-module…
areinecke Jan 16, 2026
6ed470f
Merge branch 'neptune' into gwd_latr_merge
matusmartini Jan 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 0 additions & 33 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

20 changes: 0 additions & 20 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

21 changes: 0 additions & 21 deletions .github/pull_request_template.md

This file was deleted.

32 changes: 32 additions & 0 deletions .github/workflows/atlantis_basic_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Basic checks for CCPP physics schemes

on:
workflow_dispatch:
pull_request:
branches:
- release/*
- neptune
types: [opened, synchronize, reopened]

jobs:
basic-checks:
#if: github.repository == 'NCAR/ccpp-physics' || github.repository == 'ufs-community/ccpp-physics'

#runs-on: macos-latest
runs-on: ['self-hosted','neptune-org-atlantis']

steps:
- name: Checkout
uses: actions/checkout@v2
- name: Init submodules
run: git submodule update --init --recursive
#- name: Update packages
# run: |
# /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# #brew install autoconf automake coreutils gcc@9 libtool mpich gnu-sed wget
# brew install automake coreutils mpich gnu-sed
- name: Check for ASCII encoding
run: |
module use ${PWD}/modulefiles
module load atlantis/llvm-21.1.0
./tools/check_encoding.py
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
# Auto-generated include files in Fortran code
*.inc

# VIM swap files
*.swp
*.swo
*.swn
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[submodule "physics/Radiation/RRTMGP/rte-rrtmgp"]
path = physics/Radiation/RRTMGP/rte-rrtmgp
url = https://github.com/NCAR/rte-rrtmgp
url = https://github.nrlmry.navy.mil/NEPTUNE/rte-rrtmgp
branch = main
[submodule "physics/MP/TEMPO/TEMPO"]
path = physics/MP/TEMPO/TEMPO
url = https://github.com/NCAR/TEMPO
url = https://github.nrlmry.navy.mil/NEPTUNE/TEMPO
branch = main
32 changes: 22 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -173,21 +173,33 @@ if(CMAKE_BUILD_TYPE STREQUAL "Release" AND (${CMAKE_Fortran_COMPILER_ID} STREQUA
# Need to determine the name of the scheme with its path
list(FILTER SCHEMES_TMP INCLUDE REGEX ".*${SCHEME_NAME}$")
SET_SOURCE_FILES_PROPERTIES(${SCHEMES_TMP}
APPEND_STRING PROPERTY COMPILE_FLAGS
" ${CMAKE_Fortran_FLAGS_PHYSICS} ${OpenMP_Fortran_FLAGS} -O1")
APPEND_STRING PROPERTY COMPILE_FLAGS " -O1")
endforeach()
endif()

# No optimization for certain schemes when compiling with Intel in Release mode
if(CMAKE_BUILD_TYPE STREQUAL "Release" AND (${CMAKE_Fortran_COMPILER_ID} STREQUAL "Intel" OR ${CMAKE_Fortran_COMPILER_ID} STREQUAL "IntelLLVM"))
# Define a list of schemes that can't be optimized with Intel in Release mode
set(SCHEME_NAMES_NO_OPTIMIZATION GFS_typedefs.F90)
set(SCHEME_NAMES_NO_OPTIMIZATION aerinterp.F90
GFS_typedefs.F90)
foreach(SCHEME_NAME IN LISTS SCHEME_NAMES_NO_OPTIMIZATION)
set(SCHEMES_TMP ${SCHEMES})
# Need to determine the name of the scheme with its path
list(FILTER SCHEMES_TMP INCLUDE REGEX ".*${SCHEME_NAME}$")
SET_SOURCE_FILES_PROPERTIES(${SCHEMES_TMP}
APPEND_STRING PROPERTY COMPILE_FLAGS " ${CMAKE_Fortran_FLAGS_PHYSICS} ${OpenMP_Fortran_FLAGS} -O0")
APPEND_STRING PROPERTY COMPILE_FLAGS " -O0")
endforeach()
endif()

if(${CMAKE_Fortran_COMPILER_ID} STREQUAL "GNU")
# Define a list of schemes that can't be compiled with GNU's range check
set(SCHEME_NAMES_NO_RANGE_CHECK mersenne_twister.f)
foreach(SCHEME_NAME IN LISTS SCHEME_NAMES_NO_RANGE_CHECK)
set(SCHEMES_TMP ${SCHEMES})
# Need to determine the name of the scheme with its path
list(FILTER SCHEMES_TMP INCLUDE REGEX ".*${SCHEME_NAME}$")
SET_SOURCE_FILES_PROPERTIES(${SCHEMES_TMP}
APPEND_STRING PROPERTY COMPILE_FLAGS " -fno-range-check")
endforeach()
endif()

Expand All @@ -207,12 +219,12 @@ target_include_directories(ccpp_physics PUBLIC

target_link_libraries(ccpp_physics PRIVATE MPI::MPI_Fortran)
target_link_libraries(ccpp_physics PUBLIC w3emc::w3emc_d
sp::sp_d
NetCDF::NetCDF_Fortran
)
#add FMS for FV3 only
if(FV3 OR MPAS)
target_link_libraries(ccpp_physics PUBLIC fms)
NetCDF::NetCDF_Fortran)
target_link_libraries(ccpp_physics PRIVATE ESMF::ESMF)

if(HA_PHYSICS)
target_link_libraries(ccpp_physics PRIVATE msis)
target_link_libraries(ccpp_physics PRIVATE iri)
endif()

# Define where to install the library
Expand Down
26 changes: 26 additions & 0 deletions modulefiles/atlantis/llvm-21.1.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#%Module
#
# neptune-atmos wrapper module
#

proc ModulesHelp {} {
puts -nonewline stderr "Load neptune-atmos environment on Atlantis for spack-stack with clang-21.1.0"
}

module-whatis "neptune-atmos environment"

# Conflicts
conflict atlantis

# Prerequisite modules
module purge
prepend-path MODULEPATH /gpfs/neptune/spack-stack/llvm-21.1.0/modulefiles
prepend-path MODULEPATH /gpfs/neptune/spack-stack/openmpi-4.1.8/llvm-21.1.0/modulefiles
module load slurm

# spack-stack modules
prepend-path MODULEPATH /gpfs/neptune/spack-stack/spack-stack-2.0.0/envs/ne-clang-21.1.0/modules/Core
module load stack-llvm/21.1.0
module load stack-openmpi/4.1.8
module load python/3.11.11
module load cmake/3.31.8
7 changes: 4 additions & 3 deletions physics/CONV/Grell_Freitas/cu_gf_deep.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1375,8 +1375,9 @@ subroutine cu_gf_deep_run( &
tau_ecmwf (:) = 0.
!$acc end kernels
!- way to calculate the fraction of cape consumed by shallow convection
!iversion=1 ! ecmwf
iversion=0 ! orig
!NRL?
iversion=1 ! ecmwf
!iversion=0 ! orig
!
! betchold et al 2008 time-scale of cape removal
!
Expand Down Expand Up @@ -2534,7 +2535,7 @@ subroutine fct1d3 (ktop,n,dt,z,tracr,massflx,trflx_in,dellac,g)
! 'final', tracr(k)-(trflx_out(k+1)-trflx_out(k))*dtovdz(k)
! 99 format ('(trc1d) k =',i4/(3(a13,'=',es13.6)))
! end do
if (error) stop '(fct1d error)'
if (error) call ccpp_external_abort('(fct1d error)')
end if
#endif

Expand Down
70 changes: 40 additions & 30 deletions physics/GWD/cires_tauamf_data.F90
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
module cires_tauamf_data

use machine, only: kind_phys
use mpi_f08
!...........................................................................................
! tabulated GW-sources: GRACILE/Ern et al., 2018 and/or Resolved GWs from C384-Annual run
!...........................................................................................
Expand All @@ -20,27 +21,28 @@ module cires_tauamf_data
contains

!>
subroutine read_tau_amf(me, master, errmsg, errflg)
subroutine read_tau_amf(mpicomm, mpirank, mpiroot, errmsg, errflg)

use netcdf
integer, intent(in) :: me, master
use netcdf
use mpiutil, only: ccpp_bcast
type(MPI_Comm), intent(in) :: mpicomm
integer, intent(in) :: mpirank, mpiroot
integer :: ncid, iernc, vid, dimid, status
integer :: k

character(len=*), intent(out) :: errmsg
integer, intent(out) :: errflg
!
iernc=NF90_OPEN(trim(ugwp_taufile), nf90_nowrite, ncid)
read_and_broadcast_1: if (mpirank==mpiroot) then
iernc=NF90_OPEN(trim(ugwp_taufile), nf90_nowrite, ncid)

if(iernc.ne.0) then
write(errmsg,'(*(a))') "read_tau_amf: cannot open file_limb_tab data-file ", &
trim(ugwp_taufile)
print *, 'cannot open ugwp-v1 tau-file=',trim(ugwp_taufile)
errflg = 1
return
else

endif

status = nf90_inq_dimid(ncid, "lat", DimID)
! if (status /= nf90_noerr) call handle_err(status)
Expand All @@ -50,28 +52,36 @@ subroutine read_tau_amf(me, master, errmsg, errflg)
status = nf90_inq_dimid(ncid, "days", DimID)
status = nf90_inquire_dimension(ncid, DimID, len =ntau_d2t )

if (me == master) print *, ntau_d1y, ntau_d2t, ' dimd of tau_ngw ugwp-v1 '
if (ntau_d2t .le. 0 .or. ntau_d1y .le. 0) then
print *, 'ugwp-v1 tau-file=', trim(ugwp_taufile)
print *, ' ugwp-v1: ', 'ntau_d2t=',ntau_d2t, 'ntau_d2t=',ntau_d1y
stop
endif

if (.not.allocated(ugwp_taulat)) allocate (ugwp_taulat(ntau_d1y ))
if (.not.allocated(days_limb)) allocate (days_limb(ntau_d2t))
if (.not.allocated(tau_limb)) allocate (tau_limb(ntau_d1y, ntau_d2t ))

iernc=nf90_inq_varid( ncid, 'DAYS', vid )
iernc= nf90_get_var( ncid, vid, days_limb)
iernc=nf90_inq_varid( ncid, 'LATS', vid )
iernc= nf90_get_var( ncid, vid, ugwp_taulat)
iernc=nf90_inq_varid( ncid, 'ABSMF', vid )
iernc= nf90_get_var( ncid, vid, tau_limb)

iernc=nf90_close(ncid)

endif

print *, ntau_d1y, ntau_d2t, ' dimd of tau_ngw ugwp-v1 '
if (ntau_d2t .le. 0 .or. ntau_d1y .le. 0) then
print *, 'ugwp-v1 tau-file=', trim(ugwp_taufile)
print *, ' ugwp-v1: ', 'ntau_d2t=',ntau_d2t, 'ntau_d2t=',ntau_d1y
errflg = 1
return
endif
endif read_and_broadcast_1

call ccpp_bcast(ntau_d1y, mpiroot, mpicomm, errflg)
call ccpp_bcast(ntau_d2t, mpiroot, mpicomm, errflg)

if (.not.allocated(ugwp_taulat)) allocate (ugwp_taulat(ntau_d1y ))
if (.not.allocated(days_limb)) allocate (days_limb(ntau_d2t))
if (.not.allocated(tau_limb)) allocate (tau_limb(ntau_d1y, ntau_d2t ))

read_and_broadcast_2: if (mpirank==mpiroot) then
iernc=nf90_inq_varid( ncid, 'DAYS', vid )
iernc= nf90_get_var( ncid, vid, days_limb)
iernc=nf90_inq_varid( ncid, 'LATS', vid )
iernc= nf90_get_var( ncid, vid, ugwp_taulat)
iernc=nf90_inq_varid( ncid, 'ABSMF', vid )
iernc= nf90_get_var( ncid, vid, tau_limb)
iernc=nf90_close(ncid)
endif read_and_broadcast_2

call ccpp_bcast(days_limb, mpiroot, mpicomm, errflg)
call ccpp_bcast(tau_limb, mpiroot, mpicomm, errflg)
call ccpp_bcast(ugwp_taulat, mpiroot, mpicomm, errflg)

end subroutine read_tau_amf

!>
Expand Down Expand Up @@ -153,7 +163,7 @@ subroutine tau_amf_interp(me, master, im, idate, fhour, j1_tau,j2_tau, ddy_j1, d
print *, ' Error in time-interpolation for tau_amf_interp '
print *, ' it1, it2, ntau_d2t ', it1, it2, ntau_d2t
print *, ' Error in time-interpolation see cires_tauamf_data.F90 '
stop
call ccpp_external_abort('')
endif

w2 = (fddd-days_limb(it1))/(days_limb(it2)-days_limb(it1))
Expand Down
7 changes: 7 additions & 0 deletions physics/GWD/cires_ugwp.F90
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,15 @@ subroutine cires_ugwp_init (me, master, nlunit, input_nml_file, logunit, &

if (do_ugwp .or. cdmbgwd(3) > 0.0) then
call cires_ugwpv0_mod_init (me, master, nlunit, input_nml_file, logunit, &
<<<<<<< HEAD
fn_nml2, lonr, levs, ak, bk, con_p0, dtp, &
cdmbgwd(1:2), cgwf, pa_rf_in, tau_rf_in)
=======
fn_nml2, lonr, latr, levs, ak, bk, con_p0, dtp, &
cdmbgwd(1:2), cgwf, pa_rf_in, tau_rf_in, &
errmsg, errflg)
if (errflg/=0) return
>>>>>>> neptune
else
write(errmsg,'(*(a))') "Logic error: cires_ugwp_init called but do_ugwp is false and cdmbgwd(3) <= 0"
errflg = 1
Expand Down
Loading