46 USE yomhook
,ONLY : lhook, dr_hook
47 USE parkind1
,ONLY : jprb
54 CHARACTER(LEN=10),
INTENT(IN) :: hgrid
55 REAL,
DIMENSION(:),
POINTER :: pgrid_par
56 REAL,
DIMENSION(:),
INTENT(IN) :: psea
57 INTEGER,
INTENT(IN) :: kzsfilter
58 REAL,
DIMENSION(:),
INTENT(INOUT) :: pzs
69 REAL,
DIMENSION(:,:),
ALLOCATABLE :: zzs
70 REAL,
DIMENSION(:,:),
ALLOCATABLE :: zsea
71 REAL(KIND=JPRB) :: zhook_handle
77 IF (lhook) CALL dr_hook(
'OROGRAPHY_FILTER',0,zhook_handle)
78 CALL
get_grid_dim(hgrid,
SIZE(pgrid_par),pgrid_par,grect,ix,iy)
85 IF (.NOT. grect .AND. lhook) CALL dr_hook(
'OROGRAPHY_FILTER',1,zhook_handle)
86 IF (.NOT. grect)
RETURN
88 IF (
SIZE(pzs) /= ix * iy .AND. lhook) CALL dr_hook(
'OROGRAPHY_FILTER',1,zhook_handle)
89 IF (
SIZE(pzs) /= ix * iy)
RETURN
101 zzs(jx,jy) = pzs( jx + (jy-1)*ix )
102 zsea(jx,jy) = psea( jx + (jy-1)*ix )
111 IF (kzsfilter>0) CALL
zsfilter(zzs,(1.-zsea),kzsfilter)
120 pzs( jx + (jy-1)*ix ) = zzs(jx,jy)
126 IF (lhook) CALL dr_hook(
'OROGRAPHY_FILTER',1,zhook_handle)
subroutine zsfilter(PZS, PMASK, KZSFILTER)
subroutine get_grid_dim(HGRID, KGRID_PAR, PGRID_PAR, ORECT, KDIM1, KDIM2)
subroutine orography_filter(HGRID, PGRID_PAR, PSEA, KZSFILTER, PZS)