16#include "libmesh/point.h"
29 std::vector<MooseEnum> series_types,
30 const std::string & who_is_using_me);
46 virtual
void setOrder(const
std::vector<
std::
size_t> & orders) final;
62 const
std::vector<Real> & coefficients) const;
This class is the basis for constructing a composite—or convolved—functional series by combining mult...
virtual void setOrder(const std::vector< std::size_t > &orders) final
Set the order of the series.
bool _is_cache_invalid
indicates if the evaluated values correspond to the current location
void evaluateSeries(const std::vector< std::vector< Real > > &single_series_basis_evaluations)
Evaluates the values of _basis_evaluation for either evaluateGeneration() or evaluateExpansion()
virtual void evaluateExpansion() final
Evaluate the expansion form of the functional basis.
std::vector< std::unique_ptr< SingleSeriesBasisInterface > > _series
A pointer to the single series type (one for each entry in _domains)
virtual void setLocation(const Point &p) final
Set the location that will be used by the series to compute values.
virtual Real getStandardizedFunctionVolume() const final
Returns the volume within the standardized function local_limits.
virtual ~CompositeSeriesBasisInterface()
virtual void evaluateGeneration() final
Evaluate the generation form of the functional basis.
CompositeSeriesBasisInterface & operator=(CompositeSeriesBasisInterface &&)=delete
Point _previous_point
The previous point at which the series was evaluated.
CompositeSeriesBasisInterface(CompositeSeriesBasisInterface &&)=delete
virtual const std::vector< Real > & getStandardizedFunctionLimits() const final
Returns a vector of the lower and upper bounds of the standard functional space.
virtual void formatCoefficients(std::ostream &stream, const std::vector< Real > &coefficients) const
Appends a tabulated form of the coefficients to the stream.
CompositeSeriesBasisInterface(const CompositeSeriesBasisInterface &)=delete
std::vector< MooseEnum > _series_types
The series types in this composite series.
virtual bool isInPhysicalBounds(const Point &point) const final
Determines if the point provided is in within the physical bounds.
virtual void clearBasisEvaluation(const unsigned int &number_of_terms)
Set all entries of the basis evaluation to zero.
void setNumberOfTerms()
Initialize the number of terms in the composite series by looping over the single series.
const std::string & _who_is_using_me
The name of the MooseObject that is using this class.
std::vector< Real > combineStandardizedFunctionLimits() const
Get the function limits by looping over each of the single series.
void operator=(const CompositeSeriesBasisInterface &)=delete
virtual bool isCacheInvalid() const final
Whether the cached values correspond to the current point.
This class provides the basis for any custom functional basis, and is the parent class of both Single...
This class is a simple wrapper around FunctionalBasisInterface, and intended for use by any single fu...