This class constructs a functional expansion using a separate series for each Cartesian dimension. More...
#include <Cartesian.h>
Public Member Functions | |
Cartesian (const std::string &who_is_using_me) | |
Cartesian (const std::vector< MooseEnum > &domain, const std::vector< std::size_t > &order, const std::vector< MooseEnum > &series_types, const std::string &who_is_using_me, MooseEnum expansion_type, MooseEnum generation_type) | |
virtual void | setPhysicalBounds (const std::vector< Real > &bounds) final |
Sets the bounds of the series. More... | |
virtual const std::vector< Real > & | getStandardizedFunctionLimits () const final |
Returns a vector of the lower and upper bounds of the standard functional space. More... | |
virtual Real | getStandardizedFunctionVolume () const final |
Returns the volume within the standardized function local_limits. More... | |
virtual bool | isCacheInvalid () const final |
Whether the cached values correspond to the current point. More... | |
virtual bool | isInPhysicalBounds (const Point &point) const final |
Determines if the point provided is in within the physical bounds. More... | |
virtual void | setLocation (const Point &p) final |
Set the location that will be used by the series to compute values. More... | |
virtual void | setOrder (const std::vector< std::size_t > &orders) final |
Set the order of the series. More... | |
std::vector< Real > | combineStandardizedFunctionLimits () const |
Get the function limits by looping over each of the single series. More... | |
void | setNumberOfTerms () |
Initialize the number of terms in the composite series by looping over the single series. More... | |
virtual void | formatCoefficients (std::ostream &stream, const std::vector< Real > &coefficients) const |
Appends a tabulated form of the coefficients to the stream. More... | |
Real | operator[] (std::size_t index) const |
Returns the current evaluation at the given index. More... | |
const std::vector< Real > & | getAllGeneration () |
Returns an array reference containing the value of each generation term. More... | |
const std::vector< Real > & | getAllExpansion () |
Returns an array reference containing the value of each expansion term. More... | |
std::size_t | getNumberOfTerms () const |
Returns the number of terms in the series. More... | |
Real | getGeneration () |
Gets the last term of the generation functional basis. More... | |
Real | getGenerationSeriesSum () |
Gets the sum of all terms in the generation functional basis. More... | |
Real | getExpansion () |
Gets the #_order-th term of the expansion functional basis. More... | |
Real | getExpansionSeriesSum () |
Evaluates the sum of all terms in the expansion functional basis up to #_order. More... | |
bool | isGeneration () const |
Returns true if the current evaluation is generation. More... | |
bool | isExpansion () const |
Returns true if the current evaluation is expansion. More... | |
Static Public Attributes | |
static MooseEnum | _domain_options |
An enumeration of the domains available to each functional series. More... | |
Protected Member Functions | |
virtual void | evaluateGeneration () final |
Evaluate the generation form of the functional basis. More... | |
virtual void | evaluateExpansion () final |
Evaluate the expansion form of the functional basis. More... | |
void | evaluateSeries (const std::vector< std::vector< Real >> &single_series_basis_evaluations) |
Evaluates the values of _basis_evaluation for either evaluateGeneration() or evaluateExpansion() More... | |
virtual void | clearBasisEvaluation (const unsigned int &number_of_terms) |
Set all entries of the basis evaluation to zero. More... | |
Real | load (std::size_t index) const |
Helper function to load a value from #_series. More... | |
void | save (std::size_t index, Real value) |
Helper function to store a value in #_series. More... | |
Protected Attributes | |
std::vector< MooseEnum > | _series_types |
The series types in this composite series. More... | |
std::vector< std::unique_ptr< SingleSeriesBasisInterface > > | _series |
A pointer to the single series type (one for each entry in _domains) More... | |
const std::string & | _who_is_using_me |
The name of the MooseObject that is using this class. More... | |
unsigned int | _number_of_terms |
The number of terms in the series. More... | |
This class constructs a functional expansion using a separate series for each Cartesian dimension.
1D, 2D, and 3D domains are supported.
Definition at line 18 of file Cartesian.h.
Cartesian::Cartesian | ( | const std::string & | who_is_using_me | ) |
Definition at line 15 of file Cartesian.C.
Cartesian::Cartesian | ( | const std::vector< MooseEnum > & | domain, |
const std::vector< std::size_t > & | order, | ||
const std::vector< MooseEnum > & | series_types, | ||
const std::string & | who_is_using_me, | ||
MooseEnum | expansion_type, | ||
MooseEnum | generation_type | ||
) |
Definition at line 20 of file Cartesian.C.
|
protectedvirtualinherited |
Set all entries of the basis evaluation to zero.
Definition at line 145 of file FunctionalBasisInterface.C.
Referenced by FunctionalBasisInterface::getAllExpansion(), FunctionalBasisInterface::getAllGeneration(), CompositeSeriesBasisInterface::setNumberOfTerms(), and SingleSeriesBasisInterface::setOrder().
|
inherited |
Get the function limits by looping over each of the single series.
Definition at line 135 of file CompositeSeriesBasisInterface.C.
Referenced by CompositeSeriesBasisInterface::getStandardizedFunctionLimits().
|
finalprotectedvirtualinherited |
Evaluate the expansion form of the functional basis.
Implements FunctionalBasisInterface.
Definition at line 101 of file CompositeSeriesBasisInterface.C.
|
finalprotectedvirtualinherited |
Evaluate the generation form of the functional basis.
Implements FunctionalBasisInterface.
Definition at line 44 of file CompositeSeriesBasisInterface.C.
|
protectedinherited |
Evaluates the values of _basis_evaluation for either evaluateGeneration() or evaluateExpansion()
Definition at line 59 of file CompositeSeriesBasisInterface.C.
Referenced by CompositeSeriesBasisInterface::evaluateExpansion(), and CompositeSeriesBasisInterface::evaluateGeneration().
|
virtualinherited |
Appends a tabulated form of the coefficients to the stream.
Definition at line 150 of file CompositeSeriesBasisInterface.C.
|
inherited |
Returns an array reference containing the value of each expansion term.
Definition at line 73 of file FunctionalBasisInterface.C.
Referenced by FunctionalBasisInterface::getExpansion(), and FunctionalBasisInterface::getExpansionSeriesSum().
|
inherited |
Returns an array reference containing the value of each generation term.
Definition at line 57 of file FunctionalBasisInterface.C.
Referenced by FunctionalBasisInterface::getGeneration(), and FunctionalBasisInterface::getGenerationSeriesSum().
|
inherited |
Gets the #_order-th term of the expansion functional basis.
Definition at line 114 of file FunctionalBasisInterface.C.
|
inherited |
Evaluates the sum of all terms in the expansion functional basis up to #_order.
Definition at line 121 of file FunctionalBasisInterface.C.
Referenced by TEST().
|
inherited |
Gets the last term of the generation functional basis.
Definition at line 95 of file FunctionalBasisInterface.C.
|
inherited |
Gets the sum of all terms in the generation functional basis.
Definition at line 102 of file FunctionalBasisInterface.C.
Referenced by TEST().
|
inherited |
Returns the number of terms in the series.
Definition at line 89 of file FunctionalBasisInterface.C.
Referenced by Legendre::evaluateSqrtMu(), and TEST().
|
finalvirtualinherited |
Returns a vector of the lower and upper bounds of the standard functional space.
Implements FunctionalBasisInterface.
Definition at line 116 of file CompositeSeriesBasisInterface.C.
|
finalvirtualinherited |
Returns the volume within the standardized function local_limits.
Implements FunctionalBasisInterface.
Definition at line 124 of file CompositeSeriesBasisInterface.C.
|
finalvirtualinherited |
Whether the cached values correspond to the current point.
Implements FunctionalBasisInterface.
Definition at line 220 of file CompositeSeriesBasisInterface.C.
|
inherited |
Returns true if the current evaluation is expansion.
Definition at line 51 of file FunctionalBasisInterface.C.
Referenced by FunctionalBasisInterface::getAllGeneration().
|
inherited |
Returns true if the current evaluation is generation.
Definition at line 45 of file FunctionalBasisInterface.C.
Referenced by FunctionalBasisInterface::getAllExpansion().
|
finalvirtualinherited |
Determines if the point provided is in within the physical bounds.
Implements FunctionalBasisInterface.
Definition at line 234 of file CompositeSeriesBasisInterface.C.
|
protectedinherited |
Helper function to load a value from _series.
Definition at line 133 of file FunctionalBasisInterface.C.
Referenced by Legendre::evaluateOrthonormal(), Zernike::evaluateOrthonormal(), Legendre::evaluateSqrtMu(), Zernike::evaluateSqrtMu(), Legendre::evaluateStandard(), Zernike::evaluateStandard(), and Zernike::fillOutNegativeRankAndApplyAzimuthalComponent().
|
inherited |
Returns the current evaluation at the given index.
Definition at line 39 of file FunctionalBasisInterface.C.
Helper function to store a value in _series.
Definition at line 139 of file FunctionalBasisInterface.C.
Referenced by Legendre::evaluateOrthonormal(), Zernike::evaluateOrthonormal(), CompositeSeriesBasisInterface::evaluateSeries(), Legendre::evaluateSqrtMu(), Zernike::evaluateSqrtMu(), Legendre::evaluateStandard(), Zernike::evaluateStandard(), and Zernike::fillOutNegativeRankAndApplyAzimuthalComponent().
|
finalvirtualinherited |
Set the location that will be used by the series to compute values.
Implements FunctionalBasisInterface.
Definition at line 287 of file CompositeSeriesBasisInterface.C.
Referenced by TEST().
|
inherited |
Initialize the number of terms in the composite series by looping over the single series.
Definition at line 248 of file CompositeSeriesBasisInterface.C.
Referenced by Cartesian(), CylindricalDuo::CylindricalDuo(), and CompositeSeriesBasisInterface::setOrder().
|
finalvirtualinherited |
Set the order of the series.
Implements FunctionalBasisInterface.
Definition at line 266 of file CompositeSeriesBasisInterface.C.
Sets the bounds of the series.
Implements FunctionalBasisInterface.
Definition at line 48 of file Cartesian.C.
|
staticinherited |
An enumeration of the domains available to each functional series.
Definition at line 114 of file FunctionalBasisInterface.h.
Referenced by FunctionSeries::FunctionSeries(), SingleSeriesBasisInterface::SingleSeriesBasisInterface(), and TEST().
|
protectedinherited |
The number of terms in the series.
Definition at line 143 of file FunctionalBasisInterface.h.
Referenced by FunctionalBasisInterface::getAllExpansion(), FunctionalBasisInterface::getAllGeneration(), FunctionalBasisInterface::getNumberOfTerms(), CompositeSeriesBasisInterface::setNumberOfTerms(), and SingleSeriesBasisInterface::setOrder().
|
protectedinherited |
A pointer to the single series type (one for each entry in _domains)
Definition at line 79 of file CompositeSeriesBasisInterface.h.
Referenced by Cartesian(), CompositeSeriesBasisInterface::combineStandardizedFunctionLimits(), CompositeSeriesBasisInterface::CompositeSeriesBasisInterface(), CylindricalDuo::CylindricalDuo(), CompositeSeriesBasisInterface::evaluateExpansion(), CompositeSeriesBasisInterface::evaluateGeneration(), CompositeSeriesBasisInterface::evaluateSeries(), CompositeSeriesBasisInterface::formatCoefficients(), CompositeSeriesBasisInterface::getStandardizedFunctionVolume(), CompositeSeriesBasisInterface::isCacheInvalid(), CompositeSeriesBasisInterface::isInPhysicalBounds(), CompositeSeriesBasisInterface::setLocation(), CompositeSeriesBasisInterface::setNumberOfTerms(), CompositeSeriesBasisInterface::setOrder(), CylindricalDuo::setPhysicalBounds(), and setPhysicalBounds().
|
protectedinherited |
The series types in this composite series.
Definition at line 76 of file CompositeSeriesBasisInterface.h.
Referenced by Cartesian(), CompositeSeriesBasisInterface::CompositeSeriesBasisInterface(), CylindricalDuo::CylindricalDuo(), CompositeSeriesBasisInterface::formatCoefficients(), and setPhysicalBounds().
|
protectedinherited |
The name of the MooseObject that is using this class.
Definition at line 82 of file CompositeSeriesBasisInterface.h.
Referenced by CompositeSeriesBasisInterface::CompositeSeriesBasisInterface(), and CompositeSeriesBasisInterface::setOrder().