SURFEX v8.1
General documentation of Surfex
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
real, parameter xundef
subroutine default_surf_atm(POUT_TSTEP, PCISMIN, PVMODMIN, OALDTHR
integer, parameter jprb
Definition: parkind1.F90:32
logical lhook
Definition: yomhook.F90:15