hilbert_space_size Module

WARNING The determinants created in this way are NOT* uniform. Determinants of a certain excitation level are more likely to be generated than others. The bias towards a given determinant is given by: (NEl-ExcitLev) Choose (iExcitLevTest-ExcitLev) This routine finds the size of the determinant space in terms, including all symmetry allowed determinants. This is written to IUNIT. This is only available for molecular (i.e. abelian) systems with a maximum of eigth irreps. This is done in a very crude way. Feel free to optimise it!



Contents


Subroutines

public subroutine FindSymMCSizeExcitLevel(IUNIT)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: IUNIT

public subroutine CreateRandomExcitLevDetUnbias(iExcitLevTest, FDet, FDetiLut, iLut, ExcitLev, Attempts)

Arguments

Type IntentOptional Attributes Name
integer :: iExcitLevTest
integer :: FDet(NEl)
integer(kind=n_int) :: FDetiLut(0:NIfTot)
integer(kind=n_int) :: iLut(0:NIfTot)
integer :: ExcitLev
integer :: Attempts

public subroutine create_rand_heisenberg_det(ilut)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(out) :: ilut(0:NIfTot)

public subroutine CreateRandomExcitLevDet(iExcitLevTest, FDet, FDetiLut, iLut, ExcitLev, Attempts)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: iExcitLevTest
integer, intent(in) :: FDet(NEl)
integer(kind=n_int), intent(in) :: FDetiLut(0:NIfTot)
integer(kind=n_int), intent(out) :: iLut(0:NIfTot)
integer, intent(out) :: ExcitLev
integer, intent(out) :: Attempts

public subroutine create_rand_det_no_sym(ilut)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(out) :: ilut(0:NIfTot)

public subroutine FindSymMCSizeofSpace(IUNIT)

Arguments

Type IntentOptional Attributes Name
integer :: IUNIT

public subroutine FindSymSizeofSpace(IUNIT)

Arguments

Type IntentOptional Attributes Name
integer :: IUNIT

public subroutine FindSymSizeofTruncSpace(IUNIT)

Arguments

Type IntentOptional Attributes Name
integer :: IUNIT