CDXWRFevolution
(→known issues) |
|||
Línea 1: | Línea 1: | ||
Here is kept the evolution of the code |
Here is kept the evolution of the code |
||
+ | |||
+ | = v1.1: 2018 July 5th = |
||
+ | This version covers: |
||
+ | * Important improvements in performance of the model when module is activated |
||
+ | * Fixing calculation of rlugen |
||
+ | * Fixing attributes in tauu, tauv, taugen and tauvgen variables (thanks to Muralidhar Adakudlu) |
||
+ | |||
+ | == Performance improvements == |
||
+ | Module was increasing time-step at least by a 40%. In order to reduce it, a new pre-compilation flag has been added. It adds a little bit more of work to the compilation, but it makes possible to only add an extra 5% to model integration when module is integrated (see attached figure). |
||
+ | |||
+ | This new pre-compilation flag is called <code>CDXWRF</code>. It has to be added (or not) after <code>-DCORDEXDIAG</code>. At the same time, before compilation, user needs to introduce changes into the <code>Registry/registry.cordex</code> file. This new flag, now controls the quantity of variables to be retrieved, splitting them to the standard CORDEX <I>'Core', 'Tier1' and 'additional' </I> variables. |
||
+ | |||
+ | Accordingly to the value given to the pre-compilation variable <code>CDXWRF</code> one obtains: |
||
+ | * Without adding the variable: all <code>CORDEX</code> 'Core' variables |
||
+ | * <code>CDXWRF=1</code> CORDEX 'Tier' variables: <code>clivg, clivh, zmla, [cape/cin/zlfc/plfc/lidx]{min/max/mean}</code> |
||
+ | * <code>CDXWRF=2</code> The same as with <code>CDXWRF=1</code> and additional variables: <code>ua, va, ws, ta, press, zg, hur, hus, tfog, fogvisbltymin, fogvisbltymax, fogvisbltymean, tdsmin, tdsmax, tdsmean and the Water-Budget relarted ones: wbacdiabh, wbacpw, wbacpw[c/r/s/i/g/h], wbacf, wbacf[c/r/s/i/g/h], wbacz, wbacz[c/r/s/i/g/h], wbacdiabh{l/m/h}, wbacpw{l/m/h}, wbacpw[c/r/s/i/g/h]{l/m/h}, wbacf{l/m/h}, wbacf[c/r/s/i/g/h]{l/m/h}, wbacz{l/m/h}, wbacz[c/r/s/i/g/h]{l/m/h}</code> |
||
+ | |||
+ | Simultanesouly, one needs to modify the Registry/registry.cordex accordingly to the value of <code>CDXWRF</code>: |
||
+ | * Without adding <code>CDXWRF</code>, nothing needs to be changed |
||
+ | * Adding <code>CDXWRF=1</code>, one needs to remove the comment <code>##CDXWRF1##</code> at the beginning of the line of the definition of certain variables |
||
+ | * Adding <code>CDXWRF=2</code>, one needs to remove the comment <code>##CDXWRF1##</code> and <code>##CDXWRF2##</code> at the beginning of the line of the definition of certain variables |
||
+ | |||
+ | == Fixing 'rlugen' == |
||
+ | There was a mistake on the calculation of the variable 'rlugen'. |
||
+ | |||
+ | It was: |
||
+ | rlusgen = ctBoltzman*ts**4 |
||
+ | |||
+ | and it should be, and fixed to |
||
+ | rlusgen = emiss*ctBoltzman*ts**4 |
||
+ | |||
+ | whre 'emiss' corresonds to the emissivity of the surface |
||
+ | |||
+ | == Fixing attributes in tauu, tauv, taugen and tauvgen variables == |
||
+ | Muralidhar Adakudlu found that the attributes (description of the variables) was flipped from eastward to northward and viceversa. It has been corrected |
||
= v1.0: 2018 May 28th = |
= v1.0: 2018 May 28th = |
Revisión de 14:23 9 ago 2018
Here is kept the evolution of the code
Contenido |
v1.1: 2018 July 5th
This version covers:
* Important improvements in performance of the model when module is activated * Fixing calculation of rlugen * Fixing attributes in tauu, tauv, taugen and tauvgen variables (thanks to Muralidhar Adakudlu)
Performance improvements
Module was increasing time-step at least by a 40%. In order to reduce it, a new pre-compilation flag has been added. It adds a little bit more of work to the compilation, but it makes possible to only add an extra 5% to model integration when module is integrated (see attached figure).
This new pre-compilation flag is called CDXWRF
. It has to be added (or not) after -DCORDEXDIAG
. At the same time, before compilation, user needs to introduce changes into the Registry/registry.cordex
file. This new flag, now controls the quantity of variables to be retrieved, splitting them to the standard CORDEX 'Core', 'Tier1' and 'additional' variables.
Accordingly to the value given to the pre-compilation variable CDXWRF
one obtains:
* Without adding the variable: allCORDEX
'Core' variables *CDXWRF=1
CORDEX 'Tier' variables:clivg, clivh, zmla, [cape/cin/zlfc/plfc/lidx]{min/max/mean}
*CDXWRF=2
The same as withCDXWRF=1
and additional variables:ua, va, ws, ta, press, zg, hur, hus, tfog, fogvisbltymin, fogvisbltymax, fogvisbltymean, tdsmin, tdsmax, tdsmean and the Water-Budget relarted ones: wbacdiabh, wbacpw, wbacpw[c/r/s/i/g/h], wbacf, wbacf[c/r/s/i/g/h], wbacz, wbacz[c/r/s/i/g/h], wbacdiabh{l/m/h}, wbacpw{l/m/h}, wbacpw[c/r/s/i/g/h]{l/m/h}, wbacf{l/m/h}, wbacf[c/r/s/i/g/h]{l/m/h}, wbacz{l/m/h}, wbacz[c/r/s/i/g/h]{l/m/h}
Simultanesouly, one needs to modify the Registry/registry.cordex accordingly to the value of CDXWRF
:
* Without addingCDXWRF
, nothing needs to be changed * AddingCDXWRF=1
, one needs to remove the comment##CDXWRF1##
at the beginning of the line of the definition of certain variables * AddingCDXWRF=2
, one needs to remove the comment##CDXWRF1##
and##CDXWRF2##
at the beginning of the line of the definition of certain variables
Fixing 'rlugen'
There was a mistake on the calculation of the variable 'rlugen'.
It was: rlusgen = ctBoltzman*ts**4
and it should be, and fixed to rlusgen = emiss*ctBoltzman*ts**4
whre 'emiss' corresonds to the emissivity of the surface
Fixing attributes in tauu, tauv, taugen and tauvgen variables
Muralidhar Adakudlu found that the attributes (description of the variables) was flipped from eastward to northward and viceversa. It has been corrected
v1.0: 2018 May 28th
First public release of the code
known issues
- too slow: module adds at least a 40% on time-integration. Different strategies are being considered:
- Adding p-interpolation only on output times
- Adding more strict pre-compilation flags to speed-up the module
- error on rlusgen There is a mistake on the computation of the upward surface long-wave emission it should be
rlusgen = emiss*ctBoltzman*ts**4
- Wrong attributes in TAUU and TAUV (thanks to Muralidhar Adakudlu), TAUU and TAUV are northward downward wind stress and eastward downward wind stress respectively in the output, in the file they got the wrong attributes (interchanged)