Class representing an operation on a specific set of rows of the matrix.
If N
is the number of nodes in the domain, then this class represents an operation on rows row
, row+N
, ..., row+(dim-1)*N
. This row operations can be summed (with no effect) and assigned to, which sets the right hand side. They enable a syntax like op.lap(i) + 2*op.grad(i, {1, 2}) = 2.3
.
Definition at line 92 of file ImplicitVectorOperators_fwd.hpp.
Public Member Functions | |
RowVecOp | operator+ (const RowVecOp &other) const |
Add two row operations together. More... | |
template<typename derived_t > | |
RowVecOp | operator+ (const VecOpBase< derived_t > &right) |
Add normal operation to a row operation by evaluating the former and adding normally. More... | |
void | operator= (const vector_t &value) |
Assigns given value to the right hand side. More... | |
Friends | |
class | ImplicitVectorOperators |
Protected Member Functions | |
RowVecOp (ImplicitVectorOperators &op, int row) | |
Construct a row operation for a given row. More... | |
int | row () const |
Return absolute index of this row operation. More... | |
Protected Attributes | |
ImplicitVectorOperators & | op |
Reference to underlying operators. More... | |
int | row_ |
Index of the row to which this operation refers. More... | |
|
inlineprotected |
Construct a row operation for a given row.
Definition at line 98 of file ImplicitVectorOperators_fwd.hpp.
|
inline |
Add two row operations together.
This does nothing except for checking that both operations refer to the same actual matrix row, catching some programming errors.
Assertion | fails if *this and other do not refer to the same matrix row. |
Definition at line 108 of file ImplicitVectorOperators_fwd.hpp.
|
inline |
Add normal operation to a row operation by evaluating the former and adding normally.
Definition at line 116 of file ImplicitVectorOperators_fwd.hpp.
|
inline |
Assigns given value to the right hand side.
Definition at line 118 of file ImplicitVectorOperators_fwd.hpp.
|
inlineprotected |
Return absolute index of this row operation.
Definition at line 100 of file ImplicitVectorOperators_fwd.hpp.
|
protected |
Reference to underlying operators.
Definition at line 95 of file ImplicitVectorOperators_fwd.hpp.
|
protected |
Index of the row to which this operation refers.
Row offset is not included.
Definition at line 96 of file ImplicitVectorOperators_fwd.hpp.