CEPS  24.01
Cardiac ElectroPhysiology Simulator
Monomial< _ArgsDim > Class Template Reference

Detailed Description

template<CepsUInt _ArgsDim>
class Monomial< _ArgsDim >

A class that describes a monomial of N variables It contains exponents and coefficients for each dimension of variables.

Template Parameters
_ArgsDimthe number of arguments (dimensionality of domain definition)

Definition at line 40 of file CepsPolynomial.hpp.

#include <CepsPolynomial.hpp>

Inheritance diagram for Monomial< _ArgsDim >:
[legend]

Public Types

using ExponentType = CepsArray< CepsInt, _ArgsDim >
 convenience typedef More...
 
using ArgType = CepsArray< CepsReal, _ArgsDim >
 convenience typedef More...
 
using GradientType = CepsArray< CepsReal, _ArgsDim >
 convenience typedef More...
 
using FunctionType = ceps::Function< CepsReal(const ArgType &)>
 convenience typedef More...
 

Public Member Functions

 Monomial (const ExponentType &exponent={})
 Constructor with given exponent (or default) More...
 
 Monomial (const Monomial &that)
 Copy constructor. More...
 
Monomialoperator= (const Monomial &that)
 Assignment operator. More...
 
 ~Monomial ()
 destructor More...
 
ExponentType getExponents () const
 get the exponents More...
 
void setExponents (const ExponentType &exponent)
 Sets all the exponents. More...
 
CepsReal eval (const ArgType &x) override
 Evaluate at x (x in $\mathbb{R}^N$) More...
 
GradientType gradient (const ArgType &x) const
 Evaluate gradient at x (x in $\mathbb{R}^N$) More...
 
CepsBool operator== (const Monomial &other) const
 Check equality of monomes (ie same exponents) More...
 
CepsBool operator== (const ExponentType &other) const
 Check equality of monomes (ie same exponents) More...
 
Monomial operator* (const Monomial &other) const
 Return this*other. More...
 
Monomial operator/ (const Monomial &other) const
 Return this/other. There is no check that the resulting exponents are positive. More...
 

Protected Attributes

ExponentType m_exponent
 The exponents for each dimension. More...
 

Member Typedef Documentation

◆ ArgType

template<CepsUInt _ArgsDim>
using Monomial< _ArgsDim >::ArgType = CepsArray<CepsReal, _ArgsDim>

convenience typedef

Definition at line 47 of file CepsPolynomial.hpp.

◆ ExponentType

template<CepsUInt _ArgsDim>
using Monomial< _ArgsDim >::ExponentType = CepsArray<CepsInt, _ArgsDim>

convenience typedef

Definition at line 45 of file CepsPolynomial.hpp.

◆ FunctionType

template<CepsUInt _ArgsDim>
using Monomial< _ArgsDim >::FunctionType = ceps::Function<CepsReal (const ArgType &)>

convenience typedef

Definition at line 51 of file CepsPolynomial.hpp.

◆ GradientType

template<CepsUInt _ArgsDim>
using Monomial< _ArgsDim >::GradientType = CepsArray<CepsReal, _ArgsDim>

convenience typedef

Definition at line 49 of file CepsPolynomial.hpp.

Constructor & Destructor Documentation

◆ Monomial() [1/2]

template<CepsUInt _ArgsDim>
Monomial< _ArgsDim >::Monomial ( const ExponentType exponent = {})

Constructor with given exponent (or default)

◆ Monomial() [2/2]

template<CepsUInt _ArgsDim>
Monomial< _ArgsDim >::Monomial ( const Monomial< _ArgsDim > &  that)

Copy constructor.

◆ ~Monomial()

template<CepsUInt _ArgsDim>
Monomial< _ArgsDim >::~Monomial ( )

destructor

Member Function Documentation

◆ eval()

template<CepsUInt _ArgsDim>
CepsReal Monomial< _ArgsDim >::eval ( const ArgType x)
override

Evaluate at x (x in $\mathbb{R}^N$)

◆ getExponents()

template<CepsUInt _ArgsDim>
ExponentType Monomial< _ArgsDim >::getExponents ( ) const

get the exponents

◆ gradient()

template<CepsUInt _ArgsDim>
GradientType Monomial< _ArgsDim >::gradient ( const ArgType x) const

Evaluate gradient at x (x in $\mathbb{R}^N$)

◆ operator*()

template<CepsUInt _ArgsDim>
Monomial Monomial< _ArgsDim >::operator* ( const Monomial< _ArgsDim > &  other) const

Return this*other.

◆ operator/()

template<CepsUInt _ArgsDim>
Monomial Monomial< _ArgsDim >::operator/ ( const Monomial< _ArgsDim > &  other) const

Return this/other. There is no check that the resulting exponents are positive.

◆ operator=()

template<CepsUInt _ArgsDim>
Monomial& Monomial< _ArgsDim >::operator= ( const Monomial< _ArgsDim > &  that)

Assignment operator.

◆ operator==() [1/2]

template<CepsUInt _ArgsDim>
CepsBool Monomial< _ArgsDim >::operator== ( const ExponentType other) const

Check equality of monomes (ie same exponents)

◆ operator==() [2/2]

template<CepsUInt _ArgsDim>
CepsBool Monomial< _ArgsDim >::operator== ( const Monomial< _ArgsDim > &  other) const

Check equality of monomes (ie same exponents)

◆ setExponents()

template<CepsUInt _ArgsDim>
void Monomial< _ArgsDim >::setExponents ( const ExponentType exponent)

Sets all the exponents.

Field Documentation

◆ m_exponent

template<CepsUInt _ArgsDim>
ExponentType Monomial< _ArgsDim >::m_exponent
protected

The exponents for each dimension.

Definition at line 103 of file CepsPolynomial.hpp.


The documentation for this class was generated from the following file: