hesseflux.functions.sa_test_functions¶
- Module provides test functions for parameter sensitivity analysis from
- Ishigami and Homma (1990) An importance qualification technique in uncertainty analysis for computer models,
- Proceedings of the isuma ‘90, First International Symposium on Uncertainty Modelling and Analysis, University of Maryland, Dec. 03 - Dec 05 1990, 398-403
- Oakley and O’Hagan (2004) Probabilistic sensitivity analysis of complex models: a Bayesian approach
- Statist. Soc. B 66, Part 3, 751-769.
- Morris (1991) Factorial sampling plans for preliminary computational experiments,
- Technometrics 33, 161-174.
Saltelli et al. (2008) Global Sensitivity Analysis. The Primer, John Wiley & Sons, pp. 292
- Saltelli et al. (2010) Variance based sensitivity analysis of model output, Design and estimator
- for the total sensitivity index, Comp. Phys. Comm. 181, 259-270.
- Sobol’ (1990), Sensitivity estimates for nonlinear mathematical models,
- Matematicheskoe Modelirovanie 2, 112-118 (in Russian), translated in English in Sobol’ (1993).
- Sobol’ (1993) Sensitivity analysis for non-linear mathematical models,
- Mathematical Modelling and Computational Experiment 1, 407-414, English translation of Russian original paper Sobol’ (1990).
- Current functions are:
B B of Saltelli et al. (2010)
G / g G-function attributed to Sobol’ (1990, 1993), given by Saltelli et al. (2008, 2010)
Gstar G* of Saltelli et al. (2010)
ishigami_homma Ishigami and Homma (1990), given by Saltelli et al. (2008, page 179)
K / bratley K of Saltelli et al. (2010)
fmorris / morris After Morris (1991)
- oakley_ohagan Oakley and O’Hagan (2004), parameters given in Saltelli et al. (2008)
- or on http://www.jeremy-oakley.staff.shef.ac.uk/psa_example.txt
This module was written by Matthias Cuntz & Juliane Mai while at Department of Computational Hydrosystems, Helmholtz Centre for Environmental Research - UFZ, Leipzig, Germany, and continued by Matthias Cuntz while at Institut National de Recherche pour l’Agriculture, l’Alimentation et l’Environnement (INRAE), Nancy, France.
Copyright (c) 2015-2020 Matthias Cuntz - mc (at) macu (dot) de Released under the MIT License; see LICENSE file for details.
- Written Mar 2015 by Matthias Cuntz (mc (at) macu (dot) de) & Juliane Mai
- Added functions to properly test PAWN method: linear, product, ratio, and ishigami_homma_easy, Dec 2017, Juliane Mai
- Provide morris function under the name fmorris and the K function under the name bratley, Nov 2019, Matthias Cuntz
- Changed to Sphinx docstring and numpydoc, Dec 2019, Matthias Cuntz
- Distinguish iterable and array_like parameter types, Jan 2020, Matthias Cuntz
The following functions are provided:
B (X) |
B function, Saltelli et al. |
g (X, a) |
G-function |
G (X, a) |
G-function |
Gstar (X, alpha, delta, a) |
G* example, Saltelli et al. |
K (X) |
K example, Saltelli et al. |
bratley (*args) |
K example, Saltelli et al. |
fmorris (X, beta0, beta1, beta2, beta3, beta4) |
Morris-function, Morris (1991) Technometrics 33, 161-174 |
morris (*args) |
Morris-function, Morris (1991) Technometrics 33, 161-174 |
oakley_ohagan (X) |
Oakley and O’Hagan (2004) J. |
ishigami_homma (X, a, b) |
Ishigami and Homma (1990), given by Saltelli et al. |
linear (X, a, b) |
Linear test function to test PAWN method: |
product (X) |
Product test function to test PAWN method: |
ratio (X) |
Ratio test function: |
ishigami_homma_easy (X) |
Simplified Ishigami and Homma function to test PAWN method: |
-
B
(X)[source]¶ B function, Saltelli et al. (2010) Comp. Phys. Comm. 181, p. 259-270
Parameters: X (array_like) – (nX,) or (nX,npoints) array of floats Returns: B – float or (npoints,) floats of B function values at X Return type: float or ndarray
-
g
(X, a)[source]¶ G-function
Sobol’ (1990) Matematicheskoe Modelirovanie 2, 112-118 (in Russian)
Sobol’ (1993) Mathematical Modelling and Computational Experiment 1, 407-414 (English translation)
Parameters: - X (array_like) – (nX,) or (nX,npoints) array of floats
- a (array_like) – (nX,) array of floats
Returns: G – float or (npoints,) floats of G function values at X with parameters a
Return type: float or ndarray
-
G
(X, a)[source]¶ G-function
Sobol’ (1990) Matematicheskoe Modelirovanie 2, 112-118 (in Russian)
Sobol’ (1993) Mathematical Modelling and Computational Experiment 1, 407-414 (English translation)
Parameters: - X (array_like) – (nX,) or (nX,npoints) array of floats
- a (array_like) – (nX,) array of floats
Returns: g – float or (npoints,) floats of G function values at X with parameters a
Return type: float or ndarray
-
Gstar
(X, alpha, delta, a)[source]¶ G* example, Saltelli et al. (2010) Comp. Phys. Comm., 181, p. 259-270
Parameters: - X (array_like) – (nX,) or (nX,npoints) array of floats
- alpha (array_like) – (nX,) array of floats
- delta (array_like) – (nX,) array of floats
- a (array_like) – (nX,) array of floats
Returns: G* – float or (npoints,) floats of G* function values at X with parameters alpha, delta and a
Return type: float or ndarray
-
K
(X)[source]¶ K example, Saltelli et al. (2010) Comp. Phys. Comm., 181, p. 259-270
Parameters: X (array_like) – (nX,) or (nX,npoints) array of floats Returns: K – float or (npoints,) floats of K function values at X Return type: float or ndarray
-
bratley
(*args)[source]¶ K example, Saltelli et al. (2010) Comp. Phys. Comm., 181, p. 259-270
Parameters: X (array_like) – (nX,) or (nX,npoints) array of floats Returns: bratley – float or (npoints,) floats of K function values at X Return type: float or ndarray
-
fmorris
(X, beta0, beta1, beta2, beta3, beta4)[source]¶ Morris-function, Morris (1991) Technometrics 33, 161-174
Parameters: - X (array_like) – (20,) or (20,npoints) array of floats
- beta0 (float) – float
- beta1 (array_like) – (20,) array of floats
- beta2 (array_like) – (20,20) array of floats
- beta3 (array_like) – (20,20,20) array of floats
- beta4 (array_like) – (20,20,20,20) array of floats
Returns: fmorris – float or (npoints,) floats of Morris function values at X with parameters beta0-beta4
Return type: float or ndarray
-
morris
(*args)[source]¶ Morris-function, Morris (1991) Technometrics 33, 161-174
Parameters: - X (array_like) – (20,) or (20,npoints) array of floats
- beta0 (float) – float
- beta1 (array_like) – (20,) array of floats
- beta2 (array_like) – (20,20) array of floats
- beta3 (array_like) – (20,20,20) array of floats
- beta4 (array_like) – (20,20,20,20) array of floats
Returns: morris – float or (npoints,) floats of Morris function values at X with parameters beta0-beta4
Return type: float or ndarray
-
oakley_ohagan
(X)[source]¶ Oakley and O’Hagan (2004) J. R. Statist. Soc. B 66, Part 3, 751-769
Parameters: X (array_like) – (15,) or (15,npoints) array of floats Returns: oakley_ohagan – float or (npoints,) floats of Oakley and O’Hagan function values at X Return type: float or ndarray
-
ishigami_homma
(X, a, b)[source]¶ Ishigami and Homma (1990), given by Saltelli et al. (2008, page 179)
Parameters: - X (array_like) – (3,) or (3,npoints) array of floats
- a (array_like) – float or (npoints,) array of floats
- b (array_like) – float or (npoints,) array of floats
Returns: ishigami_homma – float or (npoints,) floats of Ishigami and Homma function values at X with parameters a and b
Return type: float or ndarray
-
linear
(X, a, b)[source]¶ Linear test function to test PAWN method:
Y = a*X + bParameters: - X (array_like) – (1,) or (1,npoints) array of floats
- a (array_like) – float or (npoints,) array of floats
- b (array_like) – float or (npoints,) array of floats
Returns: linear – float or (npoints,) floats of linear function values at X with parameters a and b
Return type: float or ndarray
-
product
(X)[source]¶ Product test function to test PAWN method:
Y = X[0] * X[1]Parameters: X (array_like) – (2,) or (2,npoints) array of floats Returns: product – float or (npoints,) floats of product function values at X Return type: float or ndarray
-
ratio
(X)[source]¶ Ratio test function:
Y = X[0] / X[1]Simple nonlinear model proposed by Liu et al. (2006):
Liu, H., Sudjianto, A., Chen, W., 2006. Relative entropy based method for probabilistic sensitivity analysis in engineering design. J. Mech. Des. 128, 326-336.Used by Pianosi & Wagener, Environmental Modelling & Software (2015)
Pianosi, F. & Wagener T., 2015 A simple and efficient method for global sensitivity analysis based on cumulative distribution functions. Environmental Modelling & Software 67, 1-11.Parameters: X (array_like) – (2,) or (2,npoints) array of floats Returns: ratio – float or (npoints,) floats of ratio function values at X Return type: float or ndarray
-
ishigami_homma_easy
(X)[source]¶ Simplified Ishigami and Homma function to test PAWN method:
Y = sin(X[0]) + X[1]with X[0],X[1] ~ Uniform[-Pi,Pi]
Parameters: X (array_like) – (2,) or (2,npoints) array of floats Returns: ishigami_homma_easy – float or (npoints,) floats of simplified Ishigami and Homma function values at X Return type: float or ndarray