- Timestamp:
- Jan 15, 2010, 11:35:59 AM (15 years ago)
- Location:
- LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/iostart.F90
r1001 r1298 5 5 INTEGER,SAVE :: nid_restart 6 6 7 INTEGER,SAVE :: idim1,idim2,idim3 7 INTEGER,SAVE :: idim1,idim2,idim3,idim4 8 8 INTEGER,PARAMETER :: length=100 9 9 … … 317 317 ierr = NF90_DEF_DIM (nid_restart, "points_physiques", klon_glo, idim2) 318 318 ierr = NF90_DEF_DIM (nid_restart, "horizon_vertical", klon_glo*klev, idim3) 319 ierr = NF90_DEF_DIM (nid_restart, "horizon_klevp1", klon_glo*klevp1, idim4) 319 320 320 321 ierr = NF90_ENDDEF(nid_restart) … … 386 387 387 388 IF (is_mpi_root .AND. is_omp_root) THEN 388 389 389 390 IF (field_size==1) THEN 390 391 idim=idim2 391 392 ELSE IF (field_size==klev) THEN 392 393 idim=idim3 394 ELSE IF (field_size==klevp1) THEN 395 idim=idim4 393 396 ELSE 394 397 PRINT *, "erreur phyredem : probleme de dimension" … … 467 470 468 471 IF (is_mpi_root .AND. is_omp_root) THEN 469 472 470 473 IF (var_size/=length) THEN 471 474 PRINT *, "erreur phyredem : probleme de dimension" -
LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/phyetat0.F
r1279 r1298 999 999 PRINT*,'(ecart-type) wake_fip:', xmin, xmax 1000 1000 c 1001 c thermiques 1002 c 1003 1004 CALL get_field("FM_THERM",fm_therm,found) 1005 IF (.NOT. found) THEN 1006 PRINT*, "phyetat0: Le champ <fm_therm> est absent" 1007 PRINT*, "Depart legerement fausse. Mais je continue" 1008 fm_therm=0. 1009 ENDIF 1010 xmin = 1.0E+20 1011 xmax = -1.0E+20 1012 xmin = MINval(fm_therm) 1013 xmax = MAXval(fm_therm) 1014 PRINT*,'(ecart-type) fm_therm:', xmin, xmax 1015 1016 CALL get_field("ENTR_THERM",entr_therm,found) 1017 IF (.NOT. found) THEN 1018 PRINT*, "phyetat0: Le champ <entr_therm> est absent" 1019 PRINT*, "Depart legerement fausse. Mais je continue" 1020 entr_therm=0. 1021 ENDIF 1022 xmin = 1.0E+20 1023 xmax = -1.0E+20 1024 xmin = MINval(entr_therm) 1025 xmax = MAXval(entr_therm) 1026 PRINT*,'(ecart-type) entr_therm:', xmin, xmax 1027 1028 CALL get_field("DETR_THERM",detr_therm,found) 1029 IF (.NOT. found) THEN 1030 PRINT*, "phyetat0: Le champ <detr_therm> est absent" 1031 PRINT*, "Depart legerement fausse. Mais je continue" 1032 detr_therm=0. 1033 ENDIF 1034 xmin = 1.0E+20 1035 xmax = -1.0E+20 1036 xmin = MINval(detr_therm) 1037 xmax = MAXval(detr_therm) 1038 PRINT*,'(ecart-type) detr_therm:', xmin, xmax 1039 1040 1041 1042 c 1001 1043 c Read and send field trs to traclmdz 1002 1044 c -
LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/phyredem.F
r1279 r1298 247 247 ENDDO 248 248 c 249 CALL put_field("ZMEA"," ",zmea)250 c 251 CALL put_field("ZSTD"," ",zstd)252 253 CALL put_field("ZSIG"," ",zsig)254 255 CALL put_field("ZGAM"," ",zgam)256 257 CALL put_field("ZTHE"," ",zthe)258 259 CALL put_field("ZPIC"," ",zpic)260 261 CALL put_field("ZVAL"," ",zval)249 CALL put_field("ZMEA","ZMEA",zmea) 250 c 251 CALL put_field("ZSTD","ZSTD",zstd) 252 253 CALL put_field("ZSIG","ZSIG",zsig) 254 255 CALL put_field("ZGAM","ZGAM",zgam) 256 257 CALL put_field("ZTHE","ZTHE",zthe) 258 259 CALL put_field("ZPIC","ZPIC",zpic) 260 261 CALL put_field("ZVAL","ZVAL",zval) 262 262 263 263 CALL put_field("RUGSREL","RUGSREL",rugoro) 264 264 265 CALL put_field("TANCIEN"," ",t_ancien)266 267 CALL put_field("QANCIEN"," ",q_ancien)265 CALL put_field("TANCIEN","TANCIEN",t_ancien) 266 267 CALL put_field("QANCIEN","QANCIEN",q_ancien) 268 268 269 269 CALL put_field("RUGMER","Longueur de rugosite sur mer", … … 300 300 cIM wake_deltat, wake_deltaq, wake_s, wake_cstar, wake_fip 301 301 302 CALL put_field("ZMAX0"," ",zmax0)303 304 CALL put_field("F0"," ",f0)305 306 CALL put_field("EMA_WORK1"," ",ema_work1)307 308 CALL put_field("EMA_WORK2"," ",ema_work2)302 CALL put_field("ZMAX0","ZMAX0",zmax0) 303 304 CALL put_field("F0","F0",f0) 305 306 CALL put_field("EMA_WORK1","EMA_WORK1",ema_work1) 307 308 CALL put_field("EMA_WORK2","EMA_WORK2",ema_work2) 309 309 310 310 c wake_deltat 311 CALL put_field("WAKE_DELTAT","",wake_deltat) 312 313 CALL put_field("WAKE_DELTAQ","",wake_deltaq) 314 315 CALL put_field("WAKE_S","",wake_s) 316 317 CALL put_field("WAKE_CSTAR","",wake_cstar) 318 319 CALL put_field("WAKE_FIP","",wake_fip) 320 311 CALL put_field("WAKE_DELTAT","WAKE_DELTAT",wake_deltat) 312 313 CALL put_field("WAKE_DELTAQ","WAKE_DELTAQ",wake_deltaq) 314 315 CALL put_field("WAKE_S","WAKE_S",wake_s) 316 317 CALL put_field("WAKE_CSTAR","WAKE_CSTAR",wake_cstar) 318 319 CALL put_field("WAKE_FIP","WAKE_FIP",wake_fip) 320 321 c thermiques 322 323 CALL put_field("FM_THERM","FM_THERM",fm_therm) 324 325 CALL put_field("ENTR_THERM","ENTR_THERM",entr_therm) 326 327 CALL put_field("DETR_THERM","DETR_THERM",detr_therm) 321 328 322 329 ! trs from traclmdz_mod -
LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/physiq.F
r1294 r1298 458 458 c 459 459 c cnameisccp 460 CHARACTER *2 7cnameisccp(lmaxm1,kmaxm1)460 CHARACTER *29 cnameisccp(lmaxm1,kmaxm1) 461 461 cIM bad 151205 DATA cnameisccp/'pc< 50hPa, tau< 0.3', 462 462 DATA cnameisccp/'pc= 50-180hPa, tau< 0.3', … … 1202 1202 c pmflxr=0. 1203 1203 c pmflxs=0. 1204 1204 first=.false. 1205 1205 1206 1206 endif ! first … … 1822 1822 call writefield_phy('v_seri',v_seri,llm) 1823 1823 call writefield_phy('t_seri',t_seri,llm) 1824 1824 call writefield_phy('q_seri',q_seri,llm) 1825 1825 endif 1826 1826 … … 1879 1879 call writefield_phy('v_seri',v_seri,llm) 1880 1880 call writefield_phy('t_seri',t_seri,llm) 1881 1881 call writefield_phy('q_seri',q_seri,llm) 1882 1882 endif 1883 1883 … … 2183 2183 call writefield_phy('v_seri',v_seri,llm) 2184 2184 call writefield_phy('t_seri',t_seri,llm) 2185 2185 call writefield_phy('q_seri',q_seri,llm) 2186 2186 endif 2187 2187 … … 2306 2306 clwcon0th(:,:)=0. 2307 2307 c 2308 fm_therm(:,:)=0.2309 entr_therm(:,:)=0.2310 detr_therm(:,:)=0.2308 c fm_therm(:,:)=0. 2309 c entr_therm(:,:)=0. 2310 c detr_therm(:,:)=0. 2311 2311 c 2312 2312 IF(prt_level>9)WRITE(lunout,*) … … 2623 2623 call writefield_phy('v_seri',v_seri,llm) 2624 2624 call writefield_phy('t_seri',t_seri,llm) 2625 2625 call writefield_phy('q_seri',q_seri,llm) 2626 2626 endif 2627 2627 … … 2804 2804 IF (thermcep) THEN 2805 2805 IF(zt2m(i).LT.RTT) then 2806 2807 2808 2806 Lheat=RLSTT 2807 ELSE 2808 Lheat=RLVTT 2809 2809 ENDIF 2810 2810 ELSE … … 2812 2812 Lheat=RLSTT 2813 2813 ELSE 2814 2814 Lheat=RLVTT 2815 2815 ENDIF 2816 2816 ENDIF … … 2867 2867 $ cdragm, 2868 2868 $ pctsrf, 2869 $ 2870 $ 2869 $ pdtphys, 2870 $ itap) 2871 2871 2872 2872 CALL VTe(VTinca) … … 2923 2923 call writefield_phy('v_seri',v_seri,llm) 2924 2924 call writefield_phy('t_seri',t_seri,llm) 2925 2925 call writefield_phy('q_seri',q_seri,llm) 2926 2926 endif 2927 2927 … … 3002 3002 call writefield_phy('v_seri',v_seri,llm) 3003 3003 call writefield_phy('t_seri',t_seri,llm) 3004 3004 call writefield_phy('q_seri',q_seri,llm) 3005 3005 endif 3006 3006 … … 3083 3083 call writefield_phy('v_seri',v_seri,llm) 3084 3084 call writefield_phy('t_seri',t_seri,llm) 3085 3085 call writefield_phy('q_seri',q_seri,llm) 3086 3086 endif 3087 3087 … … 3147 3147 call writefield_phy('v_seri',v_seri,llm) 3148 3148 call writefield_phy('t_seri',t_seri,llm) 3149 3149 call writefield_phy('q_seri',q_seri,llm) 3150 3150 endif 3151 3151 … … 3250 3250 3251 3251 print*,'Attention on met a 0 les thermiques pour phystoke' 3252 3252 call phystokenc ( 3253 3253 I nlon,klev,pdtphys,rlon,rlat, 3254 3254 I t,pmfu, pmfd, pen_u, pde_u, pen_d, pde_d, … … 3403 3403 call writefield_phy('v_seri',v_seri,llm) 3404 3404 call writefield_phy('t_seri',t_seri,llm) 3405 3405 call writefield_phy('q_seri',q_seri,llm) 3406 3406 endif 3407 3407
Note: See TracChangeset
for help on using the changeset viewer.