1 |
! |
module cv30_param_m |
|
! $Header: /home/cvsroot/LMDZ4/libf/phylmd/cv3_routines.F,v 1.5 2005/07/11 15:20:02 lmdzadmin Exp $ |
|
|
! |
|
|
! |
|
|
! |
|
|
SUBROUTINE cv3_param(nd,delt) |
|
|
use conema3_m |
|
|
use cvparam3 |
|
|
implicit none |
|
|
|
|
|
!------------------------------------------------------------ |
|
|
! Set parameters for convectL for iflag_con = 3 |
|
|
!------------------------------------------------------------ |
|
|
|
|
|
! |
|
|
! *** PBCRIT IS THE CRITICAL CLOUD DEPTH (MB) BENEATH WHICH THE *** |
|
|
! *** PRECIPITATION EFFICIENCY IS ASSUMED TO BE ZERO *** |
|
|
! *** PTCRIT IS THE CLOUD DEPTH (MB) ABOVE WHICH THE PRECIP. *** |
|
|
! *** EFFICIENCY IS ASSUMED TO BE UNITY *** |
|
|
! *** SIGD IS THE FRACTIONAL AREA COVERED BY UNSATURATED DNDRAFT *** |
|
|
! *** SPFAC IS THE FRACTION OF PRECIPITATION FALLING OUTSIDE *** |
|
|
! *** OF CLOUD *** |
|
|
! |
|
|
! [TAU: CHARACTERISTIC TIMESCALE USED TO COMPUTE ALPHA & BETA] |
|
|
! *** ALPHA AND BETA ARE PARAMETERS THAT CONTROL THE RATE OF *** |
|
|
! *** APPROACH TO QUASI-EQUILIBRIUM *** |
|
|
! *** (THEIR STANDARD VALUES ARE 1.0 AND 0.96, RESPECTIVELY) *** |
|
|
! *** (BETA MUST BE LESS THAN OR EQUAL TO 1) *** |
|
|
! |
|
|
! *** DTCRIT IS THE CRITICAL BUOYANCY (K) USED TO ADJUST THE *** |
|
|
! *** APPROACH TO QUASI-EQUILIBRIUM *** |
|
|
! *** IT MUST BE LESS THAN 0 *** |
|
|
|
|
|
|
|
|
integer nd |
|
|
real, intent(in):: delt ! timestep (seconds) |
|
|
|
|
|
! noff: integer limit for convection (nd-noff) |
|
|
! minorig: First level of convection |
|
|
|
|
|
! -- limit levels for convection: |
|
|
|
|
|
noff = 1 |
|
|
minorig = 1 |
|
|
nl=nd-noff |
|
|
nlp=nl+1 |
|
|
nlm=nl-1 |
|
|
|
|
|
! -- "microphysical" parameters: |
|
|
|
|
|
sigd = 0.01 |
|
|
spfac = 0.15 |
|
|
pbcrit = 150.0 |
|
|
ptcrit = 500.0 |
|
|
!IM cf. FH epmax = 0.993 |
|
|
|
|
|
omtrain = 45.0 ! used also for snow (no disctinction rain/snow) |
|
|
|
|
|
! -- misc: |
|
|
|
|
|
dtovsh = -0.2 ! dT for overshoot |
|
|
dpbase = -40. ! definition cloud base (400m above LCL) |
|
|
dttrig = 5. ! (loose) condition for triggering |
|
|
|
|
|
! -- rate of approach to quasi-equilibrium: |
|
|
|
|
|
dtcrit = -2.0 |
|
|
tau = 8000. |
|
|
beta = 1.0 - delt/tau |
|
|
alpha = 1.5E-3 * delt/tau |
|
|
! increase alpha to compensate W decrease: |
|
|
alpha = alpha*1.5 |
|
|
|
|
|
! -- interface cloud parameterization: |
|
2 |
|
|
3 |
delta=0.01 ! cld |
! From LMDZ4/libf/phylmd/cvparam3.h, version 1.1.1.1, 2004/05/19 12:53:09 |
4 |
|
|
5 |
! -- interface with boundary-layer (gust factor): (sb) |
! Set parameters for Emanuel convection scheme. Includes |
6 |
|
! microphysical parameters and parameters that control the rate of |
7 |
|
! approach to quasi-equilibrium. |
8 |
|
|
9 |
betad=10.0 ! original value (from convect 4.3) |
USE dimphy, ONLY: klev |
10 |
|
|
11 |
return |
implicit none |
12 |
end |
|
13 |
|
integer, parameter:: minorig = 1 |
14 |
|
! first level of convection (limit levels for convection) |
15 |
|
|
16 |
|
integer, parameter:: nl = klev - 1 |
17 |
|
! Limit for convection. The maximum number of levels to which |
18 |
|
! convection can penetrate, plus 1. We should have: |
19 |
|
! 6 <= nl <= KLEV - 1 |
20 |
|
! (because of locate in cv30_feed). |
21 |
|
|
22 |
|
real, parameter:: sigd = 0.01 |
23 |
|
! fractional area covered by unsaturated downdraft |
24 |
|
! \sigma_d in Emanuel (1991 928) |
25 |
|
|
26 |
|
real, parameter:: dtcrit = - 2. |
27 |
|
! Critical buoyancy (K) used to adjust the approach to |
28 |
|
! quasi-equilibrium. It must be < 0. |
29 |
|
|
30 |
|
real beta, alpha |
31 |
|
! Parameters that control the rate of approach to quasi-equilibrium |
32 |
|
! (their standard values are 1. and 0.96, respectively) (beta must |
33 |
|
! be less than or equal to 1). |
34 |
|
|
35 |
|
private klev |
36 |
|
|
37 |
|
contains |
38 |
|
|
39 |
|
SUBROUTINE cv30_param |
40 |
|
|
41 |
|
! From LMDZ4/libf/phylmd/cv3_routines.F, version 1.5, 2005/07/11 15:20:02 |
42 |
|
|
43 |
|
use comconst, only: dtphys |
44 |
|
|
45 |
|
! Local: |
46 |
|
|
47 |
|
real, parameter:: tau = 8000. |
48 |
|
! characteristic timescale used to compute alpha and beta |
49 |
|
|
50 |
|
!------------------------------------------------------------ |
51 |
|
|
52 |
|
beta = 1. - dtphys / tau |
53 |
|
|
54 |
|
alpha = 1.5E-3 * dtphys / tau * 1.5 |
55 |
|
! factor 1.5: increase alpha to compensate W decrease |
56 |
|
|
57 |
|
end SUBROUTINE cv30_param |
58 |
|
|
59 |
|
end module cv30_param_m |