17 #include "nlohmann/json.h" 25 virtual Real evaluate(
const std::vector<Real> &
x)
const override;
58 const std::vector<Real> &
x)
const;
64 void store(nlohmann::json & json)
const;
94 const std::vector<std::vector<unsigned int>> &
_tuple;
100 const std::vector<std::unique_ptr<const PolynomialQuadrature::Polynomial>> &
_poly;
virtual Real computeMean() const
Evaluate mean: = E[u].
dof_id_type _local_coeff_begin
Real computePartialDerivative(const std::vector< unsigned int > &dim, const std::vector< Real > &x) const
Evaluates sum of partial derivative of expansion.
std::size_t getNumberOfParameters() const
Access number of dimensions/parameters.
void store(nlohmann::json &json) const
dof_id_type _local_coeff_end
std::size_t getNumberofCoefficients() const
Number of terms in expansion.
const std::vector< double > x
const std::size_t & _ncoeff
Total number of coefficient (defined by size of _tuple)
const std::vector< std::vector< unsigned int > > & _tuple
A _ndim-by-_ncoeff matrix containing the appropriate one-dimensional polynomial order.
static InputParameters validParams()
virtual Real evaluate(const std::vector< Real > &x) const
Evaluate surrogate model given a row of parameters.
dof_id_type _n_local_coeff
Variables calculation and for looping over the computed coefficients in parallel. ...
Real computeDerivative(const unsigned int dim, const std::vector< Real > &x) const
Evaluates partial derivative of expansion: du(x)/dx_dim.
const std::vector< std::vector< unsigned int > > & getPolynomialOrders() const
Access polynomial orders from tuple /.
virtual Real evaluate(const std::vector< Real > &x) const override
Evaluate surrogate model given a row of parameters.
Real powerExpectation(const unsigned int n) const
Compute expectation of a certain power of the QoI: E[(u-)^n].
const std::vector< Real > & _coeff
These are the coefficients we are after in the PC expansion.
Real computeSobolIndex(const std::set< unsigned int > &ind) const
Computes Sobol sensitivities S_{i_1,i_2,...,i_s}, where ind = i_1,i_2,...,i_s.
Real computeSobolTotal(const unsigned int dim) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
unsigned int getPolynomialOrder(const unsigned int dim, const unsigned int i) const
const unsigned int & _order
Maximum polynomial order. The sum of 1D polynomial orders does not go above this value.
const InputParameters & parameters() const
const std::vector< Real > & getCoefficients() const
Access computed expansion coefficients.
PolynomialChaos(const InputParameters ¶meters)
virtual Real computeStandardDeviation() const
Evaluate standard deviation: = sqrt(E[(u-)^2])
void linearPartitionCoefficients() const
const std::vector< std::unique_ptr< const PolynomialQuadrature::Polynomial > > & _poly
The distributions used for sampling.
const unsigned int & _ndim
Total number of parameters/dimensions.
friend void to_json(nlohmann::json &json, const PolynomialChaos *const &pc)