template<class BaseDerived, class Number>
Rodin::Variational::Pow<FunctionBase<BaseDerived>, Number> class final

Represents the power function.

This class represents the function $ f : \mathbb{R} \rightarrow \mathbb{R} $ defined by the exponentiation of a base value $ x \in \mathbb{R} $ to the power $ p $ : $ f(x) = x^p \ . $

Base classes

template<class Derived>
class RealFunctionBase<Pow<FunctionBase<BaseDerived>, Number>>
Base class for real-valued functions defined on a mesh.

Public types

using BaseType = FunctionBase<BaseDerived>
Type of base.
using ExponentType = Number
Type of exponent.
using Parent = RealFunctionBase<Pow<FunctionBase<BaseDerived>, Number>>
Parent class.

Constructors, destructors, conversion operators

Pow(const BaseType& s, ExponentType p) constexpr
Constructs the power object.

Public functions

auto copy() const -> Pow* override noexcept
Copies the object and returns a non-owning pointer to the copied object.

Function documentation

template<class BaseDerived, class Number>
Rodin::Variational::Pow<FunctionBase<BaseDerived>, Number><BaseDerived, Number>::Pow(const BaseType& s, ExponentType p) constexpr

Constructs the power object.

Parameters
in Base value
in Power

template<class BaseDerived, class Number>
Pow* Rodin::Variational::Pow<FunctionBase<BaseDerived>, Number><BaseDerived, Number>::copy() const override noexcept

Copies the object and returns a non-owning pointer to the copied object.

Returns Non-owning pointer to the copied object.