piranha  0.10
Public Member Functions | List of all members
piranha::math::partial_impl< Series, detail::series_partial_enabler< Series > > Struct Template Reference

Specialisation of the piranha::math::partial() functor for series types. More...

#include <piranha/series.hpp>

Public Member Functions

template<typename T >
auto operator() (const T &s, const std::string &name) const -> decltype(s.partial(name))
 Call operator. More...
 

Detailed Description

template<typename Series>
struct piranha::math::partial_impl< Series, detail::series_partial_enabler< Series > >

Specialisation of the piranha::math::partial() functor for series types.

This specialisation is activated when Series is an instance of piranha::series with a const partial() method method taking a const std::string as parameter and returning a type which satisfies piranha::is_returnable.

Definition at line 3340 of file series.hpp.

Member Function Documentation

◆ operator()()

template<typename Series >
template<typename T >
auto piranha::math::partial_impl< Series, detail::series_partial_enabler< Series > >::operator() ( const T &  s,
const std::string &  name 
) const -> decltype(s.partial(name))
inline

Call operator.

The call operator will first check whether a custom partial derivative for Series was registered via piranha::series::register_custom_derivative(). In such a case, the custom derivative function will be used to compute the return value. Otherwise, the output of piranha::series::partial() will be returned.

Parameters
sinput series.
namename of the argument with respect to which the differentiation will be calculated.
Returns
the partial derivative of s with respect to name.
Exceptions
unspecifiedany exception thrown by:
  • piranha::series::partial(),
  • failure(s) in threading primitives,
  • lookup operations on std::unordered_map,
  • the copy assignment and call operators of the registered custom partial derivative function.

Definition at line 3359 of file series.hpp.


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