/[lmdze]/trunk/Sources/phylmd/CV30_routines/cv30_param.f
ViewVC logotype

Contents of /trunk/Sources/phylmd/CV30_routines/cv30_param.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 187 - (show annotations)
Mon Mar 21 18:01:02 2016 UTC (8 years, 2 months ago) by guez
File size: 2450 byte(s)
Made variable nl of module cv30_param_m a parameter. There was no
coding allowing it to change.

Removed arguments nloc and nd of cv30_undilute2, arguments nloc, nd
and na of cv30_unsat. Just use klon and klev directly (going for
clarity).

Removed the option cvflag_grav = f. This was a lot of redundant code,
probably obsolete, and cvflag_grav was initialized to true with no
provision for changing it (as in LMDZ).

In cv30_unsat, downdraft_loop started at i = nl + 1, but for i >= nl,
i > inb, so num1 = 0.

1 module cv30_param_m
2
3 ! From LMDZ4/libf/phylmd/cvparam3.h, version 1.1.1.1, 2004/05/19 12:53:09
4
5 ! Parameters for Emanuel convection scheme:
6 ! - microphysical parameters
7 ! - parameters that control the rate of approach to quasi-equilibrium
8
9 USE dimphy, ONLY: klev
10
11 implicit none
12
13 integer minorig ! first level of convection
14
15 integer, parameter:: nl = klev - 1
16 ! Limit for convection. The maximum number of levels to which
17 ! convection can penetrate, plus 1. nl must be <= KLEV-1.
18
19 real sigd ! FRACTIONAL AREA COVERED BY UNSATURATED DNDRAFT
20 real spfac ! FRACTION OF PRECIPITATION FALLING OUTSIDE OF CLOUD
21
22 real pbcrit
23 ! CRITICAL CLOUD DEPTH (MB) BENEATH WHICH THE PRECIPITATION
24 ! EFFICIENCY IS ASSUMED TO BE ZERO
25
26 real ptcrit
27 ! CLOUD DEPTH (MB) ABOVE WHICH THE PRECIPitation EFFICIENCY IS
28 ! ASSUMED TO BE UNITY
29
30 real omtrain
31 real dtovsh, dpbase, dttrig
32
33 real dtcrit
34 ! CRITICAL BUOYANCY (K) USED TO ADJUST THE APPROACH TO
35 ! QUASI-EQUILIBRIUM. IT MUST BE LESS THAN 0.
36
37 real beta, alpha
38 ! PARAMETERS THAT CONTROL THE RATE OF APPROACH TO QUASI-EQUILIBRIUM
39 ! (THEIR STANDARD VALUES ARE 1.0 AND 0.96, RESPECTIVELY) (BETA MUST
40 ! BE LESS THAN OR EQUAL TO 1)
41
42 real tau ! CHARACTERISTIC TIMESCALE USED TO COMPUTE ALPHA and BETA
43 real delta
44 real betad
45
46 private klev
47
48 contains
49
50 SUBROUTINE cv30_param(delt)
51
52 ! From LMDZ4/libf/phylmd/cv3_routines.F, version 1.5, 2005/07/11 15:20:02
53
54 ! Set parameters for Emanuel convection scheme
55
56 real, intent(in):: delt ! timestep (seconds)
57
58 !------------------------------------------------------------
59
60 ! Limit levels for convection:
61 minorig = 1
62
63 ! "Microphysical" parameters:
64
65 sigd = 0.01
66 spfac = 0.15
67 pbcrit = 150.0
68 ptcrit = 500.0
69 ! cf. FH epmax = 0.993
70
71 omtrain = 45.0 ! used also for snow (no distinction rain/snow)
72
73 ! Misc:
74 dtovsh = -0.2 ! dT for overshoot
75 dpbase = -40. ! definition cloud base (400m above LCL)
76 dttrig = 5. ! (loose) condition for triggering
77
78 ! Rate of approach to quasi-equilibrium:
79 dtcrit = -2.0
80 tau = 8000.
81 beta = 1.0 - delt/tau
82 alpha = 1.5E-3 * delt/tau
83 ! Increase alpha to compensate W decrease:
84 alpha = alpha*1.5
85
86 ! Interface cloud parameterization:
87 delta=0.01 ! cld
88
89 ! Interface with boundary-layer (gust factor): (sb)
90 betad=10.0 ! original value (from convect 4.3)
91
92 end SUBROUTINE cv30_param
93
94 end module cv30_param_m

  ViewVC Help
Powered by ViewVC 1.1.21