WSL/SLF GitLab Repository

  1. 20 Sep, 2013 2 commits
  2. 18 Sep, 2013 1 commit
  3. 01 Sep, 2013 2 commits
  4. 30 Aug, 2013 1 commit
    • Mathias Bavay's avatar
      Getting closer to the goal of persistent spatial interpolation objects. There... · 88e7cb8e
      Mathias Bavay authored
      Getting closer to the goal of persistent spatial interpolation objects. There are no "initialize" and "getQualityRating" anymore, the initializations are performed by "getQualityRating". The arguments that used to be passed to the constructors are now split between constructor and getQualityRating. A few hacks will have to be removed: we should be able to get rid of some of the callbacks, the plain copy of Date and Dem will have to be avoided (most probably by working with pointers) and the map of objects that has been implemented (but commented out) will be enabled. So, a few hacks remain, but this is already a nice, big step forward!
      88e7cb8e
  5. 26 Jul, 2013 1 commit
    • Mathias Bavay's avatar
      The Krigging is now working. The current limitations are: 1)there is no... · 377d6e57
      Mathias Bavay authored
      The Krigging is now working. The current limitations are: 1)there is no maximum range, so each available station would take part to the variogram fit. 2)the covariance is currently NOT computed on past time series, limiting the relevance of the variogram. Practically, the variogram fit that always ends up being used is LINVARIO.
      
      All matrix and fit methods that used to return void but could also throw exceptions now return a boolean to indicate if things went well (ie a matrix could be inverted, etc). They still throw exceptions for logic errors (incompatible dimensions, etc).
      377d6e57
  6. 25 Jul, 2013 1 commit
  7. 24 Jul, 2013 1 commit
  8. 15 Jul, 2013 1 commit
  9. 22 May, 2013 1 commit
    • Mathias Bavay's avatar
      The graphical message box for exceptions has been turned off by default,... · 03aadd5e
      Mathias Bavay authored
      The graphical message box for exceptions has been turned off by default, because it was interfering with cdash. Packagers are therefore invited to turn it ON for public packages (since this tends to make users read the error messages).
      
      A major bug has been found in the potential short wave solar radiation calculation: the beam values were actually already projected to the horizontal, leading to a double projection to horizontal when requesting the horizontal components. The whole potential radiation code has been reviewed, comparing line by line with Iqbal. A few variables have been renamed in order to better match the paper. And more detailed comments added to explain some of the most mysterious parameters. The potential ISWR data generator has been adjusted and checked. it can use a measured ILWR to correct for cloudiness if available.
      03aadd5e
  10. 22 Mar, 2013 1 commit
  11. 11 Mar, 2013 1 commit
  12. 05 Mar, 2013 1 commit
  13. 14 Feb, 2013 1 commit
    • Mathias Bavay's avatar
      In order to try to be closer to the spirit of the STL, now the empty... · 3f45c394
      Mathias Bavay authored
      In order to try to be closer to the spirit of the STL, now the empty strings/vectors/lists are tested with .empty(), the first/last elements of vectors accessed with front()/back(), the empty strings are not contructed with string("") but with string(), etc This makes a benchmark based on meteo_reading ~4% faster and this makes the code suprisingly easier to read. 
      
      Some extra constification took place as well as some minor code cleanup (optimizing the comparison between two vectors in order to perform less tests, etc).
      
      The Date class can now properly generate and parse full ISO timestamps, including time zone information. The full specification is now supported by convertString() with a helper method in the Date class. Ouputing an ISO string with its time zone is done by requesting the ISO_TZ format.
      
      
      3f45c394
  14. 11 Feb, 2013 1 commit
  15. 28 Oct, 2012 1 commit
  16. 07 Aug, 2012 1 commit
    • Mathias Bavay's avatar
      New warnings have been tried to detect variable shadowing (one variable... · dd895aa0
      Mathias Bavay authored
      New warnings have been tried to detect variable shadowing (one variable declared with the same name as another one), alignement issues, etc. This produces very verbose output (not all warnings are legitimate) but allowed to fix lots of cases of misalignement and shadowing issues. These options have been left in the CMakeLists but NOT enabled (since these warnings are not so easy to interpret).
      dd895aa0
  17. 20 Jun, 2012 1 commit
    • Mathias Bavay's avatar
      The MeteoData == operator now compares with an epsilon. The... · 8e49698d
      Mathias Bavay authored
      The MeteoData == operator now compares with an epsilon. The chekEpsilonEquality function has been rewritten, according to best practise and inlined. The powN functions have been moved to MathOptim and inlined. This makes the benchmarks 2% faster, that's such a victory...
      8e49698d
  18. 03 May, 2012 1 commit
  19. 10 Feb, 2012 1 commit
    • Thomas Egger's avatar
      IOManager: added another interpolate procedure that takes as arguments a Date,... · b2991182
      Thomas Egger authored
      IOManager: added another interpolate procedure that takes as arguments a Date, a DEMObject, the parameter to interpolate, a vector of Coords objects and a vector of doubles. The Coords represent different points in the DEM. The interpolation is only performed for these points and for each point one double value is stored in a vector. 
      
      Furthermore IOManager now has a member variable called interpolater of type Meteo2DInterpolator. A circular inclusion problem has been solved between IOManager and Meteo2DInterpolator.
      
      libinterpol2D bugfix: The SimpleDEMWindInterpolate algorithm had  a small bug in it, it wasn't interpolating values in the last row or last column of the 2D grid.
      b2991182
  20. 09 Feb, 2012 1 commit
  21. 22 Dec, 2011 1 commit
  22. 20 Dec, 2011 1 commit
  23. 10 Nov, 2011 2 commits
    • Mathias Bavay's avatar
      The Fit1D class constructor can now read a fit model name as a string. This... · e6a52688
      Mathias Bavay authored
      The Fit1D class constructor can now read a fit model name as a string. This was necessary for parsing a user input coming from io.ini. 
      
      The ordinary kriging interpolation algorithm is now active. It is far from perfect (the variogram is computed in a very cheap way that contributes to make it very fragile), but it is time for the first users to start playing with it. The variogram model to use can be provided as an optional argument and in case of fit failure, an appropriate error message is given (but no fallback mechanism exists). The next step will be to compute the variogram on time series, which should produce more reliable data sets for fitting the variogram model on.
      
      Some error messages have been improved in the matrix class.
      e6a52688
    • Mathias Bavay's avatar
      Oups, types mismatch... and the version numbers have been pushed up in order... · d4e04f07
      Mathias Bavay authored
      Oups, types mismatch... and the version numbers have been pushed up in order to prepare for the upcoming release
      d4e04f07
  24. 31 Oct, 2011 1 commit
  25. 19 Sep, 2011 1 commit
    • Thomas Egger's avatar
      Performance boost: Redesign of class MeteoData. The individual public double... · 8d46d04d
      Thomas Egger authored
      Performance boost: Redesign of class MeteoData. The individual public double members like tss, ta, rh have been removed and instead of the rather complicated internal representation with the help of std::map and pointers, the MeteoData object now holds all its important information in one double vector (meteo data) and one string vector (parameter names). Thus the overloaded copy constructor could be slashed radically. This leads to huge performance gains, especially when dealing with huge vectors of MeteoData (which are needed for filtering, resampling, etc).
      
      Furthermore the access to the meteo parameters has been simpleified by overloading the operator(), replacing the old .param(size_t index) and .param(string paramname) functions:
      
      MeteoData md;
      double ta = md(MeteoData::TA);
      
      OR
      
      double ta = md("TA");
      
      These changes were propagated into all of MeteoIO.
      8d46d04d
  26. 16 Aug, 2011 1 commit
    • Mathias Bavay's avatar
      The VW_MAX field was not properly handled in SMETIO. The failure count has... · 2ca6d716
      Mathias Bavay authored
      The VW_MAX field was not properly handled in SMETIO. The failure count has been slightly improved in SNIO (to decrease the number of failures when a model could recover: if ILWR is not provided but TSS is, we don't count it as a failure anymore). 
      
      The implementation of the krigging is moving forward. A bug has been found and fixed in Fit1D, a variogram is now computed (but not using a true covariance, which prevents our krigging from properly working). 
      
      The #define NOSAFECHECKS have been deleted and replaced by a definition by the CMakeLists when in debug mode. This means that when compiling in debug mode, the code will be quite slower but will properly check and report out of bounds access in tables and matrix.
      2ca6d716
  27. 17 May, 2011 1 commit
  28. 25 Mar, 2011 1 commit
    • Mathias Bavay's avatar
      The emissivity models have been cleaned up: they now take RH, TA, etc but NOT... · 97bd60e1
      Mathias Bavay authored
      The emissivity models have been cleaned up: they now take RH, TA, etc but NOT the water vapor pressure (it is internally calculated). Please, update your code!
      
      A specific spatial interpolation algorithm has been introduced for ILWR that relies on emissivity (we convert ILWR to emissivity, then interpolate the emissivity, then reconvert to ILWR). As mentionned in issue 156, a better method for interpolations by proxies will have to be designed and implemented...
      97bd60e1
  29. 23 Mar, 2011 1 commit
    • Mathias Bavay's avatar
      The CMakeLists has been adapted so that it properly supports various Visual... · 8909bac0
      Mathias Bavay authored
      The CMakeLists has been adapted so that it properly supports various Visual C++ options. Now, options are set per compiler and per plateform (depending on the scope of the said option). Therefore, choosing a target like "optimized" really produces compilation optimized for speed on g++ as well as Visual C++.
      
      Several type casting issues (warnings) have also been addressed.
      8909bac0
  30. 22 Mar, 2011 1 commit
  31. 09 Feb, 2011 1 commit
  32. 08 Feb, 2011 1 commit
  33. 26 Jan, 2011 1 commit
    • Mathias Bavay's avatar
      A new group of classes has been created, under the meteolaws subdirectory.... · 4b63f416
      Mathias Bavay authored
      A new group of classes has been created, under the meteolaws subdirectory. This contains various general meteorological laws, such as a sun radiation model, standard atmosphere, etc
      
      The first implementation (not tested yet) of a non-linear least square fit algorithm has been implemented in the libfit1D. 
      
      Several documentation issues have been fixed (obsolete code examples, etc) and classes grouped by modules. This should help the user to quickly locate the classes of interest. 
      4b63f416
  34. 14 Jan, 2011 1 commit
    • Thomas Egger's avatar
      Added functionality to the Meteo2DInterpolator: it is now possible to access... · 622b5979
      Thomas Egger authored
      Added functionality to the Meteo2DInterpolator: it is now possible to access the iomanager and hence to access historical data points from within any spatial interpolation.
      
      The IOManager has been expanded to:
      1) cache already filtered data points and
      2) provide a getAvgSamplingRate() function that returns the average data points seen per day.
      622b5979
  35. 09 Dec, 2010 1 commit
  36. 03 Nov, 2010 1 commit
  37. 02 Nov, 2010 1 commit
    • Mathias Bavay's avatar
      An error was found: the linear regression returns the regression coefficient... · da0c9321
      Mathias Bavay authored
      An error was found: the linear regression returns the regression coefficient r, not r2!! It has been modified so that it returns |r| and prints r2 in the info strings.
      
      The HNW_SNOW spatial interpolation algorithm had errors. It was not properly calling its base algorithm (the one computing the initial distribution) and its rating was too low. It has now the same rating as CST_LAPSE for one station when the lapse rate is provided. This could be improved in the future, to make it depend on the rating of the base algorithm...
      da0c9321