25#include <opm/simulators/linalg/bda/BlockedMatrix.hpp>
47template <
unsigned int block_size>
48int colorBlockedNodes(
int rows,
const int *CSRRowPointers,
const int *CSRColIndices,
const int *CSCColPointers,
const int *CSCRowIndices, std::vector<int>& colors,
int maxRowsPerColor,
int maxColsPerColor);
58void reorderBlockedMatrixByPattern(BlockedMatrix *mat, std::vector<int>& reordermapping_nonzeroes,
int *toOrder,
int *fromOrder, BlockedMatrix *rmat);
65void reorderNonzeroes(BlockedMatrix *mat, std::vector<int>& reordermapping_nonzeroes, BlockedMatrix *rmat);
75void colorsToReordering(
int Nb, std::vector<int>& colors,
int numColors,
int *toOrder,
int *fromOrder, std::vector<int>& rowsPerColor);
84template <
unsigned int block_size>
85void reorderBlockedVectorByPattern(
int Nb,
double *vector,
int *fromOrder,
double *rVector);
93bool canBeStarted(
const int rowIndex,
const int *rowPointers,
const int *colIndices,
const std::vector<bool>& doneRows);
106void findLevelScheduling(
int *CSRColIndices,
int *CSRRowPointers,
int *CSCRowIndices,
int *CSCColPointers,
int Nb,
int *numColors,
int *toOrder,
int* fromOrder, std::vector<int>& rowsPerColor);
121template <
unsigned int block_size>
122void findGraphColoring(
const int *CSRColIndices,
const int *CSRRowPointers,
const int *CSCRowIndices,
const int *CSCColPointers,
int Nb,
int maxRowsPerColor,
int maxColsPerColor,
int *numColors,
int *toOrder,
int *fromOrder, std::vector<int>& rowsPerColor);
132void csrPatternToCsc(
int *CSRColIndices,
int *CSRRowPointers,
int *CSCRowIndices,
int *CSCColPointers,
int Nb);
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: BlackoilPhases.hpp:27