Polynomial Bases
The PolynomialBasis class is imported using the following command:
>>> from UQpy.surrogates.polynomial_chaos.polynomials.baseclass.PolynomialBasis import PolynomialBasis
- class PolynomialBasis(inputs_number, polynomials_number, multi_index_set, polynomials, distributions)[source]
Create polynomial basis for a given multi index set.
TotalDegreeBasis Class
The TotalDegreeBasis class is imported using the following command:
>>> from UQpy.surrogates.polynomial_chaos.polynomials.TotalDegreeBasis import TotalDegreeBasis
- class TotalDegreeBasis(distributions, max_degree, hyperbolic=1)[source]
Create total-degree polynomial basis. The size is equal to
(total_degree+n_inputs)!/(total_degree!*n_inputs!)(polynomial complexity).- Parameters:
distributions (
Union[Distribution,list[Distribution]]) – List of univariate distributions.max_degree (
int) – Maximum polynomial degree of the 1D chaos polynomials.hyperbolic (
float) – Parameter of hyperbolic truncation reducing interaction terms <0,1>
TensorProductBasis Class
The TensorProductBasis class is imported using the following command:
>>> from UQpy.surrogates.polynomial_chaos.polynomials.TensorProductBasis import TensorProductBasis
- class TensorProductBasis(distributions, max_degree)[source]
Create tensor-product polynomial basis. The size is equal to
(max_degree+1)**n_inputs(exponential complexity).- Parameters:
distributions (
Union[Distribution,list[Distribution]]) – List of univariate distributions.max_degree (
int) – Maximum polynomial degree of the 1D chaos polynomials.
HyperbolicBasis Class
According to effect-of-sparsity, it is often beneficial to neglect higher-order interaction terms in basis set using hyperbolic truncation [70].
The selection of a reducing parameter \(q=1\) corresponds to the total-degree truncation scheme according to and, for \(q<1\), terms representing higher-order interactions are eliminated. Such an approach leads to a~dramatic reduction in the cardinality of the truncated set for high total polynomial orders \(p\) and high input dimensions \(M\). Set of basis functions \(\mathcal{A}\) defined by multi-indices \(\alpha\) is obtained as:
The HyperbolicBasis class is imported using the following command:
>>> from UQpy.surrogates.polynomial_chaos.polynomials.HyperbolicBasis import HyperbolicBasis
- class HyperbolicBasis(distributions, max_degree, hyperbolic=1)[source]
Create hyperbolic set from total-degree polynomial basis set.
- Parameters:
distributions (
Union[Distribution,list[Distribution]]) – List of univariate distributions.max_degree (
int) – Maximum polynomial degree of the 1D chaos polynomials.hyperbolic (
float) – Parameter of hyperbolic truncation reducing interaction terms <0,1>