- 10 Sep, 2015 1 commit
-
-
Mathias Bavay authored
Making the grid operators "const" when possible. Type casting in the << and >> operators of the Arrays to please clang...
-
- 01 Oct, 2014 1 commit
-
-
Mathias Bavay authored
The grids.isEmpty() method has been renamed as empty() in order to follow the STL convention. The ARC grids written with Alpine3D naming were still not properly named, they should now be directly recognized by the Alpine3D grid viewer.
-
- 25 Aug, 2014 1 commit
-
-
Mathias Bavay authored
The basic operators have been implemented in Grid2DObject and Grid3DObject as well as DEMObject (with the proper update strategy). In order to suppress the risk of out of date "ncols, nrows" and since these were redundant with Array2D<>.nx/ny, they have been suppressed and it is therefore now mandatory to rely on the getNx/getNy/getNz getters. This is much safer but impacted quite a lot of code...
-
- 12 Aug, 2014 1 commit
-
-
Mathias Bavay authored
better file structure: all the classes purely focused on data storage (such as grids, dates, etc) have been moved into a "dataClasses" directory. All subdirectories are nhow named similarly to the classes and methods: the words after the first one are capitalized.
-
- 13 Sep, 2013 1 commit
-
-
Mathias Bavay authored
Finally trying to address the unsigned int vs size_t issue... All index, etc that should be size_t have been made size_t in the data classes.
-
- 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.
-
- 24 Jul, 2013 1 commit
-
-
Mathias Bavay authored
A broken link has been fixed in GRIBIO, the use of inishell is now properly encouraged in the "how to set up your io.ini" section and some indenting in Array1D
-
- 16 May, 2013 1 commit
-
-
Mathias Bavay authored
The == and != operators have been added to the arrays (easier for debugging). Array4D was not included in MeteoIO.h and has been added.
-
- 08 May, 2013 1 commit
-
-
Mathias Bavay authored
Trying to help the compiler use SIMD instructions for some array operations. Small documentation improvement for IMISIO.
-
- 18 Apr, 2013 1 commit
-
-
Mathias Bavay authored
-
- 17 Apr, 2013 1 commit
-
-
Mathias Bavay authored
In order to implement an efficient and portable object serialization, it has been decided that all serializable objects would be manually serialized to an std::iostream. Then, the parallelization framework (mpi, popc, etc) can take over this stream and move it to another node. Therefore, the operators "<<" and ">>" are now reserved for serialization (as seems to be standard) and the debug outputs are obtained by printing "object.toString()". This means that all debug code has potentially to be fixed, by replacing "std::cout << object" by "std::cout << object.toString()".
-
- 28 Oct, 2012 1 commit
-
-
Mathias Bavay authored
After compiling with -Weffc++, it appeared that lots of things could be done in initialization lists. Some of it has been done for this commit (but quite a few remain).
-
- 24 Aug, 2012 1 commit
-
-
Mathias Bavay authored
-
- 23 Aug, 2012 1 commit
-
-
Mathias Bavay authored
Improved error message when reaching outside of an array in debug mode and fixed a stupid allocation bug (swapping two lines in the last commit triggered this bug)
-
- 06 Aug, 2012 2 commits
-
-
Mathias Bavay authored
-
Mathias Bavay authored
The checkEpsilonEquality method has been implemented as a specialized method for arrays of doubles. This is now used by the 2D_interpolations test. The sun test now calls numdiff for checking the results.
-
- 16 Jul, 2012 1 commit
-
-
Mathias Bavay authored
There were several paths that would built an array while leaving its keep_nodata flag uninitialized. This has been fixed. When resizing arrays, the old content could be kept. This is not really intuitive, so now a clear() is forced before all resize.
-
- 19 Jun, 2012 1 commit
-
-
Mathias Bavay authored
Fixed a warning with XCode 4.3 on osX. Tried to make a more standard use of c++ (relying on std::fill for filling vectors, relying on vector.resize(sixe, value) instead of manually initializing a vector, etc). A few more const added where appropriate. It makes the benchmarks slightly faster...
-
- 31 May, 2012 1 commit
-
-
Mathias Bavay authored
-
- 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.
-
- 19 Mar, 2012 1 commit
-
-
Mathias Bavay authored
-
- 16 Aug, 2011 2 commits
-
-
Mathias Bavay authored
Better error messages when compiling in debug as well as for dimensions issues (adding arrays of incompatible dimensions, invalid subset, etc)
-
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.
-
- 20 Jun, 2011 1 commit
-
-
Mathias Bavay authored
The treatment of NODATA points in Arrays is now controled by a simple boolean, set using "setKeepNodata". This should be easier than the previous commits that require a special type for how to process NODATA. The arrays are also now properly marshaled (ie: the keep_nodata flag is kept through marshaling).
-
- 16 Jun, 2011 1 commit
-
-
Mathias Bavay authored
The nodata handling strategy was not thoroughly implemented: aritmetic operators were not compliant. In order to fix it, a property now records how to handle nodata for each object. A setter method is available. All operations now properly handle it. The Grid2D and Grid3D objects now have a (x,y) and (x,y,z) method for direct access to their gridded values. This should make it easier to switch a Grid object with an Array in a piece of code. With the latest changes in CMakeLists, the examples could not be built anymore. This has been fixed in the examples Makefile (but the io.ini plugin path stil has to be fixed).
-
- 24 Mar, 2011 1 commit
-
-
Mathias Bavay authored
The array getSum() was not the most appropriate method... It has been replaced by a getCount(), which means that to really get the sum, one has to do getMean()*getCount(). A new Coords::isNodata() method has been implemented as well as the possibility for two Coords objects to be equal if both are nodata. This is now used in SMETIO so that if the position of a station becomes nodata, it won't force its position information into the data section. Some comments have been cleaned up in IMISIO, better exceptions thrown in SNIO and better backtrace formatting in IOExceptions (this being only for Linux, a dark grey text color has been specified to more or less make the backtrace less intrusive and scary to the user). More Visual C++ tweaks in CMakeLists
-
- 23 Mar, 2011 1 commit
-
-
Mathias Bavay authored
The Array::getAbs() and abs() methods were not offering nodata handling, this has been fixed. A new getSum() method has been implemented for arrays (with proper choice of nodata handling)
-
- 21 Mar, 2011 1 commit
-
-
Mathias Bavay authored
The Arrays now skip some unecessary tests in resize(). Since the arguments are unsigned, there can not be any negative size! This also now allows setting size to 0. A new "operator" has been added to get the absolute value of an array. This unfortunatelly generate a warning for unsigned arrays despite that the necessary signedness test is performed. This warning will have to be disabled one way or another. The example data set has been brought back to SMET version 1.1
-
- 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 1 commit
-
-
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.
-
- 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.
-
- 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
-
- 30 Apr, 2010 1 commit
-
-
Mathias Bavay authored
Most of the doxygen issues have been fixed. A few are still left (and we lost the inheritance structure in doxygen).
-
- 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.
-
- 12 Apr, 2010 1 commit
-
-
Mathias Bavay authored
The << operator has been overloaded for a few types (Arrays, Grids, Coords, Dates, Meteo and Station data) and the to_String() methods removed (except for Dates because it might make sense there to get a string) as a way to provide easy debugging output. This makes the meteo_reading example even simpler!
-
- 07 Apr, 2010 1 commit
-
-
Mathias Bavay authored
The arrays and grids now have a "print" method that prints their content to screen (usefull for debugging). The Coords class also has this method (as required to print the grid objects). A "using namespace std" was found in ImisIO.h and has been removed. A few comments/indentation/clean up have been done (including in the doc/examples) The quality rating sorting was broken and has been fixed. The RH interpolation method was not properly working and has been fixed (using the wrong vector for input data). The naming of the number of stations to be used has been made more consistent between the various algorithms and an improved information output has been added.
-
- 01 Apr, 2010 1 commit
-
-
Mathias Bavay authored
The array operators have been added to Array, Array2D and Array3D. Grid2/3DObject also have their assignment operator. The IOHandler headers (.h and .ph) have been slightly reorganized so that they look as similar as possible (makes toubleshooting easier) The ARCIO plugin has been slightly reverted so that it outputs float grids (even if some tools require INT, we NEED floats in our outputs).
-
- 22 Feb, 2010 1 commit
-
-
Mathias Bavay authored
The plugin's interface (IOInterface) has been slightly modified: readSpecialPoints now returns a vector of Coords. This means that a plugin can provide coordinates as (lat,long) or (easting, northing) or (grid_i, grid_j). All the plugins have been modified accordingly and POINTS and POINTSArray have been removed from Array.h
-
- 10 Feb, 2010 1 commit
-
-
Mathias Bavay authored
New methods have been added/updated in the Arrays (1D, 2D, 3D): getMin, getMax and getMean. They accept an optional argument (either RAW_NODATA or PARSE_NODATA) that tells how to interpret nodata values (as normal values or really as nodata). The dem usage example code has been improved in order to show more capabilities.
-
- 03 Feb, 2010 1 commit
-
-
Mathias Bavay authored
The Special_PTS and CSpecialPointsArray structures have been renamed in "POINT" and "POINTSArray" (there was no reason to call them "special points"). A few new methods have been added to DEMObject: getPointsBetween that returns a vector containing the indices of all points located on the line between two points (given by their real world (x,y) coordinates), horizontalDistance that returns the horizontal distance between two points and terrainDistance that returns the distance between two point accros the terrain as described by the DEM (ie: going up and down the terrain).
-