UQTestFuns API Reference Guide#
This reference guide contains a detailed description of the most important elements of the UQTestFuns package.
To make sense of how the objects in UQTestFuns are organized, let’s start from the top, the built-in test functions:
Each of the built-in UQ test functions is a concrete implementation of the abstract base classes: UQTestFunFixDimABC (for UQ test functions with fixed dimension) or UQTestFunVarDimABC (for UQ test functions with variable dimension).
Both of those abstract classes are derived from UQTestFunABC. This base class, in turn, is derived from UQTestFunBareABC). Therefore, all the instances share the same underlying interfaces. In particular, all instances share, among other things, the
evaluate()method, theprob_inputproperty, and theparametersproperty [1].The
prob_inputproperty stores the underlying probabilistic input model of the instance. This in turn is represented by the ProbInput class. In principle, an instance of the class is a multivariate random variable that represents the input of an uncertainty quantification (UQ) test function.An instance of the
ProbInputclass consists mainly of the one-dimensional marginals and a copula specification (not yet supported). Each one-dimensional marginal comes is represented by the Marginal class.An instance of the
Marginalclass has a (parametric) probability distribution. Although different instances may have different probability distributions, they are all instances of the same class.
Note
To facilitate the creation of a custom UQ test function in runtime or within a running Python session, UQTestFuns also includes the concrete UQTestFun class. You can see the usage here.
Additionally, there is currently one top-level convenient function used to list all available built-in functions. The function can return both a table on the terminal or a list of constructors ready to be called.