dbcsr_t_create Interface

public interface dbcsr_t_create

Module Procedures

private subroutine dbcsr_t_create_new(tensor, name, dist, map1_2d, map2_2d, data_type, blk_size_1, blk_size_2, blk_size_3, blk_size_4)

create a tensor. For performance, the arguments map1_2d and map2_2d (controlling matrix representation of tensor) should be consistent with the the contraction to be performed (see documentation of dbcsr_t_contract).

Arguments

Type IntentOptional Attributes Name
type(dbcsr_t_type), intent(out) :: tensor
character(len=*), intent(in) :: name
type(dbcsr_t_distribution_type), intent(inout) :: dist
integer, intent(in), DIMENSION(:) :: map1_2d

which nd-indices to map to first 2d index and in which order

integer, intent(in), DIMENSION(:) :: map2_2d

which nd-indices to map to first 2d index and in which order

integer, intent(in), optional :: data_type
integer, intent(in), optional, DIMENSION(:) :: blk_size_1

blk sizes in each dimension

integer, intent(in), optional, DIMENSION(:) :: blk_size_2

blk sizes in each dimension

integer, intent(in), optional, DIMENSION(:) :: blk_size_3

blk sizes in each dimension

integer, intent(in), optional, DIMENSION(:) :: blk_size_4

blk sizes in each dimension

private subroutine dbcsr_t_create_template(tensor_in, tensor, name, dist, map1_2d, map2_2d, data_type)

create a tensor from template

Arguments

Type IntentOptional Attributes Name
type(dbcsr_t_type), intent(inout) :: tensor_in
type(dbcsr_t_type), intent(out) :: tensor
character(len=*), intent(in), optional :: name
type(dbcsr_t_distribution_type), intent(inout), optional :: dist
integer, intent(in), optional, DIMENSION(:) :: map1_2d
integer, intent(in), optional, DIMENSION(:) :: map2_2d
integer, intent(in), optional :: data_type

private subroutine dbcsr_t_create_matrix(matrix_in, tensor, order, name)

Create 2-rank tensor from matrix.

Arguments

Type IntentOptional Attributes Name
type(dbcsr_type), intent(in) :: matrix_in
type(dbcsr_t_type), intent(out) :: tensor
integer, intent(in), optional, DIMENSION(2) :: order
character(len=*), intent(in), optional :: name