www.mooseframework.org
Functions
FunctionSeries.C File Reference

Go to the source code of this file.

Functions

 registerMooseObject ("FunctionalExpansionToolsApp", FunctionSeries)
 
template<>
InputParameters validParams< FunctionSeries > ()
 
std::ostream & operator<< (std::ostream &stream, const FunctionSeries &me)
 

Function Documentation

◆ operator<<()

std::ostream& operator<< ( std::ostream &  stream,
const FunctionSeries me 
)

Definition at line 278 of file FunctionSeries.C.

279 {
280  stream << "\n\n"
281  << "FunctionSeries: " << me.name() << "\n"
282  << " Terms: " << me.getNumberOfTerms() << "\n";
283  me._series_type->formatCoefficients(stream, me._coefficients);
284  stream << "\n\n";
285 
286  return stream;
287 }

◆ registerMooseObject()

registerMooseObject ( "FunctionalExpansionToolsApp"  ,
FunctionSeries   
)

◆ validParams< FunctionSeries >()

template<>
InputParameters validParams< FunctionSeries > ( )

Definition at line 21 of file FunctionSeries.C.

22 {
23  InputParameters params = validParams<MutableCoefficientsFunctionInterface>();
24 
25  params.addClassDescription("This function uses a convolution of functional series (functional "
26  "expansion or FX) to create a 1D, 2D, or 3D function");
27 
28  // The available composite series types.
29  // Cartesian: 1D, 2D, or 3D, depending on which of x, y, and z are present
30  // CylindricalDuo: planar disc expansion and axial expansion
31  MooseEnum series_types("Cartesian CylindricalDuo");
32  MooseEnum single_series_types_1D("Legendre");
33  MooseEnum single_series_types_2D("Zernike");
34 
35  params.addRequiredParam<MooseEnum>(
36  "series_type", series_types, "The type of function series to construct.");
37 
38  /*
39  * This needs to use `unsigned int` instead of `std::size_t` because otherwise MOOSE errors at
40  * runtime
41  */
42  params.addRequiredParam<std::vector<unsigned int>>("orders",
43  "The order of each series. These must be "
44  "defined as \"x y z\" for Cartesian, and \"z "
45  "disc\" for CylindricalDuo.");
46 
47  params.addParam<std::vector<Real>>("physical_bounds",
48  "The physical bounds of the function series. These must be "
49  "defined as \"x_min x_max y_min y_max z_min z_max\" for "
50  "Cartesian, and \"axial_min axial_max disc_center1 "
51  "disc_center2 radius\" for CylindricalDuo");
52 
53  params.addParam<MooseEnum>("x", single_series_types_1D, "The series to use for the x-direction.");
54  params.addParam<MooseEnum>("y", single_series_types_1D, "The series to use for the y-direction.");
55  params.addParam<MooseEnum>("z", single_series_types_1D, "The series to use for the z-direction.");
56 
57  params.addParam<MooseEnum>("disc",
59  "The series to use for the disc. Its direction is determined by "
60  "orthogonality to the declared direction of the axis.");
61 
62  std::string normalization_types = "orthonormal sqrt_mu standard";
63  MooseEnum expansion_type(normalization_types, "standard");
64  MooseEnum generation_type(normalization_types, "orthonormal");
65  params.addParam<MooseEnum>("expansion_type",
67  "The normalization used for expansion of the basis functions");
68  params.addParam<MooseEnum>(
69  "generation_type",
71  "The normalization used for generation of the basis function coefficients");
72  return params;
73 }
single_series_types_1D
MooseEnum single_series_types_1D
FunctionSeries::getNumberOfTerms
std::size_t getNumberOfTerms() const
Returns the number of terms (coefficients) in the underlying function series.
Definition: FunctionSeries.C:199
FunctionSeries::_series_type
std::unique_ptr< CompositeSeriesBasisInterface > _series_type
Stores a pointer to the functional series object.
Definition: FunctionSeries.h:98
expansion_type
MooseEnum expansion_type
MutableCoefficientsInterface::_coefficients
std::vector< Real > & _coefficients
The coefficient array.
Definition: MutableCoefficientsInterface.h:113
single_series_types_2D
MooseEnum single_series_types_2D
generation_type
MooseEnum generation_type
validParams< MutableCoefficientsFunctionInterface >
InputParameters validParams< MutableCoefficientsFunctionInterface >()
Definition: MutableCoefficientsFunctionInterface.C:14