Rodin/Variational/Mult.h file

Multiplication operations for functions, shape functions, and integrators.

Provides operator* overloads for computing products between functions, shape functions, numbers, and integrators. Supports:

  • Scalar × function/shape function
  • Function × function (scalar, vector, or matrix products)
  • Function × shape function (left or right multiplication)
  • Number × integrator (scaling)

For functions $ f $ and $ g $ :

\[ (f \cdot g)(x) = f(x) \cdot g(x) \]

Namespaces

namespace Rodin
The Rodin library for Shape and Topology Optimization.
namespace Rodin::FormLanguage
Module for writing high level abstract expressions.
namespace Rodin::Variational
Module which provides the necessary tools for constructing variational problems.

Classes

template<class LHSDerived, class RHSDerived>
class Rodin::Variational::Mult<FunctionBase<LHSDerived>, FunctionBase<RHSDerived>>
Multiplication of two FunctionBase instances.
template<class LHSDerived, class RHSDerived, class FES, ShapeFunctionSpaceType Space>
class Rodin::Variational::Mult<FunctionBase<LHSDerived>, ShapeFunctionBase<RHSDerived, FES, Space>>
Left Multiplication of a ShapeFunctionBase by a FunctionBase.
template<class LHSDerived, class RHSDerived, class FES, ShapeFunctionSpaceType Space>
class Rodin::Variational::Mult<ShapeFunctionBase<LHSDerived, FES, Space>, FunctionBase<RHSDerived>>
Right multiplication of a ShapeFunctionBase by a FunctionBase.