- 09 Aug, 2013 1 commit
-
-
Mathias Bavay authored
A stupid bug has been fixed in SMETIO: the OSWR was not renamed as RSWR anymore. Otherwise, small documentation fixes.
-
- 05 Aug, 2013 1 commit
-
-
Mathias Bavay authored
The error message when the units_multiplier and/or units_offset count don't match with the number of fields was not right (wrong count given) and has been fixed. Some variables that could be const are now const in SmetIO
-
- 31 Jul, 2013 1 commit
-
-
Mathias Bavay authored
The method to clear the buffers in BufferedIOHandler was not doing everything it should. Some methods in BufferedIOHandler and IOManager have been made const. The issues 117 and 272 have been adressed: the IOHandler now checks that timestamps are unique and in increasing order. This check has therefore been removed from SMETIO.
-
- 15 Jul, 2013 1 commit
-
-
Mathias Bavay authored
-
- 21 Feb, 2013 1 commit
-
-
Mathias Bavay authored
My previous commit was terrible... it simply made it impossible to define optional keys. This has now been fixed but required a change in the API. So, don't use Config::nothrow but IOUtils::nothrow instead.
-
- 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).
-
- 24 Jan, 2013 1 commit
-
-
Mathias Bavay authored
Some better error messages have been added to SMETIO as well as some code cleanup. Some comments have been added to IOManager, and missing popc code added to DEMObject and Date.
-
- 03 Dec, 2012 1 commit
-
-
Mathias Bavay authored
Some warnings have been fixed in the tests and all 'string tmp=""' or 'tmp=""' have been replaced by either an empty constructor (that does the same ) or tmp.clear() (that does the same too)
-
- 03 Nov, 2012 1 commit
-
-
Thomas Egger authored
The plugins are no longer separately loadable libraries, but are fully incorporated into libmeteoio. All classes and facilities that provided capabilites for the dynamic loading were deleted (DynamicLibrary). IOPlugin now holds a function pointer to an instantiation function for children of IOInterface. In IOHandler::registerPlugins() all plugins need to be registered with the key name, the class name, a pointer to an instance of the class and a function pointer to the instantiation function for the class (child of IOInterface). IOInterface lost some complexity and thus the constructor of the base class does not have to be called in derived classes anymore. The CMakeLists.txt files had to be updated to no longer make separate dynamically loadable libraries for each plugin, but to simply add the classes the user selectes to the meteoio library. As a side effect the io.ini key GENERAL::PLUGINPATH is no longer necessary.
-
- 31 Oct, 2012 1 commit
-
-
Mathias Bavay authored
Fixing a small bug/warning in libsmet and properly initializing the members in some plugins (through initialization lists, as usual).
-
- 25 Oct, 2012 1 commit
-
-
Mathias Bavay authored
Some extra documentation has been added for the UPS coordinate system. The coordinates test has been expanded. A missing default value has been added to the Suntrajectory.
-
- 07 Aug, 2012 1 commit
-
-
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).
-
- 25 Jun, 2012 1 commit
-
-
Mathias Bavay authored
-
- 16 Jun, 2012 1 commit
-
-
Mathias Bavay authored
Pushed documentation version number, more robust file globing for the libraries, more standard uppercase/lowecase conversion and the extra parameters in SMET are now forced to uppercase (so all parameters are uppercase when they come out of the plugins).
-
- 03 May, 2012 2 commits
-
-
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.
-
Mathias Bavay authored
Outputs that were used for warnings (or information) are now done on cerr instead of cout, in order to avoid poluting the outputs of user code. Should we do the same for the exceptions? A new method, getSolarTime has been added to SunTrajectory.
-
- 29 Mar, 2012 1 commit
-
-
Mathias Bavay authored
An extra check on the timestamp has been added in SMETIO in order to throw an exception for duplicated timestamps or non chronological order (as happens with daylight saving time). Some private methods in libinterpol2D as well as some () operators for the arrays are now inline in order to help autovectorization find more potentially vectorizable code (and it finds some more). An arithmetic exception could happen in FilterRate (division by 0) and has been fixed.
-
- 26 Mar, 2012 1 commit
-
-
Mathias Bavay authored
The usage of SMET for giving special points was not documented. When giving OLWR in SMET, TSS was computed but could lead to an arithmetic exception. PNGIO could throw an exception without freeing all the png_* memory, this has been improved. A few HACKS have been fixed/removed.
-
- 13 Mar, 2012 1 commit
-
-
Mathias Bavay authored
Deleting duplicate points in GRIB was not working properly. The output time zone was not handled correctly in SMET. Some error messages have been improved.
-
- 11 Feb, 2012 1 commit
-
-
Thomas Egger authored
Bugfix for libsmet and thus release of the readSpecialPoints function in SMETIO.cc. It is now possible to read a vector of Coords objects through SMETIO, the format of the SMET file could be something like this: SMET 1.1 ASCII [HEADER] station_id = my_pts epsg = 32632 nodata = -999 fields = easting northing altitude [DATA] 713700 5.05578e+06 0 730900 5.15678e+06 0 674200 5.06278e+06 0 674400 5.08078e+06 0
-
- 27 Jan, 2012 1 commit
-
-
Mathias Bavay authored
The POPC compilation is slowly improving... One still needs to force the compiler to popcc, but otherwise it seems to work. Necessary includes have been added when popc is activated. A cmake method for finding popc has been implemented. Small optimization/clean up in A3DIO for special points reading.
-
- 22 Dec, 2011 1 commit
-
-
Mathias Bavay authored
This addresses the 2D part of issue 168: the ability to specify which meteo parameter and time step to read/write from/to a 2D grid. This should be the prefered reading method in the future, since it leaves to the plugin the task of building the file name, extension, database table, etc This also provides added metadata and more control over the writing process.
-
- 18 Nov, 2011 1 commit
-
-
Mathias Bavay authored
A lot of writes were using std::endl for end of line, which forces a buffer flush. This lead to a visible performance cost (as shown by the profiling project made in collaboration with HES_SO). These have been replaced by "\n" that lets ostream manage its buffer as it wants.
-
- 07 Nov, 2011 1 commit
-
-
Mathias Bavay authored
A bug was fixed in SMETIO: when given OLWR, it should have computed TSS, but it was not... (using the wrong MeteoData object). Documentation and error messages improvements. A new method was added to Atmosphere: virtualTemperatureFactor.
-
- 02 Nov, 2011 1 commit
-
-
Mathias Bavay authored
A new method, getExtension() has been added to IOUtils in order to return the extension of a given filename. This is used by the SMETIO and SNIO plugins to automatically add the proper extension to input file names if they don't already have one. The Median Average Deviation filter has been ported (and validated) to the new filtering infrastructure. Several error messages have been improved.
-
- 01 Nov, 2011 1 commit
-
-
Fierz authored
SNIO.cc:173-176 Allow to read meta data from either *.sno (smet-format) or *.snoold (snowpack-format) if METAFILE is either not provided or not found
-
- 23 Oct, 2011 1 commit
-
-
Thomas Egger authored
Reverting the last change: In all plugins the goal is to use the keys STATION1, STATION2, etc to denote the individual sources for meteo data.
-
- 21 Oct, 2011 1 commit
-
-
Fierz authored
-
- 17 Oct, 2011 1 commit
-
-
Mathias Bavay authored
-
- 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.
-
- 13 Sep, 2011 1 commit
-
-
Thomas Egger authored
SMETIO: Further development of the writeMeteoData procedure. Now all meteo parameters present in the MeteoData objects can be written (so not only the standard ones like MeteoData::TA, MeteoData::RH, etc). This lead to a slight reorganization of the code. Comments were added for private member functions. GSNIO: More comments explaining the mapping between the GSN meteo data fields and the MeteoData meteo parameters.
-
- 24 Aug, 2011 2 commits
-
-
Mathias Bavay authored
Removed some unecessary variables in exceptions catching (this should remove VC++ (rightful) warnings).
-
Mathias Bavay authored
Some Visual C++ warnings have been turned off (namely, that it can not generate a copy constructor) in MeteoIO.h, so each application using MeteoIO would benefit from it (and avoid being polluted by unecessary warnings). Exception catching is now done by const reference, as recommended in our coding style.
-
- 23 Aug, 2011 2 commits
-
-
Mathias Bavay authored
The CMakeLists were not making Visual C++ happy. This has been fixed. Several types issues have been fixed. The /Wp64 option of Visual C++ has been turned off, since it reports wrongly some things as errors (dixit Microsoft and my own experience).
-
Mathias Bavay authored
The OLWR hack for Norway has been implemented in SMETIO (a cleaner, long term solution will still have to be developed). Various types issues have been identified by Visual C++ and should have been fixed.
-
- 22 Aug, 2011 2 commits
-
-
Thomas Egger authored
-
Mathias Bavay authored
More size_t related issues have been found (thanks to the new snowpack server) and fixed. Basically, please remember that any variable used with/for the return value of a call to size() MUST be of type size_t (this becomes specially relevant in 64 bits). The water triple point pressure has been updated to a better value.
-
- 16 Aug, 2011 1 commit
-
-
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.
-
- 08 Aug, 2011 1 commit
-
-
Mathias Bavay authored
A Fit1D object is now created by specifying which regression model to use through an enum. Assignment operators as well as copy constructors have also been implemented (and tested). The config.dox file has been updated by doxygen to match more recent doxygen versions and syntax.
-