Facilitates the process of iterating through all rows along a particular dimension. More...
#include <Row_index.hpp>
Public Member Functions | |
constexpr | Row_index (int nd, int rs, int id) |
constexpr void | operator++ () |
advances object to the next row | |
constexpr | operator bool () const |
returns true if object is pointing to a valid row and false if it is pointing past the last row | |
constexpr int | i_face_qpoint () const |
returns the index of the row (or equivalently the face quadrature point) the object is pointing to | |
constexpr int | i_qpoint (int i_node) const |
returns the index (with respect to the entire quadrature point array) of the i_node th quadrature point in the current row | |
constexpr int | i_node (int i_qpoint) const |
returns the index of a quadrature point in its own row, i.e. which Basis::node it is | |
Facilitates the process of iterating through all rows along a particular dimension.
This is essential in the local kernel where a row_size
[xrow_size
[xrow_size
]] array of flux values must be multipled by the derivative matrix row-wise along every dimension.
|
inlineconstexpr |
constructs a Row_index
in nd
dimensions, with row size rs
, and applicable to rows in the id
th dimension. Object is initialized to point to the first row.
|
inlineconstexpr |
returns the index of a quadrature point in its own row, i.e. which Basis::node
it is
always gives the same value regardless of which i_face_qpoint()
this object is pointing to