piranha  0.10
Public Member Functions | List of all members
piranha::math::evaluate_impl< Series, T, math_series_evaluate_enabler< Series, T > > Class Template Reference

Specialisation of the implementation of piranha::math::evaluate() for series types. More...

#include <piranha/series.hpp>

Public Member Functions

eval_type operator() (const Series &s, const symbol_fmap< T > &dict) const
 Call operator. More...
 

Detailed Description

template<typename Series, typename T>
class piranha::math::evaluate_impl< Series, T, math_series_evaluate_enabler< Series, T > >

Specialisation of the implementation of piranha::math::evaluate() for series types.

This specialisation is activated when all the following conditions hold:

Definition at line 3433 of file series.hpp.

Member Function Documentation

◆ operator()()

template<typename Series , typename T >
eval_type piranha::math::evaluate_impl< Series, T, math_series_evaluate_enabler< Series, T > >::operator() ( const Series &  s,
const symbol_fmap< T > &  dict 
) const
inline

Call operator.

Series evaluation starts with a zero-initialised instance of the return type, which is determined according to the evaluation types of coefficient and key. The return value accumulates the evaluation of all terms in the series via the product of the evaluations of the coefficient-key pairs in each term. The input dictionary dict specifies with which value each symbolic quantity will be evaluated.

Parameters
sthe series to be evaluated.
dictthe dictionary that will be used for evaluation.
Returns
the result of evaluating the series according to the evaluation dictionary dict.
Exceptions
std::invalid_argumentif a symbol of s does not appear in dict.
unspecifiedany exception thrown by:
  • coefficient and key evaluation,
  • memory errors in standard containers,
  • the copy constructor of T,
  • arithmetic operations on the evaluation type.

Definition at line 3469 of file series.hpp.


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