LMDZ
histo_o500_pctau.F90
Go to the documentation of this file.
1 
2 ! $Id: histo_o500_pctau.F90 2346 2015-08-21 15:13:46Z emillour $
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
integer, save klon
Definition: dimphy.F90:3
c c $Id c c calculs statistiques distribution nuage ftion du regime dynamique c c Ce calcul doit etre fait a partir de valeurs mensuelles CALL histo_o500_pctau(nbregdyn, pct_ocean, o500, fq_isccp,&histoW, nhistoW) c c nhistoWt
Definition: dimphy.F90:1
lmax
Definition: iotd.h:1