Rodin/Variational/Sum.h file

Addition operation for functions, shape functions, and form integrators.

Namespaces

namespace Rodin
The Rodin library for finite element methods and shape optimization.
namespace Rodin::FormLanguage
Namespace Rodin::FormLanguage.
namespace Rodin::Variational
Namespace Rodin::Variational.

Classes

template<class LHSDerived, class RHSDerived>
struct Rodin::FormLanguage::Traits<Variational::Sum<Variational::FunctionBase<LHSDerived>, Variational::FunctionBase<RHSDerived>>>
Type traits for Sum over a function expression: exposes the left-hand side operand and the right-hand side operand.
template<class LHSDerived, class RHSDerived, class FES, Variational::ShapeFunctionSpaceType Space>
struct Rodin::FormLanguage::Traits<Variational::Sum<Variational::ShapeFunctionBase<LHSDerived, FES, Space>, Variational::ShapeFunctionBase<RHSDerived, FES, Space>>>
Type traits for Sum over a shape function: exposes the finite element space, the left-hand side operand, the right-hand side operand and the shape function space.
template<class LHSNumber, class RHSNumber>
struct Rodin::FormLanguage::Traits<Variational::Sum<Variational::LinearFormIntegratorBase<LHSNumber>, Variational::LinearFormIntegratorBase<RHSNumber>>>
Type traits for Sum over linear form integrators: exposes the left-hand side operand, the right-hand side operand and the scalar type.
template<class LHSDerived, class RHSDerived>
class Rodin::Variational::Sum<FunctionBase<LHSDerived>, FunctionBase<RHSDerived>>
Addition of two functions.
template<class LHSDerived, class RHSDerived, class FES, ShapeFunctionSpaceType Space>
class Rodin::Variational::Sum<ShapeFunctionBase<LHSDerived, FES, Space>, ShapeFunctionBase<RHSDerived, FES, Space>>
Addition of two shape functions.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<LinearFormIntegratorBase<LHSNumber>, LinearFormIntegratorBase<RHSNumber>>
Sum expression.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<LinearFormIntegratorBase<LHSNumber>, FormLanguage::List<LinearFormIntegratorBase<RHSNumber>>>
Sum of a linear form integrator and a list of them.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<FormLanguage::List<LinearFormIntegratorBase<LHSNumber>>, LinearFormIntegratorBase<RHSNumber>>
Sum of a list of linear form integrators and a single one.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<FormLanguage::List<LinearFormIntegratorBase<LHSNumber>>, FormLanguage::List<LinearFormIntegratorBase<RHSNumber>>>
Sum of two lists of linear form integrators.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<LocalBilinearFormIntegratorBase<LHSNumber>, LocalBilinearFormIntegratorBase<RHSNumber>>
Sum expression.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<LocalBilinearFormIntegratorBase<LHSNumber>, FormLanguage::List<LocalBilinearFormIntegratorBase<RHSNumber>>>
Sum of a bilinear form integrator and a list of them.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<FormLanguage::List<LocalBilinearFormIntegratorBase<LHSNumber>>, LocalBilinearFormIntegratorBase<RHSNumber>>
Sum of a list of bilinear form integrators and a single one.
template<class LHSNumber, class RHSNumber>
class Rodin::Variational::Sum<FormLanguage::List<LocalBilinearFormIntegratorBase<LHSNumber>>, FormLanguage::List<LocalBilinearFormIntegratorBase<RHSNumber>>>
Sum of two lists of bilinear form integrators.
template<class Operator>
class Rodin::Variational::Sum<BilinearFormBase<Operator>, BilinearFormBase<Operator>>
Sum expression.