Skip to content

Commit

Permalink
Merge pull request NCAR#10 from climbfuji/gmtb_develop_update_from_ma…
Browse files Browse the repository at this point in the history
…ster_20190920

gmtb/develop: update from master 2019/09/20
  • Loading branch information
climbfuji authored and DomHeinzeller committed Sep 24, 2019
2 parents c9d7d00 + df6c5ca commit 6293136
Show file tree
Hide file tree
Showing 10 changed files with 278 additions and 62 deletions.
3 changes: 2 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
[submodule "tests/produtil/NCEPLIBS-pyprodutil"]
path = tests/produtil/NCEPLIBS-pyprodutil
url = gerrit:NCEPLIBS-pyprodutil
url = https://github.com/NOAA-EMC/NCEPLIBS-pyprodutil
branch = port-2-hera
2 changes: 1 addition & 1 deletion CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

# These owners will be the default owners for everything in the repo.
#* @defunkt
* @climbfuji @llpcarson @grantfirl @JulieSchramm
* @climbfuji @tanyasmirnova

# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
Expand Down
4 changes: 2 additions & 2 deletions src/conf/module-setup.csh.inc
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ if ( { test -d /lfs3 } ) then
source /apps/lmod/lmod/init/$__ms_shell
endif
module purge
else if ( { test -d /scratch1 } ) then
else if ( { test -d /scratch1 -a ! -d /scratch } ) then
# We are on NOAA Hera
if ( ! { module help >& /dev/null } ) then
source /apps/lmod/lmod/init/$__ms_shell
endif
module purge
else if ( { test -d /scratch3 } ) then
else if ( { test -d /scratch3 -a -d /scratch } ) then
# We are on NOAA Theia
if ( ! { module help >& /dev/null } ) then
source /apps/lmod/lmod/init/$__ms_shell
Expand Down
4 changes: 2 additions & 2 deletions src/conf/module-setup.sh.inc
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@ if [[ -d /lfs3 ]] ; then
source /apps/lmod/lmod/init/$__ms_shell
fi
module purge
elif [[ -d /scratch1 ]] ; then
elif [[ -d /scratch1 && ! -d /scratch ]] ; then
# We are on NOAA Hera
if ( ! eval module help > /dev/null 2>&1 ) ; then
source /apps/lmod/lmod/init/$__ms_shell
fi
module purge
elif [[ -d /scratch3 ]] ; then
elif [[ -d /scratch3 && -d /scratch ]] ; then
# We are on NOAA Theia
if ( ! eval module help > /dev/null 2>&1 ) ; then
source /apps/lmod/lmod/init/$__ms_shell
Expand Down
70 changes: 70 additions & 0 deletions src/module_EARTH_GRID_COMP.F90
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,76 @@ SUBROUTINE EARTH_REGISTER(EARTH_GRID_COMP,RC_REG)
file=__FILE__)) &
return ! bail out
endif
!For MOM6 and WW3 variables to match:
if (.not.NUOPC_FieldDictionaryHasEntry( &
"eastward_partitioned_stokes_drift_1")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="eastward_partitioned_stokes_drift_1", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif

if (.not.NUOPC_FieldDictionaryHasEntry( &
"northward_partitioned_stokes_drift_1")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="northward_partitioned_stokes_drift_1", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif
if (.not.NUOPC_FieldDictionaryHasEntry( &
"eastward_partitioned_stokes_drift_2")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="eastward_partitioned_stokes_drift_2", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif
if (.not.NUOPC_FieldDictionaryHasEntry( &
"northward_partitioned_stokes_drift_2")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="northward_partitioned_stokes_drift_2", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif
if (.not.NUOPC_FieldDictionaryHasEntry( &
"eastward_partitioned_stokes_drift_3")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="eastward_partitioned_stokes_drift_3", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif

if (.not.NUOPC_FieldDictionaryHasEntry( &
"northward_partitioned_stokes_drift_3")) then
call NUOPC_FieldDictionaryAddEntry( &
standardName="northward_partitioned_stokes_drift_3", &
canonicalUnits="m s-1", &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
endif
! end of MOM6 and WW3 variables to match
if (.not.NUOPC_FieldDictionaryHasEntry( &
"inst_temp_height_surface")) then
call NUOPC_FieldDictionaryAddEntry( &
Expand Down
47 changes: 36 additions & 11 deletions src/module_MEDIATOR.F90
Original file line number Diff line number Diff line change
Expand Up @@ -5502,6 +5502,29 @@ subroutine MedPhase_prep_ocn(gcomp, rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'mean_prec_rate', &
is_local%wrap%FBAtm_o , 'mean_prec_rate', atmwgt, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

!-------------
! field_for_ocn = field_from_ice * ice_fraction
!-------------

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'net_heat_flx_to_ocn', &
is_local%wrap%FBIce_o , 'net_heat_flx_to_ocn', icewgt, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out


call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'mean_fresh_water_to_ocean_rate', &
is_local%wrap%FBIce_o , 'mean_fresh_water_to_ocean_rate', icewgt, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

! not used by mom, mom uses net, also mean_down_lw_flx not connected to ocn
! call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'mean_down_lw_flx', &
! is_local%wrap%FBAtm_o , 'mean_down_lw_flx', atmwgt, &
Expand All @@ -5518,6 +5541,13 @@ subroutine MedPhase_prep_ocn(gcomp, rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn , 'mean_sensi_heat_flx' , &
is_local%wrap%FBAccumAtmOcn, 'mean_sensi_heat_flx_atm_into_ocn', atmwgt1, &
is_local%wrap%FBAtm_o , 'mean_sensi_heat_flx' , wgtm01, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn , 'mean_net_lw_flx' , &
is_local%wrap%FBAtm_o , 'mean_down_lw_flx' , atmwgt1, &
is_local%wrap%FBAccumAtmOcn, 'mean_up_lw_flx_ocn', atmwgt1, &
Expand All @@ -5535,23 +5565,18 @@ subroutine MedPhase_prep_ocn(gcomp, rc)
! line=__LINE__, file=__FILE__)) return ! bail out

!-------------
! field_for_ocn = field_from_atm * (1-ice_fraction) + field_from_ice * (ice_fraction)
! field_for_ocn = field_from_ice * ice_fraction
!-------------

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'mean_prec_rate' , &
is_local%wrap%FBAtm_o , 'mean_prec_rate' , atmwgt, &
is_local%wrap%FBIce_o , 'mean_fresh_water_to_ocean_rate', icewgt, &
call fieldBundle_FieldMerge(is_local%wrap%FBforOcn, 'mean_salt_rate', &
is_local%wrap%FBIce_o , 'mean_salt_rate', icewgt, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn , 'mean_sensi_heat_flx' , &
is_local%wrap%FBAccumAtmOcn, 'mean_sensi_heat_flx_atm_into_ocn', atmwgt1, &
is_local%wrap%FBIce_o , 'net_heat_flx_to_ocn' , icewgt1, &
is_local%wrap%FBAtm_o , 'mean_sensi_heat_flx' , wgtm01, &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, file=__FILE__)) return ! bail out
!-------------
! field_for_ocn = field_from_atm * (1-ice_fraction) + field_from_ice * (ice_fraction)
!-------------

call fieldBundle_FieldMerge(is_local%wrap%FBforOcn , 'mean_zonal_moment_flx' , &
is_local%wrap%FBAccumAtmOcn, 'stress_on_air_ocn_zonal', atmwgt1, &
Expand Down
45 changes: 13 additions & 32 deletions tests/apps.def
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
# JET NOTE: We only list one jet generation (the oldest) because it
# takes too long to test all three generations.

# List of valid platforms and the human-readable names of each.
#PLATFORM xjet NAME xJet
#PLATFORM svjet NAME sJet and vJet
#PLATFORM tujet NAME uJet and tJet
#PLATFORM ujet.slurm NAME uJet SLURM Test
PLATFORM theia NAME Theia
#PLATFORM theia.intel NAME Theia (Intel compiler)
PLATFORM theia.slurm.intel NAME Theia (SLURM test)
PLATFORM hera NAME Hera
PLATFORM hera.intel NAME Hera (SLURM test)
PLATFORM wcoss1 NAME WCOSS Phase 1
PLATFORM wcoss2 NAME WCOSS Phase 2
PLATFORM wcoss_cray NAME WCOSS Cray
PLATFORM wcoss_dell_p3 NAME WCOSS Phase 3
#PLATFORM gaea NAME GAEA C3

# List of known apps and the compsets to run for each app.
APP NEMSfv3gfs COMPSETS -f
Expand All @@ -29,39 +22,27 @@ APP FV3GFS-GSDCHEM URL gerrit:EMC_FV3GFS-GSDCHEM

# Shell expressions that generate scrub space for a given $username
# on each platform.
#ON xjet SCRUB /lfs3/projects/hfv3gfs/$username/scrub/xjet
#ON svjet SCRUB /lfs3/projects/hfv3gfs/$username/scrub/svjet
#ON tujet SCRUB /lfs3/projects/hfv3gfs/$username/scrub/tujet
#ON ujet.slurm SCRUB /lfs3/projects/hfv3gfs/$username/scrub/ujet.slurm
ON theia SCRUB /scratch4/NCEPDEV/nems/scrub/$username
#ON theia.intel SCRUB /scratch4/NCEPDEV/nems/scrub/$username
ON theia SCRUB /scratch4/NCEPDEV/nems/scrub/$username
ON theia.slurm.intel SCRUB /scratch4/NCEPDEV/nems/scrub/$username
ON wcoss1 SCRUB /ptmpp1/$username
ON wcoss2 SCRUB /ptmpd3/$username
ON wcoss_cray SCRUB /gpfs/hps2/ptmp/$username
ON wcoss_dell_p3 SCRUB /gpfs/dell2/ptmp/$username
#ON gaea SCRUB $( ls -1d /lustre/f2/scratch/*/$username /lustre/f2/scratch/$username | head -1 )
ON hera SCRUB /scratch1/NCEPDEV/nems/$username
ON hera.intel SCRUB /scratch1/NCEPDEV/nems/$username
ON wcoss1 SCRUB /ptmpp1/$username
ON wcoss2 SCRUB /ptmpd3/$username
ON wcoss_cray SCRUB /gpfs/hps2/ptmp/$username
ON wcoss_dell_p3 SCRUB /gpfs/dell2/ptmp/$username

# List of apps to run on each platform.
#ON xjet APPS NEMSfv3gfs
#ON svjet APPS NEMSfv3gfs
#ON tujet APPS NEMSfv3gfs
#ON ujet.slurm APPS NEMSfv3gfs
ON theia APPS FV3-MOM6-CICE5
#ON theia.intel APPS NEMSfv3gfs FV3GFS-GSDCHEM
ON theia.slurm.intel APPS NEMSfv3gfs WW3-FV3
ON hera APPS FV3-MOM6-CICE5
ON hera.intel APPS NEMSfv3gfs WW3-FV3
ON wcoss1 APPS NEMSfv3gfs
ON wcoss2 APPS NEMSfv3gfs WW3-FV3
ON wcoss_cray APPS NEMSfv3gfs FV3GFS-GSDCHEM
ON wcoss_dell_p3 APPS NEMSfv3gfs
#ON gaea APPS NEMSfv3gfs

# Extra arguments to rt.sh for each platform
#ON xjet EXTRA_ARGS --temp-dir /lfs3/projects/hfv3gfs/$USER/scrub/xjet --project hfv3gfs --platform xjet
#ON svjet EXTRA_ARGS --temp-dir /lfs3/projects/hfv3gfs/$USER/scrub/svjet --project hfv3gfs --platform svjet
#ON ujet.slurm EXTRA_ARGS --temp-dir /lfs3/projects/hfv3gfs/$USER/scrub/ujet.slurm --project hfv3gfs --platform ujet.slurm
#ON tujet EXTRA_ARGS --temp-dir /lfs3/projects/hfv3gfs/$USER/scrub/tujet --project hfv3gfs --platform tujet
ON theia EXTRA_ARGS --platform theia
#ON theia.intel EXTRA_ARGS --platform theia.intel
ON theia.slurm.intel EXTRA_ARGS --platform theia.slurm.intel
#ON gaea EXTRA_ARGS --platform gaea.c3
ON hera EXTRA_ARGS --platform hera
ON hera.intel EXTRA_ARGS --platform hera.intel
18 changes: 8 additions & 10 deletions tests/commit.def
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
# Directory to receive the webpage with regression test results
#ON tujet WEBPAGE /lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
#ON ujet.slurm WEBPAGE /lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON theia WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
#ON theia.intel WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON theia WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON theia.slurm.intel WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss1 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss2 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss_cray WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss_dell_p3 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
#ON gaea WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON hera WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON hera.intel WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss1 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss2 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss_cray WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/
ON wcoss_dell_p3 WEBPAGE jetscp.rdhpcs.noaa.gov:/lfs3/projects/hfv3gfs/emc.nemspara/web/nems-commit/NUOPC/

USER ACCOUNT IS Ratko.Vasic
ROLE ACCOUNT IS emc.nemspara
Expand All @@ -17,7 +15,7 @@ ROLE ACCOUNT IS emc.nemspara
# to test the app's own NEMS
NEMS BRANCH IS commit_tmp

# app branch - branch to use for committing logs to each
# app branch - branch to use for committing logs to each
#APP BRANCH IS NUOPC-commit

# If relevant, the starting branch that we copy to make the app
Expand Down
Loading

0 comments on commit 6293136

Please sign in to comment.