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. 

Installer and Documentation

Available for download is the latest version of Metas UncLib including a wrapper library, which supports the use of METAS UncLib from MATLAB through the .NET interface. It allows the easy treatment of multivariate uncertainties with MATLABs syntactic sugar for vector and matrix calculations.

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.


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

Metas.UncLib is a generic measurement uncertainty library that supports
• Multidimensional treatment of measurement uncertainties
• 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 does 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 that facilitate 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.  

Linear and higher order measurement uncertainty propagation in Metas.UncLib are based on the GUM Tree concept of Blair Hall from IRL/MSL, NZ. Uncertain quantities are represented by an abstract data type that 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.

Gum Tree

Publications and Presentations

to the top Last modification 03.10.2019