Skip to content

Commit

Permalink
Fixes for GSL cloud base height (711) and pressure (798) reproducibil…
Browse files Browse the repository at this point in the history
…ity issue. (NOAA-EMC#335)
  • Loading branch information
WenMeng-NOAA authored Jun 15, 2021
1 parent ce98991 commit bdfb57c
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions sorc/ncep_post.fd/CLDRAD.f
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,7 @@ SUBROUTINE CLDRAD
OPDEPTH, TMP,QSAT,RHUM,TCEXT,DELZ,DELY,DY_m
!
real FULL_CLD(IM,JM) !-- Must be dimensioned for the full domain
real, allocatable :: full_ceil(:,:), full_fis(:,:)
!
real dummy(IM,jsta:jend)
integer idummy(IM,jsta:jend)
Expand Down Expand Up @@ -2190,13 +2191,22 @@ SUBROUTINE CLDRAD
! "spread" onto the ajacent hills/peaks as very low ceilings
! (fog). In actuality, these hills/peaks may exist above the cloud
! layer.
allocate(full_ceil(IM,JM),full_fis(IM,JM))
DO J=JSTA,JEND
DO I=1,IM
full_ceil(i,j)=ceil(i,j)
full_fis(i,j)=fis(i,j)
ENDDO
ENDDO
CALL AllGETHERV(full_ceil)
CALL AllGETHERV(full_fis)
numr = 1
DO J=JSTA,JEND
DO I=1,IM
ceil_min = max( ceil(I,J)-FIS(I,J)*GI , 5.0) ! ceil_min in AGL
do jc = max(JSTA,J-numr),min(JEND,J+numr)
do jc = max(1,J-numr),min(JM,J+numr)
do ic = max(1,I-numr),min(IM,I+numr)
ceil_neighbor = max( ceil(ic,jc)-FIS(ic,jc)*GI , 5.0) ! ceil_neighbor in AGL
ceil_neighbor = max( full_ceil(ic,jc)-full_fis(ic,jc)*GI , 5.0) ! ceil_neighbor in AGL
ceil_min = min( ceil_min, ceil_neighbor )
enddo
enddo
Expand All @@ -2213,6 +2223,8 @@ SUBROUTINE CLDRAD
enddo
ENDDO
ENDDO
if (allocated(full_ceil)) deallocate(full_ceil)
if (allocated(full_fis)) deallocate(full_fis)

! GSD CLOUD BOTTOM HEIGHT
IF (IGET(711)>0) THEN
Expand Down

0 comments on commit bdfb57c

Please sign in to comment.