Changeset 3257 for LMDZ6/trunk/libf
- Timestamp:
- Mar 13, 2018, 2:41:20 PM (7 years ago)
- Location:
- LMDZ6/trunk/libf/phylmd
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/phys_local_var_mod.F90
r3208 r3257 319 319 REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: slab_wfbils 320 320 !$OMP THREADPRIVATE(slab_wfbils) 321 REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: tpot, tpote, ue, uq, ve, vq, zxffonte322 !$OMP THREADPRIVATE(tpot, tpote, ue, uq, ve, vq, zxffonte)321 REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: tpot, tpote, ue, uq, uwat, ve, vq, vwat, zxffonte 322 !$OMP THREADPRIVATE(tpot, tpote, ue, uq, uwat, ve, vq, vwat, zxffonte) 323 323 REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: zxfqcalving 324 324 !$OMP THREADPRIVATE(zxfqcalving) … … 705 705 ALLOCATE(slab_wfbils(klon), tpot(klon), tpote(klon), ue(klon)) 706 706 ALLOCATE(uq(klon), ve(klon), vq(klon), zxffonte(klon)) 707 ALLOCATE(uwat(klon), vwat(klon)) 707 708 ALLOCATE(zxfqcalving(klon), zxfluxlat(klon)) 708 709 ALLOCATE(zxtsol(klon), snow_lsc(klon), zxfqfonte(klon), zxqsurf(klon)) … … 994 995 DEALLOCATE(slab_wfbils, tpot, tpote, ue) 995 996 DEALLOCATE(uq, ve, vq, zxffonte) 997 DEALLOCATE(uwat, vwat) 996 998 DEALLOCATE(zxfqcalving, zxfluxlat) 997 999 DEALLOCATE(zxrunofflic) -
LMDZ6/trunk/libf/phylmd/phys_output_ctrlout_mod.F90
r3217 r3257 1 ! 2 ! $Id$ 3 ! 1 4 MODULE phys_output_ctrlout_mod 2 5 … … 676 679 'iwp', 'Cloud ice water path', 'kg/m2', (/ ('', i=1, 10) /)) 677 680 TYPE(ctrl_out), SAVE :: o_ue = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 678 'ue', 'Zonal energy transport', '-', (/ ('', i=1, 10) /))681 'ue', 'Zonal dry static energy transport', '-', (/ ('', i=1, 10) /)) 679 682 TYPE(ctrl_out), SAVE :: o_ve = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 680 've', 'Merid energy transport', '-', (/ ('', i=1, 10) /))683 've', 'Merid dry static energy transport', '-', (/ ('', i=1, 10) /)) 681 684 TYPE(ctrl_out), SAVE :: o_uq = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 682 685 'uq', 'Zonal humidity transport', '-', (/ ('', i=1, 10) /)) 683 686 TYPE(ctrl_out), SAVE :: o_vq = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 684 687 'vq', 'Merid humidity transport', '-', (/ ('', i=1, 10) /)) 688 TYPE(ctrl_out), SAVE :: o_uwat = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 689 'uwat', 'Zonal total water transport', '-', (/ ('', i=1, 10) /)) 690 TYPE(ctrl_out), SAVE :: o_vwat = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 691 'vwat', 'Merid total water transport', '-', (/ ('', i=1, 10) /)) 685 692 TYPE(ctrl_out), SAVE :: o_cape = ctrl_out((/ 1, 10, 10, 10, 10, 10, 11, 11, 11, 11/), & 686 693 'cape', 'Conv avlbl pot ener', 'J/kg', (/ ('', i=1, 10) /)) -
LMDZ6/trunk/libf/phylmd/phys_output_write_mod.F90
r3234 r3257 70 70 o_cldhjn, o_cldtjn, o_cldq, o_lwp, o_iwp, & 71 71 o_ue, o_ve, o_uq, o_vq, o_cape, o_pbase, & 72 o_uwat, o_vwat, & 72 73 o_ptop, o_fbase, o_plcl, o_plfc, & 73 74 o_wbeff, o_convoccur, o_cape_max, o_upwd, o_ep,o_epmax_diag, o_Ma, & … … 254 255 cldh, cldt, JrNt, cldljn, cldmjn, cldhjn, & 255 256 cldtjn, cldq, flwp, fiwp, ue, ve, uq, vq, & 257 uwat, vwat, & 256 258 plcl, plfc, wbeff, convoccur, upwd, dnwd, dnwd0, prw, prlw, prsw, & 257 259 s_pblh, s_pblt, s_lcl, s_therm, uwriteSTD, & … … 961 963 CALL histwrite_phy(o_uq, uq) 962 964 CALL histwrite_phy(o_vq, vq) 965 CALL histwrite_phy(o_uwat, uwat) 966 CALL histwrite_phy(o_vwat, vwat) 963 967 IF (iflag_con.GE.3) THEN ! sb 964 968 CALL histwrite_phy(o_cape, cape) -
LMDZ6/trunk/libf/phylmd/physiq_mod.F90
r3239 r3257 125 125 slab_wfbils, tpot, tpote, & 126 126 ue, uq, ve, vq, zxffonte, & 127 uwat, vwat, & 127 128 zxfqcalving, zxfluxlat, & 128 129 zxrunofflic, & … … 4521 4522 ! 4522 4523 CALL transp (paprs,zxtsol, & 4523 t_seri, q_seri, u_seri, v_seri, zphi, &4524 ve, vq, ue, uq )4524 t_seri, q_seri, ql_seri, qs_seri, u_seri, v_seri, zphi, & 4525 ve, vq, ue, uq, vwat, uwat) 4525 4526 ! 4526 4527 !IM global posePB BEG -
LMDZ6/trunk/libf/phylmd/transp.F90
r2346 r3257 1 1 2 ! $ Header$2 ! $Id$ 3 3 4 SUBROUTINE transp(paprs, tsol, t, q, u, v, geom, vtran_e, vtran_q, utran_e, &5 utran_q )4 SUBROUTINE transp(paprs, tsol, t, q, ql, qs, u, v, geom, vtran_e, vtran_q, utran_e, & 5 utran_q, vtran_w, utran_w) 6 6 7 7 USE dimphy … … 16 16 17 17 REAL paprs(klon, klev+1), tsol(klon) 18 REAL t(klon, klev), q(klon, klev), u(klon, klev), v(klon, klev) 18 REAL t(klon, klev), q(klon, klev), ql(klon, klev), qs(klon, klev) 19 REAL u(klon, klev), v(klon, klev) 19 20 REAL utran_e(klon), utran_q(klon), vtran_e(klon), vtran_q(klon) 21 REAL utran_w(klon), vtran_w(klon) 20 22 21 23 INTEGER i, l … … 28 30 vtran_e(i) = 0.0 29 31 vtran_q(i) = 0.0 32 utran_w(i) = 0.0 33 vtran_w(i) = 0.0 30 34 END DO 31 35 32 36 DO l = 1, klev 33 37 DO i = 1, klon 34 e = rcpd*t(i, l) + rlvtt*q(i, l) + geom(i, l) 38 ! e = rcpd*t(i, l) + rlvtt*q(i, l) + geom(i, l) 39 e = rcpd*t(i, l) + geom(i, l) 35 40 utran_e(i) = utran_e(i) + u(i, l)*e*(paprs(i,l)-paprs(i,l+1))/rg 36 41 utran_q(i) = utran_q(i) + u(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1))/rg 42 utran_w(i) = utran_w(i) + u(i, l)*(q(i, l)+ql(i, l)+qs(i, l)) & 43 *(paprs(i,l)-paprs(i,l+1))/rg 37 44 vtran_e(i) = vtran_e(i) + v(i, l)*e*(paprs(i,l)-paprs(i,l+1))/rg 38 45 vtran_q(i) = vtran_q(i) + v(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1))/rg 46 vtran_w(i) = vtran_w(i) + v(i, l)*(q(i, l)+ql(i, l)+qs(i, l)) & 47 *(paprs(i,l)-paprs(i,l+1))/rg 39 48 END DO 40 49 END DO
Note: See TracChangeset
for help on using the changeset viewer.