List of uncertainty propagation software
Jump to navigation Jump to search
List of uncertainty propagation software used to perform propagation of uncertainty calculations:
- ASUE Potent web interface powered by webMathematica to evaluate uncertainty symbolically using GUM. Webpage also allows symbolic uncertainty evaluation via ASUE framework (with reference), which is an extension to GUM framework
- Dempster Shafer with Intervals (DSI) Toolbox is a MATLAB toolbox for verified computing under Dempster–Shafer theory. It provides aggregation rules, fast (non) monotonic function propagation, plots of basic probability assignments, verified fault tree analysis (FTA), and much more.
- EasyGraph is a graphing package that supports error propagation directly into the error bars.
- epc error propagating calculator (epc) is an open source script-based tool that calculates the propagation of errors in variables. To quote the text on the Epc web page "This is done by repeated calculation of the expression using variable-values which are generated using a random number generator whose mean and standard-deviation match the values specified for the variable".
- Error Propagation Calculator Free cross-platform calculator (macOS, Windows, Linux) written in Python. Essentially a GUI interface for the Python Uncertainties library. Easy to use and install.
- ErrorCalc is a scientific calculator app for iPhone or iPad that performs error propagation (Supports Algebraic and RPN modes of entry)
- GUMsim is a Monte Carlo simulator and uncertainty estimator for Windows
- GUM Tree is a design pattern for propagating measurement uncertainty. An implementation exists in R and add-ons for Excel (real and complex numbers).
- GUM Tree Calculator is a programmable Windows command-line tool with full support for uncertainty calculations involving real and complex quantities.
- GUM Workbench implements a systematic way to analyze an uncertainty problem for single and multiple results. GUM + Monte Carlo. Free restricted educational version available.
- The Gustavus propagator is an open source calculator that supports error propagation developed by Thomas Huber.
- gvar is a Python library for first order uncertainty propagation with correlations. Features transparent handling of arrays, dictionaries and dictionaries of arrays; numerical computation with uncertainty propagation of splines, matrix operations, differential equations, integrals, power series and equations.
- The laffers.net propagator is a web-based tool for propagating errors in data. The tool uses the standard methods for propagation.
- LNE-MCM is a free software for Windows dedicated to the evaluation of measurement uncertainty using Monte Carlo simulations according to Supplement 1 to the GUM. Moreover, additional features are implemented like the case of multivariate models, sensitivity analysis to provide an uncertainty budget and a goodness-of-fit test for the samples of the output quantities.
- Mathos Core Library Uncertainty package Open source (.NET targeting library).
- MC-Ed is a native Windows software to perform uncertainty calculations according to the Supplement 1 to the Guide to the expression of uncertainty in measurement using Monte-Carlo method.
- Measurements.jl is a free and open-source error propagation calculator and library. It supports real and complex numbers with uncertainty, arbitrary-precision arithmetic calculations, functional correlation between variables, mathematical and linear algebra operations with matrices and arrays, and numerical integration using Gauss–Kronrod quadrature.
- Metas.UncLib is a C# software library. A MATLAB wrapper exists. It supports: multivariate uncertainties, complex values, correlations, vector, and matrix algebra.
- metRology package for R metRology is an R package to support metrological applications. Among other functions for metrology, it includes support for measurement uncertainty evaluation using algebraic and numerical differentiation and Monte Carlo methods.
- MUSE Measurement Uncertainty Simulation and Evaluation using the monte carlo method.
- OpenCOSSAN is a MATLAB toolbox for uncertainty propagation, reliability analysis, model updating, sensitivity and robust design optimization. Allows interacting with 3rd party solvers. Interfaces with HPC through GridEngine and OpenLava.
- NIST Uncertainty Machine is an uncertainty calculator that uses Gauss' formula and Monte Carlo methods. Users access it through a web browser, but it runs in the R programming language on the server.
- OpenTURNS is a C++ and Python framework for probabilistic modelling and uncertainty management developed by the OpenTURNS consortium (Airbus, EDF R&D, IMACS, Phimeca). It contains state of the art algorithms for univariate, multivariate and infinite dimensional probabilistic modelling (arithmetic of independent random variables, copulas, Bayesian models, stochastic processes and random fields), Monte Carlo simulation, surrogate modelling (Kriging, functional chaos decomposition, low rank tensor approximation, Karhunen-Loeve decomposition, mixture of experts), rare event estimation (variance reduction, FORM/SORM reliability methods), robust optimization, global sensitivity analysis (ANCOVA, Sobol' indices). It can interact with third party software through a generic Python interface, which also allows to connect HPC facilities.
- QMSys GUM is a potent commercial tool for measurement uncertainty analysis including Monte Carlo simulation for Windows (free restricted educational version available).
- Risk Calc supports probability bounds analysis, standard fuzzy arithmetic, and classical interval analysis for conducting distribution-free or nonparametric risk analyses.
- SmartUQ is a commercial uncertainty quantification and analytics software package. Capabilities include DOE generation, emulator construction, uncertainty propagation, sensitivity analysis, statistical calibration, and inverse analysis.
- SOERP implements second-order error propagation as a free Python library. Calculations are carried out naturally in calculator format and correlations are maintained.
- SCaViS is a free data-analyais program written in Java and supports Python and Groovy.
- SCRAM is free fault tree and event tree analysis software that employs Monte Carlo simulation for uncertainty analysis in probability expressions.
- Uncertainties is a potent free calculator and Python software library for transparently performing calculations with uncertainties and correlations.
- Mathos Laboratory Uncertainty Calculator This is a web interface for uncertainty calculations.
- UQLab is a software framework for uncertainty quantification developed at ETH Zurich. It is a general-purpose software running in MATLAB which contains state-of-the-art methods for Monte Carlo simulation, dependence modelling (copula theory), surrogate modelling (polynomial chaos expansions, Kriging (a.k.a. Gaussian process modelling), low-rank tensor approximations, global sensitivity analysis (ANOVA, Sobol’ indices, distribution-based indices), rare event simulation (a.k.a. reliability methods).
- UncertaintyWrapper is a free and open source software Python package that propagates uncertainty using 1st order linear combinations. Covariance is also propagated. It approximates sensitivity with finite central differences. UncertaintyWrapper wraps any Python code even C extensions. It is vetted against Uncertainties, ALGOPY, Numdifftools and SymPy.
This section may require cleanup to meet Wikipedia's quality standards. The specific problem is: too technical for people to understand. (November 2018) (Learn how and when to remove this template message)
|Name||Creator||License||Programming language||Handles correlations?||Cross-platform?||Calculator?||Complex numbers calculation?||VISA data acquisition possible ?||Library?||Remarks|
|ASUE||TC-32 - Fault Tolerant Measurement Systems||Free||Mathematica||No||Yes||Yes||No||Potent web interface powered by webMathematica to evaluate uncertainty symbolically using GUM. Webpage also allows symbolic uncertainty evaluation via ASUE framework (with reference), which is an extension to the GUM uncertainty propagation framework.||N/A|
|Error Propagation Calculator||R. Paul Nobrega||Free||Python||Yes||Yes||Yes||No||Desktop calculator (Windows, macOS, Linux), handles up to 26 variable and error pairs per computation. Evaluates native python expressions. No prior knowledge of python language is required for use. Windows installer includes python dependencies.|
|Abacus||Mischa Megens||Free||C, Win32||Yes||No||Yes||No||Desktop calculator (Windows), handles multiple expressions|
|App::ErrorCalculator||Steffen Müller||GNU GPL||Perl||No||Yes||Library and script to process tabular values|
|Dempster Shafer with Intervals (DSI) Toolbox||Gabor Rebner||Free for private and academic use||MATLAB||No||Yes||Verified computation of basic probability assignments and fault tree analysis under Dempster–Shafer theory. Fast evaluation of (non) monotonic system functions and aggregation rules.|
|Experimental Data Analyst (EDA)||David Harrison||Proprietary||Mathematica||Yes||No||Yes||Library||N/A|
|EPC: error-propagating calculator||Dan Kelley||GNU GPL||Perl||Yes||Yes||Yes||Perl Script. Monte Carlo evaluation of an expression.|
|ErrorCalc iPhone/iPad calculator app||Thomas Huber||Proprietary||Unknown||No||No||Yes||No||Scientific calculator app for iPhone or iPad that performs error propagation (Algebraic and RPN Entry modes)||N/A|
|FuncDesigner||Dmitrey||BSD||Python||No||Yes||Yes||Library and stand-alone (via the Python shell). Involves automatic differentiation, possibly large-scale sparse|
|fussy||S. Bhatnagar||Free but copyrighted||C||Yes||No||Yes||Yes||Scripting language called 'fussy', similar to C.|
|GUM Workbench||Metrodata GmbH||Proprietary||Object Pascal (Delphi)||Yes||Yes||No||Standalone. Detailed consequences of a model equation. GUM + Monte Carlo. Free restricted educational version available.|
|GUM_MC||Jean-Marie Biansan||GNU GPL||Lazarus||Yes||Yes||Yes||No||Standalone. Gum framework and Monte Carlo method.|
|GUMsim||QuoData GmbH||Proprietary||Object Pascal (Delphi)||Yes||No||Yes||No||Standalone; detailed consequences of a model equation|
|GUM Tree Calculator (GTC)||Industrial Research Ltd||Proprietary, freeware single-user, nontransferable||Python||Yes||No||Yes||Yes||No||No||A programmable command-line calculator for Windows. Suitable for calculations involving real and complex quantities. Programmable in Python. An IDE with syntax highlighting and on-line help is included.|
|Gustavus Adolphus error propagation calculator||Thomas Huber||GNU GPL||Unknown||No||No||Yes||No||Executable only. Desk calculator style (with no expression parentheses).||N/A|
|gvar||G. Peter Lepage||GNU GPL||Python||Yes||Yes||Yes||No||No||Library||Not trivial to install on Windows, a compiled binary is provided here.|
|LNE-MCM||LNE||Free||MATLAB||Yes||No||Yes||No||Standalone. MATLAB Runtime required. Monte Carlo method, Supplement 1 to the GUM. Sensitivity analysis, Multivariate models, Goodness-of-fit test.|
|Measurement Software Toolkit||Industrial Research Ltd||Proprietary, freeware noncommercial use||R, Excel plug-in||Yes||Yes||Yes||Library and plug-in|
|Measurements.jl||Mosè Giordano||MIT||Julia||Yes||Yes||Yes||Yes||Supports real and complex numbers with uncertainty, arbitrary-precision calculations, functional correlation between variables, mathematical and linear algebra operations with matrices and arrays, and numerical integration.|
|metRology package for R||S. Ellison||Free, GPL||R||Yes||Yes||Yes||No||Includes first-order algebraic and numerical differentiation, including finite-difference with specified step size and Kragten's method, as well as Monte Carlo simulation. Evaluation can be applied to R expressions, formulae and functions.|
|MUSE||Measurement Uncertainty Research Group, ETH Zürich||Proprietary, freeware noncommercial use||C++||Yes||Yes||No||Standalone. Monte-Carlo sampling. Interprets an XML model description file.|
|Metas.UncLib||Michael Wollensack, METAS||Proprietary freeware, no redistribution||C#, MATLAB wrapper||Yes||No||Yes||Yes||Library, and command-line calculator, via MATLAB|
|NIST Uncertainty Machine||Thomas Lafarge, Antonio Possolo, National Institute of Standards and Technology||public domain||R||Yes||Yes||Yes||Yes||Uses Gauss' method and Monte Carlo. Web interface to a server-side R language calculator. Complete documentation.|
|Number::WithError||Steffen Müller||GNU GPL||Perl||No||No||Yes||Library|
|propagate||Andrej-Nikolai Spiess||GNU GPL||R||Yes||Yes||No||Yes||An R package that conducts error propagation by first- and second-order Taylor approximation (GUM 2008) and Monte-Carlo simulation (GUM 2008 S1), using full covariance structure.|
|Risk Calc||Scott Ferson||Proprietary||C++||Yes||Yes||Probabilistic and interval uncertainty. Also handles uncertainty about correlations.|
|SCaViS||JWork.ORG||GNU GPL||Java, Python||Yes||Yes||Yes||Yes||Standalone. Conducts error propagation by first- and second-order Taylor approximation and using a Monte Carlo approach for complex functions.||N/A|
|soerp||Abraham Lee||BSD||Python||Yes||Yes||Yes||Yes||Free Python library and command-line calculator. Fully transparent second-order calculations with correlations. Automatically calculates all the first and second derivatives of an expression using the free Python package ad|
|QMSys GUM||Qualisyst Ltd.||Proprietary||Unknown||Yes||No||Standalone. Linear/nonlinear models, Monte Carlo method. (free restricted educational version available)|
|MC-Ed||Florian Platel (MetGen)||Free||Object Pascal (Delphi)||No||No||Yes||No||Desktop calculator (Win32 native application). Monte-Carlo simulations.||N/A|
|OpenCOSSAN||Institute of Risk and Uncertainty, University of Liverpool||GNU GPL||MATLAB||Yes||Yes||No||Yes||Provides an object-oriented programming interface to advanced algorithms and solution sequences.|
|OpenTURNS||Airbus, EDF R&D, IMACS, Phimeca||GNU LGPL||C++, Python||Yes||Yes||No||Yes||State of the art advanced probabilistic modelling (copulas, Bayesian models, stochastic processes, random fields), state of the art algorithms, Windows-Linux-macOS, C++ and Python APIs|
|SmartUQ||SmartUQ LLC||Proprietary||C++||Yes||Yes||No||No||Standalone application for Windows & Linux. MATLAB and Python APIs|
|uncertainties||Eric O. Lebigot (EOL)||BSD||Python||Yes||Yes||Yes||Yes||Library or stand-alone command-line calculator (via the Python shell). Fully transparent, analytic calculations with correlations. Also handles matrices with uncertainties. Automatically calculates all the derivatives of an expression|
|UQLab||ETH Zürich, Chair of Risk, Safety and Uncertainty Quantification||BSD scientific modules. Free for academic use||MATLAB||Yes||Yes||Yes||No||General purpose software including copula modeling, surrogate models (polynomial chaos expansions, Kriging (a.k.a. Gaussian process modeling), low-rank tensor approximations), global sensitivity analysis (Sobol’ indices), rare event simulation (FORM/SORM, importance sampling, subset simulation). Easy to link with third party codes, fast learning curve.|
|UncertaintyWrapper||Mark Mikofski||BSD||Python||Yes||Yes||Yes||Yes||Python decorators to wrap any method including C extensions. Propagates 1st order uncertainties using finite central difference approximation of Jacobian matrix. Sensitivity also propagated. Any number of arguments and return values. Calculates multiple observations simultaneously. Validated with Uncertainties, ALGOPY, Numdifftools and SymPy.|
- Automatic differentiation#Software, also can be used to obtain uncertainties
- Ellison, Stephen L. R. (2017). "metRology: Support for Metrological Applications". CRAN (R programming language). Retrieved 2018-02-20.
- Lafarge, T. and Possolo, A (2015). "The NIST Uncertainty Machine". NCSLI Measure Journal of Measurement Science. 10 (3): 20–27.
- Marelli, S. and Sudret, B., UQLab: A framework for uncertainty quantification in Matlab, Proc. 2nd Int. Conf. on Vulnerability, Risk Analysis and Management (ICVRAM2014), Liverpool, United Kingdom, 2014
- Kragten, J. (1994). "Calculating standard deviations and confidence intervals with a universally applicable spreadsheet technique". Analyst. 119 (10): 2161–2166. doi:10.1039/AN9941902161.
- Y. C. Kuang, A. Rajan, M. P.-L. Ooi, and T. C. Ong (2014), "Standard uncertainty evaluation of multivariate polynomial," Measurement, vol. 58, pp. 483–494, Dec. 2014
- A. Rajan, M. P. Ooi, Y. C. Kuang, and S. N. Demidenko, "Analytical Standard Uncertainty Evaluation Using Mellin Transform," Access, IEEE, vol. 3, pp. 209–222, 2015.
- Auer, E., Luther, W., Rebner, G., Limbourg, P. (2010) A Verified MATLAB Toolbox for the Dempster-Shafer Theory. Proceedings of the Workshop on the Theory of Belief Functions
- Bevington, P.R. and Robinson, D.K. (2002) Data Reduction and Error Analysis for the Physical Sciences, 3rd Ed., McGraw-Hill ISBN 0-07-119926-8
- Ferson, S., Kreinovich, V., Hajagos, J., Oberkampf, W. and Ginzburg, L. (2007) "Experimental Uncertainty Estimation and Statistics for Data Having Interval Uncertainty". Sandia National Laboratories Report: SAND2007-0939.
- Patelli, E., An Open Computational Framework for Reliability Based Optimization, In proceeding of: The Eleventh International Conference on Computational Structures Technology, Dubrovnik, Croatia 4–7 September 2012