1#ifndef linearAlgebraOperationsDeviceKernels_H
2#define linearAlgebraOperationsDeviceKernels_H
10 template <
typename ValueType1,
typename ValueType2>
13 const unsigned int BVec,
14 const ValueType1 * rotatedXBlockSP,
16 const unsigned int startingDofId,
17 const unsigned int startingVecId,
21 template <
typename ValueType1,
typename ValueType2>
26 const ValueType1 * overlapMatrixBlock,
27 ValueType1 * overlapMatrixBlockDP,
28 ValueType2 * overlapMatrixBlockSP,
31 template <
typename ValueType1,
typename ValueType2>
36 const unsigned int M);
38 template <
typename ValueType>
41 const unsigned int numDofs,
43 const unsigned int startingVecId,
44 const double * eigenValues,
49 template <
typename ValueType>
52 const unsigned int numDofs,
54 const unsigned int startingVecId,
56 double * residualSqDevice);
59 template <
typename ValueType>
65 const unsigned int startingXVecId);
Definition linearAlgebraOperationsDeviceKernels.h:9
void computeResidualDevice(const unsigned int numVectors, const unsigned int numDofs, const unsigned int N, const unsigned int startingVecId, const double *eigenValues, const ValueType *X, const ValueType *Y, double *r)
void setZero(const unsigned int BVec, const unsigned int M, const unsigned int N, ValueType *yVec, const unsigned int startingXVecId)
void addSubspaceRotatedBlockToX(const unsigned int BDof, const unsigned int BVec, const ValueType1 *rotatedXBlockSP, ValueType2 *X, const unsigned int startingDofId, const unsigned int startingVecId, const unsigned int N, dftfe::utils::deviceStream_t &streamCompute)
void computeGeneralisedResidualDevice(const unsigned int numVectors, const unsigned int numDofs, const unsigned int N, const unsigned int startingVecId, const ValueType *X, double *residualSqDevice)
void computeDiagQTimesX(const ValueType1 *diagValues, ValueType2 *X, const unsigned int N, const unsigned int M)
void copyFromOverlapMatBlockToDPSPBlocks(const unsigned int B, const unsigned int D, const ValueType1 *overlapMatrixBlock, ValueType1 *overlapMatrixBlockDP, ValueType2 *overlapMatrixBlockSP, dftfe::utils::deviceStream_t &streamDataMove)
cudaStream_t deviceStream_t
Definition DeviceTypeConfig.cu.h:27
Definition pseudoPotentialToDftfeConverter.cc:34