source: LMDZ6/trunk/libf/phylmd/lmdz_blowing_snow_ini.F90 @ 4821

Last change on this file since 4821 was 4821, checked in by evignon, 3 months ago

reecriture de la routine de sublimation de neige soufflee en vue
du debut d'un stage de M2 sur le sujet prochainement

File size: 2.0 KB
Line 
1module lmdz_blowing_snow_ini
2
3implicit none
4
5   real, save, protected :: RCPD, RLSTT, RLVTT, RLMLT, RVTMP2, RTT,RD,RG
6   real, save, protected :: coef_eva_bs, expo_eva_bs, fallv_bs, zeta_bs
7   real, save, protected :: prt_bs, pbst_bs, qbst_bs
8   
9   integer, save, protected :: iflag_saltation_bs
10
11   !$OMP THREADPRIVATE(RCPD, RLSTT, RLVTT, RLMLT, RVTMP2, RTT,RD,RG)
12   !$OMP THREADPRIVATE(coef_eva_bs, expo_eva_bs, fallv_bs, zeta_bs)
13   !$OMP THREADPRIVATE(pbst_bs, prt_bs, qbst_bs)
14   !$OMP THREADPRIVATE(iflag_saltation_bs)
15
16   real, save, protected :: tbsmelt=278.15     ! parameter to calculate melting fraction of BS sedimentation
17   real, save, protected :: taumeltbs0=1800.0  ! Melting time scale of blowing snow at 273.15K
18   real, save, protected :: qbsmin=1.E-10      ! Minimum blowing snow specific content
19
20   !$OMP THREADPRIVATE(tbsmelt, taumeltbs0, qbsmin)
21
22
23    contains
24
25   subroutine blowing_snow_ini(RCPD_in, RLSTT_in, RLVTT_in, RLMLT_in,&
26                                  RVTMP2_in, RTT_in,RD_in,RG_in)
27
28         USE ioipsl_getin_p_mod, ONLY : getin_p
29
30         real, intent(in) :: RCPD_in, RLSTT_in, RLVTT_in, RLMLT_in
31         real, intent(in) ::  RVTMP2_in, RTT_in, RD_in, RG_in
32
33
34         RG=RG_in
35         RD=RD_in
36         RCPD=RCPD_in
37         RLVTT=RLVTT_in
38         RLSTT=RLSTT_in
39         RLMLT=RLMLT_in
40         RTT=RTT_in
41         RG=RG_in
42         RVTMP2=RVTMP2_in
43
44
45         qbst_bs= 0.001
46         CALL getin_p('qbst_bs',qbst_bs)
47
48         pbst_bs= 0.0003
49         CALL getin_p('pbst_bs',pbst_bs)
50
51         prt_bs= 0.0003
52         CALL getin_p('prt_bs',prt_bs)
53
54         zeta_bs= 3.
55         CALL getin_p('zeta_bs',zeta_bs)
56
57         fallv_bs = 0.1
58         CALL getin_p('fallv_bs',fallv_bs)
59
60         coef_eva_bs =  2.e-5
61         CALL getin_p('coef_eva_bs',coef_eva_bs)
62
63         expo_eva_bs = 0.5
64         CALL getin_p('expo_eva_bs',expo_eva_bs)
65
66         iflag_saltation_bs=0
67         CALL getin_p('iflag_saltation_bs',iflag_saltation_bs)
68
69
70      end subroutine blowing_snow_ini
71
72end module lmdz_blowing_snow_ini
Note: See TracBrowser for help on using the repository browser.