Changeset 2306
- Timestamp:
- Jun 23, 2015, 11:33:09 AM (9 years ago)
- Location:
- LMDZ5/trunk/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/concvl.F90
r2259 r2306 60 60 ! Ma---------output-R-adiabatic ascent mass flux (kg/m2/s) 61 61 ! mip--------output-R-mass flux shed by adiabatic ascent (kg/m2/s) 62 ! Vprecip----output-R-vertical profile of precipitations(kg/m2/s)62 ! Vprecip----output-R-vertical profile of total precipitation (kg/m2/s) 63 63 ! Tconv------output-R-environment temperature seen by convective scheme (K) 64 64 ! Cape-------output-R-CAPE (J/kg) … … 109 109 !! REAL Ma(klon,klev), mip(klon,klev),Vprecip(klon,klev) !jyg 110 110 REAL Ma(klon, klev), mip(klon, klev), Vprecip(klon, klev+1) !jyg 111 REAL Vprecipi(klon, klev+1) !jyg 111 112 REAL wght(klon, klev) !RL 112 113 … … 415 416 iflag, d_t, d_q, d_u, d_v, d_tra, rain, kbas, ktop, & 416 417 cbmf, plcl, plfc, wbeff, sig1, w01, ptop2, sigd, & 417 Ma, mip, Vprecip, upwd, dnwd, dnwdbis, qcondc, wd, &418 Ma, mip, Vprecip, Vprecipi, upwd, dnwd, dnwdbis, qcondc, wd, & 418 419 cape, cin, tvp, & 419 420 dd_t, dd_q, plim1, plim2, asupmax, supmax0, & … … 476 477 END DO 477 478 END DO 478 ! !jyg 479 ! --Separation neige/pluie (pour diagnostics) !jyg 480 DO k = 1, klev !jyg 481 DO i = 1, klon !jyg 482 IF (t1(i,k)<rtt) THEN !jyg 483 pmflxs(i, k) = Vprecip(i, k) !jyg 484 ELSE !jyg 485 pmflxr(i, k) = Vprecip(i, k) !jyg 486 END IF !jyg 487 END DO !jyg 488 END DO !jyg 479 ! !jyg 480 IF (iflag_con == 30 .OR. iflag_ice_thermo ==0) THEN 481 ! --Separation neige/pluie (pour diagnostics) !jyg 482 DO k = 1, klev !jyg 483 DO i = 1, klon !jyg 484 IF (t1(i,k)<rtt) THEN !jyg 485 pmflxs(i, k) = Vprecip(i, k) !jyg 486 ELSE !jyg 487 pmflxr(i, k) = Vprecip(i, k) !jyg 488 END IF !jyg 489 END DO !jyg 490 END DO !jyg 491 ELSE 492 DO k = 1, klev !jyg 493 DO i = 1, klon !jyg 494 pmflxs(i, k) = Vprecipi(i, k) !jyg 495 pmflxr(i, k) = Vprecip(i, k)-Vprecipi(i, k) !jyg 496 END DO !jyg 497 END DO !jyg 498 ENDIF 489 499 490 500 ! c IF (if_ebil.ge.2) THEN -
LMDZ5/trunk/libf/phylmd/cv3_routines.F90
r2287 r2306 2804 2804 nent, elij, traent, sig, & 2805 2805 tv, tvp, wghti, & 2806 iflag, precip, Vprecip, ft, fr, fu, fv, ftra, & 2806 iflag, precip, Vprecip, Vprecipi, & ! jyg: Vprecipi 2807 ft, fr, fu, fv, ftra, & ! jyg 2807 2808 cbmf, upwd, dnwd, dnwd0, ma, mip, & 2808 2809 !! tls, tps, ! useless . jyg … … 2855 2856 REAL dnwd0(nloc, nd), mip(nloc, nd) 2856 2857 REAL Vprecip(nloc, nd+1) 2858 REAL Vprecipi(nloc, nd+1) ! jyg: Vprecipi 2857 2859 !! REAL tls(nloc, nd), tps(nloc, nd) ! useless . jyg 2858 2860 REAL qcondc(nloc, nd) ! cld … … 2891 2893 precip(il) = 0.0 2892 2894 Vprecip(il, nd+1) = 0.0 2895 Vprecipi(il, nd+1) = 0.0 ! jyg: Vprecipi 2893 2896 wd(il) = 0.0 ! gust 2894 2897 END DO … … 2897 2900 DO il = 1, ncum 2898 2901 Vprecip(il, i) = 0.0 2902 Vprecipi(il, i) = 0.0 ! jyg 2899 2903 ft(il, i) = 0.0 2900 2904 fr(il, i) = 0.0 … … 2957 2961 IF (cvflag_ice) THEN 2958 2962 Vprecip(il, i) = wt(il, i)*sigd(il)*(water(il,i)+ice(il,i))/grav 2963 Vprecipi(il, i) = wt(il, i)*sigd(il)*ice(il,i)/grav ! jyg 2959 2964 ELSE 2960 2965 Vprecip(il, i) = wt(il, i)*sigd(il)*water(il, i)/grav 2966 Vprecipi(il, i) = 0. ! jyg 2961 2967 END IF 2962 2968 END IF … … 3605 3611 m(il, i) = m(il, i)/alpha_qpos(il) 3606 3612 mp(il, i) = mp(il, i)/alpha_qpos(il) 3607 Vprecip(il, i) = vprecip(il, i)/alpha_qpos(il) 3613 Vprecip(il, i) = Vprecip(il, i)/alpha_qpos(il) 3614 Vprecipi(il, i) = Vprecipi(il, i)/alpha_qpos(il) ! jyg 3608 3615 END IF 3609 3616 END DO -
LMDZ5/trunk/libf/phylmd/cv3a_uncompress.F90
r2259 r2306 3 3 precip, cbmf, plcl, plfc, wbeff, sig, w0, ptop2, & 4 4 ft, fq, fu, fv, ftra, & 5 sigd, ma, mip, vprecip, upwd, dnwd, dnwd0, &5 sigd, ma, mip, vprecip, vprecipi, upwd, dnwd, dnwd0, & 6 6 qcondc, wd, cape, cin, & 7 7 tvp, & … … 17 17 precip1, cbmf1, plcl1, plfc1, wbeff1, sig1, w01, ptop21, & 18 18 ft1, fq1, fu1, fv1, ftra1, & 19 sigd1, ma1, mip1, vprecip1, upwd1, dnwd1, dnwd01, &19 sigd1, ma1, mip1, vprecip1, vprecipi1, upwd1, dnwd1, dnwd01, & 20 20 qcondc1, wd1, cape1, cin1, & 21 21 tvp1, & … … 57 57 REAL, DIMENSION (nloc, nd), INTENT (IN) :: ma, mip 58 58 REAL, DIMENSION (nloc, nd+1), INTENT (IN) :: vprecip 59 REAL, DIMENSION (nloc, nd+1), INTENT (IN) :: vprecipi 59 60 REAL, DIMENSION (nloc, nd), INTENT (IN) :: upwd, dnwd, dnwd0 60 61 REAL, DIMENSION (nloc, nd), INTENT (IN) :: qcondc … … 91 92 REAL, DIMENSION (len, nd), INTENT (OUT) :: ma1, mip1 92 93 REAL, DIMENSION (len, nd+1), INTENT (OUT) :: vprecip1 94 REAL, DIMENSION (len, nd+1), INTENT (OUT) :: vprecipi1 93 95 REAL, DIMENSION (len, nd), INTENT (OUT) :: upwd1, dnwd1, dnwd01 94 96 REAL, DIMENSION (len, nd), INTENT (OUT) :: qcondc1 … … 155 157 mip1(idcum(i), k) = mip(i, k) 156 158 vprecip1(idcum(i), k) = vprecip(i, k) 159 vprecipi1(idcum(i), k) = vprecipi(i, k) 157 160 upwd1(idcum(i), k) = upwd(i, k) 158 161 dnwd1(idcum(i), k) = dnwd(i, k) … … 255 258 mip1(:, 1:nl+1) = mip(:, 1:nl+1) 256 259 vprecip1(:, 1:nl+1) = vprecip(:, 1:nl+1) 260 vprecipi1(:, 1:nl+1) = vprecipi(:, 1:nl+1) 257 261 upwd1(:, 1:nl+1) = upwd(:, 1:nl+1) 258 262 dnwd1(:, 1:nl+1) = dnwd(:, 1:nl+1) -
LMDZ5/trunk/libf/phylmd/cva_driver.F90
r2259 r2306 16 16 sig1, w01, & !input/output 17 17 ptop21, sigd1, & 18 ma1, mip1, Vprecip1, upwd1, dnwd1, dnwd01, &18 ma1, mip1, Vprecip1, Vprecipi1, upwd1, dnwd1, dnwd01, & ! jyg 19 19 qcondc1, wd1, & 20 20 cape1, cin1, tvp1, & … … 98 98 ! Ma1 Real Output mass flux adiabatic updraft 99 99 ! mip1 Real Output mass flux shed by the adiabatic updraft 100 ! Vprecip1 Real Output vertical profile of precipitations 100 ! Vprecip1 Real Output vertical profile of total precipitation 101 ! Vprecipi1 Real Output vertical profile of ice precipitation 101 102 ! upwd1 Real Output total upward mass flux (adiab+mixed) 102 103 ! dnwd1 Real Output saturated downward mass flux (mixed) … … 222 223 ! real Vprecip1(len,nd) 223 224 REAL, DIMENSION (len, ndp1), INTENT (OUT) :: vprecip1 225 REAL, DIMENSION (len, ndp1), INTENT (OUT) :: vprecipi1 224 226 REAL, DIMENSION (len, nd), INTENT (OUT) :: upwd1 225 227 REAL, DIMENSION (len, nd), INTENT (OUT) :: dnwd1 … … 500 502 ! real Vprecip(nloc,klev) 501 503 REAL vprecip(nloc, klev+1) 504 REAL vprecipi(nloc, klev+1) 502 505 REAL tra(nloc, klev, ntra), trap(nloc, klev, ntra) 503 506 REAL ftra(nloc, klev, ntra), traent(nloc, klev, klev, ntra) … … 593 596 mip1(:, :) = 0. 594 597 vprecip1(:, :) = 0. 598 vprecipi1(:, :) = 0. 595 599 upwd1(:, :) = 0. 596 600 dnwd1(:, :) = 0. … … 1022 1026 nent, elij, traent, sig, & 1023 1027 tv, tvp, wghti, & 1024 iflag, precip, vprecip, ft, fq, fu, fv, ftra, &1028 iflag, precip, Vprecip, Vprecipi, ft, fq, fu, fv, ftra, & ! jyg 1025 1029 cbmf, upwd, dnwd, dnwd0, ma, mip, & 1026 1030 !! tls, tps, & ! useless . jyg … … 1071 1075 precip, cbmf, plcl, plfc, wbeff, sig, w0, ptop2, & 1072 1076 ft, fq, fu, fv, ftra, & 1073 sigd, ma, mip, vprecip, upwd, dnwd, dnwd0, &1077 sigd, ma, mip, vprecip, vprecipi, upwd, dnwd, dnwd0, & 1074 1078 qcondc, wd, cape, cin, & 1075 1079 tvp, & … … 1084 1088 precip1, cbmf1, plcl1, plfc1, wbeff1, sig1, w01, ptop21, & 1085 1089 ft1, fq1, fu1, fv1, ftra1, & 1086 sigd1, ma1, mip1, vprecip1, upwd1, dnwd1, dnwd01, &1090 sigd1, ma1, mip1, vprecip1, vprecipi1, upwd1, dnwd1, dnwd01, & 1087 1091 qcondc1, wd1, cape1, cin1, & 1088 1092 tvp1, &
Note: See TracChangeset
for help on using the changeset viewer.