- 24 Sep, 2013 1 commit
-
-
Mathias Bavay authored
Since Rob has committed his precipitation spatial interpolation, the 2D_interpolation reference result had to be updated. Several members in filter classes could be made const/static/private.
-
- 30 Aug, 2013 1 commit
-
-
Mathias Bavay authored
The median computations were relying on std::nth_element and wrongly assuming that the output would be sorted. This is non-standard behavior and is not the case with more recent versions of the STL. This has been fixed. The ProcessingStack constructor has been optimized by using new methods of Config to remove some now redundant code.
-
- 10 Mar, 2013 1 commit
-
-
Mathias Bavay authored
Lots of vectors copies were made using push_back(). This is definitely not efficient! This has been replaced by vec_o = vec_i, we will see which impact it has on performances...
-
- 23 May, 2012 2 commits
-
-
Mathias Bavay authored
The last filters that had not been ported to the new filtering infrastructure have been ported and their documentation updated. All filters now use window specifications (instead of vector of pointers). The misleading filter argument "index" (for parameter type) has been renamed as "param" for all filters. The use of "unsigned int" for looping over vectors has been replaced by "size_t". The old "soft" behavior for the filters has been restored (ie: if not soft, a point that can not be checked by the filter is deleted). A few more "consts" have been added.
-
Mathias Bavay authored
All the filters using windows have been modified so they use the window specifications (start, end) instead of a vector of pointers. The FilterWindAvg was not properly handling nodata, this has been fixed. By the way, when using a reasonnably large buffer size, the new filter window management is actually slightly faster than the old one (1%). The handling of "soft" is now different: soft ONLY applies to the window specifications. Before, a soft filter would leave values that could not get a window untouched while non-soft would force them to nodata. Now, all values that can not get a window are left unchanged, while the window centering can change according to "soft".
-
- 03 May, 2012 1 commit
-
-
Mathias Bavay authored
The Passive_T filter has been reworked and renamed as ProcPassiveT. A proper documentation has been written for it. All the cout have been replaced by cerr in order to avoid messing with the end user's application. Some old commented out code has been removed.
-
- 07 Feb, 2012 1 commit
-
-
Mathias Bavay authored
Another fix/enhancement for POPC: the libraries now ends with "popc" in the popc version, as the autotools build was doing. Windchill and heat index have been implemented in Atmosphere. Some cleanup in the filters, some code moved to ProcessingBlock, so that elements that are not filters can inherit ProcessingBlock and get all that it needs. A processing element has been implemented to multiply by a given constant, another one to add a given offset and another one to correct precipitation for undercatch. Some invalid doxygen comments have been fixed in MathOptim.
-
- 03 Nov, 2011 1 commit
-
-
Mathias Bavay authored
The "soft" argument was not properly handled by the Min and Max filters, this has been fixed. All filters now properly reserve the vector size that they need, which reduces the number of instruction fetch misses and should (slightly) improved performances. Please try to use vector.reserve() whenever possible!
-
- 19 Sep, 2011 1 commit
-
-
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.
-
- 20 Jul, 2011 1 commit
-
-
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).
-
- 17 May, 2011 1 commit
-
-
Mathias Bavay authored
Fixing some unsigned int / size_t conversion issues by using more widely size_t (as it seems to be recommended and done in the STL)
-
- 09 Mar, 2011 1 commit
-
-
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...
-
- 04 Feb, 2011 1 commit
-
-
Mathias Bavay authored
The full support for timezones has been brought back. This fixes issue 71. The SMET, SMET, IMIS, BORMA plugins have been validated. Geotop should be validtaed if an input data set is available. A new class will have to be implemented to represent time periods. This is currently only a typedef pointing to the Date class, but a specific class would be welcomed. GSN has been fixed for some changes on the web service, but does not retrieve the correct timestamps (is this a GSN issue?). The GSN compilation has been improved: the warnings related to GSOAP have been removed. A new long wave radiaiton model using cloudiness as input has been added (Omstedt, 1990).
-
- 31 Jan, 2011 1 commit
-
-
Mathias Bavay authored
The (advanced) configuration of the BufferedIOHandler through io.ini (General section) has been added. It currently introduces two keywords (BUFF_CHUNKS_SIZE and BUFF_CHUNKS) to drive how much data to read at once and how much data to buffer. Currently, their product is directly used in the read, thus not reading anything by chunks smaller than a full buffer. Fixed some << outputs, two compilation warnings found on Hera as well as introduced.
-
- 27 Jan, 2011 2 commits
-
-
Thomas Egger authored
-
Thomas Egger authored
Further improvements to the new filtering infrastructure: windowed filters now inherit from the class WindowedFilter, giving them an easy handle on getting the correct window for every data point. FilterMedianAvg and FilterMeanAvg now fully implemented (soft/not soft, left/center/right windowing). Sample io.ini: [Filters] TA::filter1 = mean_avg TA::arg1 = soft right 5 3600 TA::filter2 = min_max TA::arg2 = soft 282 286 280 290 RH::filter1 = median_avg RH::arg1 = center 8 3600
-