Changeset 684 for LMDZ4/trunk/libf/phylmd/ini_histISCCP.h
- Timestamp:
- Apr 4, 2006, 5:00:40 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk/libf/phylmd/ini_histISCCP.h
r644 r684 3 3 ! 4 4 IF (ok_isccp) THEN 5 c 6 ndex2d = 0 7 ndex3d = 0 5 8 c 6 9 c pour les champs instantannes, il faut mettre la meme valeur pour … … 9 12 c zstophy = frequence de stockage des champs tous les pdt physiques 10 13 c zout = frequence d'ecriture des champs 11 zstophy = dtime 14 cIM 300505 zstophy = dtime 15 c appel du simulateur toutes les 3heures 16 zcals(1) = dtime *6. !toutes les 3h (en s) 17 DO n=1, napisccp 18 zcalh(n) = zcals(n)/3600. !stoutes les Xh (en heures) 19 ENDDO !n 12 20 c 13 21 c ecriture 8 fois par jour … … 18 26 c zout = dtime 19 27 c 28 c IF(freqout_isccp.EQ.1.) THEN 29 c ecriture jounaliere 30 zout_isccp(1) = ecrit_day !(en s) 20 31 c ecriture mensuelle 21 zout = dtime * ecrit_mth 22 c zout = dtime * ecrit_day 23 c 32 c zout = dtime * ecrit_mth !(en s) 33 DO n=1, napisccp 34 zoutj(n)=zout_isccp(n)/86400. !(en jours) 35 c 36 c le nombre de sous-colonnes ncol : ncol=(100.*zcalh)/zoutd 37 ncol(n)=NINT((100.*zcalh(n))/zoutj(n)) 38 PRINT*,'n ncol',n,ncol(n) 39 c 40 DO l=1, ncol(n) 41 vertlev(l,n)=float(l) 42 ENDDO !ncol 43 c 44 ENDDO !n 45 24 46 c PRINT*, 'La frequence de sortie ISCCP est de ', ecrit_isccp 25 47 c 26 48 idayref = day_ref 27 49 CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian) 28 50 c write(*,*)'ISCCP ', itau_phy, zjulian 29 51 c 30 52 c … … 39 61 CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat) 40 62 c 63 cIM BEG region 64 imin_ins=1 65 imax_ins=iim 66 jmin_ins=1 67 jmax_ins=jjmp1 68 do i=1,iim-1 69 if(zx_lon(i,1).lt.lonmin_ins) imin_ins=i 70 if(zx_lon(i,1).le.lonmax_ins) imax_ins=i+1 71 enddo 72 do j=1,jjmp1 73 if(zx_lat(1,j).ge.latmin_ins) jmax_ins=j 74 if(zx_lat(1,j).gt.latmax_ins) jmin_ins=j 75 enddo 76 c 77 print*,'On stoke le fichier histISCCP instantanne sur ', 78 s imin_ins,imax_ins,jmin_ins,jmax_ins 79 print*,'On stoke le fichier histISCCP instantanne sur ', 80 s zx_lon(imin_ins,1),zx_lon(imax_ins,1), 81 s zx_lat(1,jmin_ins),zx_lat(1,jmax_ins) 82 cIM END region 83 c 84 IF(1.EQ.0) THEN 41 85 CALL histbeg("histISCCP.nc", iim,zx_lon(:,1),jjmp1,zx_lat(1,:), 42 86 . 1, iim, 1, jjmp1, 43 87 . itau_phy, zjulian, dtime, 44 88 . nhori, nid_isccp) 45 c 89 ENDIF !(1.EQ.0) THEN 90 c 91 CALL histbeg("histISCCP.nc", iim,zx_lon(:,1), 92 . jjmp1,zx_lat(1,:), 93 . imin_ins,imax_ins-imin_ins+1, 94 . jmin_ins,jmax_ins-jmin_ins+1, 95 . itau_phy, zjulian, dtime, 96 . nhori, nid_isccp) 97 c 98 IF(type_run.EQ."ENSP".OR.type_run.EQ."CLIM") THEN 46 99 CALL histvert(nid_isccp, "cldtopres","Cloud Top Pressure","mb", 47 100 . lmaxm1, cldtopres, nvert,'down') 101 ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN 102 CALL histvert(nid_isccp,"cldtopres3","Cloud Top Pressure","mb", 103 . lmax3, cldtopres3, nvert3,'down') 104 ENDIF 105 DO n=1, napisccp 106 CALL histvert(nid_isccp, "Nbcol"//verticaxe(n), 107 . "Nb of Column"//verticaxe(n),"1", 108 . ncol(n), vertlev(:,n), nvlev(n),'up') 109 ENDDO 48 110 c 49 111 IF(type_run.EQ."ENSP".OR.type_run.EQ."CLIM") THEN 50 112 c 51 113 c variables a ecrire 114 c 115 DO n=1, napisccp 52 116 c 53 117 DO k=1, kmaxm1 54 CALL histdef(nid_isccp, "cldISCCP_"//taulev(k) ,118 CALL histdef(nid_isccp, "cldISCCP_"//taulev(k)//typinout(n), 55 119 . "LMDZ ISCCP cld", "%", 56 120 . iim, jjmp1,nhori,lmaxm1,1,lmaxm1,nvert,32, 57 . "ave(X)", z stophy,zout)121 . "ave(X)", zcals(n),zout_isccp(n)) 58 122 ENDDO 59 123 c 60 CALL histdef(nid_isccp, "nsunlit" ,124 CALL histdef(nid_isccp, "nsunlit"//typinout(n), 61 125 . "Nb of calls with sunlit ", "%", 62 126 . iim, jjmp1,nhori,1,1,1,-99,32, 63 . "ave(X)", zstophy,zout) 127 . "ave(X)", zcals(n),zout_isccp(n)) 128 c 129 ENDDO 64 130 c 65 131 ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN 66 132 c 67 DO k=1, kmaxm1 68 DO l=1, lmaxm1 69 c 70 CALL histdef(nid_isccp, pclev(l)//taulev(k), 133 DO n=1, napisccp 134 c 135 c print*,'n=',n,' avant histdef(..LMDZ ISCCP cld' 136 c 137 DO k=1, kmaxm1 138 DO l=1, lmaxm1 139 c 140 CALL histdef(nid_isccp, pclev(l)//taulev(k)//typinout(n), 71 141 . "LMDZ ISCCP cld "//cnameisccp(l,k), "%", 72 142 . iim, jjmp1,nhori,1,1,1,-99,32, 73 . "ave(X)", zstophy,zout) 74 c 143 . "ave(X)", zcals(n),zout_isccp(n)) 144 c 145 ENDDO 75 146 ENDDO 76 ENDDO 77 c 78 CALL histdef(nid_isccp, "nsunlit",147 c 148 c print*,'n=',n,' avant histdef(..Nb of calls sunlit' 149 CALL histdef(nid_isccp, "nsunlit"//typinout(n), 79 150 . "Nb of calls with sunlit ", "%", 80 151 . iim, jjmp1,nhori,1,1,1,-99,32, 81 . "ave(X)", zstophy,zout) 82 c 152 . "ave(X)", zcals(n),zout_isccp(n)) 153 c 154 c 9types de nuages ISCCP-D2 155 CALL histdef(nid_isccp, "cirr", 156 . "Cirrus lk ISCCP-D2", "%", 157 . iim, jjmp1,nhori,1,1,1,-99,32, 158 . "ave(X)", zcals(n),zout_isccp(n)) 159 c 160 CALL histdef(nid_isccp, "cist", 161 . "CiSt lk ISCCP-D2", "%", 162 . iim, jjmp1,nhori,1,1,1,-99,32, 163 . "ave(X)", zcals(n),zout_isccp(n)) 164 c 165 CALL histdef(nid_isccp, "deep", 166 . "Deep lk ISCCP-D2", "%", 167 . iim, jjmp1,nhori,1,1,1,-99,32, 168 . "ave(X)", zcals(n),zout_isccp(n)) 169 c 170 CALL histdef(nid_isccp, "alcu", 171 . "AlCu lk ISCCP-D2", "%", 172 . iim, jjmp1,nhori,1,1,1,-99,32, 173 . "ave(X)", zcals(n),zout_isccp(n)) 174 c 175 CALL histdef(nid_isccp, "alst", 176 . "AlSt lk ISCCP-D2", "%", 177 . iim, jjmp1,nhori,1,1,1,-99,32, 178 . "ave(X)", zcals(n),zout_isccp(n)) 179 c 180 CALL histdef(nid_isccp, "nist", 181 . "NiSt lk ISCCP-D2", "%", 182 . iim, jjmp1,nhori,1,1,1,-99,32, 183 . "ave(X)", zcals(n),zout_isccp(n)) 184 c 185 CALL histdef(nid_isccp, "cumu", 186 . "Cumu lk ISCCP-D2", "%", 187 . iim, jjmp1,nhori,1,1,1,-99,32, 188 . "ave(X)", zcals(n),zout_isccp(n)) 189 c 190 CALL histdef(nid_isccp, "stcu", 191 . "StCu lk ISCCP-D2", "%", 192 . iim, jjmp1,nhori,1,1,1,-99,32, 193 . "ave(X)", zcals(n),zout_isccp(n)) 194 c 195 CALL histdef(nid_isccp, "stra", 196 . "Stra lk ISCCP-D2", "%", 197 . iim, jjmp1,nhori,1,1,1,-99,32, 198 . "ave(X)", zcals(n),zout_isccp(n)) 199 c 200 c 3_epaisseurs_optiques x3_pressions_au_sommet_des_nuages types de nuages 201 CALL histdef(nid_isccp, "thin", 202 . "Opt. thin ISCCP-D2 like clouds", "%", 203 . iim, jjmp1,nhori,lmax3,1,lmax3,nvert3,32, 204 . "ave(X)", zcals(n),zout_isccp(n)) 205 c 206 CALL histdef(nid_isccp, "mid", 207 . "Opt. intermediate ISCCP-D2 like clouds", "%", 208 . iim, jjmp1,nhori,lmax3,1,lmax3,nvert3,32, 209 . "ave(X)", zcals(n),zout_isccp(n)) 210 c 211 CALL histdef(nid_isccp, "thick", 212 . "Opt. thick ISCCP-D2 like clouds", "%", 213 . iim, jjmp1,nhori,lmax3,1,lmax3,nvert3,32, 214 . "ave(X)", zcals(n),zout_isccp(n)) 215 c 216 c IF(1.EQ.0) THEN 217 c IF(n.EQ.3) THEN 218 c IF(n.EQ.1) THEN 219 c 220 cIM 070905 BEG 221 IF(1.EQ.0) THEN 222 print*,'n=',n,' avant histdef(..boxptop axe' 223 cIM verif boxptop 224 CALL histdef(nid_isccp,"boxptop"//verticaxe(n), 225 . "Boxptop axe"//verticaxe(n), "mb", 226 . iim, jjmp1,nhori, 227 . ncol(n),1,ncol(n),nvlev(n),32, 228 cIM . ncolmx,1,ncolmx,nvlev,32, 229 cIM . "inst(X)",dtime,dtime) 230 . "ave(X)",zcals(n),zout_isccp(n)) 231 ENDIF !(1.EQ.0) THEN 232 cIM 070905 END 233 c ENDIF !(n.EQ.3) THEN 234 c ENDIF !(1.EQ.0) THEN 235 c 236 c print*,'n=',n,' avant histdef(..seed axe' 237 CALL histdef(nid_isccp, "seed"//verticaxe(n), 238 . "seed axe"//verticaxe(n), "-", 239 . iim, jjmp1,nhori,1,1,1,-99,32, 240 cIM . "inst(X)", dtime,dtime) 241 . "ave(X)", zcals(n),zout_isccp(n)) 242 c 243 ENDDO !n 83 244 ENDIF 84 c85 245 CALL histend(nid_isccp) 86 246 c
Note: See TracChangeset
for help on using the changeset viewer.