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

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

Fimex Introduction by Heiko Klein

Fimex used in Production (SMS), (norwegian) by Arild Burud

Diana and Fimex, (norwegian) by Lisbeth Bergholt

Internal (met.no) translation table between felt parameters and CF standard_names

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.