- 18 Jun, 2011 1 commit
-
-
Mathias Bavay authored
A new generic method "getArraySliceParams" has been added to IOUtils. This method computes the indices for splitting an array in several, balanced sub-arrays. This is what is needed to distribute a computation on an array among several computers. This method computes the indices in one dimension, if the user wants to split along several dimensions, he can just call it again on another dimension (the splitting being usually only along one dimension).
-
- 19 May, 2011 1 commit
-
-
Mathias Bavay authored
-
- 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)
-
- 11 May, 2011 1 commit
-
-
Mathias Bavay authored
Since we leave some file descriptors behind, this commit tries to close potential loop holes. A possible source of arithmetic exceptions in Coords has been fixed (calculating the distance between two identical points).
-
- 04 May, 2011 1 commit
-
-
Mathias Bavay authored
The POPC version has been heavily transformed. Since we would need IOManager has a popc object and this is quite hard (we need a backreference in Meteo2DInterpolator), all parclasses have been removed. Instead, the user will have the responsability to packaged IOManager in his own parclass if needed. This makes the code simpler and skips difficult issues... A new fill method has been added to the Array2D and Array3D templates that does the reverse of subset (ie: reassemble arrays). Better error messages have been put in SNIO. A new Date setter that takes a Date object has been created. This version does NOT correctly compile with the autotools (it leads to a segfault when running code using MeteoIO), but the cmake compiled library works fine.
-
- 23 Mar, 2011 2 commits
-
-
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.
-
Mathias Bavay authored
-
- 15 Mar, 2011 1 commit
-
-
Mathias Bavay authored
The arrays are now using the vector filling methods when possible. A specialized template for convertString(unsigned int) has been written. A two segments linear fit (for elevation detrending) has been implemented with a fixed inflection point. This is quite primitive but allows the LLIDW spatial interpolation to use it and therefore to behave like the traditional SLF SnowFit program. More work will be needed for fully configurable regression algorithm choice though... Some namming issues have been fixed in COSMOXML. A better emissivity handling has been implemented in SNIO to be closer to the original Snowpack (ie: compute clear sky ILWR when no cloudiness/emissivity is given).
-
- 10 Mar, 2011 5 commits
-
-
Thomas Egger authored
-
Mathias Bavay authored
Small tweaks so that code::blocks on Windows also compiles MeteoIO correctly... (like a never ending story)
-
Mathias Bavay authored
A few functions have been added to the Atmosphere class that are usefull (specifically for Alpine3D snowdrift)
-
Mathias Bavay authored
-
Mathias Bavay authored
More fixes for Visual C++ (but not all done yet) as well as new assignments operators for 1d, 2d, 3d arrays. It is now possible to do something like my2Dgrid.grid2D = 2.; and every cell will be filled with 2.
-
- 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...
-
- 08 Mar, 2011 1 commit
-
-
Mathias Bavay authored
The SNIO and SMETIO plugins now use METEOPATH for both inputs and outputs. This is more consistent with other plugins and usage. Some unused variables/methods have been removed from BufferedIOHandler (namely, the "buffer_always" functionality). A first implementation of fileExists() and readDirectory() for Windows has been written. This has not yet been tested (even for compilation) since it requires Visual C++. This moves forward to address issues 143 and 144
-
- 08 Feb, 2011 2 commits
-
-
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).
-
Fierz authored
- Date.*: allow to handle undefined Dates (== 0. for now), add new members undef, setUndef(), isUndef(), and rndJulianDate() - IOUtils.*: replaced TZ with time_zone and TIME_ZONE - ImisIO.*: correct typo seperateDrift to separateDrift
-
- 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).
-
- 26 Jan, 2011 1 commit
-
-
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.
-
- 24 Jan, 2011 1 commit
-
-
Mathias Bavay authored
A new setAltitude() method has been added to Coords in order to be able to manually build stations from grided data and dem. A bug in Grid2DObject has been found that was reseting i,j,k to nodata when doing a gridify with i,j,k known. Better date parsing abilities have been implemented in IOUtils so that purely numerical dates as generated with the date format NUM can be parsed if *part* of a string in a meanigful way (useful for recovering dates from file names). A small Timer class has been added for easy code timing. This was in Alpine3D and had been imported from popc (with their agreement) and now quite heavily reworked.
-
- 09 Dec, 2010 1 commit
-
-
Thomas Egger authored
MeteoData now has an extra public member variable: StationData meta. It will hold the meta information of the measurment instead of dragging along a second vector<StationData> alongside the vector<MeteoData> everywhere. This has huge implications: the IOInterface has been rewritten, subsequently changes need to be propagated into all plugins and all modules dealing with meta data.
-
- 21 Oct, 2010 2 commits
-
-
Cyril Perot authored
-
Mathias Bavay authored
An IOUtils function has been created to handle cleaning path strings. This is used by the jnative Java binding. The Geotop plugin has been removed from the jnative Java binding, because the binding loads grids but no meteo data and Geotop does not contain grids...
-
- 17 Aug, 2010 1 commit
-
-
Thomas Egger authored
Added two functions to MeteoData: bool param_exists(string) and void reset() reset() sets all the values of the MeteoData object to IOUtils::nodata (note: not the date), and param_exists(string) returns true if a certain parameter exists and false otherwise in a MeteoData object. The Meteo1DInterpolator now correctly creates MeteoData objects that have more parameters than the default ones (like ta, hnw, ...)
-
- 02 Aug, 2010 1 commit
-
-
Thomas Egger authored
Introduced new template function get(key, section) and get(key) to the Config class, it should make reading of values easier: Config cfg("io.ini"); vector<int> = cfg.get("DEPTHS", "INPUT", Config::nothrow); string mystr = cfg.get("PATH", "OUTPUT");
-
- 28 Jul, 2010 1 commit
-
-
Thomas Egger authored
The keys and sections within a Config object are now case insensitive, the values remain case sensitive.
-
- 26 Jul, 2010 1 commit
-
-
Thomas Egger authored
-
- 23 Jul, 2010 1 commit
-
-
Mathias Bavay authored
When checking for End Of Line character, the eof flag was not properly reset, so when testing 1 line files, the subsequent reading would fail.
-
- 20 Jul, 2010 1 commit
-
-
Mathias Bavay authored
Another bug in the parameter name mapping in SMETIO has been found and some error messages made clearer (with more information). A bug in convertString<Date> has been found that was preventing it from corretly processing dates containing seconds. A quick fix has been implemented that reads seconds (even if they are later ignored because the Date class would need to support seconds)
-
- 28 Jun, 2010 1 commit
-
-
Thomas Egger authored
Added new plugin for WSMDF format. gzipped version of format currently not supported. binary version works, but since the julian date does not fit into a 4 byte (32bit) float, it is unusable. ASCII format works, although unit_multiplier and unit_offset are currently not supported. For location information the easting, northing version is not yet supported. Added function IOUtils::stripComments(string&) it, deletes everything after # or ; from the string&
-
- 26 Jun, 2010 1 commit
-
-
Thomas Egger authored
Implementation of binary search in IOUtils::seek(date, vecMeteo) - therefore the implementation of seek in BufferedIOHandler became obsolete. BufferedIOHandler now fully relies on IOUtils::seek and IOUtils::npos.
-
- 21 Jun, 2010 1 commit
-
-
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
-
- 17 Jun, 2010 1 commit
-
-
Thomas Egger authored
Added the exponential smoothing filter "exp_smoothing" and rewrote the "mean_avg" and "median_avg" filter to calculate the mean and median for every element within vecFilteredM. Usage of the new filter: HS::filter1 = exp_smoothing HS::arg1 = soft left 1 7200 0.6 The last argument specifies the smoothing factor alpha, the other arguments steer the window calculation (in this case a left leaning window with at least 1 data point spanning 7200 minutes.
-
- 16 Jun, 2010 1 commit
-
-
Thomas Egger authored
Added a function that seeks for a given date within a vector of MeteoData. There are two modes of operation, depending on a boolean argument (true per default value): 1) the date must exactly match one within the vector 2) the date doesn't have to exactly match up, in that case the vector must "contain" the date given an the index returned is for the first element of the vector with the a date greater than the one sought for. In case of failure, the function returns IOUtils::npos Added a missing include in ARPSIO.h
-
- 28 May, 2010 1 commit
-
-
Mathias Bavay authored
Then, the remaining namespace issues with doxygen have been fixed, by enclosing the full class implementation in the namespace (as seen for the libstdc++). This removes all these irritating issues. But the popc version has been broken by the change (as seen in LegacyIO).
-
- 21 Apr, 2010 1 commit
-
-
Thomas Egger authored
Changed the name of the Date_IO class to Date. In case of namespace conflicts, just use mio::Date to reference the MeteoIO Date class.
-
- 16 Apr, 2010 1 commit
-
-
Mathias Bavay authored
Two public methods have been added to Date_IO (getJulianDayNumber and isLeapYear). The documentation has been slightly improved. A helper function has been added to IOUtils: getTimeZoneParameters. It will be used by the plugins in order to correctly set the timezone of their data. The Median Absolute Deviation filter has been implemented, documented and checked (in FilterAlgorithms).
-
- 15 Apr, 2010 1 commit
-
-
Mathias Bavay authored
The Date_IO class has been deeply rewriten. The conversion methods have been checked (with references added), the class now uses real julian date (internally as a reference) and can generate a variety of outputs (julian, modified julian, truncated julian, unix, excel). It also works properly with time zones and a simplified version of dayligh saving time (it assumes that DST always introduces a +1 hour shift, which should always be true but on one AUstralian Island: Lord Howe Island). Some now invalid calls have been fixed in plugins (the short setDate(yy,mm,dd) call is now longer supported but migth be misinterpreted by the compiler for another call, despite types mismatch). A new example code has been added: time.cc
-
- 13 Apr, 2010 1 commit
-
-
Thomas Egger authored
changed the way we deal with the projection parameters within the io.ini. COORDSYS must be declared in the [Input] section and is optional for the [Output] section (it becomes mandatory if a function is to be used, that creates output) The parsing of the ConfigReader object is done in IOUtils, this is not the final solution on that.
-
- 04 Mar, 2010 1 commit
-
-
Thomas Egger authored
-