rdm_data_utils Module



Contents


Subroutines

public subroutine init_rdm_list_t(rdm, sign_length, max_nelements, nhashes)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(out) :: rdm
integer, intent(in) :: sign_length
integer, intent(in) :: max_nelements
integer, intent(in) :: nhashes

public subroutine init_rdm_spawn_t(spawn, nrows, sign_length, max_nelements_send, nhashes)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(out) :: spawn
integer, intent(in) :: nrows
integer, intent(in) :: sign_length
integer, intent(in) :: max_nelements_send
integer, intent(in) :: nhashes

public subroutine init_en_pert_t(en_pert, sign_length, max_ndets, nhashes)

Arguments

Type IntentOptional Attributes Name
type(en_pert_t), intent(out) :: en_pert
integer, intent(in) :: sign_length
integer, intent(in) :: max_ndets
integer, intent(in) :: nhashes

public subroutine init_one_rdm_t(one_rdm, norbs)

Arguments

Type IntentOptional Attributes Name
type(one_rdm_t), intent(out) :: one_rdm
integer, intent(in) :: norbs

public subroutine init_rdm_definitions_t(rdm_defs, nrdms_standard, nrdms_transition, states_for_transition_rdm, filename)

Arguments

Type IntentOptional Attributes Name
type(rdm_definitions_t), intent(out) :: rdm_defs
integer, intent(in) :: nrdms_standard
integer, intent(in) :: nrdms_transition
integer, intent(in), allocatable :: states_for_transition_rdm(:,:)
character(len=*), intent(in), optional :: filename

public subroutine dealloc_rdm_list_t(rdm)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(inout) :: rdm

public subroutine dealloc_rdm_spawn_t(spawn)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(inout) :: spawn

public subroutine dealloc_en_pert_t(en_pert)

Arguments

Type IntentOptional Attributes Name
type(en_pert_t), intent(inout) :: en_pert

public subroutine dealloc_one_rdm_t(one_rdm)

Arguments

Type IntentOptional Attributes Name
type(one_rdm_t), intent(inout) :: one_rdm

public pure subroutine clear_rdm_list_t(rdm)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(inout) :: rdm

public pure subroutine clear_one_rdms(one_rdms)

Arguments

Type IntentOptional Attributes Name
type(one_rdm_t), intent(inout) :: one_rdms(:)

public pure subroutine calc_combined_rdm_label(i, j, k, l, ijkl, ij_out, kl_out)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i
integer, intent(in) :: j
integer, intent(in) :: k
integer, intent(in) :: l
integer(kind=int_rdm), intent(out) :: ijkl
integer, intent(out), optional :: ij_out
integer, intent(out), optional :: kl_out

public pure subroutine calc_separate_rdm_labels(ijkl, ij, kl, i, j, k, l)

Arguments

Type IntentOptional Attributes Name
integer(kind=int_rdm), intent(in) :: ijkl
integer, intent(out) :: ij
integer, intent(out) :: kl
integer, intent(out) :: i
integer, intent(out) :: j
integer, intent(out) :: k
integer, intent(out) :: l

public pure subroutine extract_sign_rdm(rdm_entry, real_sign)

Arguments

Type IntentOptional Attributes Name
integer(kind=int_rdm), intent(in) :: rdm_entry(0:)
real(kind=dp), intent(out) :: real_sign(size(rdm_entry)-1)

public pure subroutine encode_sign_rdm(rdm_entry, real_sign)

Arguments

Type IntentOptional Attributes Name
integer(kind=int_rdm), intent(inout) :: rdm_entry(0:)
real(kind=dp), intent(in) :: real_sign(1:size(rdm_entry)-1)

public pure subroutine extract_sign_EN(sign_length, ilut, real_sign)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: sign_length
integer(kind=n_int), intent(in) :: ilut(0:)
real(kind=dp), intent(out) :: real_sign(sign_length)

public pure subroutine encode_sign_EN(sign_length, ilut, real_sign)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: sign_length
integer(kind=n_int), intent(inout) :: ilut(0:)
real(kind=dp), intent(in) :: real_sign(sign_length)

public subroutine add_to_rdm_spawn_t(spawn, i, j, k, l, contrib_sign, spinfree, nearly_full)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(inout) :: spawn
integer, intent(in) :: i
integer, intent(in) :: j
integer, intent(in) :: k
integer, intent(in) :: l
real(kind=dp), intent(in) :: contrib_sign(spawn%rdm_send%sign_length)
logical, intent(in) :: spinfree
logical, intent(inout), optional :: nearly_full

public subroutine communicate_rdm_spawn_t(spawn, rdm_recv)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(inout) :: spawn
type(rdm_list_t), intent(inout) :: rdm_recv

public subroutine communicate_rdm_spawn_t_wrapper(spawn, rdm_recv, finished, all_finished)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(inout) :: spawn
type(rdm_list_t), intent(inout), optional :: rdm_recv
logical, intent(in) :: finished
logical, intent(inout) :: all_finished

public subroutine try_rdm_list_realloc(rdm_recv, new_nelements, recv_list)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(inout) :: rdm_recv
integer, intent(in) :: new_nelements
logical, intent(in) :: recv_list

public subroutine try_rdm_spawn_realloc(spawn, proc, spinfree)

Arguments

Type IntentOptional Attributes Name
type(rdm_spawn_t), intent(inout) :: spawn
integer, intent(in) :: proc
logical, intent(in) :: spinfree

public subroutine add_rdm_1_to_rdm_2(rdm_1, rdm_2, scale_factor)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(in) :: rdm_1
type(rdm_list_t), intent(inout) :: rdm_2
real(kind=dp), intent(in), optional :: scale_factor

public subroutine scale_rdm(rdm, scale_factor)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(inout) :: rdm
real(kind=dp) :: scale_factor(rdm%sign_length)

public subroutine annihilate_rdm_list(rdm)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(inout) :: rdm

public subroutine add_to_en_pert_t(en_pert, nI, ilut, contrib_sign)

Arguments

Type IntentOptional Attributes Name
type(en_pert_t), intent(inout) :: en_pert
integer, intent(in) :: nI(nel)
integer(kind=n_int), intent(in) :: ilut(0:NIfTot)
real(kind=dp), intent(in) :: contrib_sign(en_pert%sign_length)

public subroutine calc_rdm_trace(rdm, rdm_trace)

Arguments

Type IntentOptional Attributes Name
type(rdm_list_t), intent(in) :: rdm
real(kind=dp), intent(out) :: rdm_trace(rdm%sign_length)