Skip to content

Commit

Permalink
Merge pull request #3054 from ESMCI/jgfouca/branch-for-acme-split-201…
Browse files Browse the repository at this point in the history
…9-03-29

Jgfouca/branch for acme split 2019 03 29
Change list:

Features:

Implements remaining changes for gustiness feature for EAMv2
Support multiqueueing for sandiatoss3
Add a new 'B' test option to indicate a build-only test
Bug fixes:

Remove dependence on "mask" variables in the mapping files that are input to the gen_domain tool.
Fix some issues with downloading input files when checksum files are not set up
Fix kokkos build, Make logic needs to happen after macro include or else kokkos flags are lost
CIME fixes for PIO2
Use consistent casing (all-caps) for build_threaded value
Test suite: scripts-regression-tests
Test baseline:
Test namelist changes:
Test status: [bit for bit, roundoff, climate changing]

Fixes [CIME Github issue #]

User interface changes?:

Update gh-pages html (Y/N)?:

Code review: @jedwards4b
  • Loading branch information
jedwards4b authored Apr 2, 2019
2 parents be8138c + 833f8ae commit b48af76
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 39 deletions.
12 changes: 0 additions & 12 deletions driver-mct/cime_config/namelist_definition_drv.xml
Original file line number Diff line number Diff line change
Expand Up @@ -728,18 +728,6 @@
</values>
</entry>

<entry id="gust_fac">
<type>real</type>
<category>control</category>
<group>seq_infodata_inparm</group>
<desc>
wind gustiness factor
</desc>
<values>
<value>0.0D0</value>
</values>
</entry>

<entry id="atm_gnam" modify_via_xml="ATM_GRID">
<type>char</type>
<category>mapping</category>
Expand Down
18 changes: 4 additions & 14 deletions driver-mct/main/seq_flux_mct.F90
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@ module seq_flux_mct
real(r8), allocatable :: swdn (:) ! short wave, downward
real(r8), allocatable :: swup (:) ! short wave, upward
real(r8), allocatable :: prec (:) ! precip
real(r8), allocatable :: prec_gust (:) ! atm precip for convective gustiness (kg/m^3)

! Diurnal cycle variables wrt flux

Expand Down Expand Up @@ -331,9 +330,6 @@ subroutine seq_flux_init_mct(comp, fractions)
allocate(prec(nloc),stat=ier)
if(ier/=0) call mct_die(subName,'allocate prec',ier)
prec = 0.0_r8
allocate(prec_gust(nloc),stat=ier)
if(ier/=0) call mct_die(subName,'allocate prec_gust',ier)
prec_gust = 0.0_r8
allocate(fswpen(nloc),stat=ier)
if(ier/=0) call mct_die(subName,'allocate fswpen',ier)
fswpen = 0.0_r8
Expand Down Expand Up @@ -905,7 +901,6 @@ subroutine seq_flux_atmocnexch_mct( infodata, atm, ocn, fractions_a, fractions_o
integer(in) :: index_sumwt
integer(in) :: atm_nx,atm_ny,ocn_nx,ocn_ny
real(r8) :: wt
real(r8) :: gust_fac = huge(1.0_r8) !wind gust factor
integer(in) :: tod, dt
logical,save:: first_call = .true.
logical :: read_restart ! .true. => model starting from restart
Expand Down Expand Up @@ -936,8 +931,7 @@ subroutine seq_flux_atmocnexch_mct( infodata, atm, ocn, fractions_a, fractions_o
atm_nx=atm_nx, atm_ny=atm_ny, &
ocn_nx=ocn_nx, ocn_ny=ocn_ny, &
ocn_prognostic=ocn_prognostic, &
flux_diurnal=flux_diurnal, &
gust_fac = gust_fac )
flux_diurnal=flux_diurnal)

cold_start = .false. ! use restart data or data from last timestep

Expand Down Expand Up @@ -1023,7 +1017,7 @@ subroutine seq_flux_atmocnexch_mct( infodata, atm, ocn, fractions_a, fractions_o
duu10n,ustar, re , ssq , missval = 0.0_r8, &
cold_start=cold_start)
else
call shr_flux_atmocn (nloc_a2o , zbot , ubot, vbot, thbot, prec_gust, gust_fac, &
call shr_flux_atmocn (nloc_a2o , zbot , ubot, vbot, thbot, &
shum , shum_16O , shum_HDO, shum_18O, dens , tbot, uocn, vocn , &
tocn , emask, sen , lat , lwup , &
roce_16O, roce_HDO, roce_18O, &
Expand Down Expand Up @@ -1187,7 +1181,6 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao)
logical :: flux_albav ! flux avg option
logical :: dead_comps ! .true. => dead components are used
integer(in) :: n ! indices
real(r8) :: gust_fac = huge(1.0_r8) !wind gust factor
integer(in) :: nloc, nloca, nloco ! number of gridcells
logical,save:: first_call = .true.
logical :: cold_start ! .true. to initialize internal fields in shr_flux diurnal
Expand All @@ -1209,8 +1202,7 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao)
flux_albav=flux_albav, &
dead_comps=dead_comps, &
ocn_prognostic=ocn_prognostic, &
flux_diurnal=flux_diurnal, &
gust_fac = gust_fac )
flux_diurnal=flux_diurnal)

cold_start = .false. ! use restart data or data from last timestep

Expand Down Expand Up @@ -1329,7 +1321,6 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao)
uGust(n)= 0.0_r8
lwdn(n) = 0.0_r8
prec(n) = 0.0_r8
prec_gust(n) = 0.0_r8
fswpen(n)= 0.0_r8
ocnsal(n)= 0.0_r8

Expand Down Expand Up @@ -1387,7 +1378,6 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao)
& + a2x%rAttr(index_a2x_Faxa_rainl,n) &
& + a2x%rAttr(index_a2x_Faxa_snowc,n) &
& + a2x%rAttr(index_a2x_Faxa_snowl,n)
prec_gust (n) = a2x%rAttr(index_a2x_Faxa_rainc,n)
fswpen(n)= o2x%rAttr(index_o2x_So_fswpen ,n)
ocnsal(n)= o2x%rAttr(index_o2x_So_s ,n)

Expand Down Expand Up @@ -1436,7 +1426,7 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao)
!duu10n,ustar, re , ssq, missval = 0.0_r8 )
cold_start=cold_start)
else
call shr_flux_atmocn (nloc , zbot , ubot, vbot, thbot, prec_gust, gust_fac, &
call shr_flux_atmocn (nloc , zbot , ubot, vbot, thbot, &
shum , shum_16O , shum_HDO, shum_18O, dens , tbot, uocn, vocn , &
tocn , emask, sen , lat , lwup , &
roce_16O, roce_HDO, roce_18O, &
Expand Down
16 changes: 3 additions & 13 deletions driver-mct/shr/seq_infodata_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,6 @@ MODULE seq_infodata_mod
logical :: coldair_outbreak_mod ! (Mahrt & Sun 1995,MWR)
real(SHR_KIND_R8) :: flux_convergence ! atmocn flux calc convergence value
integer :: flux_max_iteration ! max number of iterations of atmocn flux loop
real(SHR_KIND_R8) :: gust_fac ! wind gustiness factor
character(SHR_KIND_CL) :: glc_renormalize_smb ! Whether to renormalize smb sent from lnd -> glc
real(SHR_KIND_R8) :: wall_time_limit ! force stop time limit (hours)
character(SHR_KIND_CS) :: force_stop_at ! when to force a stop (month, day, etc)
Expand Down Expand Up @@ -347,7 +346,6 @@ SUBROUTINE seq_infodata_Init( infodata, nmlfile, ID, pioid, cpl_tag)
logical :: coldair_outbreak_mod ! (Mahrt & Sun 1995,MWR)
real(SHR_KIND_R8) :: flux_convergence ! atmocn flux calc convergence value
integer :: flux_max_iteration ! max number of iterations of atmocn flux loop
real(SHR_KIND_R8) :: gust_fac ! wind gustiness factor
character(SHR_KIND_CL) :: glc_renormalize_smb ! Whether to renormalize smb sent from lnd -> glc
real(SHR_KIND_R8) :: wall_time_limit ! force stop time limit (hours)
character(SHR_KIND_CS) :: force_stop_at ! when to force a stop (month, day, etc)
Expand Down Expand Up @@ -417,7 +415,7 @@ SUBROUTINE seq_infodata_Init( infodata, nmlfile, ID, pioid, cpl_tag)
single_column, scmlat, force_stop_at, &
scmlon, logFilePostFix, outPathRoot, flux_diurnal,&
coldair_outbreak_mod, &
flux_convergence, flux_max_iteration, gust_fac ,&
flux_convergence, flux_max_iteration, &
perpetual, perpetual_ymd, flux_epbal, flux_albav, &
orb_iyear_align, orb_mode, wall_time_limit, &
orb_iyear, orb_obliq, orb_eccen, orb_mvelp, &
Expand Down Expand Up @@ -498,7 +496,6 @@ SUBROUTINE seq_infodata_Init( infodata, nmlfile, ID, pioid, cpl_tag)
coldair_outbreak_mod = .false.
flux_convergence = 0.0_SHR_KIND_R8
flux_max_iteration = 2
gust_fac = huge(1.0_SHR_KIND_R8)
glc_renormalize_smb = 'on_if_glc_coupled_fluxes'
wall_time_limit = -1.0
force_stop_at = 'month'
Expand Down Expand Up @@ -624,7 +621,6 @@ SUBROUTINE seq_infodata_Init( infodata, nmlfile, ID, pioid, cpl_tag)
infodata%flux_convergence = flux_convergence
infodata%coldair_outbreak_mod = coldair_outbreak_mod
infodata%flux_max_iteration = flux_max_iteration
infodata%gust_fac = gust_fac
infodata%glc_renormalize_smb = glc_renormalize_smb
infodata%wall_time_limit = wall_time_limit
infodata%force_stop_at = force_stop_at
Expand Down Expand Up @@ -945,7 +941,7 @@ SUBROUTINE seq_infodata_GetData_explicit( infodata, cime_model, case_name, case_
glc_g2lupdate, atm_aero, run_barriers, esmf_map_flag, &
do_budgets, do_histinit, drv_threading, flux_diurnal, &
coldair_outbreak_mod, &
flux_convergence, flux_max_iteration, gust_fac, &
flux_convergence, flux_max_iteration, &
budget_inst, budget_daily, budget_month, wall_time_limit, &
budget_ann, budget_ltann, budget_ltend , force_stop_at, &
histaux_a2x , histaux_a2x1hri, histaux_a2x1hr, &
Expand Down Expand Up @@ -1018,7 +1014,6 @@ SUBROUTINE seq_infodata_GetData_explicit( infodata, cime_model, case_name, case_
logical, optional, intent(out) :: coldair_outbreak_mod ! (Mahrt & Sun 1995, MWR)
integer, optional, intent(OUT) :: flux_max_iteration ! max number of iterations of atmocn flux loop

real(SHR_KIND_R8), optional, intent(OUT) :: gust_fac ! wind gustiness factor
character(len=*), optional, intent(OUT) :: glc_renormalize_smb ! Whether to renormalize smb sent from lnd -> glc
real(SHR_KIND_R8), optional, intent(OUT) :: wall_time_limit ! force stop wall time (hours)
character(len=*), optional, intent(OUT) :: force_stop_at ! force stop at next (month, day, etc)
Expand Down Expand Up @@ -1187,7 +1182,6 @@ SUBROUTINE seq_infodata_GetData_explicit( infodata, cime_model, case_name, case_
if ( present(coldair_outbreak_mod)) coldair_outbreak_mod = infodata%coldair_outbreak_mod
if ( present(flux_convergence)) flux_convergence = infodata%flux_convergence
if ( present(flux_max_iteration)) flux_max_iteration = infodata%flux_max_iteration
if ( present(gust_fac) ) gust_fac = infodata%gust_fac
if ( present(glc_renormalize_smb)) glc_renormalize_smb = infodata%glc_renormalize_smb
if ( present(wall_time_limit)) wall_time_limit= infodata%wall_time_limit
if ( present(force_stop_at) ) force_stop_at = infodata%force_stop_at
Expand Down Expand Up @@ -1453,7 +1447,7 @@ SUBROUTINE seq_infodata_PutData_explicit( infodata, cime_model, case_name, case_
glc_g2lupdate, atm_aero, esmf_map_flag, wall_time_limit, &
do_budgets, do_histinit, drv_threading, flux_diurnal, &
coldair_outbreak_mod, &
flux_convergence, flux_max_iteration, gust_fac, &
flux_convergence, flux_max_iteration, &
budget_inst, budget_daily, budget_month, force_stop_at, &
budget_ann, budget_ltann, budget_ltend , &
histaux_a2x , histaux_a2x1hri, histaux_a2x1hr, &
Expand Down Expand Up @@ -1524,7 +1518,6 @@ SUBROUTINE seq_infodata_PutData_explicit( infodata, cime_model, case_name, case_
logical, optional, intent(in) :: coldair_outbreak_mod
real(SHR_KIND_R8), optional, intent(IN) :: flux_convergence ! atmocn flux calc convergence value
integer, optional, intent(IN) :: flux_max_iteration ! max number of iterations of atmocn flux loop
real(SHR_KIND_R8), optional, intent(IN) :: gust_fac ! wind gustiness factor
character(len=*), optional, intent(IN) :: glc_renormalize_smb ! Whether to renormalize smb sent from lnd -> glc
real(SHR_KIND_R8), optional, intent(IN) :: wall_time_limit ! force stop wall time (hours)
character(len=*), optional, intent(IN) :: force_stop_at ! force a stop at next (month, day, etc)
Expand Down Expand Up @@ -1691,7 +1684,6 @@ SUBROUTINE seq_infodata_PutData_explicit( infodata, cime_model, case_name, case_
if ( present(coldair_outbreak_mod) ) infodata%coldair_outbreak_mod = coldair_outbreak_mod
if ( present(flux_convergence)) infodata%flux_convergence = flux_convergence
if ( present(flux_max_iteration)) infodata%flux_max_iteration = flux_max_iteration
if ( present(gust_fac) ) infodata%gust_fac = gust_fac
if ( present(glc_renormalize_smb)) infodata%glc_renormalize_smb = glc_renormalize_smb
if ( present(wall_time_limit)) infodata%wall_time_limit= wall_time_limit
if ( present(force_stop_at) ) infodata%force_stop_at = force_stop_at
Expand Down Expand Up @@ -1978,7 +1970,6 @@ subroutine seq_infodata_bcast(infodata,mpicom)
call shr_mpi_bcast(infodata%coldair_outbreak_mod, mpicom)
call shr_mpi_bcast(infodata%flux_convergence, mpicom)
call shr_mpi_bcast(infodata%flux_max_iteration, mpicom)
call shr_mpi_bcast(infodata%gust_fac, mpicom)
call shr_mpi_bcast(infodata%glc_renormalize_smb, mpicom)
call shr_mpi_bcast(infodata%wall_time_limit, mpicom)
call shr_mpi_bcast(infodata%force_stop_at, mpicom)
Expand Down Expand Up @@ -2637,7 +2628,6 @@ SUBROUTINE seq_infodata_print( infodata )
write(logunit,F0L) subname,'coldair_outbreak_mod = ', infodata%coldair_outbreak_mod
write(logunit,F0R) subname,'flux_convergence = ', infodata%flux_convergence
write(logunit,F0I) subname,'flux_max_iteration = ', infodata%flux_max_iteration
write(logunit,F0R) subname,'gust_fac = ', infodata%gust_fac
write(logunit,F0A) subname,'glc_renormalize_smb = ', trim(infodata%glc_renormalize_smb)
write(logunit,F0R) subname,'wall_time_limit = ', infodata%wall_time_limit
write(logunit,F0A) subname,'force_stop_at = ', trim(infodata%force_stop_at)
Expand Down

0 comments on commit b48af76

Please sign in to comment.