- 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.
-
- 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...
-
- 14 Feb, 2013 1 commit
-
-
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.
-
- 11 Feb, 2013 1 commit
-
-
Mathias Bavay authored
Lots of small fixes after running cppcheck on Windows: unused variables, use ++i instead of i++ for complex types (ie mostly iterators for us) for more performance, a few variables that could be passed as const&, use vector.empty() instead of vector.size==0 (for clarity and potentially performances).
-
- 23 May, 2012 1 commit
-
-
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.
-
- 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.
-
- 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.
-
- 08 Feb, 2011 2 commits
-
-
Mathias Bavay authored
The Standard Deviation filter has been moved to the new structure. Some optimizations for windowed_filters will have to be implemented at some point... (see issue 132 for some ideas)
-
Mathias Bavay authored
Another commit related to timezones... The Unix date always being in UTC, this has been fixed. The resampling was not using dates in a proper way, this has been fixed. The GSN plugin has also been fixed, it now rounds time to the closest minute (in order to be consistent with our advertised "1 minute time resolution"). A rounding method has been implemented for dates. The timezone parameter in io.ini is now named TIME_ZONE instead of TZ for clarity. Undefined dates should now be fully handled (ie: also in arithmetic).
-
- 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).
-
- 01 Feb, 2011 1 commit
-
-
Mathias Bavay authored
The min and max filters have been implemented. The "how to write a filter" documentation page has been updated to relfect the latest changes. The operator << has been implemented for various objects involved in the data processing.
-
- 28 Jan, 2011 1 commit
-
-
Marc Diebold authored
A new version of the CosmoXMLIO plugin is also part of this commit, with some necessary fixes in the CMakeLists
-
- 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
-
- 24 Jan, 2011 1 commit
-
-
Thomas Egger authored
New filter system rolled out with currently two filters up and running: min_max and mean_avg (without the soft option, only left or right centering). The new filter system is built upon processing blocks that take a vector<MeteoData> as input and return a processed vector<MeteoData>. The individual filters are stacked in a ProcessingStack where they are invoked sequentially.
-