Contains vectors and sparse matrices that represent subsets or operations on (AD or regular) vectors of data. More...
#include <AutoDiffHelpers.hpp>
Public Types | |
typedef Eigen::SparseMatrix < double > | M |
typedef AutoDiffBlock< double >::V | V |
typedef Eigen::Array< int, Eigen::Dynamic, 1 > | IFaces |
A list of internal faces. | |
typedef Eigen::Array< int, Eigen::Dynamic, 2, Eigen::RowMajor > | TwoColInt |
Non-neighboring connections. | |
typedef Eigen::Triplet< double > | Tri |
Public Member Functions | |
extractInternalFaces (grid, internal_faces, nbi) | |
if (has_nnc) | |
ngrad | resize (num_connections, nc) |
caver | resize (num_connections, nc) |
ngrad_tri | reserve (2 *num_connections) |
caver_tri | reserve (2 *num_connections) |
for (int i=0;i< num_internal;++i) | |
if (has_nnc) | |
ngrad | setFromTriplets (ngrad_tri.begin(), ngrad_tri.end()) |
caver | setFromTriplets (caver_tri.begin(), caver_tri.end()) |
fullngrad_tri | reserve (2 *(nf+numNNC)) |
for (int i=0;i< nf;++i) | |
if (has_nnc) | |
fullngrad | resize (nf+numNNC, nc) |
fullngrad | setFromTriplets (fullngrad_tri.begin(), fullngrad_tri.end()) |
if (has_nnc) | |
Public Attributes | |
IFaces | internal_faces |
M | ngrad |
Extract for each internal face the difference of its adjacent cells' values (first - second). | |
M | grad |
Extract for each face the difference of its adjacent cells' values (second - first). | |
M | caver |
Extract for each face the average of its adjacent cells' values. | |
M | div |
Extract for each cell the sum of its adjacent interior faces' (signed) values. | |
M | fullngrad |
Extract for each face the difference of its adjacent cells' values (first - second). More... | |
M | fulldiv |
Extract for each cell the sum of all its adjacent faces' (signed) values. | |
TwoColInt | nnc_cells |
V | nnc_trans |
The NNC transmissibilities. | |
TwoColInt | connection_cells |
The set of all connections' cells (face or nnc). | |
template<class Grid > | |
const int | nc = numCells(grid) |
Constructs all helper vectors and matrices. | |
const int | nf = numFaces(grid) |
TwoColInt | nbi |
const int | num_internal = internal_faces.size() |
const bool | has_nnc = nnc.hasNNC() |
int | numNNC = nnc.numNNC() |
const int | num_connections = num_internal + numNNC |
std::vector< Tri > | ngrad_tri |
std::vector< Tri > | caver_tri |
grad = -ngrad | |
div = ngrad.transpose() | |
std::vector< Tri > | fullngrad_tri |
ADFaceCellTraits< Grid >::Type | nb = faceCellsToEigen(grid) |
fulldiv = fullngrad.transpose() | |
else | |
Contains vectors and sparse matrices that represent subsets or operations on (AD or regular) vectors of data.
Opm::HelperOps::else |
M Opm::HelperOps::fullngrad |
Extract for each face the difference of its adjacent cells' values (first - second).
For boundary faces, one of the entries per row (corresponding to the outside) is zero.