SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
default_surf_atm.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! #########
6  SUBROUTINE default_surf_atm(POUT_TSTEP, PCISMIN, PVMODMIN, OALDTHRES, &
7  odrag_coef_arp, oaldz0h, onosof, ocpl_gcm, &
8  pedb, pedc, pedd, pedk, pusuric, pusurid, pusuricl, &
9  pvchrnk, pvz0cm, primax, pdelta_max, pwindmin, &
10  ovziustar0_arp, przhz0m, &
11  pvziustar0, orrgust_arp, prrscale, prrgamma, &
12  putilgust, ocpl_arp, oqvnplus, overtshift, &
13  ovshift_lw, ovshift_prcp, &
14  pco2uncpl )
15 ! ########################################################################
16 !
17 !!**** *DEFAULT_SURF_ATM* - routine to set default values for the choice of surface schemes
18 !!
19 !! PURPOSE
20 !! -------
21 !!
22 !!** METHOD
23 !! ------
24 !!
25 !! EXTERNAL
26 !! --------
27 !!
28 !!
29 !! IMPLICIT ARGUMENTS
30 !! ------------------
31 !!
32 !! REFERENCE
33 !! ---------
34 !!
35 !!
36 !! AUTHOR
37 !! ------
38 !! V. Masson *Meteo France*
39 !!
40 !! MODIFICATIONS
41 !! -------------
42 !! Original 01/2004
43 !! B. Decharme 04/2013 replace RW_PRECIP by CPL_GCM
44 !! R. Séférian 03/2014 adding to decouple CO2 for photosynthesis
45 !-------------------------------------------------------------------------------
46 !
47 !* 0. DECLARATIONS
48 ! ------------
49 !
50 USE modd_surf_par, ONLY : xundef
51 !
52 !
53 USE yomhook ,ONLY : lhook, dr_hook
54 USE parkind1 ,ONLY : jprb
55 !
56 IMPLICIT NONE
57 !
58 !* 0.1 Declarations of arguments
59 ! -------------------------
60 !
61 !
62 REAL, INTENT(OUT) :: pout_tstep! time step for writing
63 REAL, INTENT(OUT) :: pcismin ! minimum wind shear
64 REAL, INTENT(OUT) :: pvmodmin ! minimum wind module
65 LOGICAL, INTENT(OUT) :: oaldthres ! flag to activate aladin formulation
66 LOGICAL, INTENT(OUT) :: odrag_coef_arp ! flag to activate aladin formulation for Cd and Ch
67 LOGICAL, INTENT(OUT) :: oaldz0h
68 LOGICAL, INTENT(OUT) :: onosof ! flag to deactivate the Subgrid Orography effects on Forcing
69 LOGICAL, INTENT(OUT) :: overtshift ! flag to deactivate the vertical shift between atmospheric and model orography
70 LOGICAL, INTENT(OUT) :: ovshift_lw
71 LOGICAL, INTENT(OUT) :: ovshift_prcp
72 REAL, INTENT(OUT) :: pedb
73 REAL, INTENT(OUT) :: pedc
74 REAL, INTENT(OUT) :: pedd
75 REAL, INTENT(OUT) :: pedk
76 REAL, INTENT(OUT) :: pusuric
77 REAL, INTENT(OUT) :: pusurid
78 REAL, INTENT(OUT) :: pusuricl
79 REAL, INTENT(OUT) :: pvchrnk
80 REAL, INTENT(OUT) :: pvz0cm
81 REAL, INTENT(OUT) :: primax
82 REAL, INTENT(OUT) :: pdelta_max ! Maximum fraction of the foliage covered by intercepted water
83 REAL, INTENT(OUT) :: pwindmin ! Minimum wind speed (canopy)
84 LOGICAL, INTENT(OUT) :: ovziustar0_arp ! flag to activate aladin formulation for zoh over sea
85 REAL, INTENT(OUT) :: przhz0m
86 REAL, INTENT(OUT) :: pvziustar0
87 LOGICAL, INTENT(OUT) :: orrgust_arp ! flag to activate the correction of CD, CH, CDN due to moist gustiness
88 REAL, INTENT(OUT) :: prrscale
89 REAL, INTENT(OUT) :: prrgamma
90 REAL, INTENT(OUT) :: putilgust
91 LOGICAL, INTENT(OUT) :: ocpl_arp
92 LOGICAL, INTENT(OUT) :: oqvnplus
93 LOGICAL, INTENT(OUT) :: ocpl_gcm ! Flag used to Read/Write some field from/into the restart file for coupling with ARPEGE/ALADIN
94 REAL, INTENT(OUT) :: pco2uncpl ! geochemical CO2 for photsynthesis (ppmv)
95 !
96 REAL(KIND=JPRB) :: zhook_handle
97 ! from/into the restart file for ARPEGE/ALADIN run
98 !
99 !
100 !* 0.2 Declarations of local variables
101 ! -------------------------------
102 !
103 !-------------------------------------------------------------------------------
104 IF (lhook) CALL dr_hook('DEFAULT_SURF_ATM',0,zhook_handle)
105 !
106 pout_tstep = xundef
107 !
108 pcismin = 6.7e-5
109 pvmodmin = 0.
110 oaldthres = .false.
111 !
112 odrag_coef_arp = .false.
113 oaldz0h = .false.
114 onosof = .true.
115 overtshift = .false.
116 ovshift_lw = .false.
117 ovshift_prcp = .false.
118 ocpl_gcm = .false.
119 pedb = 5.0
120 pedc = 5.0
121 pedd = 5.0
122 pedk = 1.0
123 pusuric = 1.0
124 pusurid = 0.035
125 pusuricl = 4.0
126 pvchrnk = 0.015
127 pvz0cm = 0.0
128 !
129 primax = 0.2
130 pdelta_max = 1.0
131 !
132 pwindmin = 1.e-6
133 !
134 przhz0m = 1.0
135 pvziustar0 = 0.0
136 ovziustar0_arp = .false.
137 !
138 orrgust_arp = .false.
139 prrscale = 1.15e-4
140 prrgamma = 0.8
141 putilgust = 0.125
142 ocpl_arp=.false.
143 oqvnplus=.false.
144 !
145 pco2uncpl = xundef
146 !
147 IF (lhook) CALL dr_hook('DEFAULT_SURF_ATM',1,zhook_handle)
148 !-------------------------------------------------------------------------------
149 !
150 END SUBROUTINE default_surf_atm
subroutine default_surf_atm(POUT_TSTEP, PCISMIN, PVMODMIN, OALDTHRES, ODRAG_COEF_ARP, OALDZ0H, ONOSOF, OCPL_GCM, PEDB, PEDC, PEDD, PEDK, PUSURIC, PUSURID, PUSURICL, PVCHRNK, PVZ0CM, PRIMAX, PDELTA_MAX, PWINDMIN, OVZIUSTAR0_ARP, PRZHZ0M, PVZIUSTAR0, ORRGUST_ARP, PRRSCALE, PRRGAMMA, PUTILGUST, OCPL_ARP, OQVNPLUS, OVERTSHIFT, OVSHIFT_LW, OVSHIFT_PRCP, PCO2UNCPL)