StatMech
Loading...
Searching...
No Matches
ManyBodyOperatorSpaceBase< Derived > Class Template Reference

#include <OperatorSpace.hpp>

Inheritance diagram for ManyBodyOperatorSpaceBase< Derived >:
Inheritance graph
Collaboration diagram for ManyBodyOperatorSpaceBase< Derived >:
Collaboration graph

Public Types

using BaseSpace = typename HilbertSpaceTraits< Derived >::BaseSpace
 
using LocalSpace = typename HilbertSpaceTraits< Derived >::LocalSpace
 
- Public Types inherited from OperatorSpaceBase< Derived >
typedef Eigen::NumTraits< ScalarType >::Real Real
 

Public Member Functions

__host__ __device__ ManyBodyOperatorSpaceBase (BaseSpace const &baseSpace, int systemSize, LocalSpace const &locSpace)
 Construct a ManyBodyOperatorSpaceBase object by copying.
 
__host__ __device__ ManyBodyOperatorSpaceBase (BaseSpace &&baseSpace, int systemSize, LocalSpace &&locSpace)
 Construct a ManyBodyOperatorSpaceBase object by moving.
 
__host__ __device__ ManyBodyOperatorSpaceBase ()=default
 Default constructor.
 
__host__ __device__ ManyBodyOperatorSpaceBase (ManyBodyOperatorSpaceBase const &other)=default
 Copy constructor.
 
__host__ __device__ ManyBodyOperatorSpaceBase (ManyBodyOperatorSpaceBase &&other)=default
 Move constructor.
 
__host__ __device__ ~ManyBodyOperatorSpaceBase ()=default
 Destructor.
 
Operator overloads
__host__ __device__ ManyBodyOperatorSpaceBaseoperator= (ManyBodyOperatorSpaceBase const &other)=default
 Copy assignment operator.
 
__host__ __device__ ManyBodyOperatorSpaceBaseoperator= (ManyBodyOperatorSpaceBase &&other)=default
 Move assignment operator.
 
- Public Member Functions inherited from OperatorSpaceBase< Derived >
__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__ OperatorSpaceBaseoperator= (OperatorSpaceBase const &other)=default
 Copy assignment operator.
 
