![]() |
LehrFEM++ 1.0.0
A simple Finite Element Library for teaching
|
A MeshFunction which combines two other mesh functions using a binary operator (advanced use). More...
#include <lf/uscalfe/uscalfe.h>
Public Member Functions | |
| MeshFunctionBinary (OP op, A a, B b) | |
| Create a new MeshFunctionBinary. | |
| auto | operator() (const lf::mesh::Entity &e, const Eigen::MatrixXd &local) const |
Private Attributes | |
| OP | op_ |
| A | a_ |
| B | b_ |
Related Symbols | |
(Note that these are not member symbols.) | |
| template<MeshFunction A, MeshFunction B> | |
| auto | operator+ (const A &a, const B &b) -> MeshFunctionBinary< internal::OperatorAddition, A, B > |
| Add's two mesh functions. | |
| template<MeshFunction A, MeshFunction B> | |
| auto | operator- (const A &a, const B &b) -> MeshFunctionBinary< internal::OperatorSubtraction, A, B > |
| Subtracts two mesh functions. | |
| template<MeshFunction A, MeshFunction B> | |
| auto | operator* (const A &a, const B &b) -> MeshFunctionBinary< internal::OperatorMultiplication, A, B > |
| Multiply two mesh functions with each other. | |
A MeshFunction which combines two other mesh functions using a binary operator (advanced use).
| OP | The type of operator that combines the mesh functions. |
| A | The type of the lhs mesh function. |
| B | The type of the rhs mesh function. |
The Operator OP must fulfill the following requirements:
operator() as follows: U is the MeshFunctionReturnType of the lhs MeshFunction, V is the MeshFunctionReturnType of the rhs MeshFunction and Z is the type of the mesh function A OP B.int argument of operator() can be used to prefer certain overloads over others, e.g. operator()(const std::vector<U>& u, const std::vector<V>& int) takes higher precedence than operator()(const std::vector<U>& u, const std::vector<V>& long) Definition at line 51 of file mesh_function_binary.h.
|
inline |
Create a new MeshFunctionBinary.
| op | The operator to apply |
| a | The lhs mesh function |
| b | The rhs mesh function. |
Definition at line 59 of file mesh_function_binary.h.
Referenced by operator*(), operator+(), and operator-().
|
inline |
see MeshFunction for details.
Definition at line 65 of file mesh_function_binary.h.
|
Multiply two mesh functions with each other.
| A | The type of the lhs MeshFunction |
| B | The type of the rhs MeshFunction |
| a | the lhs MeshFunction |
| b | the rhs MeshFunction |
a*b, i.e. a new mesh function which represents the pointwise product of a and b.A and B are Eigen::Matrix valued, the resulting MeshFunction will also be Matrix/Vector valued and will represent the Matrix product of a and b.lf::uscalfe namespace, it will not be found by Argument Dependent Lookup (ADL). You can get around this by explicitly importing the operator overload: using lf::uscalfe::operator*;Definition at line 722 of file mesh_function_binary.h.
References MeshFunctionBinary().
|
Add's two mesh functions.
| A | Type of the lhs MeshFunction |
| B | Type of the rhs MeshFunction |
| a | the lhs MeshFunction |
| b | the rhs MeshFunction |
a + b, i.e. a new mesh function which represents the pointwise addition of a and ba and b should produce the same type of values, e.g. both should be scalar valued or both matrix/vector/array valued.lf::uscalfe namespace, it will not be found by Argument Dependent Lookup. You can get around this by explictly importing the operator overload: using lf::uscalfe::operator+;Definition at line 664 of file mesh_function_binary.h.
References MeshFunctionBinary().
|
Subtracts two mesh functions.
| A | Type of the lhs MeshFunction |
| B | Type of the rhs MeshFunction |
| a | the lhs MeshFunction |
| b | the rhs MeshFunction |
a - b, i.e. a new mesh function which represents the pointwise difference of a minus ba and b should produce the same type of values, e.g. both should be scalar valued or both matrix/vector valued.lf::uscalfe namespace, it will not be found by Argument Dependent Lookup (ADL). You can get around this by explicitly importing the operator overload: using lf::uscalfe::operator-;Definition at line 693 of file mesh_function_binary.h.
References MeshFunctionBinary().
|
private |
Definition at line 72 of file mesh_function_binary.h.
Referenced by MeshFunctionBinary(), and operator()().
|
private |
Definition at line 73 of file mesh_function_binary.h.
Referenced by MeshFunctionBinary(), and operator()().
|
private |
Definition at line 71 of file mesh_function_binary.h.
Referenced by MeshFunctionBinary(), and operator()().