6 SUBROUTINE average1_ldb(KLUOUT,KNBLINES,PLAT,PLON,PVALUE,HTYPE,PNODATA)
43 USE modd_data_lake, ONLY : xboundgraddepth_ldb, xboundgradstatus_ldb
47 USE modi_get_mesh_index
50 USE yomhook
,ONLY : lhook, dr_hook
51 USE parkind1
,ONLY : jprb
58 INTEGER,
INTENT(IN) :: kluout
59 INTEGER,
INTENT(IN) :: knblines
60 REAL,
DIMENSION(:),
INTENT(IN) :: plat
61 REAL,
DIMENSION(:),
INTENT(IN) :: plon
62 REAL,
DIMENSION(:),
INTENT(IN) :: pvalue
63 CHARACTER(LEN=1),
INTENT(IN) :: htype
64 REAL,
OPTIONAL,
INTENT(IN) :: pnodata
69 REAL,
DIMENSION(:),
ALLOCATABLE :: zbound
71 INTEGER,
DIMENSION(NOVMX,SIZE(PLAT)) :: iindex
74 REAL,
DIMENSION(SIZE(PLAT)) :: zvalue
78 INTEGER :: jloop, jgrad, jover
79 REAL(KIND=JPRB) :: zhook_handle
85 IF (lhook) CALL dr_hook(
'AVERAGE1_LDB',0,zhook_handle)
90 ALLOCATE(zbound(
SIZE(xboundgraddepth_ldb)))
91 zbound(:) = xboundgraddepth_ldb(:)
94 ALLOCATE(zbound(
SIZE(xboundgradstatus_ldb)))
95 zbound(:) = xboundgradstatus_ldb(:)
98 CALL
abor1_sfx(
"AVERAGE1_LDB: HTYPE NOT SUPPORTED")
103 IF (present(pnodata))
THEN
104 zvalue(:) = pvalue(:)
106 CALL
get_mesh_index(kluout,knblines,plat,plon,iindex,zvalue,znodata)
117 DO jloop = 1 ,
SIZE(plat)
124 IF (iindex(jover,jloop)==0) cycle bloop
131 DO jgrad = 1,
SIZE(zbound)-1
132 IF (zcut.GT.zbound(jgrad) .AND. zcut.LE.zbound(jgrad+1))
THEN
133 xtng(iindex(1,jloop),jgrad) = xtng(iindex(1,jloop),jgrad) + 1
141 nsize(iindex(1,jloop))=nsize(iindex(1,jloop))+1
149 IF (lhook) CALL dr_hook(
'AVERAGE1_LDB',1,zhook_handle)
subroutine get_mesh_index(KLUOUT, KNBLINES, PLAT, PLON, KINDEX, PVALUE, PNODATA, KSSO, KISSOX, KISSOY)
subroutine average1_ldb(KLUOUT, KNBLINES, PLAT, PLON, PVALUE, HTYPE, PNODATA)
subroutine abor1_sfx(YTEXT)