Skip to content

Commit

Permalink
updates for fengsha
Browse files Browse the repository at this point in the history
  • Loading branch information
bbakernoaa committed Sep 15, 2023
1 parent f36a52c commit 3949a0c
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 9 deletions.
8 changes: 3 additions & 5 deletions ESMF/GOCART2G_GridComp/DU2G_GridComp/DU2G_GridCompMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -797,14 +797,12 @@ subroutine Run1 (GC, import, export, clock, RC)
if (associated(DU_EROD)) DU_EROD = f_erod_

case ('fengsha')
allocate(R_, mold=U10M, __STAT__)
allocate(H_w_, mold=U10M, __STAT__)

call DustEmissionFENGSHA (frlake, frsnow, lwi, slc, du_clay, du_sand, du_silt, &
du_ssm, du_rdrag, airdens(:,:,self%km), ustar, du_uthres, &
self%alpha, self%gamma, self%kvhmax, MAPL_GRAV, &
self%rhop, self%sdist, self%f_sdl, emissions_surface, H_w_, __RC__)
if (associated(DU_DPC)) DU_DPC = du_rdrag
if (associated(DU_SMC)) DU_SMC = H_w_
self%rhop, self%sdist, self%f_sdl, self%f_swc, emissions_surface, __RC__)

case ('ginoux')

call DustEmissionGOCART2G(self%radius*1.e-6, frlake, wet1, lwi, u10m, v10m, &
Expand Down
11 changes: 7 additions & 4 deletions Process_Library/GOCART2G_Process.F90
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ end function DustFluxV2HRatioMB95
! !INTERFACE:
subroutine DustEmissionFENGSHA(fraclake, fracsnow, oro, slc, clay, sand, silt, &
ssm, rdrag, airdens, ustar, uthrs, alpha, gamma, &
kvhmax, grav, rhop, distribution, drylimit_factor, emissions, h, rc)
kvhmax, grav, rhop, distribution, drylimit_factor, moist_correct, emissions, rc)

! !USES:
implicit NONE
Expand All @@ -327,9 +327,9 @@ subroutine DustEmissionFENGSHA(fraclake, fracsnow, oro, slc, clay, sand, silt,
real, dimension(:), intent(in) :: rhop ! soil class density [kg/m^3]
real, dimension(:), intent(in) :: distribution ! normalized dust binned distribution [1]
real, intent(in) :: drylimit_factor ! drylimit tuning factor from zender2003
real, intent(in) :: moist_correct ! moisture correction factor
! !OUTPUT PARAMETERS:
real, intent(out) :: emissions(:,:,:) ! binned surface emissions [kg/(m^2 sec)]
real, intent(out) :: h(:,:)
integer, intent(out) :: rc ! Error return code: __SUCCESS__ or __FAIL__

! !DESCRIPTION: Compute dust emissions using NOAA/ARL FENGSHA model
Expand All @@ -346,11 +346,13 @@ subroutine DustEmissionFENGSHA(fraclake, fracsnow, oro, slc, clay, sand, silt,
integer, dimension(2) :: ilb, iub
real :: alpha_grav
real :: fracland
real :: h
real :: kvh
real :: q
real :: rustar
real :: total_emissions
real :: u_sum, u_thresh
real :: smois

! !CONSTANTS:
real, parameter :: ssm_thresh = 1.e-02 ! emit above this erodibility threshold [1]
Expand Down Expand Up @@ -407,11 +409,12 @@ subroutine DustEmissionFENGSHA(fraclake, fracsnow, oro, slc, clay, sand, silt,

! Fecan moisture correction
! -------------------------
h(i,j) = moistureCorrectionFecan(slc(i,j), sand(i,j), clay(i,j), drylimit_factor)
smois = slc(i,j) * moist_correct
h = moistureCorrectionFecan(smois, sand(i,j), clay(i,j), drylimit_factor)

! Adjust threshold
! ----------------
u_thresh = uthrs(i,j) * h(i,j)
u_thresh = uthrs(i,j) * h

u_sum = rustar + u_thresh

Expand Down

0 comments on commit 3949a0c

Please sign in to comment.