24 #ifndef COM_DAFER45_TBTK_DEFAULT_MAP
25 #define COM_DAFER45_TBTK_DEFAULT_MAP
27 #include "TBTK/FockStateMap/FockStateMap.h"
32 namespace FockStateMap{
34 template<
typename BIT_REGISTER>
35 class DefaultMap :
public FockStateMap<BIT_REGISTER>{
38 DefaultMap(
unsigned int exponentialDimension);
41 virtual ~DefaultMap();
44 virtual unsigned int getBasisSize()
const;
47 virtual unsigned int getBasisIndex(
const FockState<BIT_REGISTER> &fockState)
const;
50 virtual FockState<BIT_REGISTER> getFockState(
unsigned int index)
const;
54 template<
typename BIT_REGISTER>
55 DefaultMap<BIT_REGISTER>::DefaultMap(
56 unsigned int exponentialDimension
58 FockStateMap<BIT_REGISTER>(exponentialDimension)
62 template<
typename BIT_REGISTER>
63 DefaultMap<BIT_REGISTER>::~DefaultMap(){
66 template<
typename BIT_REGISTER>
67 unsigned int DefaultMap<BIT_REGISTER>::getBasisSize()
const{
68 return (1 << FockStateMap<BIT_REGISTER>::getExponentialDimension());