Skip to content

Commit

Permalink
Merge pull request #452 from DeniseWorthen/bugfix/aoflux4ufs
Browse files Browse the repository at this point in the history
Fix aoflux for UFS
  • Loading branch information
jedwards4b authored Jun 24, 2024
2 parents f960f3e + 3737040 commit e84e8a1
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 10 deletions.
7 changes: 4 additions & 3 deletions mediator/esmFldsExchange_ufs_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -131,9 +131,10 @@ subroutine esmFldsExchange_ufs(gcomp, phase, rc)
deallocate(flds)

! from med: fields returned by the atm/ocn flux computation, otherwise unadvertised
allocate(flds(8))
flds = (/'So_tref ', 'So_qref ', 'So_ustar ', 'So_re ','So_ssq ', 'So_u10 ', &
'So_duu10n', 'Faox_lat '/)
allocate(flds(12))
flds = (/'So_tref ', 'So_qref ', 'So_ustar ', 'So_re ', 'So_ssq ', &
'So_u10 ', 'So_duu10n ', 'Faox_lat ', 'So_ugustOut ', 'So_u10withGust', &
'So_u10res ', 'Faxa_rainc '/)
do n = 1,size(flds)
fldname = trim(flds(n))
if (phase == 'advertise') then
Expand Down
14 changes: 8 additions & 6 deletions mediator/med_phases_aofluxes_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1075,9 +1075,9 @@ subroutine med_aofluxes_update(gcomp, aoflux_in, aoflux_out, rc)
taux=aoflux_out%taux, tauy=aoflux_out%tauy, tref=aoflux_out%tref, qref=aoflux_out%qref, &
ocn_surface_flux_scheme=ocn_surface_flux_scheme, &
add_gusts=add_gusts, &
duu10n=aoflux_out%duu10n, &
duu10n=aoflux_out%duu10n, &
ugust_out = aoflux_out%ugust_out, &
u10res = aoflux_out%u10res, &
u10res = aoflux_out%u10res, &
ustar_sv=aoflux_out%ustar, re_sv=aoflux_out%re, ssq_sv=aoflux_out%ssq, &
missval=0.0_r8)

Expand All @@ -1102,7 +1102,7 @@ subroutine med_aofluxes_update(gcomp, aoflux_in, aoflux_out, rc)
ocn_surface_flux_scheme=ocn_surface_flux_scheme, &
sen=aoflux_out%sen, lat=aoflux_out%lat, lwup=aoflux_out%lwup, evap=aoflux_out%evap, &
taux=aoflux_out%taux, tauy=aoflux_out%tauy, tref=aoflux_out%tref, qref=aoflux_out%qref, &
duu10n=aoflux_out%duu10n, &
duu10n=aoflux_out%duu10n, &
missval=0.0_r8)
#ifdef UFS_AOFLUX
end if
Expand All @@ -1111,7 +1111,7 @@ subroutine med_aofluxes_update(gcomp, aoflux_in, aoflux_out, rc)
#endif

do n = 1,aoflux_in%lsize
if (aoflux_in%mask(n) /= 0) then
if (aoflux_in%mask(n) /= 0) then
aoflux_out%u10(n) = aoflux_out%u10res(n)
aoflux_out%u10_withGust(n) = sqrt(aoflux_out%duu10n(n))
end if
Expand Down Expand Up @@ -1601,8 +1601,10 @@ subroutine set_aoflux_in_pointers(fldbun_a, fldbun_o, aoflux_in, lsize, xgrid, r
if (chkerr(rc,__LINE__,u_FILE_u)) return
call fldbun_getfldptr(fldbun_a, 'Sa_shum', aoflux_in%shum, xgrid=xgrid, rc=rc)
if (chkerr(rc,__LINE__,u_FILE_u)) return
call fldbun_getfldptr(fldbun_a, 'Faxa_rainc', aoflux_in%rainc, xgrid=xgrid, rc=rc)
if (chkerr(rc,__LINE__,u_FILE_u)) return
if (associated(aoflux_in%rainc)) then
call fldbun_getfldptr(fldbun_a, 'Faxa_rainc', aoflux_in%rainc, xgrid=xgrid, rc=rc)
if (chkerr(rc,__LINE__,u_FILE_u)) return
end if
end if

! extra fields for ufs.frac.aoflux
Expand Down
2 changes: 1 addition & 1 deletion ufs/ccpp/data/MED_typedefs.meta
Original file line number Diff line number Diff line change
Expand Up @@ -862,7 +862,7 @@
long_name = model 2m diagnostics use the temperature and humidity calculated by the lake model
units = flag
dimensions = ()
type = integer
type = logical
[lkm]
standard_name = control_for_lake_model_execution_method
long_name = control for lake model execution: 0=no lake, 1=lake, 2=lake+nsst
Expand Down

0 comments on commit e84e8a1

Please sign in to comment.