Line data Source code
1 : //* This file is part of the MOOSE framework 2 : //* https://mooseframework.inl.gov 3 : //* 4 : //* All rights reserved, see COPYRIGHT for full restrictions 5 : //* https://github.com/idaholab/moose/blob/master/COPYRIGHT 6 : //* 7 : //* Licensed under LGPL 2.1, please see LICENSE for details 8 : //* https://www.gnu.org/licenses/lgpl-2.1.html 9 : 10 : #pragma once 11 : 12 : #include "CompositeSeriesBasisInterface.h" 13 : 14 : /** 15 : * This class constructs a functional expansion using a separate series for each Cartesian 16 : * dimension. 1D, 2D, and 3D domains are supported. 17 : */ 18 3 : class Cartesian final : public CompositeSeriesBasisInterface 19 : { 20 : public: 21 : Cartesian(const std::string & who_is_using_me); 22 : Cartesian(const std::vector<MooseEnum> & domain, 23 : const std::vector<std::size_t> & order, 24 : const std::vector<MooseEnum> & series_types, 25 : const std::string & who_is_using_me, 26 : MooseEnum expansion_type, 27 : MooseEnum generation_type); 28 : 29 : // Overrides from FunctionalBasisInterface 30 : virtual void setPhysicalBounds(const std::vector<Real> & bounds) final; 31 : };