CDXWRF

De Wikicima
(Diferencias entre revisiones)
Saltar a: navegación, buscar
(Filling CDXWRF wiki)
(Rellenándola bien)
Línea 1: Línea 1:
 
= CDXWRF: WRF module for CORDEX =
 
= CDXWRF: WRF module for CORDEX =
   
CORDEX requirements of data for stake holders and decision making community, push the output of the atmospheric models, which demands that usually require time consuming post-process of the standard model output. In order to avoid this time and effort consuming post-processing task, here is presented the implementation of a new module into the Weather and Forecasting Model ([WRF http://www.mmm.ucar.edu/wrf/users/], Skamarok et al. 2008) module called <PRE>module_diag_cordex</PRE> with which is expected to substantially limit the need of post-processing.
+
CORDEX requirements of data for stake holders and decision making community, push the output of the atmospheric models, which demands that usually require time consuming post-process of the standard model output. In order to avoid this time and effort consuming post-processing task, here is presented the implementation of a new module into the Weather and Forecasting Model ([WRF http://www.mmm.ucar.edu/wrf/users/], Skamarok et al. 2008) module called <CODE>module_diag_cordex</CODE> with which is expected to substantially limit the need of post-processing.
   
 
PDF version of this page here [[File:module_CORDEX_WRF.pdf]]
 
PDF version of this page here [[File:module_CORDEX_WRF.pdf]]
Línea 25: Línea 25:
   
 
The module is basically based on two modules:
 
The module is basically based on two modules:
* <PRE>phys/module_diag_cordex.F</PRE>: Main module which manages the calls to the variables and the accumulations for
+
* <CODE>phys/module_diag_cordex.F</CODE>: Main module which manages the calls to the variables and the accumulations for
 
the means, ...
 
the means, ...
* <PRE>phys/module_diagvar_cordex.F</PRE>: Module with the computation of all the variables
+
* <CODE>phys/module_diagvar_cordex.F</CODE>: Module with the computation of all the variables
This module is accompanied with a new <PRE>Registry/registry.cordex</PRE> where the variables and a new section
+
This module is accompanied with a new <CODE>Registry/registry.cordex</CODE> where the variables and a new section
in the <PRE>namelist.inpt</PRE> labeled cordex are defined. There are other necessary complementary modifications on
+
in the <CODE>namelist.inpt</CODE> labeled cordex are defined. There are other necessary complementary modifications on
<PRE>phys/module_diagnostics_driver.F</PRE> encompassed by the pre-compilaton flag <PRE>CORDEXDIAG</PRE>, as well some modifications in the <PRE>main/depend.common</PRE> and <PRE>phys/Makefile</PRE>.
+
<CODE>phys/module_diagnostics_driver.F</CODE> encompassed by the pre-compilaton flag <CODE>CORDEXDIAG</CODE>, as well some modifications in the <CODE>main/depend.common</CODE> and <CODE>phys/Makefile</CODE>.
Output is provided by the auxiliary history output <PRE>#9</PRE> with a provisional file name: <PRE>wrfcordex_d<domain>_<date></PRE>
+
Output is provided by the auxiliary history output <CODE>#9</CODE> with a provisional file name: <CODE>wrfcordex_d<domain>_<date></CODE>
 
All that variables which are only required at output time step, are computed only at that exact time.
 
All that variables which are only required at output time step, are computed only at that exact time.
   
Línea 37: Línea 37:
   
 
At the same time, WRF can output on pressure levels while integration. However, initial version of the module does
 
At the same time, WRF can output on pressure levels while integration. However, initial version of the module does
not include required CORDEX variables: <PRE>wa</PRE> (vertical wind speed) and <PRE>hus</PRE> (specific humidity). Thus, code has also been modified and now, WRF output at pressure levels also provides wa and hus.
+
not include required CORDEX variables: <CODE>wa</CODE> (vertical wind speed) and <CODE>hus</CODE> (specific humidity). Thus, code has also been modified and now, WRF output at pressure levels also provides wa and hus.
It has been accomplished after modifying the codes: <PRE>Registry/registry.diags</PRE>, <PRE>phys/module_diagnostics_driver.F</PRE>, <PRE>phys/module_diag_pld.F</PRE> and <PRE>dyn_em/start_em.F</PRE>. The three latest modifications are also encapsulated within precompilation flag <PRE>CORDEXDIAG</PRE>.
+
It has been accomplished after modifying the codes: <CODE>Registry/registry.diags</CODE>, <CODE>phys/module_diagnostics_driver.F</CODE>, <CODE>phys/module_diag_pld.F</CODE> and <CODE>dyn_em/start_em.F</CODE>. The three latest modifications are also encapsulated within precompilation flag <CODE>CORDEXDIAG</CODE>.
See more details in how to activate this option in [WRF users http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_V3/users_guide_chap5.htm#_Description_of_Namelist] web-page over the namelist section <PRE>diags&</PRE>.
+
See more details in how to activate this option in [WRF users http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_V3/users_guide_chap5.htm#_Description_of_Namelist] web-page over the namelist section <CODE>diags&</CODE>.
   
 
=== Additional: water budget ===
 
=== Additional: water budget ===
 
It has been added also the components of the atmospheric water budget. They are accumulated internally and vertically
 
It has been added also the components of the atmospheric water budget. They are accumulated internally and vertically
 
integrated allover the column. In order to provide this capability, a series of modifications have been introduced in
 
integrated allover the column. In order to provide this capability, a series of modifications have been introduced in
<PRE>dyn_em/solve_em.F</PRE>
+
<CODE>dyn_em/solve_em.F</CODE>
   
 
== Installation ==
 
== Installation ==
Línea 54: Línea 54:
 
$ tar xvfz WRF_CORDEX.tar.gz
 
$ tar xvfz WRF_CORDEX.tar.gz
 
# It deflates all the required files and the modified orignal WRF files
 
# It deflates all the required files and the modified orignal WRF files
  +
<PRE>
 
main/depend.common
 
main/depend.common
 
dyn_em/solve_em.F
 
dyn_em/solve_em.F
Línea 65: Línea 66:
 
Registry/registry.cordex
 
Registry/registry.cordex
 
Registry/registry.diags
 
Registry/registry.diags
# On the <PRE>Registry/Registry.EM</PRE> add the following line (after the line with include <PRE>registry.new3d_wif</PRE>)
+
</PRE>
  +
# On the <CODE>Registry/Registry.EM</CODE> add the following line (after the line with include <CODE>registry.new3d_wif</CODE>)
 
include registry.cordex
 
include registry.cordex
# Clean the code (in order to avoid to run again configure one can make a copy of the <PRE>configure.wrf</PRE> and recover it after the clean, otherwise it is erased)
+
# Clean the code (in order to avoid to run again configure one can make a copy of the <CODE>configure.wrf</CODE> and recover it after the clean, otherwise it is erased)
  +
<PRE>
 
$ cp configure.wrf configure.cordex.wrf
 
$ cp configure.wrf configure.cordex.wrf
 
$ ./clean -a
 
$ ./clean -a
 
$ cp configure.cordex.wrf configure.wrf
 
$ cp configure.cordex.wrf configure.wrf
# edit the <PRE>`configure.wrf'</PRE> and add the line (after the line <PRE>-DNETCDF</PRE>)
+
</PRE>
-DCORDEXDIAG
+
# edit the <CODE>`configure.wrf'</CODE> and add the line (after the line <CODE>-DNETCDF</CODE>)
  +
<PRE>
  +
-DCORDEXDIAG
  +
</PRE>
 
# compile as always
 
# compile as always
  +
<PRE>
 
$ ./compile em_real >& compile.log
 
$ ./compile em_real >& compile.log
  +
</PRE>
   
 
== Usage ==
 
== Usage ==
 
 
These are the steps to use the module
 
These are the steps to use the module
# One need to add to the <PRE>'namelist.input'</PRE> the auxiliar output number 9 (e.g. for output every 3 hours and
+
# One need to add to the <CODE>'namelist.input'</CODE> the auxiliar output number 9 (e.g. for output every 3 hours and 1-day files) at the <CODE>`&history'</CODE> section:
1-day files) at the <PRE>`&history'</PRE> section:
+
<PRE>
 
auxhist9_outname = "wrfcdx_d<domain>_<date>"
 
auxhist9_outname = "wrfcdx_d<domain>_<date>"
 
auxhist9_interval = 180, 180,
 
auxhist9_interval = 180, 180,
 
frames_per_auxhist9 = 8, 8,
 
frames_per_auxhist9 = 8, 8,
 
io_form_auxhist9 = 2
 
io_form_auxhist9 = 2
# Also a new section should be added (assuming it will get complex and different implementations of the diagnostics
+
</PRE>
might be necessary...)
+
# Also a new section should be added (assuming it will get complex and different implementations of the diagnostics might be necessary...)
  +
<PRE>
 
&cordex
 
&cordex
 
output_cordex = 1
 
output_cordex = 1
Línea 104: Línea 106:
 
potevap_diag = 1: potential evapotranspiration following Penman-Monteith formulation after ORCHIDEE implementation
 
potevap_diag = 1: potential evapotranspiration following Penman-Monteith formulation after ORCHIDEE implementation
 
/
 
/
+
</PRE>
   
 
=== Pressure interpolation ===
 
=== Pressure interpolation ===
Remember to activate section <PRE>&diags</PRE> in order to get pressure-level vertical interpolation of state variables (g.e.: assuming 6 levels only and output every 3 hours)
+
Remember to activate section <CODE>&diags</CODE> in order to get pressure-level vertical interpolation of state variables (g.e.: assuming 6 levels only and output every 3 hours)
  +
<PRE>
 
&time_control
 
&time_control
 
(...)
 
(...)
Línea 124: Línea 126:
 
p_lev_missing = -999.
 
p_lev_missing = -999.
 
/
 
/
+
</PRE>
   
 
== Variables ==
 
== Variables ==
Línea 132: Línea 134:
 
These variables are:
 
These variables are:
 
* Instantaneous diagnostics (only computed on output times)
 
* Instantaneous diagnostics (only computed on output times)
*:- prw: Total water path
+
*:- <CODE>prw:</CODE> Total water path
clwvi: Total liquid water path (QCLOUD + QRAIN)
+
*:- <CODE>clwvi:</CODE> Total liquid water path (QCLOUD + QRAIN)
clivi: Total ice water path (QSNOW+QICE+GRAUPEL+QHAIL)
+
*:- <CODE>clivi:</CODE> Total ice water path (QSNOW+QICE+GRAUPEL+QHAIL)
ua: 3D earth-rotated eastward wind [ms-1]
+
*:- <CODE>ua:</CODE> 3D earth-rotated eastward wind [ms-1]
va: 3D earth-rotated northward wind [ms-1]
+
*:- <CODE>va:</CODE> 3D earth-rotated northward wind [ms-1]
ws: 3D wind speed [ms-1]
+
*:- <CODE>ws:</CODE> 3D wind speed [ms-1]
ta: 3D air-temperature [K]
+
*:- <CODE>ta:</CODE> 3D air-temperature [K]
press: 3D air pressure [Pa]
+
*:- <CODE>press:</CODE> 3D air pressure [Pa]
zg: 3D geopotential height [m]
+
*:- <CODE>zg:</CODE> 3D geopotential height [m]
hur: 3D relative humidty [1]
+
*:- <CODE>hur:</CODE> 3D relative humidty [1]
hus: 3D specific humidty [1]
+
*:- <CODE>hus:</CODE> 3D specific humidty [1]
uas: 10m earth-rotated eastward wind [ms-1]
+
*:- <CODE>uas:</CODE> 10m earth-rotated eastward wind [ms-1]
vas: 10m earth-rotated northward wind [ms-1]
+
*:- <CODE>vas:</CODE> 10m earth-rotated northward wind [ms-1]
wss: 10m wind speed [ms-1]
+
*:- <CODE>wss:</CODE> 10m wind speed [ms-1]
hurs: 2m relative humidty [1]
+
*:- <CODE>hurs:</CODE> 2m relative humidty [1]
huss: 2m specific humidty [1]
+
*:- <CODE>huss:</CODE> 2m specific humidty [1]
psl: sea level pressure [Pa] (three different ways)
+
*:- <CODE>psl:</CODE> sea level pressure [Pa] (three different ways)
cape: Convective Available Potential Energy [Jkg-1]
+
*:- <CODE>cape:</CODE> Convective Available Potential Energy [Jkg-1]
cin: Convective inhibition [Jkg-1]
+
*:- <CODE>cin:</CODE> Convective inhibition [Jkg-1]
zlfc: Height at the Level of free convection [m]
+
*:- <CODE>zlfc:</CODE> Height at the Level of free convection [m]
plfc: Pressure at the Level of free convection [Pa]
+
*:- <CODE>plfc:</CODE> Pressure at the Level of free convection [Pa]
li: Lifted index [1]
+
*:- <CODE>li:</CODE> Lifted index [1]
mrso: total soil moisture content [kgm-2]
+
*:- <CODE>mrso:</CODE> total soil moisture content [kgm-2]
slw: total liquid water content [kgm-2]
+
*:- <CODE>slw:</CODE> total liquid water content [kgm-2]
zmla: pbl height following a generic method [m]
+
*:- <CODE>zmla:</CODE> pbl height following a generic method [m]
ws100: 100m wind speed [ms-1]
+
*:- <CODE>ws100:</CODE> 100m wind speed [ms-1]
uz100: 100m wind x-direction [ms-1]
+
*:- <CODE>uz100:</CODE> 100m wind x-direction [ms-1]
vz100: 100m wind y-direction [ms-1]
+
*:- <CODE>vz100:</CODE> 100m wind y-direction [ms-1]
tauu, tauuv: components of the downward wind stress at 10 m [m2s-2]
+
*:- <CODE>tauu, tauuv:</CODE> components of the downward wind stress at 10 m [m2s-2]
cdgen: generic drag coefficient [-]
+
*:- <CODE>cdgen:</CODE> generic drag coefficient [-]
 
• Accumulated or similar time dependency (computed at every time-step). They are initialized after each output
 
• Accumulated or similar time dependency (computed at every time-step). They are initialized after each output
 
time-step. Thus, they represent statistics (mean, accumulation) only from between output time-steps.
 
time-step. Thus, they represent statistics (mean, accumulation) only from between output time-steps.
clt: total cloud cover [1]1
+
*:- <CODE>clt:</CODE> total cloud cover [1]
1 NOTE: CLDFRAC is computed by the radiative scheme thus, bear in mind to configure the namelist.input that: auxhist9_interval
+
*:- <CODE>cll:</CODE> low-level cloud cover [1]
> radt otherwise one obtains repeated values of clt, cll, clm, clh
+
*:- <CODE>clm:</CODE> mid-level cloud cover [1]
  +
*:- <CODE>clh:</CODE> high-level cloud cover [1]
  +
*:- <CODE>cltmean:</CODE> mean clt
  +
*:- <CODE>cllmean:</CODE> mean cll
  +
*:- <CODE>clmmean:</CODE> mean clm
  +
*:- <CODE>clhmean:</CODE> mean clh
  +
*:- <CODE>wsgsmax:</CODE> maximum surface wind gust [ms-1] (two different methods)
  +
*:- <CODE>ugsmax:</CODE> eastward maximum surface gust wind direction [ms-1]
  +
*:- <CODE>vgsmax:</CODE> northward maximum surface gust wind direction [ms-1]
  +
*:- <CODE>wsgspercen:</CODE> percentage of times when grid point got gust wind [%]
  +
*:- <CODE>totwsgsmax:</CODE> maximum surface wind gust [ms-1] (addition of different methods)
  +
*:- <CODE>totugsmax:</CODE> eastward maximum surface gust wind direction [ms-1]
  +
*:- <CODE>totvgsmax:</CODE> northward maximum surface gust wind direction [ms-1]
  +
*:- <CODE>totwsgspercen:</CODE> percentage of times when grid point got total gust wind [%]
  +
*:- <CODE>wsz100max:</CODE> maximum 100m wind [ms-1] (two different methods)
  +
*:- <CODE>uz100max:</CODE> eastward maximum 100m wind direction [ms-1]
  +
*:- <CODE>vz100max:</CODE> northward maximum 100m wind direction [ms-1]
  +
*:- <CODE>sund:</CODE> sunshine length [s]
  +
*:- <CODE>rsds:</CODE> mean surface Downwelling Shortwave Radiation [Wm-2]
  +
*:- <CODE>rlds:</CODE> mean surface Downwelling Longwave Radiation [Wm-2]
  +
*:- <CODE>hfls:</CODE> mean surface Upward Latent Heat Flux [Wm-2]
  +
*:- <CODE>hfss:</CODE> mean surface Upward Sensible Heat Flux [Wm-2]
  +
*:- <CODE>rsus:</CODE> mean surface Upwelling Shortwave Radiation [Wm-2]
  +
*:- <CODE>rlus:</CODE> mean surface Upwelling Longwave Radiation [Wm-2]
  +
*:- <CODE>evspsbl:</CODE> mean evaporation [kgm-2s-1]
  +
*:- <CODE>evspsblpot:</CODE> mean potential evapotranspiration [kgm-2s-1]
  +
*:- <CODE>snc:</CODE> mean snow area fraction [
  +
*:- <CODE>snd:</CODE> mean snow depth [m]
  +
*:- <CODE>mrros:</CODE> mean surface Runoff [kgm-2s-1]
  +
*:- <CODE>mrro:</CODE> mean total Runoff [kgm-2s-1]
  +
*:- <CODE>mrsol:</CODE> mean total water content of soil layer [kgm-2]
  +
*:- <CODE>pr:</CODE> precipitation flux [kgm-2s-1]
  +
*:- <CODE>prl:</CODE> large scale precipitation flux [kgm-2s-1]
  +
*:- <CODE>prc:</CODE> convective precipitation flux [kgm-2s-1]
  +
*:- <CODE>snw:</CODE> accumulated snow [ksm-2]
  +
** Additionally added referred to the water budget in the atmosphere (not required by CORDEX):
  +
*** <CODE>wbacdiabh:</CODE> Water-budget vertically integrated accumulated of diabatic heating from microphysics [K]
  +
*** <CODE>wbacpw, wbacpw[c/r/s/i/g/h]:</CODE> Water-budget vertically integrated accumulated total tendency for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
  +
*** <CODE>wbacf, wbacf[c/r/s/i/g/h]:</CODE> Water-budget vertically integrated accumulated horizontal advection for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
  +
*** <CODE>wbacz, wbacz[c/r/s/i/g/h]:</CODE> Water-budget vertically integrated accumulated vertical advection for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
  +
*** <CODE>wbacdiabh{l/m/h}:</CODE> Water-budget vertically integrated accumulated of diabatic heating from microphysics at low, medium and high levels (same as cloudiness) [K]
  +
*** <CODE>wbacpw[v/c/r/s/i/g/h]{l/m/h}:</CODE> Water-budget vertically integrated accumulated total tendency for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
  +
*** <CODE>wbacf[v/c/r/s/i/g/h]{l/m/h}:</CODE> Water-budget vertically integrated accumulated horizontal advection for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
  +
*** <CODE>wbacz[v/c/r/s/i/g/h]{l/m/h}:</CODE> Water-budget vertically integrated accumulated vertical advection for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
  +
* Pressure interplation
  +
*:- <CODE>hus_pl:</CODE> specific humidity [1]
  +
*:- <CODE>w_pl:</CODE> vertical wind speed [ms-1]
   
  +
=== clt: total cloudiness ===
   
CORDEX variables in WRF
+
This variable computes the total cloudiness above a grid point taking as input the cloud fraction of a given grid cell and level.
+
'''NOTE:'''
9
+
<PRE>
+
cloud fraction in WRF is computed by the radiative scheme, which is called at a frequency given by radt. It should be taking into account when one gets any accumulation of any value retrieved from it. Otherwise, one could compute the cloud fraction at every time-step (using any of the subroutines
– cll: low-level cloud cover [1]
 
– clm: mid-level cloud cover [1]
 
– clh: high-level cloud cover [1]
 
– cltmean: mean clt
 
– cllmean: mean cll
 
– clmmean: mean clm
 
– clhmean: mean clh
 
– wsgsmax: maximum surface wind gust [ms-1] (two different methods)
 
– ugsmax: eastward maximum surface gust wind direction [ms-1]
 
– vgsmax: northward maximum surface gust wind direction [ms-1]
 
– wsgspercen: percentage of times when grid point got gust wind [%]
 
– totwsgsmax: maximum surface wind gust [ms-1] (addition of different methods)
 
– totugsmax: eastward maximum surface gust wind direction [ms-1]
 
– totvgsmax: northward maximum surface gust wind direction [ms-1]
 
– totwsgspercen: percentage of times when grid point got total gust wind [%]
 
– wsz100max: maximum 100m wind [ms-1] (two different methods)
 
– uz100max: eastward maximum 100m wind direction [ms-1]
 
– vz100max: northward maximum 100m wind direction [ms-1]
 
– sund: sunshine length [s]
 
– rsds: mean surface Downwelling Shortwave Radiation [Wm-2]
 
– rlds: mean surface Downwelling Longwave Radiation [Wm-2]
 
– hfls: mean surface Upward Latent Heat Flux [Wm-2]
 
– hfss: mean surface Upward Sensible Heat Flux [Wm-2]
 
– rsus: mean surface Upwelling Shortwave Radiation [Wm-2]
 
– rlus: mean surface Upwelling Longwave Radiation [Wm-2]
 
– evspsbl: mean evaporation [kgm-2s-1]
 
– evspsblpot: mean potential evapotranspiration [kgm-2s-1]
 
– snc: mean snow area fraction [
 
– snd: mean snow depth [m]
 
– mrros: mean surface Runoff [kgm-2s-1]
 
– mrro: mean total Runoff [kgm-2s-1]
 
– mrsol: mean total water content of soil layer [kgm-2]
 
– pr: precipitation flux [kgm-2s-1]
 
– prl: large scale precipitation flux [kgm-2s-1]
 
– prc: convective precipitation flux [kgm-2s-1]
 
– snw: accumulated snow [ksm-2]
 
– Additionally added referred to the water budget in the atmosphere (not required by CORDEX):
 
∗ wbacdiabh: Water-budget vertically integrated accumulated of diabatic heating from microphysics [K]
 
∗ wbacpw, wbacpw[c/r/s/i/g/h]: Water-budget vertically integrated accumulated total tendency for
 
water vapour, cloud, rain, snow, ice, graupel, hail [mm]
 
∗ wbacf, wbacf[c/r/s/i/g/h]: Water-budget vertically integrated accumulated horizontal advection
 
for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
 
 
 
CORDEX variables in WRF
 
 
10
 
 
∗ wbacz, wbacz[c/r/s/i/g/h]: Water-budget vertically integrated accumulated vertical advection for
 
water vapour, cloud, rain, snow, ice, graupel, hail [mm]
 
∗ wbacdiabh{l/m/h}: Water-budget vertically integrated accumulated of diabatic heating from microphysics at low, medium and high levels (same as cloudiness) [K]
 
∗ wbacpw[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated total tendency for
 
water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness)
 
[mm]
 
∗ wbacf[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated horizontal advection for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as
 
cloudiness) [mm]
 
∗ wbacz[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated vertical advection
 
for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
 
• Pressure interplation
 
– hus_pl: specific humidity [1]
 
– w_pl: vertical wind speed [ms-1]
 
 
3.1
 
 
clt: total cloudiness
 
 
This variable computes the total cloudiness above a grid point taking as input the cloud fraction of a given grid cell
 
and level.
 
NOTE:
 
cloud fraction in WRF is computed by the radiative scheme, which is called at a frequency given by
 
radt. It should be taking into account when one gets any accumulation of any value retrieved from
 
it. Otherwise, one could compute the cloud fraction at every time-step (using any of the subroutines
 
 
from module_radiation_driver.F: cal_cldfra1, cal_cldfra2, cal_cldfra3), but then it will not
 
from module_radiation_driver.F: cal_cldfra1, cal_cldfra2, cal_cldfra3), but then it will not
 
be consistent in what was already considered whilst model integration
 
be consistent in what was already considered whilst model integration
The most common implementation assumes ‘random overlapping’ and its implemented in most of the global climate
+
</PRE>
models. Here is considered to take the implementation from the GCM LMDZ (http://lmdz.lmd.jussieu.fr/?set_
+
The most common implementation assumes <I>'random overlapping</I> and its implemented in most of the global climate models. Here is considered to take the implementation from the GCM [LMDZ http://lmdz.lmd.jussieu.fr/?set_language=en{}] (Hourdin et al., 2006). Calculation of the total cloudiness is done inside the subroutine <CODE>newmicro.f90</CODE>. Specific variable computation has already been extracted and implemented as a subroutine for the python utils [PyNCplot http://www.xn--llusfb-5va.cat/python/PyNCplot].
language=en{} Hourdin et al., 2006). Calculation of the total cloudiness is done inside the subroutine newmicro.f90.
 
Specific variable computation has already been extracted and implemented as a subroutine for the python utils
 
PyNCplot (http://www.xn--llusfb-5va.cat/python/PyNCplot). The code is provided in the appendix A.1
 
   
3.2
+
=== cllmh: low, medium and high cloudiness ===
  +
This variable computes the total cloudiness above a grid point at different vertical intervals (low: p ≥ 680hP a, medium: 680 < p ≥ 400 hP a, high: p < 400 HP a) taking as input the cloud fraction of a given grid cell.
   
cllmh: low, medium and high cloudiness
+
As in the case of the ‘clt’ calculation from LMDZ has already been implemented as an independent subroutine. See in figure 1 the result of the implementation
 
This variable computes the total cloudiness above a grid point at different vertical intervals (low: p ≥ 680hP a, medium:
 
680 < p ≥ 400 hP a, high: p < 400 HP a) taking as input the cloud fraction of a given grid cell.
 
As in the case of the ‘clt’ calculation from LMDZ has already been implemented as an independent subroutine.
 
See appendic B.1 for a snapshot of the code. See in figure 1 the result of the implementation
 
 
3.3
 
 
wsgsmax: Maximum Near-Surface Wind Speed of Gust
 
 
The wind gust accounts for the wind from upper levels that is projected to the surface due to instability within the
 
boundary layer. It can have different implementations. Winds are Earth-rotated.
 
• Brasseur01: An implementation of a wind gust following Turbuelent Kinetic Energy (T KE) estimates and stability by virtual temperature (θv , see mainly equation 1) reproducing Brasseur (2001) from the clWRF (clWRF,
 
http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/ClWrf Fita et al., 2010) [wsgs_diag = 1]
 
Z zp
 
Z zp
 
1
 
∆θv (z)
 
T KE(z)dz ≥
 
g
 
dz
 
(1)
 
zp 0
 
Θv (z)
 
0
 
 
 
CORDEX variables in WRF
 
 
11
 
   
 
Figure 1: Vertical distribution of cloud fraction and the different cloud types at a given point (top left): cloud fraction
 
Figure 1: Vertical distribution of cloud fraction and the different cloud types at a given point (top left): cloud fraction
Línea 189: Línea 192:
 
clhmean (middle right), map of clmmean (bottom middle) and map of cllmean (bottom right)
 
clhmean (middle right), map of clmmean (bottom middle) and map of cllmean (bottom right)
   
  +
=== wsgsmax: Maximum Near-Surface Wind Speed of Gust ===
  +
The wind gust accounts for the wind from upper levels that is projected to the surface due to instability within the boundary layer. It can have different implementations. Winds are Earth-rotated.
  +
* <CODE>Brasseur01:</CODE> An implementation of a wind gust following Turbuelent Kinetic Energy (TKE) estimates and stability by virtual temperature (θv , see mainly equation 1) reproducing Brasseur (2001) from the clWRF ([clWRF http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/ClWrf] Fita et al., 2010) [wsgs_diag = 1]
  +
* <CODE>WRF_afwa_diagnostics:</CODE> Inside the WRF module <CODE>module_diag_afwa.F</CODE> there is an implementation of the calculation of the wind gust which only occurrs as a blending of upper-level winds (around 1km above ground zagl; -1 zagl(k1000 ) ≥ 1000 m, see equation 2) above a given maximum precipitation inrensity of pratemm_hr ≥ 50 mm [wsgs_diag = 2]
   
12
+
These two methodologies have been implemented and can be switched by a new <CODE>namelist.input</CODE> parameter labeled wsgs_diag (in cordex section). Its default value is 1 It comes out, that both methodologies provide wind gust estimation (WGE) from two different perspectives: mechanic and convective. In order to take into account both winds gusts, another variable as the addition of both estimations is provided as <CODE>totwsgsmax</CODE>, <CODE>totugsmax</CODE>, <CODE>totvgsmax</CODE>, <CODE>totwsgspercen</CODE>. On figure 2 is shown the different outcomes applying each approximation
 
CORDEX variables in WRF
 
 
• WRF afwa diagnostics: Inside the WRF module module_diag_afwa.F there is an implementation of the calculation of the wind gust which only occurrs as a blending of upper-level winds (around 1km above ground zagl;
 
−1
 
zagl(k1000 ) ≥ 1000 m, see equation 2) above a given maximum precipitation inrensity of pratemm
 
hr ≥ 50 mmh
 
(see the code in appendix C.1) [wsgs_diag = 2]
 
va
 
~ 1km
 
 
= va(k
 
~ 1000 − 1) + [1000 − zagl(k1000 − 1)]
 
 
γ
 
 
=
 
 
va
 
~ blend
 
 
=
 
 
va(k
 
~ 1000 ) − va(k
 
~ 1000 − 1)
 
zagl(k1000 )
 
 
150 − pratemm
 
hr
 
100
 
vasγ
 
~ + va
 
~ 1km × (1 − γ)
 
 
(2)
 
 
These two methodologies have been implemented and can be switched by a new namelist.input parameter labeled
 
wsgs_diag (in cordex section). Its default value is 1
 
It comes out, that both methodologies provide wind gust estimation (WGE) from two different perspectives:
 
mechanic and convective. In order to take into account both winds gusts, another variable as the addition of both
 
estimations is provided as totwsgsmax, totugsmax, totvgsmax, totwsgspercen. On figure 2 is shown the different
 
outcomes applying each approximation
 
 
3.4
 
 
wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m
 
 
The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100
 
m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of
 
equations. This one is let to open discussion.
 
Instead as a way to overcome it, the estimation of maximum wind speed at 100 m is provided. Winds are Earthrotated. After PhD thesis of Jourdier (2015), two different methodologies are implemented to estimate the wind at
 
100 m above ground:
 
• Following power-law wind vertical distribution, as it is depicted in equation 3 using the upper-level atmospheric
 
<
 
>
 
wind speed below (k100
 
) and above (k100
 
) the height above ground of 100 m (zagl) [wsz100_diag = 1]
 
#αx,y
 
#
 
100.
 
>
 
(3)
 
va
 
~ 100 = va(k
 
~ 100
 
)
 
>
 
zagl(k100
 
)
 
>
 
<
 
ln(va(k
 
~ 100
 
)) − ln(va(k
 
~ 100
 
))
 
αx,y =
 
>
 
<
 
ln(zagl(k100 )) − ln(zagl(k100
 
))
 
• Following logarithmic-law wind vertical distribution, as it is depicted in equation 4 using upper-level atmospheric
 
<
 
>
 
wind speed below (k100
 
) and above (k100
 
) the height above ground of 100 m (zagl) [wsz100_diag = 2]
 
ln(z0 )
 
va
 
~ 100
 
 
>
 
<
 
<
 
>
 
va(k
 
~ 100
 
) ln(zagl(k100
 
)) − va(k
 
~ 100
 
) ln(zagl(k100
 
))
 
>
 
<
 
~ 100 )
 
va(k
 
~ 100 ) − va(k
 
ln(100.) − ln(z0 )
 
>
 
= va(k
 
~ 100
 
)
 
>
 
ln(zagl(k100
 
)) − ln(z0 )
 
 
=
 
 
(4)
 
 
• Following Monin-Obukhov theory is implemented and was tested, but it is not useful for heights larger than few
 
decameters (z > 80. m). However, the necessary code to extrapolate the wind at given height is left commented
 
just in case someone wants to use it.
 
These two methodologies have been implemented and can be switched by a new namelist.input parameter labeled
 
wsz100_diag (in cordex section). Its default value is 1. Even one can select another height for the estimation by
 
providing the new parameter z100m_wind with a different value than 100 m (default value)
 
On figure 3 is shown the different outcomes applying each approximation. There are some problems on MoninObukhov application under certain stable conditions (too small Obukhov length)
 
 
 
CORDEX variables in WRF
 
 
13
 
   
 
Figure 2: near surface wind gust estimates. 3h-maximum total wind gust strength (wsgsmaxtot , top left), percentage
 
Figure 2: near surface wind gust estimates. 3h-maximum total wind gust strength (wsgsmaxtot , top left), percentage
Línea 198: Línea 205:
 
right)
 
right)
   
  +
=== wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m ===
  +
The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100 m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of equations. This one is let to open discussion.
  +
Instead as a way to overcome it, the estimation of maximum wind speed at 100 m is provided. Winds are Earthrotated. After PhD thesis of Jourdier (2015), two different methodologies are implemented to estimate the wind at 100 m above ground:
  +
* Following power-law wind vertical distribution, as it is depicted in equation 3 using the upper-level atmospheric wind speed below (k100) and above (k100) the height above ground of 100 m (zagl) [wsz100_diag = 1]
  +
* Following logarithmic-law wind vertical distribution, as it is depicted in equation 4 using upper-level atmospheric wind speed below (k100) and above (k100) the height above ground of 100 m (zagl) [wsz100_diag = 2]
  +
* Following Monin-Obukhov theory is implemented and was tested, but it is not useful for heights larger than few decameters (z > 80. m). However, the necessary code to extrapolate the wind at given height is left commented just in case someone wants to use it.
   
CORDEX variables in WRF
+
These two methodologies have been implemented and can be switched by a new <CODE>namelist.input</CODE> parameter labeled <CODE>wsz100_diag</CODE> (in cordex section). Its default value is 1. Even one can select another height for the estimation by providing the new parameter <CODE>z100m_wind</CODE> with a different value than 100 m (default value)
   
14
+
On figure 3 is shown the different outcomes applying each approximation. There are some problems on MoninObukhov application under certain stable conditions (too small Obukhov length)
   
 
Figure 3: 100 m wind estimates. Comparison between upper-level winds and estimation at a given point and moment
 
Figure 3: 100 m wind estimates. Comparison between upper-level winds and estimation at a given point and moment
Línea 212: Línea 225:
   
   
15
+
=== prw: precipitable water or water vapor path ===
  +
This variable accounts for the column integrated amount of water vapor.
  +
This one is already implemented in a old WRF tool for vertical interpolation called <CODE>p_interp.F</CODE>. It was modified by L. Fita when he was as post-doc at the <I>'Universidad de Cantabria'</I> related to the clWRF. The general equation following WRF standard variables as:
   
CORDEX variables in WRF
+
where <I>mu</I>: perturbation dry air mass in column, <I>mub</I>: base-state dry air mass in column, <I>g</I>: gravity, <I>e_vert</I>: total number of vertical levels, <I>qvapor</I>: mixing ratio of water vapour, <I>dnw</I>: full-sigma eta-layer height. See an example on figure 4
   
 
Figure 4: On a given point (left): water path (prw, vertical straight line), vertical profile of water vapour (qv, line
 
Figure 4: On a given point (left): water path (prw, vertical straight line), vertical profile of water vapour (qv, line
Línea 220: Línea 233:
 
vertical is retrieved
 
vertical is retrieved
   
3.5
+
=== clwvi: condensed water path ===
+
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QCLOU D + QRAIN
prw: precipitable water or water vapor path
 
 
This variable accounts for the column integrated amount of water vapor.
 
This one is already implemented in a old WRF tool for vertical interpolation called p_interp.F. It was modified
 
by L. Fita when he was as post-doc at the ‘Universidad de Cantabria’ related to the clWRF. The general equation
 
following WRF standard variables as:
 
prw =
 
 
e_vert
 
mu + mub X
 
QV AP OR[iz](dnw[iz + 1] − dnw[iz])
 
g
 
iz=1
 
 
(5)
 
 
where mu: perturbation dry air mass in column, mub: base-state dry air mass in column, g: gravity, e_vert: total
 
number of vertical levels, qvapor: mixing ratio of water vapour, dnw: full-sigma eta-layer height. See an example on
 
figure 4
 
 
3.6
 
 
clwvi: condensed water path
 
 
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in
 
5, but replacing QV AP OR by QCLOU D + QRAIN
 
 
3.7
 
 
clivi: ice water path
 
 
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in
 
5, but replacing QV AP OR by QICE + QSN OW + QGRAU P EL + QHAIL
 
 
3.8
 
 
clgvi: graupel water path
 
 
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in
 
5, but replacing QV AP OR by QGRAU P EL
 
 
 
16
 
 
CORDEX variables in WRF
 
 
3.9
 
 
clhvi: hail water path
 
   
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in
+
=== clivi: ice water path ===
5, but replacing QV AP OR by QHAIL
+
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QICE + QSN OW + QGRAUPEL + QHAIL
   
3.10
+
=== clgvi: graupel water path ===
  +
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QGRAUPEL
   
psl: sea level pressure
+
=== clhvi: hail water path ===
  +
This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QHAIL
   
This accounts for the pressure at the sea level (extrapolation of the pressure at the level of the sea). That means the
+
=== psl: sea level pressure ===
pressure that might be without the presence of orography.
+
This accounts for the pressure at the sea level (extrapolation of the pressure at the level of the sea). That means the pressure that might be without the presence of orography.
 
Three different methodologies have been implemented
 
Three different methodologies have been implemented
One using hydrostatic-Shuell method already implemented in the the module phys/module_diag_afwa.F (assuming a constant lapse-rate of 6.5 km−1 , see appendix D.1) [psl_diag = 1]
+
* One using hydrostatic-Shuell method already implemented in the the module <CODE>phys/module_diag_afwa.F</CODE> (assuming a constant lapse-rate of 6.5 K km−1) [psl_diag = 1]
Using smoothed surface pressure and a target upper-level pressure, already implemented in p_interp.F90 (see
+
* Using smoothed surface pressure and a target upper-level pressure, already implemented in <CODE>p_interp.F90</CODE> [psl_diag = 2]
appendix D.3) [psl_diag = 2]
+
* ECMWF method taken from LMDZ from the module pppmer.F90, following the methodology by Mats Hamrud and Philippe Courtier from ECMWF [psl_diag = 3]
• ECMWF method taken from LMDZ from the module pppmer.F90, following the methodology by Mats Hamrud
 
and Philippe Courtier from ECMWF (see appendix D.2) [psl_diag = 3]
 
These three methodologies have been implemented and can be switched by a new namelist.input parameter
 
labeled psl_diag (in cordex section). Its default value is 3. Even, on using the ‘ptarget’ method (psl_diag = 2) one
 
can select the degree of smoothing of the surface place by the selecting the number of times that the smoothing (as
 
the mean of the point and its surrounding 8 neighbors) has to be applied (psmooth, default 5) and the upper pressure
 
to be used as target (ptarget, default 70000 P a).
 
On figure 5 is shown the different outcomes applying each approximation. There are some problems with the
 
ptarget methodology in both psl estimate and borders for each parallel process on applying the smoothing
 
   
3.11
+
These three methodologies have been implemented and can be switched by a new <CODE>namelist.input</CODE> parameter labeled <CODE>psl_diag</CODE> (in cordex section). Its default value is 3. Even, on using the <CODE>'ptarget'<CODE> method (<CODE>psl_diag = 2</CODE>) one can select the degree of smoothing of the surface place by the selecting the number of times that the smoothing (as the mean of the point and its surrounding 8 neighbors) has to be applied (<CODE>psmooth</CODE>, default 5) and the upper pressure to be used as target (<CODE>ptarget</CODE>, default <I>70000 Pa</I>).
+
On figure 5 is shown the different outcomes applying each approximation. There are some problems with the ptarget methodology in both psl estimate and borders for each parallel process on applying the smoothing
cape: convective available potential energy
 
 
This variable accounts for all the energy that convectively might be released.
 
From AMS glossary is described as: (http://glossary.ametsoc.org/wiki/Convective_available_potential_
 
energy)
 
On a thermodynamic diagram this is called positive area and can be seen as the region between the lifted
 
parcel process curve and the environmental sounding, from the parcel’s level of free convection to its level
 
of neutral buoyancy. CAPE may be expressed as follows:
 
Z pn
 
CAP E =
 
Rd (Tvp − Tve )d ln p
 
(6)
 
pf
 
 
where Tvp is the virtual temperature of a lifted parcel moving upward moist adiabatically from the level
 
of free convection to the level of neutral buoyancy, Tve is the virtual temperature of the environment, Rd
 
is the specific gas constant for dry air, pf is the pressure at the level of free convection, and pn is the
 
pressure at the level of neutral buoyancy. The value depends on whether the moist-adiabatic process is
 
considered to be reversible or irreversible (conventionally irreversible, or a pseudoadiabatic process in which
 
condensed water immediately falls out of the parcel) and whether the latent heat of freezing is considered
 
(conventionally not). It is assumed that the environment is in hydrostatic balance and that the pressure
 
of the parcel is the same as that of the environment. Virtual temperature is used for the parcel and
 
environment to account for the effect of moisture on air density.
 
It has been at this stage only the calculation already implemented in WRF inside the module module_diag_afwa.F
 
via the function Buoyancy, which at the same time it provides: Convective inhibition (CIN), Height at the Level of
 
free convection (ZLFC), Pressure at the Level of free convection (PLFC) and Lifted index (LI)
 
 
 
CORDEX variables in WRF
 
 
17
 
   
 
Figure 5: sea level pressure estimates. Following hydrostatic-Shuell method at a given time-step (pslshuell , upper left),
 
Figure 5: sea level pressure estimates. Following hydrostatic-Shuell method at a given time-step (pslshuell , upper left),
Línea 244: Línea 257:
 
pslptarget (bottom left), pslshuell − pslecmwf (bottom middle) and pslptarget − pslecmwf (bottom right)
 
pslptarget (bottom left), pslshuell − pslecmwf (bottom middle) and pslptarget − pslecmwf (bottom right)
   
  +
=== cape: convective available potential energy ===
  +
This variable accounts for all the energy that convectively might be released.
  +
From AMS glossary is described as: ([CAPE http://glossary.ametsoc.org/wiki/Convective_available_potential_energy])
  +
<PRE>
  +
On a thermodynamic diagram this is called positive area and can be seen as the region between the lifted parcel process curve and the environmental sounding, from the parcel’s level of free convection to its level of neutral buoyancy. CAPE may be expressed as follows:</PRE>
   
18
+
where <I>Tvp</I> is the virtual temperature of a lifted parcel moving upward moist adiabatically from the level of free convection to the level of neutral buoyancy, <I>Tve</I> is the virtual temperature of the environment, <I>Rd</I> is the specific gas constant for dry air, pf is the pressure at the level of free convection, and <I>pn</I> is the pressure at the level of neutral buoyancy. The value depends on whether the moist-adiabatic process is considered to be reversible or irreversible (conventionally irreversible, or a pseudoadiabatic process in which condensed water immediately falls out of the parcel) and whether the latent heat of freezing is considered (conventionally not). It is assumed that the environment is in hydrostatic balance and that the pressure of the parcel is the same as that of the environment. Virtual temperature is used for the parcel and environment to account for the effect of moisture on air density.
   
CORDEX variables in WRF
+
It has been at this stage only the calculation already implemented in WRF inside the module <CODE>module_diag_afwa.F</CODE> via the function <CODE>Buoyancy</CODE>, which at the same time it provides: Convective inhibition (CIN), Height at the Level of free convection (ZLFC), Pressure at the Level of free convection (PLFC) and Lifted index (LI)
   
3.12
+
=== cin: convective inhibition ===
   
cin: convective inhibition
+
This variable accounts for the process which inhibits the convection. Already provided by the implementation of the AFWA’s CAPE calculation
  +
From AMS glossary is described as: [CIN http://glossary.ametsoc.org/wiki/Convective_inhibition])
  +
<PRE>
  +
The energy needed to lift an air parcel upward adiabatically to the lifting condensation level (LCL) and then as a psuedoadiabatic process from the LCL to its level of free convection (LF C). For an air parcel possessing positive CAP E, the CIN represents the negative area on a thermodynamic diagram. The negative area typically arises from the presence of a lid, or the amount of kinetic energy that must be added to a parcel to enable that parcel to reach the LF C. Even though other factors may be favorable for development of convection, if convective inhibition is sufficiently large, deep convection will not form. The convective inhibition is expressed (analogously to CAP E) as follows:
  +
</PRE>
   
This variable accounts for the process which inhibits the convection. Already provided by the implementation of the
+
where <I>pi</I> is the pressure at the level at which the parcel originates, <I>pf</I> is the pressure at the LFC, <I>Rd</I> is the specific gas constant for dry air, <I>Tvp</I> is the virtual temperature of the lifted parcel, and <I>Tve</I> is the virtual temperature of the environment. It is assumed that the environment is in hydrostatic balance and that the pressure of the parcel is the same as that of the environment. Virtual temperature is used for the parcel and environment to account for the effect of moisture on air density.
AFWA’s CAPE calculation
 
From AMS glossary is described as: http://glossary.ametsoc.org/wiki/Convective_inhibition)
 
The energy needed to lift an air parcel upward adiabatically to the lifting condensation level (LCL) and
 
then as a psuedoadiabatic process from the LCL to its level of free convection (LF C).
 
For an air parcel possessing positive CAP E, the CIN represents the negative area on a thermodynamic
 
diagram. The negative area typically arises from the presence of a lid, or the amount of kinetic energy
 
that must be added to a parcel to enable that parcel to reach the LF C. Even though other factors may be
 
favorable for development of convection, if convective inhibition is sufficiently large, deep convection will
 
not form. The convective inhibition is expressed (analogously to CAP E) as follows:
 
Z
 
   
pf
+
=== sund: duration of sunshine ===
  +
This variable accounts for the time where short-wave radiation is above 120 W m−2 .
   
CIN =
+
It is already implemented in a advance version of the [clWRF http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/ClWrf].
 
Rd (Tvp − Tve )d ln p
 
 
(7)
 
 
pi
 
 
where pi is the pressure at the level at which the parcel originates, pf is the pressure at the LF C, Rd
 
is the specific gas constant for dry air, Tvp is the virtual temperature of the lifted parcel, and Tve is the
 
virtual temperature of the environment. It is assumed that the environment is in hydrostatic balance and
 
that the pressure of the parcel is the same as that of the environment. Virtual temperature is used for the
 
parcel and environment to account for the effect of moisture on air density.
 
 
3.13
 
 
sund: duration of sunshine
 
 
This variable accounts for the time where short-wave radiation is above 120 W m−2 .
 
It is already implemented in a advance version of the clWRF http://www.meteo.unican.es/wiki/cordexwrf/
 
SoftwareTools/ClWrf. But here will directly computed using XIOS (http://forge.ipsl.jussieu.fr/ioserver/)
 
 
See results of the variable in figure 6
 
See results of the variable in figure 6
 
3.14
 
 
hur: relative humidity
 
 
Relative humidity can be obtained following the Clausius-Clapeyron formula and its approximation from the AugustRoche-Magnus formula of saturated water vapor pressure es
 
17.625∗tempC
 
 
es = 6.1094 ∗ e tempC+243.04
 
0.622 ∗ es
 
ws =
 
presshP a − es
 
q
 
hur =
 
ws ∗ 1000.
 
 
(8)
 
(9)
 
(10)
 
 
being tempC: temperature in Celsius degree (◦ C), presshP a: pressure in hP a, es : saturated water vapor pressure,
 
ws : saturated mixing ratio kgkg −1 , q: mixing ratio kgkg −1
 
 
3.15
 
 
hus: specific humidity
 
 
From the AMS glossary http://glossary.ametsoc.org/wiki/Specific_humidity
 
q=
 
where rv : mixing ratio
 
 
rv
 
rv + 1
 
 
(11)
 
 
 
CORDEX variables in WRF
 
 
19
 
   
 
Figure 6: Temporal evolution (left) of shortwave downward radiation (swdown, red line, left y-axis) and sunshine
 
Figure 6: Temporal evolution (left) of shortwave downward radiation (swdown, red line, left y-axis) and sunshine
 
duration (sund, stars, right y-axis. sund map at a given time (right))
 
duration (sund, stars, right y-axis. sund map at a given time (right))
   
  +
=== hur: relative humidity ===
  +
Relative humidity can be obtained following the Clausius-Clapeyron formula and its approximation from the AugustRoche-Magnus formula of saturated water vapor pressure es
   
20
+
being <I>tempC</I>: temperature in Celsius degree (◦ C), <I>presshPa</I>: pressure in hPa, <I>es</I>: saturated water vapor pressure, <I>ws</I>: saturated mixing ratio kgkg −1 , <I>q</I>: mixing ratio kgkg −1
   
CORDEX variables in WRF
+
=== hus: specific humidity ===
  +
From the AMS glossary [hus http://glossary.ametsoc.org/wiki/Specific_humidity]
   
3.16
+
=== zg: geopotential height ===
  +
zg = PH + P HB
  +
where <I>PHB</I>, WRF base geopotential height, <I>P</I>, WRF perturbation geopotential height
   
zg: geopotential height
+
=== press: air-pressure ===
(12)
+
press = P + PB
  +
where <I>PB</I>, WRF base pressure, <I>P</I>, WRF perturbation pressure
   
zg = P H + P HB
+
=== ta: air-temperature ===
where P HB, WRF base geopotential height, P , WRF perturbation geopotential height
+
where <I>T</I>, WRF temperature (which is as potential temperature), <I>PB</I>, WRF base pressure, <I>P</I>, WRF perturbation pressure, <I>p0</I>: pressure reference 100000 Pa
   
3.17
+
=== ua/va: air-wind Earth oriented ===
  +
where <I>Uunstg</I>, unstaggered WRF eastward wind, <I>Vunstg</I>, unstaggered WRF northward wind, <I>COSALPHA</I>, local cosine of map rotation, <I>SINALPHA</I>, local sine of map rotation
   
press: air-pressure
+
=== cdgen ===
(13)
 
   
press = P + P H
+
Drag coefficient at surface. Computation of drag coefficient depends on selected surface scheme. In order to avoid this scheme dependency, a general calculation of the coefficient has been introduced as it is shown in equation 16, after Garratt (1992).
where P B, WRF base pressure, P , WRF perturbation pressure
 
   
3.18
+
Being, <I>u∗</I>: from similarity theory, <I>wss</I>: 10 m wind speed
   
ta: air-temperature
+
=== tauuv ===
#
 
ta = (T + 300)
 
 
P + PB
 
p0
 
 
#R/Cp
 
 
(14)
 
 
where T , WRF temperature (which is as potential temperature), P B, WRF base pressure, P , WRF perturbation
 
pressure, p0: pressure reference 100000 P a
 
 
3.19
 
 
ua/va: air-wind Earth oriented
 
#
 
 
ua = Uunstg ∗ COSALP HA − Vunstg ∗ SIN ALP HA
 
va = Uunstg ∗ SIN ALP HA + Vunstg ∗ COSALP HA
 
 
(15)
 
 
where Uunstg , unstaggered WRF eastward wind, Vunstg , unstaggered WRF northward wind, COSALP HA, local
 
cosine of map rotation, SIN ALP HA, local sine of map rotation
 
 
3.20
 
 
cdgen
 
 
Drag coefficient at surface. Computation of drag coefficient depends on selected surface scheme. In order to avoid this
 
scheme dependency, a general calculation of the coefficient has been introduced as it is shown in equation 16, after
 
Garratt (1992).
 
#
 
Cd =
 
 
u∗
 
wss
 
 
#2
 
 
(16)
 
 
Being, u∗ : from similarity theory, wss 10 m wind speed
 
 
3.21
 
 
tauuv
 
   
 
Surface Downdward wind stress at 10m.
 
Surface Downdward wind stress at 10m.
It is implemented following the equation 17, begin CD drag coefficient. Winds are Earth-rotated. The generic drag
+
It is implemented following the equation 17, begin CD drag coefficient. Winds are Earth-rotated. The generic drag coefficient cdgen is used to compute these variables.
coefficient cdgen is used to compute these variables.
 
tauv = CD uas2 , CD vas2
 
   
#
+
=== evspsblpot ===
  +
Potential evapotranspiration is computed following its computation from ORCHIDEE model (Organising Carbon and Hydrology In Dynamic Ecosystems, [ORCHIDEE http://orchidee.ipsl.fr/]). The implementation is retrieved from the module <CODE>src_sechiba/enerbil.f90</CODE> and basically consists no an implementation of the Penman-Monteith formulation (Monteith, 1965). It is a simple formulation (see equation 18)
   
(17)
+
where <I>qc</I>: surface drag coefficient, <I>q2sat</I>: Saturated air at 2m (can be assumed to be <I>q2 == qsfc</I>?), <I>uas,vas</I>: 10 m wind components.
  +
Up to now there is only one implementation and it is selected via namelist parameter potevap_diag, up to now only with value 1 for the ORCHIDEE implementation
   
+
=== rsus ===
21
+
Surface Upwelling Shortwave Radiation, is understood as the shortwave radiation from land. It is provided accumulated by radiation schemes CAM and RRTMG (<CODE>sw_ra_scheme = 3,4</CODE>) in variable swupb. However, it might be re-calculated (if necessary) in a generic way as the reflected shortwave radiation due to albedo as it is shown in equation
 
CORDEX variables in WRF
 
 
3.22
 
 
evspsblpot
 
 
Potential evapotranspiration is computed following its computation from ORCHIDEE model (Organising Carbon
 
and Hydrology In Dynamic Ecosystems, http://orchidee.ipsl.fr/). The implementation is retrieved from the
 
module src_sechiba/enerbil.f90 and basically consists no an implementation of the Penman-Monteith formulation
 
(Monteith, 1965). It is a simple formulation (see equation 18)
 
potevap = ρ(1) ∗ qc ∗ (q2sat − qv(1))
 
p
 
qc = Cd uas2 + vas2
 
 
(18)
 
(19)
 
 
where qc: surface drag coefficient, q2sat : Saturated air at 2m (can be assumed to be q2 == qsf c?), uas, vas: 10 m
 
wind components.
 
Up to now there is only one implementation and it is selected via namelist parameter potevap_diag, up to now
 
only with value 1 for the ORCHIDEE implementation
 
 
3.23
 
 
rsus
 
 
Surface Upwelling Shortwave Radiation, is understood as the shortwave radiation from land. It is provided accumulated
 
by radiation schemes CAM and RRTMG (sw_ra_scheme = 3,4) in variable swupb. However, it might be re-calculated
 
(if necessary) in a generic way as the reflected shortwave radiation due to albedo as it is shown in equation 20
 
 
rsus = −alebdo ∗ swdown
 
rsus = −alebdo ∗ swdown
  +
Being, <I>albedo</I>: albedo, <I>sdown</I>: downward at surface shortwave radiation
   
(20)
+
=== rlus ===
+
Surface Upwelling Longwave Radiation, is understood as the longwave radiation from land. It is provided accumulated by radiation schemes CAM and RRTMG (<CODE>sw_ra_scheme = 3,4</CODE>) in variable slupb. However, it might be re-calculated (if necessary) in a generic way as the longwave radiation due to surface temperature following black body formulation
Being, albedo: albedo, sdown: downward at surface shortwave radiation
 
 
3.24
 
 
rlus
 
 
Surface Upwelling Longwave Radiation, is understood as the longwave radiation from land. It is provided accumulated
 
by radiation schemes CAM and RRTMG (sw_ra_scheme = 3,4) in variable slupb. However, it might be re-calculated
 
(if necessary) in a generic way as the longwave radiation due to surface temperature following black body formulation
 
 
as it is shown in equation 21
 
as it is shown in equation 21
 
rlus = CtBoltzxman ∗ skt4
 
rlus = CtBoltzxman ∗ skt4
Being, CtBoltzman: albedo, skt: skin temperature
+
Being, <I>CtBoltzman<I>: Boltzman constant, <I>skt</I>: skin temperature
   
(21)
 
 
 
22
 
 
CORDEX variables in WRF
 
 
4
 
 
Additional variables
 
   
  +
== Additional variables ==
 
Some other variables not required by CORDEX, but might be interesting for other purposes will be also added
 
Some other variables not required by CORDEX, but might be interesting for other purposes will be also added
   
4.1
+
=== Water vapor balance terms ===
+
These covers the different column integrated terms of the water balance equation. The equation of the water vapour budget:
Water vapor balance terms
 
 
These covers the different column integrated terms of the water balance equation. The equation of the water vapour
 
budget:
 
T ENq
 
∂qq
 
∂t
 
 
= HORq + V ERq + M Pq
 
~ q − w ∂qq + SOq − SIq
 
= −Vh ∇q
 
∂z
 
 
(22)
 
 
Where q stands for either of the five water species concentration (vapor, snow, ice, rain and liquid), V h stands
 
for horizontal wind speed, w stands for the vertical wind speed and M P for the loss or gain of water due to cloud
 
microphysical processes. The term in the left-hand side of the equation represents the water species tendency (T EN
 
or ‘PW’), referring to the difference between q at the model previous time step and at the end of the actual time step,
 
divided by the time step. T EN equals to the horizontal advection (HOR or ‘F’, first term in right-hand side of the
 
equation), the vertical advection (V ER or ‘Z’, second term in right-hand side) and the sources (SO) or sink (SI) of
 
atmospheric water due to microphysical processes (M P ). All terms are expressed in kgkg −1 s−1 . However, SO, and
 
SI ca not be provided because they are micro-physics dependent an make difficult to provide a general formula for
 
them.
 
In order to obtain the total column mass of water due to each term (in units of mm), it is applied to each term of
 
eq. 22 (similarly as in 5):
 
 
 
 
1
 
g
 
 
Z
 
 
ptop
 
 
dp
 
   
(23)
+
Where <I>q</I> stands for either of the five water species concentration (vapor, snow, ice, rain and liquid), <I>Vh</I> stands for horizontal wind speed, <I>w</I> stands for the vertical wind speed and <I>MP</I> for the loss or gain of water due to cloud microphysical processes. The term in the left-hand side of the equation represents the water species tendency (<I>TEN</I> or <I>PW</I>), referring to the difference between q at the model previous time step and at the end of the actual time step, divided by the time step. <I>TEN</I> equals to the horizontal advection (<I>HOR</I> or '<I>F</I>', first term in right-hand side of the equation), the vertical advection (<I>VER</I> or <I>'Z'</I>, second term in right-hand side) and the sources (<I>SO</I>) or sink (<I>SI</I>) of atmospheric water due to microphysical processes (<I>MP</I>). All terms are expressed in kgkg −1s−1. However, <I>SO</I>, and <I>SI</I> ca not be provided because they are micro-physics dependent an make difficult to provide a general formula for them.
   
psf c
+
In order to obtain the total column mass of water due to each term (in units of mm), it is applied to each term of eq. 22 (similarly as in 5):
   
Following the methodology of Huang et al. (2014) and Yang et al. (2011), Fita and Flaounas (2017) implemented
+
Following the methodology of Huang et al. (2014) and Yang et al. (2011), Fita and Flaounas (2018) implemented the water budget terms in a new module in WRF in order to allow the computation of the terms during model integration. For the CORDEX module, only the vertically integrated variables will be implemented. Microphysics processes depends on the micro-physics scheme used during model run. It is know the the budget is closed, thus, residual of the terms must be the micor-phsyics term. Due to the complexity of each micro-physics scheme and the impossibility to generalize the calculation, the accumulation of diabatic heating from the micro-physics scheme is provided as a proxy.
the water budget terms in a new module in WRF in order to allow the computation of the terms during model
 
integration. For the CORDEX module, only the vertically integrated variables will be implemented. Microphysics
 
processes depends on the micro-physics scheme used during model run. It is know the the budget is closed, thus,
 
residual of the terms must be the micor-phsyics term. Due to the complexity of each micro-physics scheme and the
 
impossibility to generalize the calculation, the accumulation of diabatic heating from the micro-physics scheme is
 
provided as a proxy.
 
 
All water species decomposition is shown in figures 7 and 8
 
All water species decomposition is shown in figures 7 and 8
It has also been grouped by vertical levels as it is done with the clouds: p ≥ 68000 P a, 40000 ≤ p < 68000 P a,
+
It has also been grouped by vertical levels as it is done with the clouds: p ≥ 68000 P a, 40000 ≤ p < 68000 P a, p < 40000 P a. Decomposition of each term is shown for water vapour qv and snow in figures from 9 to 12.
p < 40000 P a. Decomposition of each term is shown for water vapour qv and snow in figures from 9 to 12.
 
 
 
CORDEX variables in WRF
 
 
23
 
   
 
Figure 7: Water budget 3h-accumulated vertically integrated total tendency ‘PW’ at a given time, for water vapour
 
Figure 7: Water budget 3h-accumulated vertically integrated total tendency ‘PW’ at a given time, for water vapour
Línea 372: Línea 344:
 
(qh, bottom right). Number on low left corner of the figure correspond to the standard deviation (σ in mm) value
 
(qh, bottom right). Number on low left corner of the figure correspond to the standard deviation (σ in mm) value
 
used for the normalization
 
used for the normalization
 
 
CORDEX variables in WRF
 
 
24
 
   
 
Figure 8: As in 7, but for Water budget 3h-accumulated vertically integrated horizontal advection ‘F’ at a given time
 
Figure 8: As in 7, but for Water budget 3h-accumulated vertically integrated horizontal advection ‘F’ at a given time
 
 
CORDEX variables in WRF
 
 
25
 
   
 
Figure 9: Water budget evolution at a given point for water vapour of vertically integrated water-budget terms: total
 
Figure 9: Water budget evolution at a given point for water vapour of vertically integrated water-budget terms: total
Línea 393: Línea 355:
 
of advh qv (green) and advz qv (blue) and their respective residuals as dashed lines (bottom left) and only low-level
 
of advh qv (green) and advz qv (blue) and their respective residuals as dashed lines (bottom left) and only low-level
 
vertically integrated values (p ≥ 680 hP a, bottom right)
 
vertically integrated values (p ≥ 680 hP a, bottom right)
 
 
CORDEX variables in WRF
 
 
26
 
   
 
Figure 10: water vapour water budget maps of each component and diabtic heating from micro-physics at a given
 
Figure 10: water vapour water budget maps of each component and diabtic heating from micro-physics at a given
Línea 405: Línea 362:
 
to the total (second row), percentage for mid level (680 > p ≥ 440 hP a) integration to the total (third row) and
 
to the total (second row), percentage for mid level (680 > p ≥ 440 hP a) integration to the total (third row) and
 
percentage of low-level (p ≥ 680 hP a) integration (bottom row)
 
percentage of low-level (p ≥ 680 hP a) integration (bottom row)
 
 
27
 
 
CORDEX variables in WRF
 
   
 
Figure 11: The same as in figure 9, but for snow
 
Figure 11: The same as in figure 9, but for snow
 
 
28
 
 
CORDEX variables in WRF
 
   
 
Figure 12: The same as in 10, bur for snow
 
Figure 12: The same as in 10, bur for snow
   
+
=== zmlagen: generic boundary layer height ===
CORDEX variables in WRF
+
Boundary layer height is a clear example of model dependence and even scheme dependence of how a diagnostic is computed. Each pbl scheme has its own assumptions and has to be compiled in a specific way.
+
However, one could try to find a general definition as it was done in (García-Díez et al., 2013) after (NielsenGammon et al., 2008). The method consists in searching for the first level where potential temperature exceeds the minimum potential temperature reached in the mixed layer (ML) by more than 1.5 K. It has been implemented as it is shown below
4.2
+
# Mixed layer depth (kMLD) first layer at which the variation of mixing ratio upwards from first layer value achieves a given percentage:
+
# Minimum potential temperature within the MLD: θminM LD = min(θ(1), ..., θ(kM LD ))
29
+
# Boundary layer level (kzmla ) first level where: θ(kzmla ) + δθ > θminM LD (here δθ = 1.5 K)
+
# Boundary layer height (zmla) height above ground (zagl): zmla = zagl(kzmla )
zmlagen: generic boundary layer height
 
 
Boundary layer height is a clear example of model dependence and even scheme dependence of how a diagnostic is
 
computed. Each pbl scheme has its own assumptions and has to be compiled in a specific way.
 
However, one could try to find a general definition as it was done in (García-Díez et al., 2013) after (NielsenGammon et al., 2008). The method consists in searching for the first level where potential temperature exceeds the
 
minimum potential temperature reached in the mixed layer (ML) by more than 1.5 K. It has been implemented as it
 
is shown below
 
1. Mixed layer depth (kM LD ) first layer at which the variation of mixing ratio upwards from first layer value achieves
 
LD )−qv(1)|
 
> δqv (here applied a δqv = 0.1)
 
a given percentage: |qv(kMqv(1)
 
2. Minimum potential temperature within the MLD: θminM LD = min(θ(1), ..., θ(kM LD ))
 
3. Boundary layer level (kzmla ) first level where: θ(kzmla ) + δθ > θminM LD (here δθ = 1.5 K)
 
4. Boundary layer height (zmla) height above ground (zagl): zmla = zagl(kzmla )
 
 
Comparison of this implementation with the zmla directly provided by WRF’s pbl scheme is shown in figure 13.
 
Comparison of this implementation with the zmla directly provided by WRF’s pbl scheme is shown in figure 13.
No general rule has been applied to determine the correct value of δqv used to determine depth of mixed layer. They
+
No general rule has been applied to determine the correct value of δqv used to determine depth of mixed layer. They can be determined by the <CODE>namelist.input</CODE> parameters <CODE>zmlagen_dqv</CODE> for δqv (default value 0.1) and <CODE>zmlagen_dtheta</CODE> for δθ (default value 1.5 K)
can be determined by the namelist.input parameters zmlagen_dqv for δqv (default value 0.1) and zmlagen_dtheta
 
for δθ (default value 1.5 K)
 
 
 
CORDEX variables in WRF
 
 
30
 
   
 
Figure 13: Vertical characteristics of the atmosphere at a given point (top left): potential temperature vertical profile
 
Figure 13: Vertical characteristics of the atmosphere at a given point (top left): potential temperature vertical profile
Línea 438: Línea 385:
   
   
CORDEX variables in WRF
+
== Work done ==
 
5
 
 
31
 
 
Work done
 
 
 
Following similar experiencies like clWRF, the implementation would be done as follows:
 
Following similar experiencies like clWRF, the implementation would be done as follows:
1. Introduce the new variables in the registry.cordex
+
# Introduce the new variables in the <CODE>registry.cordex</CODE>
2. Reproduce the structure of any of the diagnostics module (e.g. phys/module_diag_cl.F) and introduce each
+
# Reproduce the structure of any of the diagnostics module (e.g. <CODE>phys/module_diag_cl.F</CODE>) and introduce each computation from the different sources.
computation from the different sources.
+
# This accounts for a lot of additional variables, thus all the module related will be activated on computation by a pre-compilation flag called <CODE>DIAGCORDEX</CODE>
3. This accounts for a lot of additional variables, thus all the module related will be activated on computation by
+
# Introduction of a new namelis.input section for that variables with more than one option
a pre-compilation flag called DIAGCORDEX
+
# Output these variables in a new output file <CODE>wrfcdx_d<domain>_<date></CODE>
4. Introduction of a new namelis.input section for that variables with more than one option
+
# As an additional work, all the instantaneous variables used for the different accumuluations and extremes, can also be retrieved. It is only necessary to:
5. Output these variables in a new output file wrfcdx_d<domain>_<date>
+
## Give an output unit on the <CODE>registry.cordex</CODE> (see instructions at the end of the file)
6. As an additional work, all the instantaneous variables used for the different accumuluations and extremes, can
+
## Uncomment in the code (<CODE>phys/module_diagnostics_dirver.F</CODE> and <CODE>module_diag_cordex.F</CODE>), the commented lines with the key word: <CODE>INSTVALS</CODE>
also be retrieved. It is only necessary to:
+
## re-compile WRF
• Give an output unit on the registry.cordex (see instructions at the end of the file)
 
• Uncomment in the code (phys/module_diagnostics_dirver.F and module_diag_cordex.F), the commented lines with the key word: INSTVALS
 
• re-compile WRF
 
 
 
32
 
 
CORDEX variables in WRF
 
 
6
 
 
Missing variables
 
   
  +
== Missing variables ==
 
There are certain variables which could not be introduced (yet?)
 
There are certain variables which could not be introduced (yet?)
   
6.1
+
=== wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m ===
  +
The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100 m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of equations. This one is let to open discussion.
   
wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m
+
=== ic_lightning, cg_lightning, tot_lightning: intra-cloud, ground and total lightning flashes ===
  +
There is lightning scheme implementation in WRF. (lightning_option among other from namelist.input). It might require some adjustment prior it’s use.
  +
It does not sees to provide a wolrdwide cloud/ground discrimination
   
The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100
+
=== praccmov ===
m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of
+
Moving accumulated precipitation values for different temporal thresholds ): 30 minutes, 1 hour, 3 hour, 6 hours and 24 hours.
equations. This one is let to open discussion.
+
This variable might be useful for the impact studies on infrastructures like bridges. The idea would be to provide its maximum between output times (tout ) as it is suggested in the equation 24
 
6.2
 
 
ic_lightning, cg_lightning, tot_lightning: intra-cloud, ground and total lightning
 
flashes
 
 
There is lightning scheme implementation in WRF. (lightning_option among other from namelist.input). It might
 
require some adjustment prior it’s use.
 
It does not sees to provide cloud/ground discrimination
 
 
6.3
 
 
praccmov
 
 
Moving accumulated precipitation values for different temporal thresholds (τ ): 30 minutes, 1 hour, 3 hour, 6 hours
 
and 24 hours.
 
This variable might be useful for the impact studies on infrastructures like bridges. The idea would be to provide
 
its maximum between output times (tout ) as it is suggested in the equation 24
 
 
praccmovτ (t)
 
 
=
 
 
t
 
X
 
 
pr(it)
 
 
(24)
 
 
it=t−τ
 
 
maxpraccmovτ
 
 
= max [praccmovτ (tout + δt), ..., praccmovτ (tout )]
 
 
(25)
 
 
 
CORDEX variables in WRF
 
 
7
 
 
33
 
 
Others
 
   
  +
=== Others ===
 
It will be some other hard work to do related to it.
 
It will be some other hard work to do related to it.
   
7.1
+
==== New variables ====
+
Pretty sure that as we get closer to stake-holders, decision makers, impact and mitigation communities more variables will arise... keep in touch !?
New variables
 
 
Pretty sure that as we get closer to stake-holders, decision makers, impact and mitigation communities more variables
 
will arise... keep in touch !?
 
 
7.2
 
 
CF-compilant file
 
 
WRF does not provide a real CF-compilant file format. It would be necessary to add at least at the output (at least
 
on the wrfcdx_d<domain>_<date> file):
 
• time variable: CF-version of variable with times in the file
 
• atrtributes: WRF does not provide variables with standard attributes like: standar_name, long_name, ...
 
 
7.3
 
 
Optimization
 
 
Avoid the use of namelist options and got the variables/method directly without the introduction of ifs which might
 
make WRF run slowly. This could be done directly via pre-compilation flags, using for example, the namelist options
 
as pre-compilation options?
 
Acknowledgements All the coders of WRF, LMDZ, ORCHIDEE are acknowledged for their work on the developing and maintaining of the models. M. A. Jiménez from Universitat de les Illes Balears is acknowledged by her
 
explanations on certain PBL calculations. J. Milovac from U. Hohenheim for her comments is also acknowledged.
 
   
References
+
==== CF-compilant file ====
Brasseur, O. (2001). Development and application of a physical approach to estimating wind gusts. Monthly Weather
+
WRF does not provide a real CF-compilant file format. It would be necessary to add at least at the output (at least on the wrfcdx_d<domain>_<date> file):
Review, 129(1):5–25.
+
* time variable: CF-version of variable with times in the file
Fita, L., Fernández, J., and García-Díez, M. (2010). Clwrf: Wrf modifications for regional climate simulation under
+
* atrtributes: WRF does not provide variables with standard attributes like: standar_name, long_name, ...
future scenarios. Proceedings of 11th WRF Users’ Workshop.
 
Fita, L. and Flaounas, E. (2017). Medicanes as subtropical cyclones: the december 2005 case from the perspective of
 
surface pressure tendency diagnostics and atmospheric water budget. Q. J. Royal Met. Soc., under revision.
 
García-Díez, M., Fernández, J., Fita, L., and Yagüe, C. (2013). Seasonal dependence of wrf model biases and sensitivity
 
to pbl schemes over europe. Q. J. of Roy. Met. Soc., 139:501–514.
 
Garratt, J. (1992). The Atmospheric Boundary Layer. Cambridge Univ. Press, Cambridge, U.K.
 
Hourdin, F., Musat, I., Bony, S., Braconnot, P., Codron, F., Dufresne, J.-L., Fairhead, L., Filiberti, M.-A., Friedlingstein, P., Grandpeix, J.-Y., Krinner, G., LeVan, P., Li, Z.-X., and Lott, F. (2006). The lmdz4 general circulation
 
model: climate performance and sensitivity to parametrized physics with emphasis on tropical convection. Clim.
 
Dyn., 27(7-8):787–813.
 
Huang, H.-L., Yang, M.-J., and Sui, C.-H. (2014). Water budget and precipitation efficiency of typhoon morakot
 
(2009). J. Atmos. Sci., 71:112–129.
 
Jourdier, B. (2015). Ressource éolienne en france métropolitaine : méthodes dâĂŹévaluation du potentiel, variabilité
 
et tendances. Climatologie: École Doctorale Polytechnique, 2015. Français. ph:+33 01238226, pages 1–229.
 
Monteith, J. L. (1965). Evaporation and environment. the state and movement of water in living organisms. 19th
 
Symp. Soc. Exp. Biol, pages 205–234.
 
   
  +
==== Optimization ====
  +
Avoid the use of namelist options and got the variables/method directly without the introduction of ifs which might make WRF run slowly. This could be done directly via pre-compilation flags, using for example, the namelist options as pre-compilation options?
   
CORDEX variables in WRF
 
   
34
+
== Acknowledgements ==
  +
All the coders of WRF, LMDZ, ORCHIDEE are acknowledged for their work on the developing and maintaining of the models. M. A. Jiménez from Universitat de les Illes Balears (UIB) is acknowledged by her explanations on certain PBL calculations. J. Milovac from U. Hohenheim for her comments is also acknowledged. D. Argüeso from UIB
   
Nielsen-Gammon, J. W., Powell, C. L., Mahoney, M. J., Angevine, W. M., Senff, C., White, A., Berkowitz, C.,
+
== References ==
Doran, C., and Knupp, K. (2008). Multisensor estimation of mixing heights over a coastal city. Journal of Applied
+
* Brasseur, O. (2001). Development and application of a physical approach to estimating wind gusts. Monthly Weather Review, 129(1):5–25.
Meteorology and Climatology, 47(1):27–43.
+
* Fita, L., Fernández, J., and García-Díez, M. (2010). Clwrf: Wrf modifications for regional climate simulation under future scenarios. Proceedings of 11th WRF Users’ Workshop.
Skamarock, W. C., Klemp, J. B., Dudhia, J., Gill, D. O., Duda, D. M. B. M. G., Huang, X.-Y., Wang, W.,
+
* Fita, L. and Flaounas, E. (2017). Medicanes as subtropical cyclones: the december 2005 case from the perspective of surface pressure tendency diagnostics and atmospheric water budget. Q. J. Royal Met. Soc., accepted.
and Powers, J. G. (2008). A description of the advanced research wrf version 3. NCAR TECHNICAL NOTE,
+
* García-Díez, M., Fernández, J., Fita, L., and Yagüe, C. (2013). Seasonal dependence of wrf model biases and sensitivity to pbl schemes over europe. Q. J. of Roy. Met. Soc., 139:501–514.
475:NCAR/TNÂŋ475+STR.
+
* Garratt, J. (1992). The Atmospheric Boundary Layer. Cambridge Univ. Press, Cambridge, U.K.
Yang, M. J., Braun, S. A., and Chen, D.-S. (2011). Water budget of typhoon nari (2001). Mon. Wather Rev.,
+
* Hourdin, F., Musat, I., Bony, S., Braconnot, P., Codron, F., Dufresne, J.-L., Fairhead, L., Filiberti, M.-A., Friedlingstein, P., Grandpeix, J.-Y., Krinner, G., LeVan, P., Li, Z.-X., and Lott, F. (2006). The LMDZ4 general circulation model: climate performance and sensitivity to parametrized physics with emphasis on tropical convection. Clim. Dyn., 27(7-8):787–813.
139:3809–3828.
+
* Huang, H.-L., Yang, M.-J., and Sui, C.-H. (2014). Water budget and precipitation efficiency of typhoon Morakot (2009). J. Atmos. Sci., 71:112–129.
  +
* Jourdier, B. (2015). Ressource éolienne en france métropolitaine : méthodes dâĂŹévaluation du potentiel, variabilité et tendances. Climatologie: École Doctorale Polytechnique, 2015. Français. ph:+33 01238226, pages 1–229.
  +
* Monteith, J. L. (1965). Evaporation and environment. the state and movement of water in living organisms. 19th Symp. Soc. Exp. Biol, pages 205–234.
  +
* Nielsen-Gammon, J. W., Powell, C. L., Mahoney, M. J., Angevine, W. M., Senff, C., White, A., Berkowitz, C., Doran, C., and Knupp, K. (2008). Multisensor estimation of mixing heights over a coastal city. Journal of Applied Meteorology and Climatology, 47(1):27–43.
  +
* Skamarock, W. C., Klemp, J. B., Dudhia, J., Gill, D. O., Duda, D. M. B. M. G., Huang, X.-Y., Wang, W., and Powers, J. G. (2008). A description of the advanced research wrf version 3. NCAR TECHNICAL NOTE, 475:NCAR/TNÂŋ475+STR.
  +
* Yang, M. J., Braun, S. A., and Chen, D.-S. (2011). Water budget of typhoon nari (2001). Mon. Wather Rev., 139:3809–3828.

Revisión de 15:15 23 mar 2018

Contenido

CDXWRF: WRF module for CORDEX

CORDEX requirements of data for stake holders and decision making community, push the output of the atmospheric models, which demands that usually require time consuming post-process of the standard model output. In order to avoid this time and effort consuming post-processing task, here is presented the implementation of a new module into the Weather and Forecasting Model ([WRF http://www.mmm.ucar.edu/wrf/users/], Skamarok et al. 2008) module called module_diag_cordex with which is expected to substantially limit the need of post-processing.

PDF version of this page here Archivo:module CORDEX WRF.pdf

In order to get the code send an email to : lluis.fita [a] cima.fcen.uba.ar in order to keep a track and being able to inform of new versions/corrections.

CORDEX requirements

CORDEX requirements of data must cover all the possible needs of stake holders, and scientists working on the adaptation and mitigation strategies. They are grouped in different levels of frequency and priority. A working copy of this list is available [here https://www.hymex.org/cordexfps-convection/wiki/doku.php?id=protocol] from the CORDEX convection permitting Flag Ship Pilot study.

Some of the variables are not directly computed in the WRF model which require to extend the model output in order to provide enough variables to post-process the variables.

The implementation of the module_diag_cordex module should allow to avoid the post-processing by computing the CORDEX-required (Core & Tier) variables during model integration

NOTE: Be aware that any systematic checking process has been applied to this module. Use it and the variables therein at your own risk !! It has been tested on a 2-nested domain configuration with the inner domain at cloud resolving resolution (< 5 km, without cumulus scheme), making use of restarts and on pure distributed memory parallel environment


module_diag_cordex

The module is basically based on two modules:

  • phys/module_diag_cordex.F: Main module which manages the calls to the variables and the accumulations for

the means, ...

  • phys/module_diagvar_cordex.F: Module with the computation of all the variables

This module is accompanied with a new Registry/registry.cordex where the variables and a new section in the namelist.inpt labeled cordex are defined. There are other necessary complementary modifications on phys/module_diagnostics_driver.F encompassed by the pre-compilaton flag CORDEXDIAG, as well some modifications in the main/depend.common and phys/Makefile. Output is provided by the auxiliary history output #9 with a provisional file name: wrfcordex_d<domain>_<date> All that variables which are only required at output time step, are computed only at that exact time.

Additional: pressure levels interpolation

At the same time, WRF can output on pressure levels while integration. However, initial version of the module does not include required CORDEX variables: wa (vertical wind speed) and hus (specific humidity). Thus, code has also been modified and now, WRF output at pressure levels also provides wa and hus. It has been accomplished after modifying the codes: Registry/registry.diags, phys/module_diagnostics_driver.F, phys/module_diag_pld.F and dyn_em/start_em.F. The three latest modifications are also encapsulated within precompilation flag CORDEXDIAG. See more details in how to activate this option in [WRF users http://www2.mmm.ucar.edu/wrf/users/docs/user_guide_V3/users_guide_chap5.htm#_Description_of_Namelist] web-page over the namelist section diags&.

Additional: water budget

It has been added also the components of the atmospheric water budget. They are accumulated internally and vertically integrated allover the column. In order to provide this capability, a series of modifications have been introduced in dyn_em/solve_em.F

Installation

These steps must be followed prior the re-compilation of the WRF model and assuming that the process is started where the code resides (WRFV3)

  1. Untar the file

$ tar xvfz WRF_CORDEX.tar.gz

  1. It deflates all the required files and the modified orignal WRF files
main/depend.common
dyn_em/solve_em.F
dyn_em/start_em.F
phys/module_diagnostics_driver.F
phys/module_diag_cordex.F
phys/module_diagvar_cordex.F
phys/module_diag_pld.F
phys/Makefile
README.cordex
Registry/registry.cordex
Registry/registry.diags
  1. On the Registry/Registry.EM add the following line (after the line with include registry.new3d_wif)

include registry.cordex

  1. Clean the code (in order to avoid to run again configure one can make a copy of the configure.wrf and recover it after the clean, otherwise it is erased)
$ cp configure.wrf configure.cordex.wrf
$ ./clean -a
$ cp configure.cordex.wrf configure.wrf
  1. edit the `configure.wrf' and add the line (after the line -DNETCDF)
                      -DCORDEXDIAG
  1. compile as always
$ ./compile em_real >& compile.log

Usage

These are the steps to use the module

  1. One need to add to the 'namelist.input' the auxiliar output number 9 (e.g. for output every 3 hours and 1-day files) at the `&history' section:
auxhist9_outname = "wrfcdx_d<domain>_<date>"
auxhist9_interval = 180, 180,
frames_per_auxhist9 = 8, 8,
io_form_auxhist9 = 2
  1. Also a new section should be added (assuming it will get complex and different implementations of the diagnostics might be necessary...)
&cordex
output_cordex = 1
psl_diag = 1: sea-level pressure diagnostic following hydrostatic Shuell correction
         = 2: psl diagnostic following a target pressure
         = 3: psl diagnostic following ECMWF method (default)
psmooth  = 5: passes of neighborgh filtering (3x3-grid point mean) of psfc for psl_diag=2 (default 5)
ptarget  = 70000.: pressure [Pa] target to be used by psl_diag=2 (default 70000.)
wsgs_diag = 1: wind-gust diagnostic following Brasseur, 2001, MWR (default)
          = 2: wsgs folllowing heavy precipitation method
wsz100_diag = 1: wind extraoplation at z100m_wind using power-law method (default)
            = 2: wind extraoplation at z100m_wind using logarithmic method
            = 3: wind extraoplation at z100m_wind using Monin-Obukhov theory (NOT activated)
z100_wind   = 100.: height to extraplate winds (100. default)
zmlagen_dqv = 0.1: percentage of variation of mixing ratio to determine mixed layer depth used in zmla computation (0.1 default)
zmlagen_dtheta = 1.5: increment in K of potantial temperature from its minimum within the MLD used in zmla computation (1.5 default)
potevap_diag = 1: potential evapotranspiration following Penman-Monteith formulation after ORCHIDEE implementation
/

Pressure interpolation

Remember to activate section &diags in order to get pressure-level vertical interpolation of state variables (g.e.: assuming 6 levels only and output every 3 hours)

&time_control
(...)
auxhist23_outname="wrfpress_d<domain>_<date>"
io_form_auxhist23 = 2,
auxhist23_interval = 180, 180,
frames_per_auxhist23 = 100, 100,
(...)
/
(...)
&diags
p_lev_diags = 1,
num_press_levels = 6,
press_levels = 100000, 92500, 85000, 70000, 50000, 20000
use_tot_or_hyd_p = 1
p_lev_missing = -999.
/

Variables

These are the different variables added and their implementations from the WRF point of view. There might be necessary to revise some of them, or even decide which version to use In case of accumulation/mean they are also be included

These variables are:

  • Instantaneous diagnostics (only computed on output times)
    - prw: Total water path
    - clwvi: Total liquid water path (QCLOUD + QRAIN)
    - clivi: Total ice water path (QSNOW+QICE+GRAUPEL+QHAIL)
    - ua: 3D earth-rotated eastward wind [ms-1]
    - va: 3D earth-rotated northward wind [ms-1]
    - ws: 3D wind speed [ms-1]
    - ta: 3D air-temperature [K]
    - press: 3D air pressure [Pa]
    - zg: 3D geopotential height [m]
    - hur: 3D relative humidty [1]
    - hus: 3D specific humidty [1]
    - uas: 10m earth-rotated eastward wind [ms-1]
    - vas: 10m earth-rotated northward wind [ms-1]
    - wss: 10m wind speed [ms-1]
    - hurs: 2m relative humidty [1]
    - huss: 2m specific humidty [1]
    - psl: sea level pressure [Pa] (three different ways)
    - cape: Convective Available Potential Energy [Jkg-1]
    - cin: Convective inhibition [Jkg-1]
    - zlfc: Height at the Level of free convection [m]
    - plfc: Pressure at the Level of free convection [Pa]
    - li: Lifted index [1]
    - mrso: total soil moisture content [kgm-2]
    - slw: total liquid water content [kgm-2]
    - zmla: pbl height following a generic method [m]
    - ws100: 100m wind speed [ms-1]
    - uz100: 100m wind x-direction [ms-1]
    - vz100: 100m wind y-direction [ms-1]
    - tauu, tauuv: components of the downward wind stress at 10 m [m2s-2]
    - cdgen: generic drag coefficient [-]

• Accumulated or similar time dependency (computed at every time-step). They are initialized after each output time-step. Thus, they represent statistics (mean, accumulation) only from between output time-steps.

  • - clt: total cloud cover [1]
    - cll: low-level cloud cover [1]
    - clm: mid-level cloud cover [1]
    - clh: high-level cloud cover [1]
    - cltmean: mean clt
    - cllmean: mean cll
    - clmmean: mean clm
    - clhmean: mean clh
    - wsgsmax: maximum surface wind gust [ms-1] (two different methods)
    - ugsmax: eastward maximum surface gust wind direction [ms-1]
    - vgsmax: northward maximum surface gust wind direction [ms-1]
    - wsgspercen: percentage of times when grid point got gust wind [%]
    - totwsgsmax: maximum surface wind gust [ms-1] (addition of different methods)
    - totugsmax: eastward maximum surface gust wind direction [ms-1]
    - totvgsmax: northward maximum surface gust wind direction [ms-1]
    - totwsgspercen: percentage of times when grid point got total gust wind [%]
    - wsz100max: maximum 100m wind [ms-1] (two different methods)
    - uz100max: eastward maximum 100m wind direction [ms-1]
    - vz100max: northward maximum 100m wind direction [ms-1]
    - sund: sunshine length [s]
    - rsds: mean surface Downwelling Shortwave Radiation [Wm-2]
    - rlds: mean surface Downwelling Longwave Radiation [Wm-2]
    - hfls: mean surface Upward Latent Heat Flux [Wm-2]
    - hfss: mean surface Upward Sensible Heat Flux [Wm-2]
    - rsus: mean surface Upwelling Shortwave Radiation [Wm-2]
    - rlus: mean surface Upwelling Longwave Radiation [Wm-2]
    - evspsbl: mean evaporation [kgm-2s-1]
    - evspsblpot: mean potential evapotranspiration [kgm-2s-1]
    - snc: mean snow area fraction [
    - snd: mean snow depth [m]
    - mrros: mean surface Runoff [kgm-2s-1]
    - mrro: mean total Runoff [kgm-2s-1]
    - mrsol: mean total water content of soil layer [kgm-2]
    - pr: precipitation flux [kgm-2s-1]
    - prl: large scale precipitation flux [kgm-2s-1]
    - prc: convective precipitation flux [kgm-2s-1]
    - snw: accumulated snow [ksm-2]
    • Additionally added referred to the water budget in the atmosphere (not required by CORDEX):
      • wbacdiabh: Water-budget vertically integrated accumulated of diabatic heating from microphysics [K]
      • wbacpw, wbacpw[c/r/s/i/g/h]: Water-budget vertically integrated accumulated total tendency for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
      • wbacf, wbacf[c/r/s/i/g/h]: Water-budget vertically integrated accumulated horizontal advection for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
      • wbacz, wbacz[c/r/s/i/g/h]: Water-budget vertically integrated accumulated vertical advection for water vapour, cloud, rain, snow, ice, graupel, hail [mm]
      • wbacdiabh{l/m/h}: Water-budget vertically integrated accumulated of diabatic heating from microphysics at low, medium and high levels (same as cloudiness) [K]
      • wbacpw[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated total tendency for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
      • wbacf[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated horizontal advection for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
      • wbacz[v/c/r/s/i/g/h]{l/m/h}: Water-budget vertically integrated accumulated vertical advection for water vapour, cloud, rain, snow, ice, graupel, hail at low, medium and high levels (same as cloudiness) [mm]
  • Pressure interplation
    - hus_pl: specific humidity [1]
    - w_pl: vertical wind speed [ms-1]

clt: total cloudiness

This variable computes the total cloudiness above a grid point taking as input the cloud fraction of a given grid cell and level. NOTE:

cloud fraction in WRF is computed by the radiative scheme, which is called at a frequency given by radt. It should be taking into account when one gets any accumulation of any value retrieved from it. Otherwise, one could compute the cloud fraction at every time-step (using any of the subroutines 
from module_radiation_driver.F: cal_cldfra1, cal_cldfra2, cal_cldfra3), but then it will not
be consistent in what was already considered whilst model integration

The most common implementation assumes 'random overlapping and its implemented in most of the global climate models. Here is considered to take the implementation from the GCM [LMDZ http://lmdz.lmd.jussieu.fr/?set_language=en{}] (Hourdin et al., 2006). Calculation of the total cloudiness is done inside the subroutine newmicro.f90. Specific variable computation has already been extracted and implemented as a subroutine for the python utils [PyNCplot http://www.xn--llusfb-5va.cat/python/PyNCplot].

cllmh: low, medium and high cloudiness

This variable computes the total cloudiness above a grid point at different vertical intervals (low: p ≥ 680hP a, medium: 680 < p ≥ 400 hP a, high: p < 400 HP a) taking as input the cloud fraction of a given grid cell.

As in the case of the ‘clt’ calculation from LMDZ has already been implemented as an independent subroutine. See in figure 1 the result of the implementation

Figure 1: Vertical distribution of cloud fraction and the different cloud types at a given point (top left): cloud fraction (cldf ra, full circles with line in blue), mean total cloud fraction (cltmean, vertical dashed line), mean low-level cloud fraction (cllmean p ≥ 680 hP a, dark green hexagon), mean mid-level (clmmean 680 < p ≥ 440 hP a, green hexagon), mean high-level (clhmean p < 440 hP a, clear green hexagon). Temporal evolution of cloud types at the given point (top right). Map of cltmean with colored topography beneath to show-up cloud extent (middle middle), map of clhmean (middle right), map of clmmean (bottom middle) and map of cllmean (bottom right)

wsgsmax: Maximum Near-Surface Wind Speed of Gust

The wind gust accounts for the wind from upper levels that is projected to the surface due to instability within the boundary layer. It can have different implementations. Winds are Earth-rotated.

  • Brasseur01: An implementation of a wind gust following Turbuelent Kinetic Energy (TKE) estimates and stability by virtual temperature (θv , see mainly equation 1) reproducing Brasseur (2001) from the clWRF ([clWRF http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/ClWrf] Fita et al., 2010) [wsgs_diag = 1]
  • WRF_afwa_diagnostics: Inside the WRF module module_diag_afwa.F there is an implementation of the calculation of the wind gust which only occurrs as a blending of upper-level winds (around 1km above ground zagl; -1 zagl(k1000 ) ≥ 1000 m, see equation 2) above a given maximum precipitation inrensity of pratemm_hr ≥ 50 mm [wsgs_diag = 2]

These two methodologies have been implemented and can be switched by a new namelist.input parameter labeled wsgs_diag (in cordex section). Its default value is 1 It comes out, that both methodologies provide wind gust estimation (WGE) from two different perspectives: mechanic and convective. In order to take into account both winds gusts, another variable as the addition of both estimations is provided as totwsgsmax, totugsmax, totvgsmax, totwsgspercen. On figure 2 is shown the different outcomes applying each approximation

Figure 2: near surface wind gust estimates. 3h-maximum total wind gust strength (wsgsmaxtot , top left), percentage of wsgsmaxtot due to Brasseur’s application (wsgsmaxb01 , top middle), percentage due to AFWA-heavy precipitation implementation (wsgsmaxhp , top right), percentage of time-steps where grid point got total wind gust (bottom left), percentage of time-steps where grid point got wsgsmaxb01 (bottom middle), percentage due to wsgsmaxhp (bottom right)

wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m

The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100 m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of equations. This one is let to open discussion. Instead as a way to overcome it, the estimation of maximum wind speed at 100 m is provided. Winds are Earthrotated. After PhD thesis of Jourdier (2015), two different methodologies are implemented to estimate the wind at 100 m above ground:

  • Following power-law wind vertical distribution, as it is depicted in equation 3 using the upper-level atmospheric wind speed below (k100) and above (k100) the height above ground of 100 m (zagl) [wsz100_diag = 1]
  • Following logarithmic-law wind vertical distribution, as it is depicted in equation 4 using upper-level atmospheric wind speed below (k100) and above (k100) the height above ground of 100 m (zagl) [wsz100_diag = 2]
  • Following Monin-Obukhov theory is implemented and was tested, but it is not useful for heights larger than few decameters (z > 80. m). However, the necessary code to extrapolate the wind at given height is left commented just in case someone wants to use it.

These two methodologies have been implemented and can be switched by a new namelist.input parameter labeled wsz100_diag (in cordex section). Its default value is 1. Even one can select another height for the estimation by providing the new parameter z100m_wind with a different value than 100 m (default value)

On figure 3 is shown the different outcomes applying each approximation. There are some problems on MoninObukhov application under certain stable conditions (too small Obukhov length)

Figure 3: 100 m wind estimates. Comparison between upper-level winds and estimation at a given point and moment (upper left): 3h-maximum eastward wind (red) at 100 m by power-law (uzmaxpl , star), Monin-Obukhov theory (uzmaxmo , cross) by logarithmic law (uzmaxll , sum) 10-m wind value (uas, filled triangle) and upper-level winds (ua, filled circles with line), also for the northward component (green). Temporal evolution of wind speed (top right) with all approximations and upper-level winds at the closest vertical level at 100 m (on log-y scale). Maps of both estimations (bottom left and middle) with the blue cross showing the point of previous figures. Wind rose at the given point (bottom right)


prw: precipitable water or water vapor path

This variable accounts for the column integrated amount of water vapor. This one is already implemented in a old WRF tool for vertical interpolation called p_interp.F. It was modified by L. Fita when he was as post-doc at the 'Universidad de Cantabria' related to the clWRF. The general equation following WRF standard variables as:

where mu: perturbation dry air mass in column, mub: base-state dry air mass in column, g: gravity, e_vert: total number of vertical levels, qvapor: mixing ratio of water vapour, dnw: full-sigma eta-layer height. See an example on figure 4

Figure 4: On a given point (left): water path (prw, vertical straight line), vertical profile of water vapour (qv, line with full circles), water pat at each level (line with crosses). Map of water path (right), red cross shows where the vertical is retrieved

clwvi: condensed water path

This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QCLOU D + QRAIN

clivi: ice water path

This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QICE + QSN OW + QGRAUPEL + QHAIL

clgvi: graupel water path

This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QGRAUPEL

clhvi: hail water path

This variable provides similar information, but for the liquid condensed water species. It is the same calculation as in 5, but replacing QV AP OR by QHAIL

psl: sea level pressure

This accounts for the pressure at the sea level (extrapolation of the pressure at the level of the sea). That means the pressure that might be without the presence of orography. Three different methodologies have been implemented

  • One using hydrostatic-Shuell method already implemented in the the module phys/module_diag_afwa.F (assuming a constant lapse-rate of 6.5 K km−1) [psl_diag = 1]
  • Using smoothed surface pressure and a target upper-level pressure, already implemented in p_interp.F90 [psl_diag = 2]
  • ECMWF method taken from LMDZ from the module pppmer.F90, following the methodology by Mats Hamrud and Philippe Courtier from ECMWF [psl_diag = 3]

These three methodologies have been implemented and can be switched by a new namelist.input parameter labeled psl_diag (in cordex section). Its default value is 3. Even, on using the 'ptarget'<CODE> method (<CODE>psl_diag = 2) one can select the degree of smoothing of the surface place by the selecting the number of times that the smoothing (as the mean of the point and its surrounding 8 neighbors) has to be applied (psmooth, default 5) and the upper pressure to be used as target (ptarget, default 70000 Pa). On figure 5 is shown the different outcomes applying each approximation. There are some problems with the ptarget methodology in both psl estimate and borders for each parallel process on applying the smoothing

Figure 5: sea level pressure estimates. Following hydrostatic-Shuell method at a given time-step (pslshuell , upper left), p-target (pslptarget , upper middle) and ECMWF (pslecmwf , upper right). Differences between methods pslshuell − pslptarget (bottom left), pslshuell − pslecmwf (bottom middle) and pslptarget − pslecmwf (bottom right)

cape: convective available potential energy

This variable accounts for all the energy that convectively might be released. From AMS glossary is described as: ([CAPE http://glossary.ametsoc.org/wiki/Convective_available_potential_energy])

On a thermodynamic diagram this is called positive area and can be seen as the region between the lifted parcel process curve and the environmental sounding, from the parcel’s level of free convection to its level of neutral buoyancy. CAPE may be expressed as follows:

where Tvp is the virtual temperature of a lifted parcel moving upward moist adiabatically from the level of free convection to the level of neutral buoyancy, Tve is the virtual temperature of the environment, Rd is the specific gas constant for dry air, pf is the pressure at the level of free convection, and pn is the pressure at the level of neutral buoyancy. The value depends on whether the moist-adiabatic process is considered to be reversible or irreversible (conventionally irreversible, or a pseudoadiabatic process in which condensed water immediately falls out of the parcel) and whether the latent heat of freezing is considered (conventionally not). It is assumed that the environment is in hydrostatic balance and that the pressure of the parcel is the same as that of the environment. Virtual temperature is used for the parcel and environment to account for the effect of moisture on air density.

It has been at this stage only the calculation already implemented in WRF inside the module module_diag_afwa.F via the function Buoyancy, which at the same time it provides: Convective inhibition (CIN), Height at the Level of free convection (ZLFC), Pressure at the Level of free convection (PLFC) and Lifted index (LI)

cin: convective inhibition

This variable accounts for the process which inhibits the convection. Already provided by the implementation of the AFWA’s CAPE calculation From AMS glossary is described as: [CIN http://glossary.ametsoc.org/wiki/Convective_inhibition])

The energy needed to lift an air parcel upward adiabatically to the lifting condensation level (LCL) and then as a psuedoadiabatic process from the LCL to its level of free convection (LF C). For an air parcel possessing positive CAP E, the CIN represents the negative area on a thermodynamic diagram. The negative area typically arises from the presence of a lid, or the amount of kinetic energy that must be added to a parcel to enable that parcel to reach the LF C. Even though other factors may be favorable for development of convection, if convective inhibition is sufficiently large, deep convection will not form. The convective inhibition is expressed (analogously to CAP E) as follows:

where pi is the pressure at the level at which the parcel originates, pf is the pressure at the LFC, Rd is the specific gas constant for dry air, Tvp is the virtual temperature of the lifted parcel, and Tve is the virtual temperature of the environment. It is assumed that the environment is in hydrostatic balance and that the pressure of the parcel is the same as that of the environment. Virtual temperature is used for the parcel and environment to account for the effect of moisture on air density.

sund: duration of sunshine

This variable accounts for the time where short-wave radiation is above 120 W m−2 .

It is already implemented in a advance version of the [clWRF http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/ClWrf]. See results of the variable in figure 6

Figure 6: Temporal evolution (left) of shortwave downward radiation (swdown, red line, left y-axis) and sunshine duration (sund, stars, right y-axis. sund map at a given time (right))

hur: relative humidity

Relative humidity can be obtained following the Clausius-Clapeyron formula and its approximation from the AugustRoche-Magnus formula of saturated water vapor pressure es

being tempC: temperature in Celsius degree (◦ C), presshPa: pressure in hPa, es: saturated water vapor pressure, ws: saturated mixing ratio kgkg −1 , q: mixing ratio kgkg −1

hus: specific humidity

From the AMS glossary [hus http://glossary.ametsoc.org/wiki/Specific_humidity]

zg: geopotential height

zg = PH + P HB where PHB, WRF base geopotential height, P, WRF perturbation geopotential height

press: air-pressure

press = P + PB where PB, WRF base pressure, P, WRF perturbation pressure

ta: air-temperature

where T, WRF temperature (which is as potential temperature), PB, WRF base pressure, P, WRF perturbation pressure, p0: pressure reference 100000 Pa

ua/va: air-wind Earth oriented

where Uunstg, unstaggered WRF eastward wind, Vunstg, unstaggered WRF northward wind, COSALPHA, local cosine of map rotation, SINALPHA, local sine of map rotation

cdgen

Drag coefficient at surface. Computation of drag coefficient depends on selected surface scheme. In order to avoid this scheme dependency, a general calculation of the coefficient has been introduced as it is shown in equation 16, after Garratt (1992).

Being, u∗: from similarity theory, wss: 10 m wind speed

tauuv

Surface Downdward wind stress at 10m. It is implemented following the equation 17, begin CD drag coefficient. Winds are Earth-rotated. The generic drag coefficient cdgen is used to compute these variables.

evspsblpot

Potential evapotranspiration is computed following its computation from ORCHIDEE model (Organising Carbon and Hydrology In Dynamic Ecosystems, [ORCHIDEE http://orchidee.ipsl.fr/]). The implementation is retrieved from the module src_sechiba/enerbil.f90 and basically consists no an implementation of the Penman-Monteith formulation (Monteith, 1965). It is a simple formulation (see equation 18)

where qc: surface drag coefficient, q2sat: Saturated air at 2m (can be assumed to be q2 == qsfc?), uas,vas: 10 m wind components. Up to now there is only one implementation and it is selected via namelist parameter potevap_diag, up to now only with value 1 for the ORCHIDEE implementation

rsus

Surface Upwelling Shortwave Radiation, is understood as the shortwave radiation from land. It is provided accumulated by radiation schemes CAM and RRTMG (sw_ra_scheme = 3,4) in variable swupb. However, it might be re-calculated (if necessary) in a generic way as the reflected shortwave radiation due to albedo as it is shown in equation rsus = −alebdo ∗ swdown Being, albedo: albedo, sdown: downward at surface shortwave radiation

rlus

Surface Upwelling Longwave Radiation, is understood as the longwave radiation from land. It is provided accumulated by radiation schemes CAM and RRTMG (sw_ra_scheme = 3,4) in variable slupb. However, it might be re-calculated (if necessary) in a generic way as the longwave radiation due to surface temperature following black body formulation as it is shown in equation 21 rlus = CtBoltzxman ∗ skt4 Being, CtBoltzman<I>: Boltzman constant, <I>skt: skin temperature


Additional variables

Some other variables not required by CORDEX, but might be interesting for other purposes will be also added

Water vapor balance terms

These covers the different column integrated terms of the water balance equation. The equation of the water vapour budget:

Where q stands for either of the five water species concentration (vapor, snow, ice, rain and liquid), Vh stands for horizontal wind speed, w stands for the vertical wind speed and MP for the loss or gain of water due to cloud microphysical processes. The term in the left-hand side of the equation represents the water species tendency (TEN or PW), referring to the difference between q at the model previous time step and at the end of the actual time step, divided by the time step. TEN equals to the horizontal advection (HOR or 'F', first term in right-hand side of the equation), the vertical advection (VER or 'Z', second term in right-hand side) and the sources (SO) or sink (SI) of atmospheric water due to microphysical processes (MP). All terms are expressed in kgkg −1s−1. However, SO, and SI ca not be provided because they are micro-physics dependent an make difficult to provide a general formula for them.

In order to obtain the total column mass of water due to each term (in units of mm), it is applied to each term of eq. 22 (similarly as in 5):

Following the methodology of Huang et al. (2014) and Yang et al. (2011), Fita and Flaounas (2018) implemented the water budget terms in a new module in WRF in order to allow the computation of the terms during model integration. For the CORDEX module, only the vertically integrated variables will be implemented. Microphysics processes depends on the micro-physics scheme used during model run. It is know the the budget is closed, thus, residual of the terms must be the micor-phsyics term. Due to the complexity of each micro-physics scheme and the impossibility to generalize the calculation, the accumulation of diabatic heating from the micro-physics scheme is provided as a proxy. All water species decomposition is shown in figures 7 and 8 It has also been grouped by vertical levels as it is done with the clouds: p ≥ 68000 P a, 40000 ≤ p < 68000 P a, p < 40000 P a. Decomposition of each term is shown for water vapour qv and snow in figures from 9 to 12.

Figure 7: Water budget 3h-accumulated vertically integrated total tendency ‘PW’ at a given time, for water vapour (qv, top left), cloud (qc, top middle), rain (qr, top right), water condensed species (qc + qr, middle left), snow (qs, middle middle), ice (qi, middle right), water solid species (qs + qi + qg, bottom left), graupel (qg, bottom middle), hail (qh, bottom right). Number on low left corner of the figure correspond to the standard deviation (σ in mm) value used for the normalization

Figure 8: As in 7, but for Water budget 3h-accumulated vertically integrated horizontal advection ‘F’ at a given time

Figure 9: Water budget evolution at a given point for water vapour of vertically integrated water-budget terms: total tendency ‘PW’ (∂t qv, red), horizontal advection ‘F’ (advh qv, green), vertical advection ‘Z’ (advz qv, green), residual PW - F -Z (res(∂t qv), gray dashed) and diabatic heating from micro-physics (Qd , pink) (top left), only high-level vertically integrated values (p < 440 hP a, top right), high/mid/low-level (degree of color intensity) decomposition of partialt qv (red) and Qd (pink) and their respective residuals as dashed lines (middle left), only mid-level vertically integrated values (680 > p ≤ 440 hP a, middle right), high/mid/low-level (degree of color intensity) decomposition of advh qv (green) and advz qv (blue) and their respective residuals as dashed lines (bottom left) and only low-level vertically integrated values (p ≥ 680 hP a, bottom right)

Figure 10: water vapour water budget maps of each component and diabtic heating from micro-physics at a given time and the percentual contribution at each different vertically integrated layer respective the total. total tendency ‘PW’ (∂t qv, first column), horizontal advection ‘F’ (advh qv, second col), vertical advection ‘Z’ (advz qv, third col.) and diabatic heating from micro-physics (Qd , 4th col). Percentage contribution of high level (p < 440 hP a) integration to the total (second row), percentage for mid level (680 > p ≥ 440 hP a) integration to the total (third row) and percentage of low-level (p ≥ 680 hP a) integration (bottom row)

Figure 11: The same as in figure 9, but for snow

Figure 12: The same as in 10, bur for snow

zmlagen: generic boundary layer height

Boundary layer height is a clear example of model dependence and even scheme dependence of how a diagnostic is computed. Each pbl scheme has its own assumptions and has to be compiled in a specific way. However, one could try to find a general definition as it was done in (García-Díez et al., 2013) after (NielsenGammon et al., 2008). The method consists in searching for the first level where potential temperature exceeds the minimum potential temperature reached in the mixed layer (ML) by more than 1.5 K. It has been implemented as it is shown below

  1. Mixed layer depth (kMLD) first layer at which the variation of mixing ratio upwards from first layer value achieves a given percentage:
  2. Minimum potential temperature within the MLD: θminM LD = min(θ(1), ..., θ(kM LD ))
  3. Boundary layer level (kzmla ) first level where: θ(kzmla ) + δθ > θminM LD (here δθ = 1.5 K)
  4. Boundary layer height (zmla) height above ground (zagl): zmla = zagl(kzmla )

Comparison of this implementation with the zmla directly provided by WRF’s pbl scheme is shown in figure 13. No general rule has been applied to determine the correct value of δqv used to determine depth of mixed layer. They can be determined by the namelist.input parameters zmlagen_dqv for δqv (default value 0.1) and zmlagen_dtheta for δθ (default value 1.5 K)

Figure 13: Vertical characteristics of the atmosphere at a given point (top left): potential temperature vertical profile (θ K, red line), vertical profile of mixing ratio (qv kgkg −1 , blue line), mixed layer depth (M LD, dashed horizontal line at 323.522 m), derived boundary layer height (zmla, horizontal dashed line at 107.122 m and WRF derived pbl scheme value (W RF zmla at 903.017 m). Comparison of temporal evolutions (top right) between derived zmla (yellow stars) and WRF’s pbl scheme (blue line). Map of differences between derived and WRF simulated (zmla − zmlaW RF , bottom left), zmla map (bottom middle) and zmlaW RF (bottom right)


Work done

Following similar experiencies like clWRF, the implementation would be done as follows:

  1. Introduce the new variables in the registry.cordex
  2. Reproduce the structure of any of the diagnostics module (e.g. phys/module_diag_cl.F) and introduce each computation from the different sources.
  3. This accounts for a lot of additional variables, thus all the module related will be activated on computation by a pre-compilation flag called DIAGCORDEX
  4. Introduction of a new namelis.input section for that variables with more than one option
  5. Output these variables in a new output file wrfcdx_d<domain>_<date>
  6. As an additional work, all the instantaneous variables used for the different accumuluations and extremes, can also be retrieved. It is only necessary to:
    1. Give an output unit on the registry.cordex (see instructions at the end of the file)
    2. Uncomment in the code (phys/module_diagnostics_dirver.F and module_diag_cordex.F), the commented lines with the key word: INSTVALS
    3. re-compile WRF

Missing variables

There are certain variables which could not be introduced (yet?)

wsgsmax100: Daily Maximum Near-Surface Wind Speed of Gust at 100 m

The wind gust at 100 m is understood that should follow a similar implementation than for the wsgsmax, but at 100 m, since is understood than an extrapolation of such turbulent phenomena it would require a complete new set of equations. This one is let to open discussion.

ic_lightning, cg_lightning, tot_lightning: intra-cloud, ground and total lightning flashes

There is lightning scheme implementation in WRF. (lightning_option among other from namelist.input). It might require some adjustment prior it’s use. It does not sees to provide a wolrdwide cloud/ground discrimination

praccmov

Moving accumulated precipitation values for different temporal thresholds (τ ): 30 minutes, 1 hour, 3 hour, 6 hours and 24 hours. This variable might be useful for the impact studies on infrastructures like bridges. The idea would be to provide its maximum between output times (tout ) as it is suggested in the equation 24

Others

It will be some other hard work to do related to it.

New variables

Pretty sure that as we get closer to stake-holders, decision makers, impact and mitigation communities more variables will arise... keep in touch !?

CF-compilant file

WRF does not provide a real CF-compilant file format. It would be necessary to add at least at the output (at least on the wrfcdx_d<domain>_<date> file):

  • time variable: CF-version of variable with times in the file
  • atrtributes: WRF does not provide variables with standard attributes like: standar_name, long_name, ...

Optimization

Avoid the use of namelist options and got the variables/method directly without the introduction of ifs which might make WRF run slowly. This could be done directly via pre-compilation flags, using for example, the namelist options as pre-compilation options?


Acknowledgements

All the coders of WRF, LMDZ, ORCHIDEE are acknowledged for their work on the developing and maintaining of the models. M. A. Jiménez from Universitat de les Illes Balears (UIB) is acknowledged by her explanations on certain PBL calculations. J. Milovac from U. Hohenheim for her comments is also acknowledged. D. Argüeso from UIB

References

  • Brasseur, O. (2001). Development and application of a physical approach to estimating wind gusts. Monthly Weather Review, 129(1):5–25.
  • Fita, L., Fernández, J., and García-Díez, M. (2010). Clwrf: Wrf modifications for regional climate simulation under future scenarios. Proceedings of 11th WRF Users’ Workshop.
  • Fita, L. and Flaounas, E. (2017). Medicanes as subtropical cyclones: the december 2005 case from the perspective of surface pressure tendency diagnostics and atmospheric water budget. Q. J. Royal Met. Soc., accepted.
  • García-Díez, M., Fernández, J., Fita, L., and Yagüe, C. (2013). Seasonal dependence of wrf model biases and sensitivity to pbl schemes over europe. Q. J. of Roy. Met. Soc., 139:501–514.
  • Garratt, J. (1992). The Atmospheric Boundary Layer. Cambridge Univ. Press, Cambridge, U.K.
  • Hourdin, F., Musat, I., Bony, S., Braconnot, P., Codron, F., Dufresne, J.-L., Fairhead, L., Filiberti, M.-A., Friedlingstein, P., Grandpeix, J.-Y., Krinner, G., LeVan, P., Li, Z.-X., and Lott, F. (2006). The LMDZ4 general circulation model: climate performance and sensitivity to parametrized physics with emphasis on tropical convection. Clim. Dyn., 27(7-8):787–813.
  • Huang, H.-L., Yang, M.-J., and Sui, C.-H. (2014). Water budget and precipitation efficiency of typhoon Morakot (2009). J. Atmos. Sci., 71:112–129.
  • Jourdier, B. (2015). Ressource éolienne en france métropolitaine : méthodes dâĂŹévaluation du potentiel, variabilité et tendances. Climatologie: École Doctorale Polytechnique, 2015. Français. ph:+33 01238226, pages 1–229.
  • Monteith, J. L. (1965). Evaporation and environment. the state and movement of water in living organisms. 19th Symp. Soc. Exp. Biol, pages 205–234.
  • Nielsen-Gammon, J. W., Powell, C. L., Mahoney, M. J., Angevine, W. M., Senff, C., White, A., Berkowitz, C., Doran, C., and Knupp, K. (2008). Multisensor estimation of mixing heights over a coastal city. Journal of Applied Meteorology and Climatology, 47(1):27–43.
  • Skamarock, W. C., Klemp, J. B., Dudhia, J., Gill, D. O., Duda, D. M. B. M. G., Huang, X.-Y., Wang, W., and Powers, J. G. (2008). A description of the advanced research wrf version 3. NCAR TECHNICAL NOTE, 475:NCAR/TNÂŋ475+STR.
  • Yang, M. J., Braun, S. A., and Chen, D.-S. (2011). Water budget of typhoon nari (2001). Mon. Wather Rev., 139:3809–3828.
Herramientas personales