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
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=n_int), | intent(in) | :: | ilut_list(0:,:) | |||
| integer, | intent(in) | :: | space_size |
size of the index space |
||
| type(shared_rhash_t), | intent(out) | :: | hash_table |
shared read-only hashtable to index the ilut_list |
||
| integer, | intent(in), | optional | :: | ht_size |
optional, the size of the hash table. Defaults to space_size |
subroutine initialise_shared_rht_impl(ilut_list, space_size, hash_table, ht_size) use SystemData, only: nel integer(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 integer :: ht_size_ def_default(ht_size_, ht_size, space_size) call initialise_shared_rht_expl(ilut_list, space_size, hash_table, nel, ht_size_) end subroutine initialise_shared_rht_impl