|
|
| Product ()=default |
| | Default constructor. May leave member variables uninitialized! Call update before using evaluation.
|
| |
| template<class InitF , class InitG > |
| | Product (const InitF &f_, const InitG &g_) |
| | Constructor passing arguments to function constructors. More...
|
| |
|
template<class Arg > |
| void | update (Arg const &x) |
| | Reset point of evaluation.
|
| |
|
template<int index, class Arg > |
| void | updateVariable (const Arg &x) |
| | Propagate call to updateVariable() to f and g.
|
| |
|
auto | d0 () const noexcept |
| | Function value.
|
| |
| template<int id, class Arg , class IndexedArg = IndexedType<Arg,id>, class = std::enable_if_t< D1Type<IndexedArg>::present >> |
| auto | d1 (Arg const &dx) const |
| | First directional derivative. More...
|
| |
| template<int idx, int idy, class ArgX , class ArgY , class IndexedArgX = IndexedType<ArgX,idx>, class IndexedArgY = IndexedType<ArgY,idy>, class = std::enable_if_t< D2Type<IndexedArgX,IndexedArgY>::present >> |
| auto | d2 (ArgX const &dx, ArgY const &dy) const |
| | Second directional derivative. More...
|
| |
| template<int idx, int idy, int idz, class ArgX , class ArgY , class ArgZ , class IndexedArgX = IndexedType<ArgX,idx>, class IndexedArgY = IndexedType<ArgY,idy>, class IndexedArgZ = IndexedType<ArgZ,idz>, class = std::enable_if_t< D3Type<IndexedArgX,IndexedArgY,IndexedArgZ>::present >> |
| auto | d3 (ArgX const &dx, ArgY const &dy, ArgZ const &dz) const |
| | Third directional derivative. More...
|
| |
|
template<class Arg > |
| void | update (const Arg &) |
| | Update on changed input.
|
| |
|
template<int id, class Arg > |
| void | updateVariable (const Arg &) |
| | Empty variables.
|
| |
template<class F, class G, class = FunctionConceptCheck<F>, class = FunctionConceptCheck<G>>
struct RFFGen::MathematicalOperations::Product< F, G, class, class >
Product
of functions of type F and G (F and G must satisfy the requirements of Concepts::FunctionConcept).
template<class F , class G , class = FunctionConceptCheck<F>, class = FunctionConceptCheck<G>>
template<int id, class Arg , class IndexedArg = IndexedType<Arg,id>, class = std::enable_if_t< D1Type<IndexedArg>::present >>
First directional derivative.
- Parameters
-
| dx | direction for which the derivative is computed |
template<class F , class G , class = FunctionConceptCheck<F>, class = FunctionConceptCheck<G>>
template<int idx, int idy, class ArgX , class ArgY , class IndexedArgX = IndexedType<ArgX,idx>, class IndexedArgY = IndexedType<ArgY,idy>, class = std::enable_if_t< D2Type<IndexedArgX,IndexedArgY>::present >>
Second directional derivative.
- Parameters
-
| dx | direction for which the derivative is computed |
| dy | direction for which the derivative is computed |
template<class F , class G , class = FunctionConceptCheck<F>, class = FunctionConceptCheck<G>>
template<int idx, int idy, int idz, class ArgX , class ArgY , class ArgZ , class IndexedArgX = IndexedType<ArgX,idx>, class IndexedArgY = IndexedType<ArgY,idy>, class IndexedArgZ = IndexedType<ArgZ,idz>, class = std::enable_if_t< D3Type<IndexedArgX,IndexedArgY,IndexedArgZ>::present >>
Third directional derivative.
- Parameters
-
| dx | direction for which the derivative is computed |
| dy | direction for which the derivative is computed |
| dz | direction for which the derivative is computed |