DUNE-ACFEM (2.5.1)
FunctionConstantsOptimizations
Functions | |
template<class Field , class Function > | |
static auto | Dune::ACFem::operator* (const Field &s_, const Fem::Function< typename Function::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, Field, Function > > &f_) -> decltype((s_ *asImp(f_).scalar()) *asImp(f_).function()) |
Fold s * (s * f) into (s*s) * f. | |
template<class Field , class Function1 , class Function2 > | |
static auto | Dune::ACFem::operator* (const Fem::Function< typename Function1::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, Field, Function1 > > &f1_, const Fem::Function< typename Function2::FunctionSpaceType, Function2 > &f2_) -> decltype(asImp(f1_).scalar() *(asImp(f1_).function() *asImp(f2_))) |
Fold (s * f1) * f2 into s *(f1 f2) | |
template<class Field , class Function1 , class Function2 > | |
static auto | Dune::ACFem::operator* (const Fem::Function< typename Function1::FunctionSpaceType, Function1 > &f1_, const Fem::Function< typename Function2::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, Field, Function2 > > &f2_) -> decltype(asImp(f2_).scalar() *(asImp(f1_) *asImp(f2_).function())) |
Fold f1 * (s * f2) into s *(f1 f2) | |
template<class Field1 , class Field2 , class Function1 , class Function2 > | |
static auto | Dune::ACFem::operator* (const Fem::Function< typename Function1::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, Field1, Function1 > > &f1_, const Fem::Function< typename Function2::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, Field2, Function2 > > &f2_) -> decltype((asImp(f1_).scalar() *asImp(f2_).scalar()) *(asImp(f1_).function() *asImp(f2_).function())) |
Fold (s1 * f1) * (s2 * f2) into (s1*s2) *(f1 f2) | |
template<class Parameter , class Function > | |
static auto | Dune::ACFem::operator* (const ParameterInterface< Parameter > &p_, const Fem::Function< typename Function::FunctionSpaceType, BinaryGridFunctionExpression< SMultiplyOperation, typename Function::RangeFieldType, Function > > &f_) -> decltype(asImp(f_).scalar() *(asImp(p_) *asImp(f_).function())) |
Move scalars left-most. | |
template<class Field , class Parameter , class Function > | |
static auto | Dune::ACFem::operator* (const BinaryParameterExpression< SMultiplyOperation, Field, Parameter > &p_, const Fem::Function< typename Function::FunctionSpaceType, Function > &f_) -> decltype(p_.left() *(p_.right() *asImp(f_))) |
Move scalars out of BinaryParameterExpression. | |
template<class Parameter , class ZeroExpression > | |
static ZeroExpression | Dune::ACFem::operator* (const BinaryParameterExpression< SMultiplyOperation, typename ZeroExpression::RangeFieldType, Parameter > &p_, const ZeroGridFunctionExpression< typename ZeroExpression::FunctionSpaceType, ZeroExpression > &z_) |
We need to specialize moving scalars out of expressions for ZeroGridFunction, otherwise the optimization results in ambiguous overloads. More... | |
Detailed Description
Function Documentation
◆ operator*()
template<class Parameter , class ZeroExpression >
|
inlinestatic |
We need to specialize moving scalars out of expressions for ZeroGridFunction, otherwise the optimization results in ambiguous overloads.
However, the result is zero ;)
|
Legal Statements / Impressum |
Hosted by TU Dresden |
generated with Hugo v0.111.3
(Nov 12, 23:30, 2024)