(git:6a2e663)
dbt_test Module Reference

General methods for testing DBT tensors. More...

Functions/Subroutines

subroutine, public dbt_test_formats (ndims, mp_comm, unit_nr, verbose, blk_size_1, blk_size_2, blk_size_3, blk_size_4, blk_ind_1, blk_ind_2, blk_ind_3, blk_ind_4)
 Test equivalence of all tensor formats, using a random distribution. More...
 
subroutine, public dbt_setup_test_tensor (tensor, mp_comm, enumerate, blk_ind_1, blk_ind_2, blk_ind_3, blk_ind_4)
 Allocate and fill test tensor - entries are enumerated by their index s.t. they only depend on global properties of the tensor but not on distribution, matrix representation, etc. More...
 
subroutine, public dbt_contract_test (alpha, tensor_1, tensor_2, beta, tensor_3, contract_1, notcontract_1, contract_2, notcontract_2, map_1, map_2, unit_nr, bounds_1, bounds_2, bounds_3, log_verbose, write_int)
 test tensor contraction More...
 
real(kind=dp) function, public dbt_checksum (tensor)
 checksum of a tensor consistent with block_checksum More...
 
subroutine, public dbt_reset_randmat_seed ()
 Reset the seed used for generating random matrices to default value. More...
 

Detailed Description

General methods for testing DBT tensors.

Author
Patrick Seewald

Function/Subroutine Documentation

◆ dbt_test_formats()

subroutine, public dbt_test::dbt_test_formats ( integer, intent(in)  ndims,
type(mp_comm_type), intent(in)  mp_comm,
integer, intent(in)  unit_nr,
logical, intent(in)  verbose,
integer, dimension(:), intent(in), optional  blk_size_1,
integer, dimension(:), intent(in), optional  blk_size_2,
integer, dimension(:), intent(in), optional  blk_size_3,
integer, dimension(:), intent(in), optional  blk_size_4,
integer, dimension(:), intent(in), optional  blk_ind_1,
integer, dimension(:), intent(in), optional  blk_ind_2,
integer, dimension(:), intent(in), optional  blk_ind_3,
integer, dimension(:), intent(in), optional  blk_ind_4 
)

Test equivalence of all tensor formats, using a random distribution.

Parameters
blk_size_iblock sizes along respective dimension
blk_ind_iindex along respective dimension of non-zero blocks
ndimstensor rank
unit_nroutput unit, needs to be a valid unit number on all mpi ranks
verboseif .TRUE., print all tensor blocks
Author
Patrick Seewald

Definition at line 173 of file dbt_test.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dbt_setup_test_tensor()

subroutine, public dbt_test::dbt_setup_test_tensor ( type(dbt_type), intent(inout)  tensor,
class(mp_comm_type), intent(in)  mp_comm,
logical, intent(in)  enumerate,
integer, dimension(:), intent(in), optional  blk_ind_1,
integer, dimension(:), intent(in), optional  blk_ind_2,
integer, dimension(:), intent(in), optional  blk_ind_3,
integer, dimension(:), intent(in), optional  blk_ind_4 
)

Allocate and fill test tensor - entries are enumerated by their index s.t. they only depend on global properties of the tensor but not on distribution, matrix representation, etc.

Parameters
mp_commcommunicator
blk_ind_iindex along respective dimension of non-zero blocks
Author
Patrick Seewald

Definition at line 475 of file dbt_test.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dbt_contract_test()

subroutine, public dbt_test::dbt_contract_test ( real(dp), intent(in)  alpha,
type(dbt_type), intent(inout)  tensor_1,
type(dbt_type), intent(inout)  tensor_2,
real(dp), intent(in)  beta,
type(dbt_type), intent(inout)  tensor_3,
integer, dimension(:), intent(in)  contract_1,
integer, dimension(:), intent(in)  notcontract_1,
integer, dimension(:), intent(in)  contract_2,
integer, dimension(:), intent(in)  notcontract_2,
integer, dimension(:), intent(in)  map_1,
integer, dimension(:), intent(in)  map_2,
integer, intent(in)  unit_nr,
integer, dimension(2, size(contract_1)), optional  bounds_1,
integer, dimension(2, size(notcontract_1)), optional  bounds_2,
integer, dimension(2, size(notcontract_2)), optional  bounds_3,
logical, intent(in), optional  log_verbose,
logical, intent(in), optional  write_int 
)

test tensor contraction

Note
for testing/debugging, simply replace a call to dbt_contract with a call to this routine
Author
Patrick Seewald

Definition at line 826 of file dbt_test.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dbt_checksum()

real(kind=dp) function, public dbt_test::dbt_checksum ( type(dbt_type), intent(in)  tensor)

checksum of a tensor consistent with block_checksum

Author
Patrick Seewald

Definition at line 1184 of file dbt_test.F.

Here is the caller graph for this function:

◆ dbt_reset_randmat_seed()

subroutine, public dbt_test::dbt_reset_randmat_seed

Reset the seed used for generating random matrices to default value.

Author
Patrick Seewald

Definition at line 1194 of file dbt_test.F.

Here is the caller graph for this function: