|
|
void | apply_stdwells (double *d_x, double *d_y) |
| |
|
void | apply_mswells (double *d_x, double *d_y) |
| |
|
void | apply (double *d_x, double *d_y) |
| |
|
void | setStream (hipStream_t stream) |
| |
|
unsigned int | getNumWells () |
| |
| void | addNumBlocks (unsigned int numBlocks) |
| | Indicate how large the next StandardWell is, this function cannot be called after alloc() is called.
|
| |
|
void | alloc () |
| | Allocate memory for the StandardWells.
|
| |
|
virtual | ~WellContributions () |
| | Empty destructor.
|
| |
| void | setBlockSize (unsigned int dim, unsigned int dim_wells) |
| | Indicate how large the blocks of the StandardWell (C and B) are.
|
| |
| void | setVectorSize (unsigned N) |
| | Set size of vector that the wells are applied to.
|
| |
| void | addMatrix (MatrixType type, int *colIndices, double *values, unsigned int val_size) |
| | Store a matrix in this object, in blocked csr format, can only be called after alloc() is called.
|
| |
| void | addMultisegmentWellContribution (unsigned int dim, unsigned int dim_wells, unsigned int Mb, std::vector< double > &Bvalues, std::vector< unsigned int > &BcolIndices, std::vector< unsigned int > &BrowPointers, unsigned int DnumBlocks, double *Dvalues, UMFPackIndex *DcolPointers, UMFPackIndex *DrowIndices, std::vector< double > &Cvalues) |
| | Add a MultisegmentWellContribution, actually creates an object on heap that is destroyed in the destructor Matrices C and B are passed in Blocked CSR, matrix D in CSC.
|
| |
|
| void | APIalloc () override |
| | Allocate memory for the StandardWells.
|
| |
| void | APIaddMatrix (MatrixType type, int *colIndices, double *values, unsigned int val_size) override |
| | Api specific upload of matrix.
|
| |
|
|
double * | d_Cnnzs_hip |
| |
|
double * | d_Dnnzs_hip |
| |
|
double * | d_Bnnzs_hip |
| |
|
unsigned * | d_Ccols_hip |
| |
|
unsigned * | d_Bcols_hip |
| |
|
unsigned * | d_val_pointers_hip |
| |
|
std::vector< double > | h_x |
| |
|
std::vector< double > | h_y |
| |
|
bool | allocated = false |
| |
|
unsigned int | N |
| |
|
unsigned int | dim |
| |
|
unsigned int | dim_wells |
| |
|
unsigned int | num_blocks = 0 |
| |
|
unsigned int | num_std_wells = 0 |
| |
|
unsigned int | num_ms_wells = 0 |
| |
|
unsigned int | num_blocks_so_far = 0 |
| |
|
unsigned int | num_std_wells_so_far = 0 |
| |
|
std::vector< unsigned int > | val_pointers |
| |
|
std::vector< std::unique_ptr< MultisegmentWellContribution > > | multisegments |
| |
|
| enum class | MatrixType { C
, D
, B
} |
| | StandardWell has C, D and B matrices that need to be copied.
|
| |
|
using | UMFPackIndex = SuiteSparse_long |
| |
|
static std::unique_ptr< WellContributions > | create (const std::string &accelerator_mode, bool useWellConn) |
| |
◆ APIaddMatrix()
| void Opm::WellContributionsRocsparse::APIaddMatrix |
( |
MatrixType |
, |
|
|
int * |
, |
|
|
double * |
, |
|
|
unsigned int |
|
|
) |
| |
|
overrideprotectedvirtual |
◆ APIalloc()
| void Opm::WellContributionsRocsparse::APIalloc |
( |
| ) |
|
|
overrideprotectedvirtual |
The documentation for this class was generated from the following files: