source: LMDZ4/trunk/libf/phylmd/calcul_simulISCCP.h @ 665

Last change on this file since 665 was 644, checked in by Laurent Fairhead, 19 years ago

Synchronisation avec tous les diagnostiques de Ionela IM
Inclusion du slab ocean IM
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.2 KB
Line 
1c
2c $Header$
3c
4cIM 090704 BEG
5c     nbapp_isccp=48
6c     nbapp_isccp=8
7c     nbapp_isccp=6
8c     nbapp_isccp=4 !CPU < 30min pour  9pdt/jour
9      nbapp_isccp=3 !CPU ??           10pdt/jour
10c     nbapp_isccp=2
11c     nbapp_isccp=1
12      isccppas=NINT(86400./dtime/nbapp_isccp)
13cIM 010904 BEG
14cIM   IF (MOD(itap,isccppas).EQ.0) THEN
15c      PRINT*,'itap,isccppas,xjour',itap,isccppas,xjour
16c
17cIM initialisation nbsunlit pour calculs simulateur ISCCP pdt la journee
18c
19      DO i=1, klon
20       sunlit(i)=1 
21       IF(rmu0(i).EQ.0.) sunlit(i)=0
22       nbsunlit(1,i)=FLOAT(sunlit(i))
23      ENDDO
24c
25cIM calcul tau, emissivite nuages convectifs
26c
27      convfra(:,:)=rnebcon(:,:)
28      convliq(:,:)=rnebcon(:,:)*clwcon(:,:)
29cIM Amip2 beg
30c
31      CALL newmicro (paprs, pplay,ok_newmicro,
32     .            t_seri, convliq, convfra, dtau_c, dem_c,
33     .            cldh_c, cldl_c, cldm_c, cldt_c, cldq_c,
34     .            flwp_c, fiwp_c, flwc_c, fiwc_c,
35     e            ok_aie,
36     e            sulfate, sulfate_pi,
37     e            bl95_b0, bl95_b1,
38     s            cldtaupi, re, fl)
39c
40cIM Amip2 end
41
42c
43cIM calcul tau, emissivite nuages startiformes
44c
45cIM Amip2 beg
46c
47      CALL newmicro (paprs, pplay,ok_newmicro,
48     .            t_seri, cldliq, cldfra, dtau_s, dem_s,
49     .            cldh_s, cldl_s, cldm_s, cldt_s, cldq_s,
50     .            flwp_s, fiwp_s, flwc_s, fiwc_s,
51     e            ok_aie,
52     e            sulfate, sulfate_pi,
53     e            bl95_b0, bl95_b1,
54     s            cldtaupi, re, fl)
55c
56cIM Amip2 end
57c
58      cldtot(:,:)=min(max(cldfra(:,:),rnebcon(:,:)),1.)
59c
60cIM inversion des niveaux de pression ==> de haut en bas
61c
62      CALL haut2bas(klon, klev, pplay, pfull)
63      CALL haut2bas(klon, klev, q_seri, qv)
64      CALL haut2bas(klon, klev, cldtot, cc)
65      CALL haut2bas(klon, klev, rnebcon, conv)
66      CALL haut2bas(klon, klev, dtau_s, dtau_sH2B)
67      CALL haut2bas(klon, klev, dtau_c, dtau_cH2B)
68      CALL haut2bas(klon, klev, t_seri, at)
69      CALL haut2bas(klon, klev, dem_s, dem_sH2B)
70      CALL haut2bas(klon, klev, dem_c, dem_cH2B)
71      CALL haut2bas(klon, klevp1, paprs, phalf)
72c
73cIM lecture invtau, tautab des fichiers formattes
74c
75      IF (debut) THEN
76c     open(99,file='tautab.bin',access='sequential',
77c    $     form='unformatted',status='old')
78c     read(99) tautab
79c
80      open(99,file='tautab.formatted', FORM='FORMATTED')
81      read(99,'(f30.20)') tautab
82      close(99)
83c
84      open(99,file='invtau.formatted',form='FORMATTED')
85      read(99,'(i10)') invtau
86      close(99)
87c
88cIM: calcul coordonnees regions pour statistiques distribution
89cIM: nuages en ftion du regime dynamique pour regions oceaniques
90c
91      IF (ok_regdyn) THEN !histREGDYN
92c
93#include "ini_coord_REGDYN.h"
94c
95      ENDIF !ok_regdyn
96c
97      ENDIF !debut
98c
99cIM: initialisation de seed
100        DO i=1, klon
101          seed(i)=i+100
102        ENDDO
103c     
104cIM: pas de debug, debugcol
105      debug=0
106      debugcol=0
107c
108cIM o500 ==> distribution nuage ftion du regime dynamique (vit. verticale a 500 hPa)
109c
110        DO k=1, klevm1
111        kp1=k+1
112c       PRINT*,'k, presnivs',k,presnivs(k), presnivs(kp1)
113        if(presnivs(k).GT.50000.AND.presnivs(kp1).LT.50000.) THEN
114         DO i=1, klon
115          o500(i)=omega(i,k)*RDAY/100.
116c         if(i.EQ.1) print*,' 500hPa lev',k,presnivs(k),presnivs(kp1)
117         ENDDO
118         GOTO 1000
119        endif
1201000  continue
121      ENDDO
122c
123cIM recalcule les nuages vus par satellite, via le simulateur ISCCP
124c
125      CALL ISCCP_CLOUD_TYPES(
126     &     debug,
127     &     debugcol,
128cIM 300704    &     itap, debut,
129cIM 300604 klon !BAD
130     &     klon,
131     &     sunlit,
132     &     klev,
133     &     ncol,
134     &     seed,
135     &     pfull,
136     &     phalf,
137     &     qv, cc, conv, dtau_sH2B, dtau_cH2B,
138     &     top_height,
139     &     overlap,
140     &     tautab,
141     &     invtau,
142     &     ztsol,
143     &     emsfc_lw,
144     &     at, dem_sH2B, dem_cH2B,
145     &     fq_isccp,
146     &     totalcldarea,
147     &     meanptop,
148     &     meantaucld,
149     &     boxtau,
150     &     boxptop)
151c
152c calcul regime dynamique sur les regions fixees
153c
154       IF (ok_regdyn) THEN !histREGDYN
155c
156#include "calcul_REGDYN.h"
157c
158       ENDIF !(ok_regdyn) THEN !histREGDYN
159cIM    ENDIF !(MOD(itaprad,radpas).EQ.0) THEN
160cIM 010904 END
Note: See TracBrowser for help on using the repository browser.