hdf5_popsfile Module



Contents


Variables

Type Visibility Attributes Name Initial
character(len=*), private, parameter :: nm_vcs_ver = 'vcs_ver'
character(len=*), private, parameter :: nm_comp_time = 'compiled_at'
character(len=*), private, parameter :: nm_comp_date = 'compiled_on'
character(len=*), private, parameter :: nm_date = 'date'
character(len=*), private, parameter :: nm_seq_no = 'seq_no'
character(len=*), private, parameter :: nm_comp_config = 'config'
character(len=*), private, parameter :: nm_comp_status = 'status'
character(len=*), private, parameter :: nm_calc_grp = 'calculation'
character(len=*), private, parameter :: nm_random_hash = 'random_hash'
character(len=*), private, parameter :: nm_iters = 'completed_iters'
character(len=*), private, parameter :: nm_tot_imag = 'tot_imag_time'
character(len=*), private, parameter :: nm_shift = 'shift'
character(len=*), private, parameter :: nm_tAuto = 'tAutoAdaptiveShift'
character(len=*), private, parameter :: nm_tAP = 'tAccumPops'
character(len=*), private, parameter :: nm_accum_counter = 'iAccumPopsCounter'
character(len=*), private, parameter :: nm_sc_blooms = 'tScaleBlooms'
character(len=*), private, parameter :: nm_tau_grp = 'tau_search'
character(len=*), private, parameter :: nm_gam_sing = 'gamma_sing'
character(len=*), private, parameter :: nm_gam_doub = 'gamma_doub'
character(len=*), private, parameter :: nm_gam_trip = 'gamma_trip'
character(len=*), private, parameter :: nm_gam_opp = 'gamma_opp'
character(len=*), private, parameter :: nm_gam_par = 'gamma_par'
character(len=*), private, parameter :: nm_en_sing = 'enough_sing'
character(len=*), private, parameter :: nm_en_doub = 'enough_doub'
character(len=*), private, parameter :: nm_en_trip = 'enough_trip'
character(len=*), private, parameter :: nm_en_opp = 'enough_opp'
character(len=*), private, parameter :: nm_en_par = 'enough_par'
character(len=*), private, parameter :: nm_cnt_sing = 'cnt_sing'
character(len=*), private, parameter :: nm_cnt_doub = 'cnt_doub'
character(len=*), private, parameter :: nm_cnt_trip = 'cnt_trip'
character(len=*), private, parameter :: nm_cnt_opp = 'cnt_opp'
character(len=*), private, parameter :: nm_cnt_par = 'cnt_par'
character(len=*), private, parameter :: nm_max_death = 'max_death'
character(len=*), private, parameter :: nm_psingles = 'psingles'
character(len=*), private, parameter :: nm_pdoubles = 'pdoubles'
character(len=*), private, parameter :: nm_ptriples = 'ptriples'
character(len=*), private, parameter :: nm_pparallel = 'pparallel'
character(len=*), private, parameter :: nm_tau = 'tau'
character(len=*), private, parameter :: nm_hist_tau = 'hist_tau_search'
character(len=*), private, parameter :: nm_acc_grp = 'accumulators'
character(len=*), private, parameter :: nm_sum_no_ref = 'sum_no_ref'
character(len=*), private, parameter :: nm_sum_enum = 'sum_enum'
character(len=*), private, parameter :: nm_wfn_grp = 'wavefunction'
character(len=*), private, parameter :: nm_rep_width = 'width'
character(len=*), private, parameter :: nm_sgn_len = 'lenof_sign'
character(len=*), private, parameter :: nm_num_dets = 'num_dets'
character(len=*), private, parameter :: nm_ilut = 'ilut'
character(len=*), private, parameter :: nm_sgns = 'sgns'
character(len=*), private, parameter :: nm_norm_sqr = 'norm_sqr'
character(len=*), private, parameter :: nm_num_parts = 'num_parts'
character(len=*), private, parameter :: nm_gdata = 'gdata'
character(len=*), private, parameter :: nm_gdata_old = 'fvals'
integer(kind=n_int), private, dimension(:, :), allocatable :: receivebuff
integer, private :: receivebuff_tag

Functions

public function read_popsfile_hdf5(dets) result(CurrWalkers)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(out) :: dets(:,:)

Return Value integer(kind=int64)

private function communicate_read_walkers_buff(sendcounts, gdata_comm, gdata_loc) result(num_received)

Arguments

Type IntentOptional Attributes Name
integer(kind=MPIArg), intent(in) :: sendcounts(0:nProcessors-1)
integer(kind=hsize_t), intent(inout) :: gdata_comm(:,:)
integer(kind=hsize_t), intent(inout), allocatable :: gdata_loc(:,:)

Return Value integer


Subroutines

public subroutine write_popsfile_hdf5(MaxEx, IterSuffix)

Arguments

Type IntentOptional Attributes Name
integer, intent(in), optional :: MaxEx
logical, intent(in), optional :: IterSuffix

private subroutine write_metadata(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine read_metadata(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine write_calc_data(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine write_tau_opt(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine write_accumulator_data(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine read_calc_data(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine read_tau_opt(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine read_accumulator_data(parent)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent

private subroutine write_walkers(parent, MaxEx)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent
integer, intent(in), optional :: MaxEx

private subroutine read_walkers(parent, dets, CurrWalkers)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: parent
integer(kind=n_int), intent(out) :: dets(:,:)
integer(kind=int64), intent(out) :: CurrWalkers

private subroutine read_walker_block_buff(ds_ilut, ds_sgns, ds_gdata, block_start, block_size, bit_rep_width, temp_ilut, temp_sgns, gdata_buf)

Arguments

Type IntentOptional Attributes Name
integer(kind=hid_t), intent(in) :: ds_ilut
integer(kind=hid_t), intent(in) :: ds_sgns
integer(kind=hid_t), intent(in) :: ds_gdata
integer(kind=hsize_t), intent(in) :: block_start
integer(kind=hsize_t), intent(in) :: block_size
integer(kind=int32), intent(in) :: bit_rep_width
integer(kind=hsize_t), dimension(:, :) :: temp_ilut
integer(kind=hsize_t), dimension(:, :) :: temp_sgns
integer(kind=hsize_t), dimension(:, :) :: gdata_buf

private subroutine distribute_and_add_walkers(block_size, gdata_read_handler, temp_ilut, temp_sgns, gdata_buf, dets, nreceived, CurrWalkers, norm, parts)

Arguments

Type IntentOptional Attributes Name
integer(kind=hsize_t) :: block_size
type(gdata_io_t), intent(in) :: gdata_read_handler
integer(kind=hsize_t) :: temp_ilut(:,:)
integer(kind=hsize_t) :: temp_sgns(:,:)
integer(kind=hsize_t) :: gdata_buf(:,:)
integer(kind=n_int), intent(out) :: dets(:,:)
integer :: nreceived
integer(kind=int64), intent(inout) :: CurrWalkers
real(kind=dp), intent(inout) :: norm(lenof_sign)
real(kind=dp), intent(inout) :: parts(lenof_sign)

private subroutine assign_dets_to_procs_buff(block_size, temp_ilut, temp_sgns, gdata_buf, gdata_loc, gdata_comm, sendcount)

Arguments

Type IntentOptional Attributes Name
integer(kind=hsize_t), intent(in) :: block_size
integer(kind=hsize_t), dimension(:, :) :: temp_ilut
integer(kind=hsize_t), dimension(:, :) :: temp_sgns
integer(kind=hsize_t), dimension(:, :) :: gdata_buf
integer(kind=hsize_t), dimension(:, :) :: gdata_loc
integer(kind=hsize_t), dimension(:, :) :: gdata_comm
integer(kind=MPIArg) :: sendcount(0:nProcessors-1)

private subroutine add_new_parts(dets, nreceived, CurrWalkers, norm, parts, gdata_write, gdata_read_handler)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(inout) :: dets(:,:)
integer, intent(in) :: nreceived
integer(kind=int64), intent(inout) :: CurrWalkers
real(kind=dp), intent(inout) :: norm(lenof_sign)
real(kind=dp), intent(inout) :: parts(lenof_sign)
integer(kind=hsize_t), intent(in) :: gdata_write(:,:)
type(gdata_io_t), intent(in) :: gdata_read_handler

private subroutine check_read_particles(nread_walkers, norm, parts, pops_det_count, pops_num_parts, pops_norm_sqr)

Arguments

Type IntentOptional Attributes Name
integer(kind=int64), intent(in) :: nread_walkers
real(kind=dp), intent(in) :: norm(lenof_sign)
real(kind=dp), intent(in) :: parts(lenof_sign)
integer(kind=int64), intent(in) :: pops_det_count
real(kind=dp), intent(in) :: pops_num_parts(lenof_sign)
real(kind=dp), intent(in) :: pops_norm_sqr(lenof_sign)

public subroutine add_pops_norm_contrib(ilut)

Arguments

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