#include <Rodin/Variational/ProblemBody.h>
template<class Operator, class Vector, class Scalar>
ProblemBody class
Accumulated bilinear forms, linear forms and boundary conditions of a Problem.
Base classes
-
template<class Scalar>class ProblemBodyBase<Scalar>
- Base class representing the body of a variational problem.
Public types
- using VectorType = Vector
- Vector type of the linear system.
- using OperatorType = Operator
- Assembled operator type.
-
using VectorScalarType = typename FormLanguage::
Traits<std::remove_reference_t<VectorType>>:: ScalarType - Scalar value type of the vector.
-
using OperatorScalarType = typename FormLanguage::
Traits<std::remove_reference_t<OperatorType>>:: ScalarType - Scalar value type of the operator.
- using LinearFormBaseType = LinearFormBase<VectorType>
- Linear form base type.
- using BilinearFormBaseType = BilinearFormBase<OperatorType>
- Bilinear form base type.
-
using LinearFormBaseListType = FormLanguage::
List<LinearFormBaseType> - List type of linear forms.
-
using BilinearFormBaseListType = FormLanguage::
List<BilinearFormBaseType> - List type of bilinear forms.
- using LinearFormIntegratorBaseType = LinearFormIntegratorBase<VectorScalarType>
- Linear form integrator base type.
- using LocalBilinearFormIntegratorBaseType = LocalBilinearFormIntegratorBase<OperatorScalarType>
- Local bilinear form integrator base type.
- using GlobalBilinearFormIntegratorBaseType = GlobalBilinearFormIntegratorBase<OperatorScalarType>
- Global bilinear form integrator base type.
-
using LinearFormIntegratorBaseListType = FormLanguage::
List<LinearFormIntegratorBaseType> - List type of linear form integrators.
-
using LocalBilinearFormIntegratorBaseListType = FormLanguage::
List<LocalBilinearFormIntegratorBaseType> - List type of local bilinear form integrators.
-
using GlobalBilinearFormIntegratorBaseListType = FormLanguage::
List<GlobalBilinearFormIntegratorBaseType> - List type of global bilinear form integrators.
- using Parent = ProblemBodyBase<Scalar>
- Parent class type.
Constructors, destructors, conversion operators
- ProblemBody(const LocalBilinearFormIntegratorBaseType& bfi)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const GlobalBilinearFormIntegratorBaseType& bfi)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const LocalBilinearFormIntegratorBaseListType& bfis)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const GlobalBilinearFormIntegratorBaseListType& bfis)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const ProblemBody<OperatorType, void, Scalar>& pbo)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const BilinearFormBaseType& bf)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const ProblemBody<void, VectorType, Scalar>& pbv)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const ProblemBody<void, void, Scalar>& parent)
- Constructs the ProblemBody from the given arguments.
- ProblemBody(const ProblemBody& other)
- Copy constructor.
- ProblemBody(ProblemBody&& other)
- Move constructor.
Public functions
- auto operator=(const ProblemBody& other) -> ProblemBody&
- Copy assignment.
- auto operator=(ProblemBody&& other) -> ProblemBody&
- Move assignment.
- auto getLFs() -> LinearFormBaseListType&
- Gets the linear forms of the problem.
- auto getBFs() -> BilinearFormBaseListType&
- Gets the bilinear forms of the problem.
- auto getLFs() const -> const LinearFormBaseListType&
- Gets the linear forms of the problem.
- auto getBFs() const -> const BilinearFormBaseListType&
- Gets the bilinear forms of the problem.
- auto copy() const -> ProblemBody* override noexcept
- Polymorphically copies this problem body base.