Defines data structures for providing dense vectors to KernelComposer. More...
#include "include/DenseVector.hpp"
Public Member Functions | |
DenseVector () | |
Create the DenseVector. More... | |
DenseVector (std::string nm, int length) | |
Create the DenseVector with a length and name. More... | |
~DenseVector () | |
Destroy the DenseVector. More... | |
void | setName (std::string nm) |
Set the name of the DenseVector. More... | |
void | setVector (std::vector< double > v) |
Make a created vector the underlying vector. More... | |
void | setVector (double *v, int length) |
Make a created array the underlying vector. More... | |
std::string | getName () const |
Get Key-Name for this vector. More... | |
double * | getValueArray () |
Get pointer to head of value array. More... | |
size_t | getArrayLength () const |
Get length of value array. More... | |
DenseVectorError_t | sendrecv_MPI () |
Execute halo exchange for this data. More... | |
DenseVectorError_t | sendrecv_MPI (double *DnV_d) |
Execute halo exchange for this data using cuda-aware MPI. More... | |
void | configureSegmentedComms (swSim::Segmentation &seg) |
Set the Segmentation. More... | |
void | mpiComm (MPI_Comm comm) |
Set the MPI Communicator. More... | |
Public Attributes | |
std::vector< double > | vec |
Underlying Vector. More... | |
swSim::Segmentation * | seg |
Segmentation definition fo the vector. More... | |
Defines data structures for providing dense vectors to KernelComposer.
swSim::DenseVector::DenseVector | ( | ) |
Create the DenseVector.
swSim::DenseVector::DenseVector | ( | std::string | nm, |
int | length | ||
) |
Create the DenseVector with a length and name.
swSim::DenseVector::~DenseVector | ( | ) |
Destroy the DenseVector.
void swSim::DenseVector::setName | ( | std::string | nm | ) |
Set the name of the DenseVector.
void swSim::DenseVector::setVector | ( | std::vector< double > | v | ) |
Make a created vector the underlying vector.
void swSim::DenseVector::setVector | ( | double * | v, |
int | length | ||
) |
Make a created array the underlying vector.
std::string swSim::DenseVector::getName | ( | ) | const |
Get Key-Name for this vector.
double * swSim::DenseVector::getValueArray | ( | ) |
Get pointer to head of value array.
size_t swSim::DenseVector::getArrayLength | ( | ) | const |
Get length of value array.
swSim::DenseVectorError_t swSim::DenseVector::sendrecv_MPI | ( | ) |
Execute halo exchange for this data.
swSim::DenseVectorError_t swSim::DenseVector::sendrecv_MPI | ( | double * | DnV_d | ) |
Execute halo exchange for this data using cuda-aware MPI.
void swSim::DenseVector::configureSegmentedComms | ( | swSim::Segmentation & | seg | ) |
Set the Segmentation.
void swSim::DenseVector::mpiComm | ( | MPI_Comm | comm | ) |
Set the MPI Communicator.
std::vector<double> swSim::DenseVector::vec |
Underlying Vector.
swSim::Segmentation* swSim::DenseVector::seg |
Segmentation definition fo the vector.