WSL/SLF GitLab Repository

  1. 24 Oct, 2013 1 commit
    • Mathias Bavay's avatar
      The noisy linear fit now removes points based on their distance to the... · cf6784d4
      Mathias Bavay authored
      The noisy linear fit now removes points based on their distance to the regression line (this should be marginally better but is anyway simpler and faster). 
      
      The new usage timers have been slightly cleaned up for white spaces and for precision (casting to long double first in order to avoid loss of precision as shown with the previous timers). The declaration order in the class now takes care of alignments issues.
      cf6784d4
  2. 05 Oct, 2013 1 commit
  3. 09 Sep, 2013 1 commit
    • Mathias Bavay's avatar
      A new test has been created to cover basic statistical functions on vectors.... · 9604a0f1
      Mathias Bavay authored
      A new test has been created to cover basic statistical functions on vectors. Two bugs have been found and fixed when computing the derivative on a vector of data (the right derivative was in fact a left derivative and the case of X containing nodata was not covered).
      
      Documentation fixes in libinterpol2D and ResamplingAlgorithms. The cmake macro for finding MeteoIO now looks first in the home directory of the user on Mac (as is done on Linux).
      9604a0f1
  4. 24 Jul, 2013 1 commit
    • Mathias Bavay's avatar
      Moving forward with the trend/residuals approach for the spatial... · 597e6f48
      Mathias Bavay authored
      Moving forward with the trend/residuals approach for the spatial interpolations: here are the necessary changes in the supporting infrastructure: basically, better handling of forced lapse rates and fractional lapse rates, proper toString() methods for the fit1D object and components
      597e6f48
  5. 19 Jul, 2013 1 commit
  6. 27 Jul, 2011 1 commit
    • Mathias Bavay's avatar
      A (more) intelligent handling of buffered grids has been implemented: the... · 9f230fd9
      Mathias Bavay authored
      A (more) intelligent handling of buffered grids has been implemented: the grids are stored in the equivalent of a circular buffer of a given size (user defined, or 10 by default). This prevents running out of memory when processing large numbers of grids!
      
      A method for computing quantiles has been implemented in libinterpol1D. A vector of data has to be provided as well as a vector of the desired quantiles (ex: 0.25, 0.5, 0.75) and a vector of values for these quantiles will be returned. So far, the algorithm that is used produces the same results as R in default operations. The possibility of choosing which quantiles algorithms might be added in the future.
      
      The getJulianDayNumber method was just totally wrong... This has been fixed. One can also force a GMT day of year with a flag.
      
      Finally, some documentation has been written/updated.
      9f230fd9
  7. 20 Jul, 2011 1 commit
    • Mathias Bavay's avatar
      Some methods have been moved into another class (like the simple linear... · 7797ea1c
      Mathias Bavay authored
      Some methods have been moved into another class (like the simple linear interpolation between two points that is now in ResamplingAlgorithms), some renammed (like the new weightedMean that replaces the ill-nammed "linearInterpolate"). The regression model based on two segments is now part of libinterpol1D and has been renammed. More regression models have been implemented. 
      
      The "initFit" method of Fit1D has been renammed in "fit" and the setGuess method now turns fit_ready to true, so that a user can force his provided parameters to be used by a given model (do a setGuess() with the parameters, then call f(x) without calling "fit", so no internal fit of the parameters would be performed).
      7797ea1c
  8. 19 Jul, 2011 1 commit
  9. 15 Jul, 2011 1 commit
    • Mathias Bavay's avatar
      The 1D regression component is now coming into shape: the Fit1D class receives... · 42b4e784
      Mathias Bavay authored
      The 1D regression component is now coming into shape: the Fit1D class receives two vectors (of X and Y), compute a specified regression model, then transparently provides modelled values (calling fit1D.f()). Introducing a new regression model consists of implementing this f() method as well as a method computing initial guesses. A new method has been introduced in libInterpol1D that computes the derivative of a data set, given a vector of X and a vector of Y. Another method has been implemented to sort such two vectors in order of increasing X.
      
      Partial pivoting has been implemented in Matrix, and complete pivoting has been started but is not finished yet (it will throw an exception if used).
      42b4e784
  10. 09 Mar, 2011 1 commit
    • Mathias Bavay's avatar
      In SNIO, the METAFILE can now be optional (which means that the metadata... · e9063b21
      Mathias Bavay authored
      In SNIO, the METAFILE can now be optional (which means that the metadata remain nodata, the user has therefore to fill them himself). This is used by Snowpack.
      
      After the Visual C++ compilation log from Raphael, some changes have been implemented: lots of warnigs about signed/unsigned fixed, some unreachable code removed, and some methods reimplemented for Windows. We are not there yet, but moving closer...
      e9063b21
  11. 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
  12. 27 Oct, 2010 1 commit
    • Mathias Bavay's avatar
      A new spatial interpolation algorithm, LocalLapse_IDW (key being LIDW_LAPSE)... · 0b6179bc
      Mathias Bavay authored
      A new spatial interpolation algorithm, LocalLapse_IDW (key being LIDW_LAPSE) has been implemented. It takes a number of stations  as mandatory parameter, and computes for each pixel the IDW_LAPSE only using the closest n stations. This is specially useful when dealing with large number of stations over a wide area. Please keep in mind that since the linear regression calculation might exclude some outliers, a sufficiently large number of stations should be given.
      
      The algorithm that is computing a linear regression with the possibility of excluding some outliers has been renamed as NoisyLinRegression and moved to Interpol1D. Moreover, the regression algorithm provide an information stringstream that can be directly printed to the screen (usual behavior) or differently handled (specially useful for mutliple regressions calculations or when using GUIs).
      
      The spatial interpolation algorithm MUST now be initialized by calling their initialize(param) method. This makes it possible to optimize their processing (not recomputing the list of stations to process, etc) and also allow to build an info string that can be returned with the interpolation and contain various useful information (specially for GUIs).
      0b6179bc
  13. 03 Sep, 2010 1 commit
    • Mathias Bavay's avatar
      The embryo of a matrix class has been implemented. It is still based on... · eb83911b
      Mathias Bavay authored
      The embryo of a matrix class has been implemented. It is still based on Array2D and therefore the indexing is still 0 to n-1 instead of being 1 to n and the coordinates are swapped compared to normal matrices.
      
      New regression models have been added, all based on the linear regression code but using variable transforms to achieve their goal. 
      
      The global header file (MeteoIO.h) was incomplete. It has therefore been reorganized and now contains everything that it should...
      eb83911b
  14. 19 Aug, 2010 1 commit
    • Mathias Bavay's avatar
      Several 1D statistical methods has been implemented while the existing ones... · 5b5cd758
      Mathias Bavay authored
      Several 1D statistical methods has been implemented while the existing ones have been made nodata safe.
      
      Added a redefinition of the << operator for IOPlugin and IOHandler. This should be convenient for debugging!
      
      Some small optimizations have been brought into the spatial interpolations following some tests with cachegrind. Nothing huge, but small improvements.
      
      
      5b5cd758
  15. 21 Jun, 2010 1 commit
    • Thomas Egger's avatar
      Directory structure change: src folder now called meteoio · 752c0068
      Thomas Egger authored
      Overall all include statements within in the library have been replaced by angle brackets, the default install path for the include file is $CMAKE_INSTALL_DIR/include/meteoio, the meteoio libraries (static and shared) will be installed in $CMAKE_INSTALL_DIR/lib per default.
      
      The plugins will be installed in the subdirectory $CMAKE_INSTALL_DIR/lib/meteoio/plugins
      752c0068
  16. 09 Jun, 2010 1 commit
    • Thomas Egger's avatar
      New interpolation interface: Now the 1D interpolation can be configured by the... · 8f5a7d58
      Thomas Egger authored
      New interpolation interface: Now the 1D interpolation can be configured by the user through an own section in io.ini:
      
      [Interpolations1D]
      TA::resample = linear
      TA::args     = extrapolate
      RH::resample = nearest_neighbour
      HNW::resample = no
      P::resample = linear
      
      Currently two algorithms are implemented: linear interpolation and nearest_neighbour interpolation. The interpolation can be switched off explicitly by P::resample = no
      
      The default remains linear resampling, however the linear resampling may not only resample within bounds (interpolate), but also out of bounds (extrapolate), this needs to be configured with the resampling algorithm argument "extrapolate" as seen in the example above. 
      8f5a7d58
  17. 21 Apr, 2010 1 commit
  18. 25 Mar, 2010 1 commit
    • Thomas Egger's avatar
      The new interpolations interface with all algorithms that used to reside... · a318acec
      Thomas Egger authored
      The new interpolations interface with all algorithms that used to reside within libinterpol2D exclusively. Every algorithm is an own class derived from InterpolationAlgorithm abstract base class. An AlgorithmFactory instantiates the required algorithm within class Meteo2DInterpolator. The user needs to configured which algorithms to be used within the section [Interpolations2D] in the io.ini:
      
      [Interpolations2D]
      TA::algorithms = cst cst_lapse idw_lapse
      TA::cst_lapse = -0.008
      
      libinterpol1D has a new function for the calculation of arithmetic means. all of libinterpol2D is static. the rest will be thrown out in the coming days.
      a318acec
  19. 09 Dec, 2009 1 commit
  20. 26 May, 2009 2 commits