FIMEX

Fimex is a the File Interpolation, Manipulation and EXtraction library for gridded geospatial data, written in C/C++. It converts between different, extensible dataformats (currently netcdf, NcML, grib1/2 and felt). It enables you to change the projection and interpolation of scalar and vector grids. It makes it possible to subset the gridded data and to extract only parts of the files.

For simple usage, Fimex comes also with the command line program fimex.

Fimex is build around the Unidata Common Data Model version 1.

News

  • 2014-02-11 fimex-0.51
    • adding support for Prorad xml-files
    • avoiding singularities in interpolation
    • adding variable_type and dimension_size in Fortran
    • improving WRF-convention support (rot lat/lon, auxiliary axes)
    • using CF after horizontal transformation of WRF-files
    • bugfixes in merge (still in beta)
    • fixing grib-reader for mercator-files
    • adding qualityExtract2 command-line option, convenient for land-masking after interpolation
  • 2013-12-16 fimex-0.50
    • extending f90-interface, including –enable-fortran target
    • extending c-interface
    • slightly improving parallelization
    • fix setting of netcdf-compression per variable
    • improve scanning of grib-files
    • re-implement merging of files to allow for new target-grid
    • improve reading of WRF-files; better coordinate-support and vector-detection
    • fix latlon-interpolation with staggered grids
    • add support for logarithmic units
    • fix mercator-axes from grib-files
  • 2013-10-21 fimex-0.49
    • adding fortran90 interface
    • improved C interface
    • fix scaling of CDMReaderWriter
    • fix parsing of process.rotateVector.direction
    • using enums instead of #define for several constants
    • exposing getSimpleAxes in CoordSysUtils
    • adding getPreferredVerticalType
    • better API for fimex-versions (see CDMconstants.h)
  • 2013-10-03 fimex-0.48
    • vector-autorotation from command-line
    • printSize estimates
    • improved error-messages
    • scalar values allowed from ncml
  • 2013-08-30 fimex-0.47.2
    • fixed grib-file overruling of earth radius
  • 2013-08-26 fimex-0.47.1
    • allowing to extract only first dimension element (start=end=0)
    • fixing lambert-projection parameters in felt
    • fixing typo's in VerticalTransformation API
    • fixing time-interpolation when units-change
    • makeing Logger thread-safe
  • 2013-08-12 fimex-0.47
    • adding vertical cross-section interpolation
    • exposing vertical-transformations
    • (re-)adding SliceBuilder interface to NcML aggregation (reduce memory-consumption)
      • was dropped in 0.45
    • allow ncml to add values to unlimited dimensions
    • grib-reader allows time-unit change
    • documentation-improvements
  • 2013-06-12 fimex-0.46.1
    • warning, not failing with old grib-config files
  • 2013-06-12 fimex-0.46
    • grib-reading automatically adds unknown levels
    • grib-reading by timeRangeIndicator
    • grib-reading allows adding of ensemble dimension (glameps) (E. de Vreede)
    • grib-reading using globs or regexp
    • grib-reading read hybrid-values
    • configurable shuffling in netcdf4 (default on)
    • creepfillval to certain value instead of average
    • fixing vector reprojection together with preprocessing
    • fixing threading bug in forward-interpolation
  • 2013-05-20 fimex-0.45
    • adding ncml-aggregation, union and joinExisting
    • allow reading of other filetypes than netcdf in ncml
    • auto-detection of vectors by CF standard_names
    • vector-reprojection when selecting lat/lon-points
    • improved vector-rotation algorithm
    • lambert-projection for grib-writer
    • small improvements in example-input files
  • 2013-04-11 fimex-0.44.2
    • fix bug with netcdf-CDMReaderWriter and empty variables
    • fix direction of vertical axes for pressure, sigma and sigma-hybrid in config-files
  • 2013-04-08 fimex-0.44.1
    • allow file-generation from pure ncml
    • process.accumulate option to accumulate data along unlim (time)-dimension
    • automatically create chunks 1-10MB for compressed netcdf-files
  • 2013-03-25 fimex-0.43
    • new FillWriter, allowing netcdf-files to be filled slice by slice
    • change longitude to be within -180/180 from grib-files
    • enable creation of new variable in ncml
    • enable logical variable-shape changes in ncml
    • adding sync to CDMReaderWriter
  • 2013-03-04 fimex-0.42
    • add API for CDMReaderWriter
    • implement read-writing to netcdf-files
    • finding example-configuration directory for xml-files as first-guess
  • 2013-02-14 fimex-0.41.2
    • fix for interpolation to values, if axes in km instead of m
  • 2013-02-08 fimex-0.41.1
    • default log-level changed back to WARN
    • remove sigma-levels for clouds and dummy levels in felt-files
    • remove some openmp-flags for intel-compilers (segfault)
  • 2012-12-17 fimex-0.41
    • R interface to fimex for reading fields
    • log4cpp support
    • auxiliary variable support in extract.selectVariables
  • 2012-11-27 fimex-0.40.1
    • read multiple grib-files
    • allow writing of latlon grib-files from north to south
    • allow duplicated coordinates
    • remove duplicated coordinates for felt-files in latlon
    • allow different names for latlong (e.g. longlat) projections
    • remove long deprecated FeltCDMReader2.h
    • allow change of dimensions without variables in ncml
    • allow variable name-change and attribute-change in one step in ncml
  • 2012-11-07 fimex-0.40
    • splitting of vertical axes in grib-files
    • support for ensemble products in grib-files
  • 2012-10-30 fimex-0.39.2
    • vertical-interpolation invalidating data below ocean floor
    • vertical interpolation fixing axis (positive down) of depth
  • 2012-10-15 fimex-0.39.1
    • backport to boost-1.32
    • avoid problems with older gcc or icc when using constant class members
    • improve performance of scaling (use nan-macro rather than function)
  • 2012-09-08 fimex-0.39
    • merging of grids with different resolution (A. Bürger)
    • allow quality-flags and land-masks from external sources (A. Bürger)
    • successfully build on MacOS X/gcc
    • successfully tested with felt-archive files
  • 2012-08-11 fimex-0.38.1
    • compatibility with boost filesystem V3 / boost 1.50
    • adapting to gcc-4.6 / Ubuntu 12.04
  • 2012-07-19 fimex-0.38
    • 2x improved output-performance to netcdf3 files
    • support for ocean_s_coordinate_g1 and *_g2
    • adding IndexedData for convenience
    • introducing DataPtr typedef instead of boost::shared_ptr<Data>
    • adding fiConfigOverview.pl script to simplify configuration
  • 2012-07-05 fimex-0.37.4
    • fixing netcdf-files with 0-terminated strings
    • felt: using undefined-values for undefined levels
    • build on Ubuntu 12.04
  • 2012-05-09 fimex-0.37.3
    • enabling build with nc-config and netcdf-4.1.2 to 4.2 without hdf5
    • enabling build with proj-4.8
    • adding latlon projection in gribwriter
    • fixing bug in gribreader with special options
    • enabling name and standard_name selection of variables in grib_writer
    • fixing WRF earth radius
  • 2012-04-11 fimex-0.37.2
    • using towgs84 parameter of CF-1.7-proposal
    • setting felt earth-figure to simple earth
    • allow overruling of felt-earth-figure in config
  • 2012-03-29 fimex-0.37.1
    • preliminary WRF convention support
  • 2012-03-27 fimex-0.37
    • fix colon-separated variable-indicators for felt
    • fix axes in vector-interpolation (deg2rad)
    • disabling colon delimiter in wdb-sourcestrings
    • performance-improvements/memory reduction in NcmlCDMReader
    • adding de-accumulation processor
    • synchronize default fill-value with netcdf
    • fine-tuning usage of surface-variables from felt
    • allowing to force earth-figure in grib-files
    • template interpolation supports several coordinate systems
    • adding alpha-version of vector to latlon rotation
  • 2012-03-02 fimex-0.36
    • interpolation to simple list of lat/lon values (e.g. multiple profiles)
    • avoid numerical effect in linear interpolation
    • fix race-condition in timeInterpolator
    • fix axes of lambert felt-files
    • update of examples
  • 2012-02-20 fimex-0.35.2
    • allow to read ASIMOF-grib files
    • allow writing grib-data without time
    • fix forward/coordinate interpolation bug from latlon-projection
  • 2012-02-14 Fimex Workshop at met.no
  • 2012-02-07 fimex-0.35.1
    • enable reading of felt-files in lambert-projection
    • improving performance: vectorization of vector-interpolation
    • deprecating IOCDMReader in favour of CDMReaderFactory
  • 2012-01-04 fimex-0.35
    • grib-reader
      • supporting several types of levels for same parameter
      • supporting several horizontal CS for different parameters
    • grib-writer
      • fixing date-settings
      • using second-order packing if possible
    • interpolation
      • support for several horizontal CS (e.g. staggered grids)
      • using nanoflann instead of kdtree++, 4*speedup
      • supporting degree-based projections in coord_kdtree
      • configurable radius for coord_kdtree
      • improved index-access, 1.1*speedup
      • bilinear: better border handling, 1.3*speedup
      • vertical: support for depth
    • using WGS84 coordinates of latitude/longitude instead of spherical
    • extract-reduceToBoundigBox supporting bb around -180
    • parallelization
      • nn, bilinear, cubic and vector interpolation
      • make get*Data* operations thread-safe
      • make (Time-)Units thread-safe
      • parallelization of NetCDF-writer and NullCDMWriter
      • upgrade to libtool 2.4.2 (including openmp support)
      • adding ThreadPool.h for runtime configuration of threads
    • forcing boost-filesystem api to be compatible with newer boost-versions
    • remove isinf - not part of C++03

Older news can be found in the News Archive.

 
fimex/start.txt · Last modified: 2014/02/11 11:25 by heikok
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki