Federal Administration admin.ch
Federal Department of Justice and Police FDJP
Federal Office of Metrology METAS
quick search

Metas.UncLib - An advanced Measurement Uncertainty Calculator

Metas.UncLib is a generic measurement uncertainty calculator developed by METAS as part of the VNA Tools II project. Metas.UncLib is written in C# within the .NET framework. Software development is done by Michael Wollensack.

Contact: Michael Wollensack and Marko Zeier

Installer and Documentation

Available for download are the latest versions of Metas.UncLib and a wrapper library, which allows the use of Metas.UncLib from MATLAB through the COM interface. It allows the easy treatment of multivariate uncertainties with MATLABs syntactic sugar for vector and matrix calculations.

Metas.UncLib V1.1
Installer for C# library
Requirements: Microsoft Windows XP or later, earlier versions might work but are not tested
Download
User reference
A short guide on how to use Metas.UncLib
Download

Metas.UncLib.Matlab V1.1
Installer for MATLAB wrapper
Requirements: Metas.UncLib V1.1 and MATLAB V7.5.0 (32-bit) or later, earlier versions might work but are not tested
Download
User reference
A short guide on how to use Metas.UncLib from within Matlab
Download

The end user license of the software allows free use of the software whereas redistribution in any form is prohibited. Registration is voluntary but recommended. Registered users will be notified of upgrades, bug fixes and new developments.

Example

> unc = @LinProp;
> a = unc(3, 0.3);
> b = unc(4, 0.4);
> c = sqrt(a.*a + b.*b)
c = (5 ± 0.367151)

Features

Metas.UncLib is a generic measurement uncertainty library which supports

  • Multidimensional treatment of measurement uncertainty
  • Correlations
  • Complex-valued measurands
  • Measurement uncertainty propagation - linear, higher order, numerical (preliminary!)
  • Advanced mathematics - vector and matrix algebra, fft, ...
  • Archiving and storage of results - keeping full information
  • Interfacing with other applications - COM and .NET
Metas.UncLib will not help to build a measurement model and it does not provide a fancy user interface. The latter however is compensated by its interface capabilities, which allows the use of the library from many applications and programming or scripting languages. We provide a Matlab wrapper and we are interested to hear about attempts to use Metas.UncLib from other applications.

Concept

Linear and higher order measurement uncertainty propagation in Metas.UncLib are based on the GUM Tree concept of Blair Hall from IRL/MSL, NZ. Within this concept uncertain quantities are represented by an abstract data type which contains not only the value of the quantity but also the sensitivities with respect to basic input quantities. Sensitivities are updated at each computational step by applying the chain rule, a technique called automatic differentiation. Uncertainties of quantities and correlations between quantities can be calculated on demand. An object oriented implementation with overloaded operators hides the complexity of the calculations from the user.

The Metas.UncLib implementation is optimized for speed and low memory requirements and is thus particularly well suited for the multivariate treatment of larger data sets.

Presentations

  • M. Wollensack and M. Zeier, Metas.UncLib - An advanced Measurement Uncertainty Calculator, Metas Seminar, September 2009.
    pdf (990 kB)