sparse_arrays Module



Contents


Variables

Type Visibility Attributes Name Initial
type(sparse_matrix_real), public, allocatable, dimension(:) :: sparse_ham
integer(kind=TagIntType), public, allocatable, dimension(:, :) :: SparseHamilTags
real(kind=dp), public, allocatable, dimension(:) :: hamil_diag
integer(kind=TagIntType), public :: HDiagTag
type(trial_hashtable), public, allocatable, dimension(:) :: trial_ht
type(trial_hashtable), public, allocatable, dimension(:) :: con_ht
type(shared_rhash_t), public :: var_ht
type(sparse_matrix_real), public, allocatable, dimension(:) :: approx_ham

Derived Types

type, public ::  trial_hashtable

Components

Type Visibility Attributes Name Initial
integer(kind=n_int), public, allocatable, dimension(:, :) :: states
integer, public :: nclash

type, public ::  core_hashtable

Components

Type Visibility Attributes Name Initial
integer, public, allocatable, dimension(:) :: ind
integer, public :: nclash

Functions

public function is_var_state(ilut, nI) result(var_state)

Arguments

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

Return Value logical

public elemental function t_evolve_adjoint(run) result(transp)

Arguments

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

Return Value logical


Subroutines

public subroutine calculate_sparse_hamiltonian_non_hermitian(num_states, ilut_list)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: num_states
integer(kind=n_int), intent(in) :: ilut_list(0:NIfTot,num_states)

public subroutine calculate_sparse_hamiltonian(num_states, ilut_list)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: num_states
integer(kind=n_int), intent(in) :: ilut_list(0:NIfTot,num_states)

public subroutine calculate_sparse_ham_par(num_states, ilut_list, tPrintInfo)

Arguments

Type IntentOptional Attributes Name
integer(kind=MPIArg), intent(in) :: num_states(0:nProcessors-1)
integer(kind=n_int), intent(in) :: ilut_list(0:NIfTot,num_states(iProcIndex))
logical, intent(in) :: tPrintInfo

public subroutine calc_determ_hamil_sparse(rep)

Arguments

Type IntentOptional Attributes Name
type(core_space_t), intent(inout) :: rep

public subroutine calc_determ_hamil_sparse_hphf(rep)

Arguments

Type IntentOptional Attributes Name
type(core_space_t), intent(inout) :: rep

public subroutine calc_approx_hamil_sparse_hphf(rep)

Arguments

Type IntentOptional Attributes Name
type(core_space_t), intent(in) :: rep

public subroutine allocate_sparse_ham_row(sparse_matrix, row, sparse_row_size, sparse_matrix_name, sparse_tags)

Arguments

Type IntentOptional Attributes Name
type(sparse_matrix_real), intent(inout) :: sparse_matrix(:)
integer, intent(in) :: row
integer, intent(in) :: sparse_row_size
character(len=*), intent(in) :: sparse_matrix_name
integer(kind=TagIntType), intent(inout) :: sparse_tags(2)

public subroutine deallocate_core_hashtable(ht)

Arguments

Type IntentOptional Attributes Name
type(core_hashtable), intent(inout), allocatable :: ht(:)

public subroutine deallocate_trial_hashtable(ht)

Arguments

Type IntentOptional Attributes Name
type(trial_hashtable), intent(inout), allocatable :: ht(:)