60 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PWG
61 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PWGI
62 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PDG
70 REAL,
DIMENSION(SIZE(PWG,1)) :: ZSUMPATCH
72 REAL(KIND=JPRB) :: ZHOOK_HANDLE
78 DO ji=1,np%AL(jp)%NSIZE_P
79 imask = np%AL(jp)%NR_P(ji)
80 zsumpatch(imask) = zsumpatch(imask) + np%AL(jp)%XPATCH(ji)
95 IF(zsumpatch(imask) > 0.)
THEN 97 zwork=max(0.0,pk%XDG(ji,3)-pk%XDG(ji,2))
98 pwg(imask,1) = pwg(imask,1) + pk%XPATCH(ji) * pek%XWG(ji,1) *
105 pdg(imask,1) = pdg(imask,1) + pk%XPATCH(ji) * pk%XDG(ji,1)
106 pdg(imask,2) = pdg(imask,2) + pk%XPATCH(ji) * pk%XDG(ji,2)
107 pdg(imask,3) = pdg(imask,3) + pk%XPATCH(ji) * pk%XDG(ji,3)
114 pwg(:,1) = pwg(:,1) / pdg(:,1)
115 pwgi(:,1) = pwgi(:,1) / pdg(:,1)
118 pwg(:,2) = pwg(:,2) / pdg(:,2)
119 pwgi(:,2) = pwgi(:,2) / pdg(:,2)
121 WHERE (pdg(:,3)-pdg(:,2)>0.0)
122 pwg(:,3) = pwg(:,3) / (pdg(:,3)-pdg(:,2))
123 pwgi(:,3) = pwgi(:,3) / (pdg(:,3)-pdg(:,2))
128 DO ji=1,np%AL(jp)%NSIZE_P
129 imask = np%AL(jp)%NR_P(ji)
130 pwg(imask,:) = npe%AL(1)%XWG (ji,:)
131 pwgi(imask,:) = npe%AL(1)%XWGI(ji,:)
132 pdg(imask,:) = np%AL (1)%XDG (ji,:)
integer, parameter nundef
subroutine avg_patch_wg(IO, NP, NPE, PWG, PWGI, PDG)