#include <OperatorSpace.hpp>
|
__host__ __device__ | OperatorSpaceBase (BaseSpace const &baseSpace) |
| Construct a OperatorSpaceBase object by copying a BaseSpace object.
|
|
__host__ __device__ | OperatorSpaceBase (BaseSpace &&baseSpace) |
| Construct a OperatorSpaceBase object by moving a BaseSpace object.
|
|
__host__ __device__ | OperatorSpaceBase ()=default |
| Default constructor.
|
|
__host__ __device__ | OperatorSpaceBase (OperatorSpaceBase const &other)=default |
| Copy constructor.
|
|
__host__ __device__ | OperatorSpaceBase (OperatorSpaceBase &&other)=default |
| Move constructor.
|
|
__host__ __device__ | ~OperatorSpaceBase ()=default |
| Destructor.
|
|
|
__host__ __device__ OperatorSpaceBase & | operator= (OperatorSpaceBase const &other)=default |
| Copy assignment operator.
|
|
__host__ __device__ OperatorSpaceBase & | operator= (OperatorSpaceBase &&other)=default |
| Move assignment operator.
|
|
__host__ __device__ int | dim () const |
|
__host__ __device__ BaseSpace const & | baseSpace () const |
|
__host__ __device__ int | baseDim () const |
|
template<typename RealType > |
__host__ __device__ void | action (int &resBasisNum, Complex_t< RealType > &coeff, int opNum, int basisNum) const |
|
template<typename RealType , class EigenDerived > |
__host__ __device__ void | action (int &resBasisNum, Complex_t< RealType > &coeff, int opNum, int basisNum, Eigen::DenseBase< EigenDerived > &config) const |
|
__host__ __device__ std::pair< int, Complex_t< Real > > | action (int opNum, int basisNum) const |
|
__host__ void | basisOp (Eigen::SparseMatrix< ScalarType > &res, int opNum) const |
|
__host__ Eigen::SparseMatrix< ScalarType > | basisOp (int opNum) const |
|
◆ BaseSpace
◆ Real
◆ ScalarType
◆ OperatorSpaceBase() [1/5]
Construct a OperatorSpaceBase object by copying a BaseSpace object.
- Parameters
-
27 debug_constructor_printf(1(Custom Copy));
28 }
BaseSpace m_baseSpace
Definition OperatorSpace.hpp:16
__host__ __device__ BaseSpace const & baseSpace() const
Definition OperatorSpace.hpp:79
◆ OperatorSpaceBase() [2/5]
Construct a OperatorSpaceBase object by moving a BaseSpace object.
- Parameters
-
36 debug_constructor_printf(2(Custom Move));
37 }
◆ OperatorSpaceBase() [3/5]
◆ OperatorSpaceBase() [4/5]
◆ OperatorSpaceBase() [5/5]
◆ ~OperatorSpaceBase()
◆ action() [1/3]
template<class Derived >
template<typename RealType >
__host__ __device__ void OperatorSpaceBase< Derived >::action |
( |
int & |
resBasisNum, |
|
|
Complex_t< RealType > & |
coeff, |
|
|
int |
opNum, |
|
|
int |
basisNum |
|
) |
| const |
|
inline |
84 {
85 static_cast<Derived const*>(this)->action_impl(resBasisNum, coeff, opNum, basisNum);
86 };
◆ action() [2/3]
template<class Derived >
template<typename RealType , class EigenDerived >
__host__ __device__ void OperatorSpaceBase< Derived >::action |
( |
int & |
resBasisNum, |
|
|
Complex_t< RealType > & |
coeff, |
|
|
int |
opNum, |
|
|
int |
basisNum, |
|
|
Eigen::DenseBase< EigenDerived > & |
config |
|
) |
| const |
|
inline |
91 {
92 static_cast<Derived const*>(this)->action_impl(resBasisNum, coeff, opNum, basisNum,
93 config);
94 };
◆ action() [3/3]
96 {
97
98 int resBasisNum;
100 this->
action(resBasisNum, coeff, opNum, basisNum);
101 return std::make_pair(resBasisNum, coeff);
102 }
Definition mytypes.hpp:147
__host__ __device__ void action(int &resBasisNum, Complex_t< RealType > &coeff, int opNum, int basisNum) const
Definition OperatorSpace.hpp:83
◆ baseDim()
◆ baseSpace()
◆ basisOp() [1/2]
104 {
106#pragma omp parallel for
107 for(
int basisNum = 0; basisNum < this->
baseDim(); basisNum++) {
108 auto [resBasisNum, coeff] = this->
action(opNum, basisNum);
109 res.coeffRef(resBasisNum, basisNum) = coeff;
110 };
111 }
__host__ __device__ int baseDim() const
Definition OperatorSpace.hpp:80
◆ basisOp() [2/2]
113 {
114 Eigen::SparseMatrix<ScalarType> res(this->
baseDim(), this->
baseDim());
115 for(
int basisNum = 0; basisNum < this->
baseDim(); basisNum++) {
116
117 auto [resBasisNum, coeff] = this->
action(opNum, basisNum);
118 res.insert(resBasisNum, basisNum) = coeff;
119 }
120 return res;
121 }
◆ dim()
75 {
76 return static_cast<Derived const*>(this)->dim_impl();
77 }
◆ operator=() [1/2]
Move assignment operator.
- Parameters
-
◆ operator=() [2/2]
Copy assignment operator.
- Parameters
-
◆ m_baseSpace
The documentation for this class was generated from the following file: