WSL/SLF GitLab Repository

  1. 22 Aug, 2011 1 commit
  2. 26 Jan, 2011 1 commit
    • Mathias Bavay's avatar
      A new group of classes has been created, under the meteolaws subdirectory.... · 4b63f416
      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. 
      4b63f416
  3. 09 Dec, 2010 1 commit
  4. 20 Aug, 2010 1 commit
  5. 26 Jul, 2010 1 commit
  6. 19 Jul, 2010 1 commit
  7. 21 Jun, 2010 2 commits
  8. 16 Jun, 2010 1 commit
    • Thomas Egger's avatar
      Added a function that seeks for a given date within a vector of MeteoData.... · 041c2742
      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
      041c2742
  9. 08 Jun, 2010 1 commit
  10. 07 Jun, 2010 1 commit
    • Mathias Bavay's avatar
      The ARPSIO plugin's documentation is now correclty linked to the rest of the... · ab06b9d9
      Mathias Bavay authored
      The ARPSIO plugin's documentation is now correclty linked to the rest of the documentation. The reading of DEMs has been validated (with some bug fixes). It currently only works for APRSGRID modified data files (but supporting original ARPS ascii files should be easier). More explicit error messages have been added to Array2D
      ab06b9d9
  11. 03 Jun, 2010 1 commit
    • Mathias Bavay's avatar
      The first version of an ARPSIO plugin has been written, largely based on the... · 72c0a247
      Mathias Bavay authored
      The first version of an ARPSIO plugin has been written, largely based on the code of LegacyIO. This plugin is mostly non-fonctional (besides reading DEM) because most of the concepts of ARPS files are foreign to MeteoIO... Finishing it will require carreful thinking and brilliant ideas! (the biggest issues have to do with the irregular grids that are a usual feature of ARPS files).
      
      A warning has been silenced until we finish the implementation of the USER interpolation algorithm (reading user provided grids).
      72c0a247
  12. 02 Jun, 2010 1 commit
    • Mathias Bavay's avatar
      Fixed some doxygen comments in SNIO. · 3338919c
      Mathias Bavay authored
      Some commented out code has been removed. The check for the projection of the stations compared to the projection used for the DEM has been re-activated (it MUST be active!). The first implementation of a custom grid "interpolation" method has been done (issue 50) but can not be used: we need access to an IOHandler in order to properly read grids provided by the user. Otherwise, the rest of the code for it has been written and tested.
      3338919c
  13. 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
  14. 26 May, 2010 1 commit
    • Thomas Egger's avatar
      SNIO is capable of reading *inp files now. Example usage: · 92120524
      Thomas Egger authored
      METEO = SNOWPACK
      NROFSTATIONS = 1
      METAFILE = input/IMIS_Extracted_Info.txt
      STATION1   = DAV1
      METEOFILE1 = /home/thoems/Desktop/snowpack_ref/validation/trunk/snowpack/mst2006/MST06_RR.inp
      
      The parameters NROFSTATIONS, METAFILE, STATION# and METEOFILE# are obligatory.
      
      A little bug in GEOtopIO lead to the copying of the tss value to tsg.
      The MeteoData::HS snow height is internally represented in meters.
      92120524
  15. 30 Apr, 2010 1 commit
  16. 28 Apr, 2010 1 commit
    • Mathias Bavay's avatar
      The POPC compilation issue has been fixed (work around a POPC bug). These work... · 5f07ce00
      Mathias Bavay authored
      The POPC compilation issue has been fixed (work around a POPC bug). These work arounds have been tagged as "HACK for POPC" in DEMObject, Date, Grid2/3DObject, IOHandler.ph, LegacyIO.ph and marshall_meteoio.cc.
      
      The SNIO plugin that was forgotten at the last commit is now here and has been improved so that it correctly formats its output (it does not read yet).
      5f07ce00
  17. 26 Apr, 2010 1 commit
  18. 21 Apr, 2010 1 commit
  19. 13 Apr, 2010 1 commit
    • Thomas Egger's avatar
      changed the way we deal with the projection parameters within the io.ini.... · 31474cb6
      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.
      31474cb6
  20. 31 Mar, 2010 1 commit
  21. 15 Mar, 2010 1 commit
    • Thomas Egger's avatar
      A new function is introduced into the IOInterface: writeMeteoData. It expects... · 4100a120
      Thomas Egger authored
      A new function is introduced into the IOInterface: writeMeteoData. It expects one vector<vector<MeteoData>> and one vector<vector<StationData>> as well as an optional string (for database info, file name, etc). The relevant io.ini tag is:
      METEODEST = GEOTOP
      
      Only GeotopIO has this method fully implemented thus enabling to convert all meteo data captured from any other source to a GEOtop compliant meteo files. The relevant tags are:
      METEODESTPATH = /tmp
      METEODESTSEQ	= WindS WindDir RelHum AirT SWglobal Iprec
      
      METEODESTPATH determines where the files will be written to and METEODESTSEQ determines the order in which the meteo parameters will be written into the CSV file
      4100a120
  22. 23 Feb, 2010 2 commits
    • Mathias Bavay's avatar
      A problem was found during the intialization of the plugins (as well as... · 9bd7b27c
      Mathias Bavay authored
      A problem was found during the intialization of the plugins (as well as A3DIO): the parameters that were passed to initialize the local copies were not always initialized with the raw parameters passed to the constructor but usually with the copy of the previous element. This lead to some copies not to be up to date when calling their constructor (see A3DIO.cc for a clearer view!!).
      9bd7b27c
    • Mathias Bavay's avatar
      The write2DGrid members of the plugins now use the features of the Coords... · 4e158737
      Mathias Bavay authored
      The write2DGrid members of the plugins now use the features of the Coords object to output the grid in the input coordinate system (as specified in the io.ini file). A copy of the Coords object is made, so that it does not change the given grid. This is fixing issue 3
      4e158737
  23. 22 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      The plugin's interface (IOInterface) has been slightly modified:... · 2ee54369
      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
      2ee54369
  24. 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
  25. 03 Feb, 2010 1 commit
    • Mathias Bavay's avatar
      The Special_PTS and CSpecialPointsArray structures have been renamed in... · 11d9c246
      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).
      11d9c246
  26. 09 Dec, 2009 1 commit
  27. 19 Oct, 2009 1 commit
    • Thomas Egger's avatar
      1. Added more doxygen comments to plugins · db9c23cd
      Thomas Egger authored
      2. ConfigReader has a new function called getValue(key, vector<T>) that can deal with multiple white space separated values for one key.
      e.g. MYNUMBERS = 19.99 -27.89 777.0007
      
      can be read by:
      
      vector<double> myVec;
      ConfigReader cfg("test.ini");
      getValue("mynumbers", myVec);
      db9c23cd
  28. 05 Sep, 2009 1 commit
  29. 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
  30. 17 Aug, 2009 1 commit
  31. 07 Aug, 2009 1 commit
    • Thomas Egger's avatar
      * Complete rewrite of IOHandler: Now it is very easy to add new plugins... · b1b0497b
      Thomas Egger authored
      * Complete rewrite of IOHandler: Now it is very easy to add new plugins (adding one line), all the internals (allocation, loading, deleting, loading the right plugin for each IOInterface function) are transparently done.
      
      * changed one parameter in readMeteoData to const unsigned int& from unsigned int. Therefore all children of IOInterface needed to undergo that change
      b1b0497b
  32. 03 Aug, 2009 1 commit
    • Thomas Egger's avatar
      Main changes: · 33cd0e50
      Thomas Egger authored
      * GeotopIO plugin, to read GeoTOP formatted files
      * IOHandler: code reduction for the loading and unloading of plugins
      * MeteoData: added one files "p"
      * IOUtils: added one more readLineToVec for different delimiters (comma, column, ...) - there was only one for whitespaces 
      33cd0e50
  33. 28 Jul, 2009 1 commit
  34. 27 Jul, 2009 1 commit
    • Thomas Egger's avatar
      New design for MeteoIO library: · e569ad90
      Thomas Egger authored
      * function readMeteoData is there to read an interval of data
      	readMeteoData(fromDate, toDate, vector< vector<MeteoData> >, vector< vector<MeteoData> >)
      * BufferedIOHandler is constructed with another child of IOInterface (e.g. IOHandler) as parameter and deals with all intrinsic issues of buffering, resampling, filtering: so if you have an IOHandler and you want to add buffering:
      	BufferedIOHandler(iohandler, configreader)
      and then you can access all IOInterface functions, plus a few convenient ones that only BufferedIOHandler exposes:
      	getNextMeteoData(date, vector<MeteoData>, vector<StationData>)
      	readMeteoData(date, vector<MeteoData>, vector<StationData>)
      you can enable and disable buffering:
      	bufferediohandler.enableResampling(true);
      
      * A3DIO and IOHandler had to be adapted to the changes in IOInterface 
      * added a getYear() function to Date_IO
      * MeteoData has a new member variable "resampled" to indicate whether data has been resampled or not
      e569ad90
  35. 23 Jul, 2009 2 commits
    • Mathias Bavay's avatar
      Ok, this is the correct implementation of what I tried to do in the previous... · d7efb8a5
      Mathias Bavay authored
      Ok, this is the correct implementation of what I tried to do in the previous commit... Now, the Meteo2DInterpolator can take either Array2D<double> or Grid2DObjects as tables to fill. The overloading of the Write2DGrid has therefore been suppressed: since Grid2DObjects are geography-friendly, they should be used in our applications instead of Array2D (that should be reserved for internal implementation of objects).
      
      So, this is mostly reverting to the code before the last commit, with a few extra lines of code to do the magic...
      d7efb8a5
    • Mathias Bavay's avatar
      In order to make using the spatial interpolations easier to use, there is a... · 7444d587
      Mathias Bavay authored
      In order to make using the spatial interpolations easier to use, there is a need to be able to write to files objects of type Array2D. This has been added to IOInterface and implemented in the different plugins.
      
      meteoio_demo has been modified accordingly and is now much simpler.
      
      More fundamentally, we need to think about the way to handle in a nice and elegant way the different type accross the plugins (typically as seen for Write2DGrid): where should we handle what in order to let the user seemlessly write objects to the available mediums?
      7444d587
  36. 15 Jun, 2009 1 commit