__host__ __device__ OperatorSpaceBaseoperator= (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< ScalarTypebasisOp (int opNum) const
 
- Public Member Functions inherited from ManyBodySpaceBase< Derived >
__host__ __device__ ManyBodySpaceBase (int systemSize, LocSpace_t const &locSpace)
 Constructor1.
 
__host__ __device__ ManyBodySpaceBase (int systemSize, LocSpace_t &&locSpace)
 Constructor2.
 
template<typename... Args>
__host__ __device__ ManyBodySpaceBase (int systemSize, Args... args)
 Constructor3.
 
__host__ __device__ ManyBodySpaceBase ()=default
 Default constructor.
 
__host__ __device__ ManyBodySpaceBase (ManyBodySpaceBase const &other)
 Copy constructor.
 
__host__ __device__ ManyBodySpaceBase (ManyBodySpaceBase &&other)
 Move constructor.
 
__host__ __device__ ~ManyBodySpaceBase ()=default
 Destructor.
 
__host__ __device__ ManyBodySpaceBaseoperator= (ManyBodySpaceBase const &other)=delete
 Copy assignment operator (deleted)
 
__host__ __device__ Derived & operator= (ManyBodySpaceBase &&other)
 Move assignment operator.
 
__host__ __device__ bool operator== (ManyBodySpaceBase const &other) const
 Equality operator.
 
__host__ __device__ LocSpace_t const & locSpace () const
 
__host__ __device__ int sysSize () const
 
__host__ __device__ int dimLoc () const
 
__host__ __device__ int locState (int state, int pos) const
 
__host__ Derived const & printInString (int basisNum) const
 Print a basis state specified by the input (basisNum) in a string of integers.
 
__host__ __device__ Eigen::RowVectorXi ordinalToConfig (int basisNum) const
 
template<class EigenDerived >
__host__ __device__ int configToOrdinal (Eigen::DenseBase< EigenDerived > &config) const
 
__host__ __device__ int reverse (int state) const
 Reverse the input state.
 
__host__ __device__ Vector_t const & parityPair () const
 
__host__ __device__ int parityPair (int state) const
 
__host__ __device__ void computeParityPair () const
 
__host__ __device__ int translate (int state, int trans) const
 Translate the input state to the left by one.
 
template<class EigenDerived >
__host__ __device__ int translate (int state, int trans, Eigen::DenseBase< EigenDerived > &work) const
 
__host__ __device__ int transEqDim () const
 
__host__ __device__ Vector_t const & transEqClassRep () const
 
__host__ __device__ int transEqClassRep (int id) const
 
__host__ __device__ int transEqClassRep (int id, int trans) const
 
__host__ __device__ Vector_t const & transPeriod () const
 
__host__ __device__ int transPeriod (int id) const
 
__host__ __device__ Vector_t const & stateToTransEqClass () const
 
__host__ __device__ int stateToTransEqClass (int state) const
 
__host__ __device__ int stateToTransPeriod (int state) const
 
__host__ __device__ void computeTransEqClass () const
 
- Public Member Functions inherited from HilbertSpace< Derived >
__host__ __device__ int dim () const
 
__host__ __device__ bool operator== (HilbertSpace const &other) const
 

Additional Inherited Members

- Protected Types inherited from ManyBodySpaceBase< Derived >
using Vector_t = Eigen::VectorX< int >
 
- Protected Attributes inherited from ManyBodySpaceBase< Derived >
int m_systemSize = 0
 
LocSpace_t m_locSpace
 
int m_transEqDim = -1
 
Vector_t m_transEqClassRep
 
Vector_t m_transPeriod
 
Vector_t m_stateToTransEqClass
 
Vector_t m_parityPair
 

Member Typedef Documentation

◆ BaseSpace

template<class Derived >
using ManyBodyOperatorSpaceBase< Derived >::BaseSpace = typename HilbertSpaceTraits< Derived >::BaseSpace

◆ LocalSpace

template<class Derived >
using ManyBodyOperatorSpaceBase< Derived >::LocalSpace = typename HilbertSpaceTraits< Derived >::LocalSpace

Constructor & Destructor Documentation

◆ ManyBodyOperatorSpaceBase() [1/5]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::ManyBodyOperatorSpaceBase ( BaseSpace const &  baseSpace,
int  systemSize,
LocalSpace const &  locSpace 
)
inline

Construct a ManyBodyOperatorSpaceBase object by copying.

Parameters
baseSpace
228 debug_constructor_printf(1(Custom Copy));
229 }
ManyBodySpinSpace defined by , where.
Definition HilbertSpace.hpp:130
__host__ __device__ LocSpace_t const & locSpace() const
Definition HilbertSpace.hpp:264
Definition OperatorSpace.hpp:12
__host__ __device__ BaseSpace const & baseSpace() const
Definition OperatorSpace.hpp:79

◆ ManyBodyOperatorSpaceBase() [2/5]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::ManyBodyOperatorSpaceBase ( BaseSpace &&  baseSpace,
int  systemSize,
LocalSpace &&  locSpace 
)
inline

Construct a ManyBodyOperatorSpaceBase object by moving.

Parameters
baseSpace
238 ManyBodySpaceBase<Derived>(systemSize, std::move(locSpace)) {
239 debug_constructor_printf(2(Custom Move));
240 }

◆ ManyBodyOperatorSpaceBase() [3/5]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::ManyBodyOperatorSpaceBase ( )
default

Default constructor.

◆ ManyBodyOperatorSpaceBase() [4/5]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::ManyBodyOperatorSpaceBase ( ManyBodyOperatorSpaceBase< Derived > const &  other)
default

Copy constructor.

◆ ManyBodyOperatorSpaceBase() [5/5]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::ManyBodyOperatorSpaceBase ( ManyBodyOperatorSpaceBase< Derived > &&  other)
default

Move constructor.

◆ ~ManyBodyOperatorSpaceBase()

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase< Derived >::~ManyBodyOperatorSpaceBase ( )
default

Destructor.

Member Function Documentation

◆ operator=() [1/2]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase & ManyBodyOperatorSpaceBase< Derived >::operator= ( ManyBodyOperatorSpaceBase< Derived > &&  other)
default

Move assignment operator.

Parameters
other

◆ operator=() [2/2]

template<class Derived >
__host__ __device__ ManyBodyOperatorSpaceBase & ManyBodyOperatorSpaceBase< Derived >::operator= ( ManyBodyOperatorSpaceBase< Derived > const &  other)
default

Copy assignment operator.

Parameters
other

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