1 | |
---|
2 | ! $Header$ |
---|
3 | |
---|
4 | SUBROUTINE histo_o500_pctau(nbreg, pct_ocean, w, histo, histow, nhisto) |
---|
5 | USE dimphy |
---|
6 | IMPLICIT NONE |
---|
7 | |
---|
8 | INTEGER :: ij, k, l, nw |
---|
9 | INTEGER :: nreg, nbreg |
---|
10 | INTEGER, PARAMETER :: kmax = 8, lmax = 8 |
---|
11 | INTEGER, PARAMETER :: kmaxm1 = kmax - 1, lmaxm1 = lmax - 1 |
---|
12 | INTEGER, PARAMETER :: iwmax = 40 |
---|
13 | |
---|
14 | INTEGER, DIMENSION (klon) :: iw |
---|
15 | REAL, DIMENSION (klon) :: w |
---|
16 | REAL, PARAMETER :: wmin = -200., pas_w = 10. |
---|
17 | REAL, DIMENSION (kmaxm1, lmaxm1, iwmax, nbreg) :: histow, nhisto |
---|
18 | REAL, DIMENSION (klon, kmaxm1, lmaxm1) :: histo |
---|
19 | |
---|
20 | ! LOGICAL, dimension(klon,nbreg) :: pct_ocean |
---|
21 | INTEGER, DIMENSION (klon, nbreg) :: pct_ocean |
---|
22 | |
---|
23 | ! initialisation |
---|
24 | histow(:, :, :, :) = 0. |
---|
25 | nhisto(:, :, :, :) = 0. |
---|
26 | |
---|
27 | ! calcul de l'histogramme de chaque regime dynamique |
---|
28 | DO nreg = 1, nbreg |
---|
29 | DO ij = 1, klon |
---|
30 | iw(ij) = int((w(ij)-wmin)/pas_w) + 1 |
---|
31 | ! IF(pct_ocean(ij,nreg)) THEN |
---|
32 | ! IF(pct_ocean(ij,nreg).EQ.1) THEN |
---|
33 | IF (iw(ij)>=1 .AND. iw(ij)<=iwmax) THEN |
---|
34 | DO l = 1, lmaxm1 |
---|
35 | DO k = 1, kmaxm1 |
---|
36 | IF (histo(ij,k,l)>0.) THEN |
---|
37 | histow(k, l, iw(ij), nreg) = histow(k, l, iw(ij), nreg) + & |
---|
38 | histo(ij, k, l)*pct_ocean(ij, nreg) |
---|
39 | nhisto(k, l, iw(ij), nreg) = nhisto(k, l, iw(ij), nreg) + & |
---|
40 | pct_ocean(ij, nreg) |
---|
41 | END IF |
---|
42 | END DO !k |
---|
43 | END DO !l |
---|
44 | ! ELSE IF (iw(ij).LE.0.OR.iw(ij).GT.iwmax) THEN !iw |
---|
45 | ! PRINT*,'ij,iw=',ij,iw(ij) |
---|
46 | END IF !iw |
---|
47 | ! ENDIF !pct_ocean |
---|
48 | END DO !ij |
---|
49 | ! normalisation |
---|
50 | DO nw = 1, iwmax |
---|
51 | DO l = 1, lmaxm1 |
---|
52 | DO k = 1, kmaxm1 |
---|
53 | IF (nhisto(k,l,nw,nreg)/=0.) THEN |
---|
54 | histow(k, l, nw, nreg) = 100.*histow(k, l, nw, nreg)/ & |
---|
55 | nhisto(k, l, nw, nreg) |
---|
56 | ! PRINT*,'k,l,nw,nreg,histoW',k,l,nw,nreg, |
---|
57 | ! & histoW(k,l,nw,nreg) |
---|
58 | END IF |
---|
59 | END DO !k |
---|
60 | END DO !l |
---|
61 | END DO !nw |
---|
62 | END DO !nreg |
---|
63 | |
---|
64 | RETURN |
---|
65 | END SUBROUTINE histo_o500_pctau |
---|