DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
|
This class provides the interface for the transfer between the meshes. More...
#include <TransferBetweenMeshesIncompatiblePartitioning.h>
Public Member Functions | |
TransferDataBetweenMeshesIncompatiblePartitioning (const dealii::MatrixFree< 3, double > &matrixFreeMesh1, const dftfe::uInt matrixFreeMesh1VectorComponent, const dftfe::uInt matrixFreeMesh1QuadratureComponent, const dealii::MatrixFree< 3, double > &matrixFreeMesh2, const dftfe::uInt matrixFreeMesh2VectorComponent, const dftfe::uInt matrixFreeMesh2QuadratureComponent, const dftfe::uInt verbosity, const MPI_Comm &mpiComm, const bool useMemOptForCellWiseInterpolation=false) | |
void | interpolateMesh1DataToMesh2QuadPoints (const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > &BLASWrapperPtr, const dftfe::linearAlgebra::MultiVector< dftfe::dataTypes::number, memorySpace > &inputVec, const dftfe::uInt numberOfVectors, const dftfe::utils::MemoryStorage< dftfe::uInt, memorySpace > &fullFlattenedArrayCellLocalProcIndexIdMapMesh1, dftfe::utils::MemoryStorage< dftfe::dataTypes::number, memorySpace > &outputQuadData, const dftfe::uInt blockSizeOfInputData, const dftfe::uInt blockSizeOfOutputData, const dftfe::uInt startIndexOfInputData, bool resizeOutputVec) |
void | interpolateMesh2DataToMesh1QuadPoints (const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > &BLASWrapperPtr, const dftfe::linearAlgebra::MultiVector< dftfe::dataTypes::number, memorySpace > &inputVec, const dftfe::uInt numberOfVectors, const dftfe::utils::MemoryStorage< dftfe::uInt, memorySpace > &fullFlattenedArrayCellLocalProcIndexIdMapMesh1, dftfe::utils::MemoryStorage< dftfe::dataTypes::number, memorySpace > &outputQuadData, const dftfe::uInt blockSizeOfInputData, const dftfe::uInt blockSizeOfOutputData, const dftfe::uInt startIndexOfInputData, bool resizeOutputVec) |
void | interpolateMesh1DataToMesh2QuadPoints (const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > &BLASWrapperPtr, const distributedCPUVec< dftfe::dataTypes::number > &inputVec, const dftfe::uInt numberOfVectors, const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::HOST > &fullFlattenedArrayCellLocalProcIndexIdMapParent, dftfe::utils::MemoryStorage< dftfe::dataTypes::number, dftfe::utils::MemorySpace::HOST > &outputQuadData, const dftfe::uInt blockSizeOfInputData, const dftfe::uInt blockSizeOfOutputData, const dftfe::uInt startIndexOfInputData, bool resizeOutputVec) |
void | interpolateMesh2DataToMesh1QuadPoints (const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > &BLASWrapperPtr, const distributedCPUVec< dftfe::dataTypes::number > &inputVec, const dftfe::uInt numberOfVectors, const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::HOST > &mapVecToCells, dftfe::utils::MemoryStorage< dftfe::dataTypes::number, dftfe::utils::MemorySpace::HOST > &outputQuadData, const dftfe::uInt blockSizeOfInputData, const dftfe::uInt blockSizeOfOutputData, const dftfe::uInt startIndexOfInputData, bool resizeOutputVec) |
Private Attributes | |
const dealii::MatrixFree< 3, double > * | d_matrixFreeMesh1Ptr |
const dealii::MatrixFree< 3, double > * | d_matrixFreeMesh2Ptr |
dftfe::uInt | d_matrixFreeMesh1VectorComponent |
dftfe::uInt | d_matrixFreeMesh1QuadratureComponent |
dftfe::uInt | d_matrixFreeMesh2VectorComponent |
dftfe::uInt | d_matrixFreeMesh2QuadratureComponent |
std::shared_ptr< InterpolateCellWiseDataToPoints< dftfe::dataTypes::number, memorySpace > > | d_mesh1toMesh2 |
std::shared_ptr< InterpolateCellWiseDataToPoints< dftfe::dataTypes::number, memorySpace > > | d_mesh2toMesh1 |
const MPI_Comm | d_mpiComm |
This class provides the interface for the transfer between the meshes.
memorySpace |
dftfe::TransferDataBetweenMeshesIncompatiblePartitioning< memorySpace >::TransferDataBetweenMeshesIncompatiblePartitioning | ( | const dealii::MatrixFree< 3, double > & | matrixFreeMesh1, |
const dftfe::uInt | matrixFreeMesh1VectorComponent, | ||
const dftfe::uInt | matrixFreeMesh1QuadratureComponent, | ||
const dealii::MatrixFree< 3, double > & | matrixFreeMesh2, | ||
const dftfe::uInt | matrixFreeMesh2VectorComponent, | ||
const dftfe::uInt | matrixFreeMesh2QuadratureComponent, | ||
const dftfe::uInt | verbosity, | ||
const MPI_Comm & | mpiComm, | ||
const bool | useMemOptForCellWiseInterpolation = false ) |
void dftfe::TransferDataBetweenMeshesIncompatiblePartitioning< memorySpace >::interpolateMesh1DataToMesh2QuadPoints | ( | const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > & | BLASWrapperPtr, |
const distributedCPUVec< dftfe::dataTypes::number > & | inputVec, | ||
const dftfe::uInt | numberOfVectors, | ||
const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::HOST > & | fullFlattenedArrayCellLocalProcIndexIdMapParent, | ||
dftfe::utils::MemoryStorage< dftfe::dataTypes::number, dftfe::utils::MemorySpace::HOST > & | outputQuadData, | ||
const dftfe::uInt | blockSizeOfInputData, | ||
const dftfe::uInt | blockSizeOfOutputData, | ||
const dftfe::uInt | startIndexOfInputData, | ||
bool | resizeOutputVec ) |
void dftfe::TransferDataBetweenMeshesIncompatiblePartitioning< memorySpace >::interpolateMesh1DataToMesh2QuadPoints | ( | const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > & | BLASWrapperPtr, |
const dftfe::linearAlgebra::MultiVector< dftfe::dataTypes::number, memorySpace > & | inputVec, | ||
const dftfe::uInt | numberOfVectors, | ||
const dftfe::utils::MemoryStorage< dftfe::uInt, memorySpace > & | fullFlattenedArrayCellLocalProcIndexIdMapMesh1, | ||
dftfe::utils::MemoryStorage< dftfe::dataTypes::number, memorySpace > & | outputQuadData, | ||
const dftfe::uInt | blockSizeOfInputData, | ||
const dftfe::uInt | blockSizeOfOutputData, | ||
const dftfe::uInt | startIndexOfInputData, | ||
bool | resizeOutputVec ) |
void dftfe::TransferDataBetweenMeshesIncompatiblePartitioning< memorySpace >::interpolateMesh2DataToMesh1QuadPoints | ( | const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< dftfe::utils::MemorySpace::HOST > > & | BLASWrapperPtr, |
const distributedCPUVec< dftfe::dataTypes::number > & | inputVec, | ||
const dftfe::uInt | numberOfVectors, | ||
const dftfe::utils::MemoryStorage< dftfe::uInt, dftfe::utils::MemorySpace::HOST > & | mapVecToCells, | ||
dftfe::utils::MemoryStorage< dftfe::dataTypes::number, dftfe::utils::MemorySpace::HOST > & | outputQuadData, | ||
const dftfe::uInt | blockSizeOfInputData, | ||
const dftfe::uInt | blockSizeOfOutputData, | ||
const dftfe::uInt | startIndexOfInputData, | ||
bool | resizeOutputVec ) |
void dftfe::TransferDataBetweenMeshesIncompatiblePartitioning< memorySpace >::interpolateMesh2DataToMesh1QuadPoints | ( | const std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > & | BLASWrapperPtr, |
const dftfe::linearAlgebra::MultiVector< dftfe::dataTypes::number, memorySpace > & | inputVec, | ||
const dftfe::uInt | numberOfVectors, | ||
const dftfe::utils::MemoryStorage< dftfe::uInt, memorySpace > & | fullFlattenedArrayCellLocalProcIndexIdMapMesh1, | ||
dftfe::utils::MemoryStorage< dftfe::dataTypes::number, memorySpace > & | outputQuadData, | ||
const dftfe::uInt | blockSizeOfInputData, | ||
const dftfe::uInt | blockSizeOfOutputData, | ||
const dftfe::uInt | startIndexOfInputData, | ||
bool | resizeOutputVec ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |