StatMech
Loading...
Searching...
No Matches
ObjectOnGPU< TransSector< RealType > > Class Template Reference
Inheritance diagram for ObjectOnGPU< TransSector< RealType > >:
Inheritance graph
Collaboration diagram for ObjectOnGPU< TransSector< RealType > >:
Collaboration graph

Public Member Functions

template<typename RealType2 >
 ObjectOnGPU (TransSector< RealType2 > const &other)
 
 ObjectOnGPU (int k=0, int L=0, int dimLoc=0)
 Default constructor.
 
 ObjectOnGPU (ObjectOnGPU const &other)=delete
 Copy constructor.
 
 ObjectOnGPU (ObjectOnGPU &&other)=default
 Move constructor.
 
 ~ObjectOnGPU ()=default
 Destructor.
 
Operator overloads
ObjectOnGPUoperator= (ObjectOnGPU const &other)=delete
 Copy assignment operator.
 
ObjectOnGPUoperator= (ObjectOnGPU &&other)
 Move assignment operator.
 
size_t dim () const
 
- Public Member Functions inherited from ObjectOnGPU_Base< TransSector< RealType > >
 ObjectOnGPU_Base (Args... args)
 Default constructor for ObjectOnGPU_Base object.
 
 ObjectOnGPU_Base (ObjectOnGPU_Base const &other)=delete
 Default constructor.
 
 ObjectOnGPU_Base (ObjectOnGPU_Base &&other)
 Move constructor for ObjectOnGPU_Base object.
 
 ~ObjectOnGPU_Base ()
 Destructor.
 
ObjectOnGPU_Baseoperator= (ObjectOnGPU_Base const &other)=delete
 Copy assignment operator (yet to be implmented)
 
ObjectOnGPU_Baseoperator= (ObjectOnGPU_Base &&other)
 Move assignment operator.
 
 operator Object_t * () const
 
Object_tptr () const
 
Object_t const * const_ptr () const
 

Additional Inherited Members

- Static Public Attributes inherited from ObjectOnGPU_Base< TransSector< RealType > >
static constexpr bool on_GPU
 
- Protected Types inherited from ObjectOnGPU_Base< TransSector< RealType > >
using Object_t = TransSector< RealType >
 
- Protected Attributes inherited from ObjectOnGPU_Base< TransSector< RealType > >
TransSector< RealType > * m_ptr
 
TransSector< RealType > ** m_ptrptr
 

Constructor & Destructor Documentation

◆ ObjectOnGPU() [1/4]

template<typename RealType >
template<typename RealType2 >
ObjectOnGPU< TransSector< RealType > >::ObjectOnGPU ( TransSector< RealType2 > const &  other)
inline
13 : ObjectOnGPU(other.momentum(), other.totalSpace().sysSize(),
14 other.totalSpace().dimLoc()) {
15 debug_constructor_printf(2);
16 };
Definition ObjectOnGPU.cuh:149
__host__ __device__ TotalSpace const & totalSpace() const
Definition HilbertSpace.hpp:671
__host__ __device__ int momentum() const
Definition TransSector.hpp:44

◆ ObjectOnGPU() [2/4]

template<typename RealType >
ObjectOnGPU< TransSector< RealType > >::ObjectOnGPU ( int  k = 0,
int  L = 0,
int  dimLoc = 0 
)
inline

Default constructor.

24 debug_constructor_printf(1);
25 }
Definition ObjectOnGPU.cuh:40

◆ ObjectOnGPU() [3/4]

template<typename RealType >
ObjectOnGPU< TransSector< RealType > >::ObjectOnGPU ( ObjectOnGPU< TransSector< RealType > > const &  other)
delete

Copy constructor.

Parameters
other

◆ ObjectOnGPU() [4/4]

template<typename RealType >
ObjectOnGPU< TransSector< RealType > >::ObjectOnGPU ( ObjectOnGPU< TransSector< RealType > > &&  other)
default

Move constructor.

Parameters
other

◆ ~ObjectOnGPU()

template<typename RealType >
ObjectOnGPU< TransSector< RealType > >::~ObjectOnGPU ( )
default

Destructor.

Member Function Documentation

◆ dim()

template<typename RealType >
size_t ObjectOnGPU< TransSector< RealType > >::dim
75 {
76 thrust::device_vector<int> dRes(1);
77 TransSector_dim_kernel<<<1, 1>>>(dRes.data(), this->ptr());
78 cuCHECK(cudaDeviceSynchronize());
79 return dRes[0];
80}
Object_t * ptr() const
Definition ObjectOnGPU.cuh:144
cuCHECK(cudaFuncGetAttributes(&attr, MatrixElementsInSector))

◆ operator=() [1/2]

template<typename RealType >
ObjectOnGPU & ObjectOnGPU< TransSector< RealType > >::operator= ( ObjectOnGPU< TransSector< RealType > > &&  other)
inline

Move assignment operator.

Parameters
other
Returns
*this
59 {
60 debug_printf("%s:\n\tMove assignment operator\n\n", __PRETTY_FUNCTION__);
61 ObjectOnGPU_Base< TransSector<RealType> >::operator=(std::move(other));
62 return *this;
63 }

◆ operator=() [2/2]

template<typename RealType >
ObjectOnGPU & ObjectOnGPU< TransSector< RealType > >::operator= ( ObjectOnGPU< TransSector< RealType > > const &  other)
delete

Copy assignment operator.

Parameters
other
Returns
*this

The documentation for this class was generated from the following file: