WSL/SLF GitLab Repository

  1. 06 Aug, 2010 1 commit
    • Mathias Bavay's avatar
      The DEMObject was not properly buffered (the update flag was not honored),... · 8e574ceb
      Mathias Bavay authored
      The DEMObject was not properly buffered (the update flag was not honored), this has been fixed. The A3DIO plugin now implements readStationData. A few speed improvements have been brought to A3DIO and SMETIO by using the "reserve" method of the vectors (so that the vectors don't have to reallocate memory constantly).
      8e574ceb
  2. 03 Aug, 2010 1 commit
    • Mathias Bavay's avatar
      The DEMObject subset constructor was broken, it has been fixed. It involved... · 886f3a28
      Mathias Bavay authored
      The DEMObject subset constructor was broken, it has been fixed. It involved creating a subset method in the arrays classes.
      
      The Coord class now supports using the given UTM zone when converting from lat/long to UTM. If the computed zone does not match the one requested in the io.ini, it prints a warning but uses the user-supplied zone.
      
      A first implementation of readStationData for SMETIO has been done. 
      
      Some documentation has been added for plugin development
      886f3a28
  3. 20 Jul, 2010 1 commit
    • Mathias Bavay's avatar
      Several bugs have been fixed in Coords: the setEPSG was not working, the... · 3e406fd0
      Mathias Bavay authored
      Several bugs have been fixed in Coords: the setEPSG was not working, the altitude was not displayed with the << operator and the formatting of decimal_to_dms was broken in its handling of seconds...
      
      The documentation for the resampling has been expanded and several other modules' documentation have been updated so their structure is built along the same lines. 
      
      An error message in IOHandler (when failing to load a plugin) was not clear and has been changed.
      
      Several bugs in SMEIO have been fixed (improper column names mapping, improper handling of easting/northing, unclear error message).
      
      The example data set has been tagged as GMT+1 and the meteo_reading and 2D_interpolations modified accordingly (so the argument read on the command line is assumed to be in GMT+1 too)
      3e406fd0
  4. 19 Jul, 2010 1 commit
    • Mathias Bavay's avatar
      The EPSG get and set methods have been added to Coords. The "<<" operator has... · 9e167f50
      Mathias Bavay authored
      The EPSG get and set methods have been added to Coords. The "<<" operator has been redefined for ConfigReader (this is convenient for debugging). The SMETIO plugin has been updated (so that it supports EPSG codes and also to change some column names and improve the foutput formatting). Some documentation has been added and the example data set has been replaced by a data set suitable for the whole Switzerland and in SMET format.
      9e167f50
  5. 21 Jun, 2010 1 commit
    • Thomas Egger's avatar
      Directory structure change: src folder now called meteoio · 752c0068
      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
      752c0068
  6. 15 Jun, 2010 1 commit
  7. 14 Jun, 2010 1 commit
    • Mathias Bavay's avatar
      General cleanup: the time.cc example sets a timezone variable, an unnecessary... · e24ad1b2
      Mathias Bavay authored
      General cleanup: the time.cc example sets a timezone variable, an unnecessary "mio::" has been removed in Coords, and two template files have been added to help plugin development (and mentionned in the documentation). 
      
      The cmake targets have been changed into "safe", "optimized", "par" and "hera". (the later being specific for the hera cluster).
      e24ad1b2
  8. 09 Jun, 2010 1 commit
  9. 28 May, 2010 1 commit
    • Mathias Bavay's avatar
      First, the issue 57 (angle/bearing conversion) has been addressed. · 68605c9a
      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).
      68605c9a
  10. 06 May, 2010 2 commits
  11. 03 May, 2010 1 commit
  12. 30 Apr, 2010 1 commit
  13. 21 Apr, 2010 1 commit
  14. 14 Apr, 2010 2 commits
  15. 12 Apr, 2010 1 commit
  16. 07 Apr, 2010 1 commit
    • Mathias Bavay's avatar
      The arrays and grids now have a "print" method that prints their content to... · ccfe775b
      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.
      
      
      ccfe775b
  17. 30 Mar, 2010 1 commit
  18. 26 Mar, 2010 1 commit
  19. 22 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      A few issues have been fixed in Coords: the copyProj method had a bug, the... · c930a817
      Mathias Bavay authored
      A few issues have been fixed in Coords: the copyProj method had a bug, the distance method now uses cartesian calculation if both projections are equal, a new getProj() method is now available (but it should be rarely needed). The GridxDObject::gridify method now correctly handles "NULL" projection and the Meteo2DInterpolator makes sure that all projections agree before doing the interpolations.
      c930a817
  20. 19 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      Finally, the implementation of issue 35 is here... A few bugs left with the... · cdc01c4b
      Mathias Bavay authored
      Finally, the implementation of issue 35 is here... A few bugs left with the Coords class have been fixed (namely, the methods take 1 optional parameter and not more, because for this usage scenario it was way too dangerous and the user (myself in this case!) could call the method with the wrong parameter left empty). New mebers have been added: grid_i and grid_j as well as methods to deal with them. These contain the grid indices matching the position. Since these indices depend on the chosen DEM/grid, they are NOT updated by Coords but by Grid2DObject or Grid3DObject instead. If the user calls Coords::setLatLon() or Coords::setXY(), then these grid parameters are reset to nodata.
      
      A bug in a constructor of StationData has also been fixed (assigning a temporary object to a member of the class). Some bugs/unlucky deletes in the examples have been fixed (this is the price to pay for work too late at night!)
      
      New constants "lat_epsilon" and "lon_epsilon" have been created in IOUtils. They represent the smallest latitude/longitude resolution (ie: two points within lat_epsilon are considered to have the same latitude)
      cdc01c4b
  21. 18 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      The constructor Coords(ConfigReader) was a bad idea... Convenient, but way too... · e02fa994
      Mathias Bavay authored
      The constructor Coords(ConfigReader) was a bad idea... Convenient, but way too specific. It has been removed. The documentation in the Coords class has been updated.
      
      A saner handling of nodata values by the plugins has been implemented. Now, each plugin should properly get its own internal definition of nodata and return data using IOUtils::nodata to the caller. A new method has been implemented in IOUtils to help cleaning a parameter for nodata.
      
      A check for xmlParseFile (used for compiling the Boschung plugin) was working poorly and has been commented out in configure.ac.
      
      Finally, more cleanup in the ph files has been performed.
      e02fa994
  22. 17 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      The new Coords object is now used by all grids (Grid2DObject, Grid3DObject,... · 687c52df
      Mathias Bavay authored
      The new Coords object is now used by all grids (Grid2DObject, Grid3DObject, DEMObject) as well as by all plugins (but checking proper operation was not possible for GSNIO because of missing libraries on my system...). The documentation has been updated as well as the code examples. A few extra methods have been added when usage has shown the need/convenience of having them (specially for standardazing some processing called by the plugins). A few small bugs have been fixed (possibility of not updating or improperly updating the coordinates in some rare cases).
      
      The proper marshalling for Grid3DObject has been implemented (it was more or less a dummy method until now). One bug has been fixed for Proj4 support. The code of most of the plugins has been cleaned up in order to get rid of the few remaining "using namespace" in header files. 
      687c52df
  23. 16 Feb, 2010 2 commits
    • Mathias Bavay's avatar
      The class Stationdata now properly uses the new Coords class. All usual... · b40dedb4
      Mathias Bavay authored
      The class Stationdata now properly uses the new Coords class. All usual dependencies have been fixed (A3DIO.cc) but not (yet) the optional plugins. The Coords class has been modified so that it computes the matching coordinates as soon as possible instead of the previous implementation that was delaying it as much as possible (thus making "const Coords..." impossible).
      
      The includes have been cleaned up (compilation was failing because of multiple "using namespace" in header files) and all "using namespace" have been removed from header files (please don't put any of these back!!). The doxygen comments has been updated.
      b40dedb4
    • Mathias Bavay's avatar
      The MapProj class has been renamed in Coords. It now contains the coordinates... · d393958b
      Mathias Bavay authored
      The MapProj class has been renamed in Coords. It now contains the coordinates (lat,long) and (xcoord, ycoord) and should therefore be used as a storage and conversion class. The necessary changes have been made to the rest of the code so it uses this class, but it still does NOT use it as a storage of coordinates (which will have to be done in the future). This addressed partially issue 35.
      d393958b
  24. 15 Feb, 2010 1 commit
  25. 09 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      A few static members have been added to MapProj to handle latitude/longitude:... · 8fb751f9
      Mathias Bavay authored
      A few static members have been added to MapProj to handle latitude/longitude: a method for converting a decimal latitude or longitude to degrees, minutes, seconds (formatted as d°m's"),  a method for converting a string containing degrees, minutes, seconds to decimal latitude or longitude and a method for parsing a position expressed as latitude/longitude (given in a string) and returning decimal latitude and longitude. This is the implementation of issue 34.
      8fb751f9
  26. 05 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      In the MapProj class, a new conversion has been added: UTM to/from WGS84.... · ba74049c
      Mathias Bavay authored
      In the MapProj class, a new conversion has been added: UTM to/from WGS84. Simply give "UTM" as the coordinate system and specify in the optional arguments the zone number (for example, 31T).
      
      A (tricky) error has been fixed in the VincentyDistance. The bearing that was chosen was the average between the initial and reverse bearing. That seemd a good idea at the time, but this made reprojecting a local grid computed using Vincenty impossible: the required bearing (starting from the reference point) is the initial bearing, the average one was sending us hundreds of kilometers away from the correct coordinate (when doing (lat,lon) -> local -> (lat,lon)). 
      
      Finally, a few more powN() methods have been added to IOUtils for convenience (yes, the projection business loves these!!)
      ba74049c
  27. 07 Jan, 2010 1 commit
  28. 11 Dec, 2009 1 commit
    • Mathias Bavay's avatar
      A new slope computation algorithm has bee added: CARD It computes the slope... · 27deca55
      Mathias Bavay authored
      A new slope computation algorithm has bee added: CARD It computes the slope using Corripio and then discretizes the azimuth along 8 cardinal directions and the slope by degrees. This should be all that GEOtop needs for its drainage direction (then simply calling a dem.update("CARDINAL")).
      
      The copyright notices have been put in place in all files (headers and cc) with proper attribution of copyright.
      
      The documentation has been improved, specially fixing issue 22. Warning messages of doxygen have been fixed. An example subdirectory has been created in /doc and contains (currently) 2 examples of code using MeteoIO.
      27deca55
  29. 03 Nov, 2009 2 commits
    • Mathias Bavay's avatar
      The constructor for local grid in MapProj has been changed and its prototype... · 656de316
      Mathias Bavay authored
      The constructor for local grid in MapProj has been changed and its prototype modified. It should now make more sense and allow using LOCAL in io.ini like any other projection keyword.
      
      The code that was doing IO buffering in LegacyIO when POPC was used has been deleted (this is not the right place to do caching). A method prototype has been slightly tweaked (using const string instead of char*).
      
      Since Laws.c/h is already a file that is part of Snowpack and since making it a separate library does not make so much sense (it is quite small and only 3 short functions from it are used in MeteoIO), the necessary code has been transfered to libinterpol2D and these two files have been deleted.
      
      A warning in IOUtils has been silenced.
      656de316
    • Mathias Bavay's avatar
      The MapProj class has been improved: instead of selecting fast (or not) for... · 3c2d7948
      Mathias Bavay authored
      The MapProj class has been improved: instead of selecting fast (or not) for distances calculations (as well as local grids), the user can directly select the algorithm (with keywords form an enum). A new constructor has been created specifically for local grid projections (taking "LOCAL" as well as lat and long for reference point).
      
      The MeteoData class has been fixed for popc (at least, I hope!)
      3c2d7948
  30. 02 Nov, 2009 1 commit
    • Mathias Bavay's avatar
      All the code that has to do with geographic calculations (projections,... · 7b9e2bd6
      Mathias Bavay authored
      All the code that has to do with geographic calculations (projections, conversions to/from swiss coordinates, geodesic distances, etc) has been moved to the MapProj class. An elegant solution for checking the Grid2DObject coordinates (lat/long against xcoord/ycoord) in underway... (almost there!)
      
      Includes issues have been found and fixed (IOInterface and Grid2DObjet.h)
      
      7b9e2bd6
  31. 29 Oct, 2009 1 commit
    • Mathias Bavay's avatar
      An error message that was tagged [I] has been retagged as [E] so the user... · 02fcb323
      Mathias Bavay authored
      An error message that was tagged [I] has been retagged as [E] so the user might be a little more scared (in A3DIO.cc)
      
      A new constructor has been added to Date_IO (copy constructor).
      
      The necessary changes have been done to the autoconf files so that an new option has come: --with-proj4 (turned off by default). But the user of the library still has to add -lproj to his compiler command line (after the -lmeteoio).
      02fcb323
  32. 28 Oct, 2009 1 commit
  33. 27 Oct, 2009 1 commit
    • Mathias Bavay's avatar
      DEMObject and IOHandler have been modified so that the DEMObject is more or... · 1057ac03
      Mathias Bavay authored
      DEMObject and IOHandler have been modified so that the DEMObject is more or less intelligently updated while retaining the possibility to provide an optional argument turning it off (constructors which fill the DEMObject with real data by default now update the slope/curvatures/normals except if giving as a last argument *false*).
      
      The first code for using the proj4 library for coordinates conversion has been writen in MapProj. It is still disabled by default since it suffers (at least) from a parsing bug: the coordinates argument is truncated when going through cfg.getValue() and therefore not valid (at least my checks work!).
      
      A missplaced define (for PI) has been moved in IOUtils.
      
      LegacyIO popc code has been cleaned up, removing the timers (that are not portable and thus a problem for WIN32 systems).
      
      A typo in an error message has been fixed in Grid2DObject. A few unnecessary (ie: ugly) white spaces removed at some places (A3DIO.cc, etc)
      1057ac03
  34. 22 Oct, 2009 1 commit
    • Mathias Bavay's avatar
      A new define (DEBUG_ARITHM) has been added that activates the non-catching of... · 85135ebd
      Mathias Bavay authored
      A new define (DEBUG_ARITHM) has been added that activates the non-catching of arithmetic exceptions. This is specially required for parallel execution when the code from the library might execute in a process different from the caller (thus not having the required flag set on the cpu for its process). This is enabled/disabled in the Makefile.in (or the Makefile for the end user). 
      
      The std:: namespace declaration has been added to a lots of places, making the "use namespace std" usage irrelevant (and thus suppressed). Other namespaces that were called with a "use" have been found not to be used anymore and therefore also removed.
      
      Several bugs in the doxygen comments have been fixed: typo (misplaced space), comments not matching the declaration anymore, etc Doxygen now executes without warnings.
      
      85135ebd
  35. 26 Aug, 2009 1 commit
    • Thomas Egger's avatar
      * plugin GrassIO fully functional · 2a9377ae
      Thomas Egger authored
      * MapProj is a new class that deals with all kinds of map projections (some can be implemented directly, like CH1903, others can be based on the Proj.4 library)
      * changes in map projections made it necessary to adapt the children of IOInterface that have an implementation of readMeteoData or read2DGrid
      2a9377ae