SURFEX v8.1
General documentation of Surfex
modd_sfx_oasis.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 !###############
7 !###############
8 !
9 !!**** *MODD_SFX_OASIS - declaration of variable for SFX-OASIS coupling
10 !!
11 !! PURPOSE
12 !! -------
13 !
14 !!
15 !!** IMPLICIT ARGUMENTS
16 !! ------------------
17 !! None
18 !!
19 !! REFERENCE
20 !! ---------
21 !!
22 !! AUTHOR
23 !! ------
24 !! B. Decharme *Meteo France*
25 !!
26 !! MODIFICATIONS
27 !! -------------
28 !! Original 10/13
29 !! S.Senesi 08/2015 : add CMODEL_NAME
30 !! 10/2016 B. Decharme : bug surface/groundwater coupling
31 !
32 !* 0. DECLARATIONS
33 ! ------------
34 !
35 IMPLICIT NONE
36 !
37 !-------------------------------------------------------------------------------
38 !
39 ! * Surfex - Oasis coupling general key :
40 !
41 !-------------------------------------------------------------------------------
42 !
43 LOGICAL :: loasis = .false. ! To use oasis coupler or not
44 !
45  CHARACTER(LEN=6) :: cmodel_name ! component model name (i.e. name under which
46 ! ! Surfex is declared to Oasis)
47 !
48 REAL :: xruntime = 0.0 ! Total simulated time in oasis namcouple (s)
49 !
50 !-------------------------------------------------------------------------------
51 !
52 ! * Land surface variables for Surfex - Oasis coupling
53 !
54 !-------------------------------------------------------------------------------
55 !
56 LOGICAL :: lcpl_land = .false. ! Fields to/from surfex land area
57 LOGICAL :: lcpl_calving = .false. ! Calving flux from surfex land area
58 LOGICAL :: lcpl_gw = .false. ! Fields to/from surfex land area to/from groundwater scheme
59 LOGICAL :: lcpl_flood = .false. ! Fields to/from surfex land area to/from floodplains scheme
60 !
61 ! Output variables
62 !
63 INTEGER :: nrunoff_id ! Surface runoff id
64 INTEGER :: ndrain_id ! Drainage id
65 INTEGER :: ncalving_id ! Calving flux id
66 INTEGER :: nsrcflood_id ! Floodplains freshwater flux id
67 !
68 ! Input variables
69 !
70 INTEGER :: nwtd_id ! water table depth id
71 INTEGER :: nfwtd_id ! grid-cell fraction of water table rise id
72 INTEGER :: nfflood_id ! Floodplains fraction id
73 INTEGER :: npiflood_id ! Potential flood infiltration id
74 !
75 !-------------------------------------------------------------------------------
76 !
77 ! * Lake variables for Surfex - Oasis coupling
78 !
79 !-------------------------------------------------------------------------------
80 !
81 LOGICAL :: lcpl_lake = .false. ! Fields to/from surfex lake area
82 !
83 ! Output variables
84 !
85 INTEGER :: nlake_evap_id ! Evaporation id
86 INTEGER :: nlake_rain_id ! Rainfall id
87 INTEGER :: nlake_snow_id ! Snowfall id
88 INTEGER :: nlake_watf_id ! Freshwater id
89 !
90 !-------------------------------------------------------------------------------
91 !
92 ! * Sea variables for Surfex - Oasis coupling
93 !
94 !-------------------------------------------------------------------------------
95 !
96 LOGICAL :: lcpl_sea = .false. ! Fields to/from surfex sea/water area
97 LOGICAL :: lcpl_seaice = .false. ! Fields to/from surfex sea-ice area (e.g. GELATO 3D, ...)
98 !
99 ! Sea Output variables
100 !
101 INTEGER :: nsea_fwsu_id ! zonal wind stress id
102 INTEGER :: nsea_fwsv_id ! meridian wind stress id
103 INTEGER :: nsea_heat_id ! Non solar net heat flux id
104 INTEGER :: nsea_snet_id ! Solar net heat flux id
105 INTEGER :: nsea_wind_id ! 10m wind speed id
106 INTEGER :: nsea_fwsm_id ! wind stress id
107 INTEGER :: nsea_evap_id ! Evaporation id
108 INTEGER :: nsea_rain_id ! Rainfall id
109 INTEGER :: nsea_snow_id ! Snowfall id
110 INTEGER :: nsea_watf_id ! Freshwater id
111 !
112 ! Sea-ice Output variables
113 !
114 INTEGER :: nseaice_heat_id ! Sea-ice non solar net heat flux id
115 INTEGER :: nseaice_snet_id ! Sea-ice solar net heat flux id
116 INTEGER :: nseaice_evap_id ! Sea-ice sublimation id
117 !
118 ! Sea Input variables
119 !
120 INTEGER :: nsea_sst_id ! Sea surface temperature id
121 INTEGER :: nsea_ucu_id ! Sea u-current stress id
122 INTEGER :: nsea_vcu_id ! Sea v-current stress id
123 !
124 ! Sea-ice Input variables
125 !
126 INTEGER :: nseaice_sit_id ! Sea-ice Temperature id
127 INTEGER :: nseaice_cvr_id ! Sea-ice cover id
128 INTEGER :: nseaice_alb_id ! Sea-ice albedo id
129 !
130 !-------------------------------------------------------------------------------
131 !
132 END MODULE modd_sfx_oasis
character(len=6) cmodel_name