initialise_shared_rht Interface

public interface initialise_shared_rht

Contents


Module Procedures

private subroutine initialise_shared_rht_impl(ilut_list, space_size, hash_table, ht_size)

Default initializer for shared read-only hash-tables, that defaults the determinant size to the number of electrons. This sets up a hash table storing the position of iluts in a given list, such that lookup is done with the shared_rht_lookup function that supports iluts @param[in] ilut_list list of iluts to be indexed by the hash table @param[in] space_size size of the index space @param[out] hash_table shared read-only hashtable to index the ilut_list @param[out] ht_size optional, the size of the hash table. Defaults to space_size

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut_list(0:,:)
integer, intent(in) :: space_size
type(shared_rhash_t), intent(out) :: hash_table
integer, intent(in), optional :: ht_size

private subroutine initialise_shared_rht_expl(ilut_list, space_size, hash_table, det_size, ht_size)

Explicit initializer for shared read-only hash-tables that allows to set the determinant size @param[in] ilut_list list of iluts to be indexed by the hash table @param[in] space_size size of the index space @param[out] hash_table shared read-only hashtable to index the ilut_list @param[in] det_size size of the determinants encoded in ilut_list (for convenience) @param[out] ht_size the size of the hash table, has to be specified herer!

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut_list(0:,:)
integer, intent(in) :: space_size
type(shared_rhash_t), intent(out) :: hash_table
integer, intent(in) :: det_size
integer, intent(in) :: ht_size