dbcsr_t_make_compatible_blocks Subroutine

public subroutine dbcsr_t_make_compatible_blocks(tensor1, tensor2, tensor1_split, tensor2_split, order, nodata1, nodata2, move_data)

split two tensors with same total sizes but different block sizes such that they have equal block sizes \move_data memory optimization: transfer data s.t. tensor1 and tensor2 may be empty on return

Arguments

Type IntentOptional Attributes Name
type(dbcsr_t_type), intent(inout) :: tensor1

tensor 1 in tensor 2 in

type(dbcsr_t_type), intent(inout) :: tensor2

tensor 1 in tensor 2 in

type(dbcsr_t_type), intent(out) :: tensor1_split

tensor 1 with split blocks tensor 2 with split blocks

type(dbcsr_t_type), intent(out) :: tensor2_split

tensor 1 with split blocks tensor 2 with split blocks

integer, intent(in), optional, DIMENSION(ndims_tensor(tensor1)) :: order
logical, intent(in), optional :: nodata1

don't copy data of tensor 1 don't copy data of tensor 2

logical, intent(in), optional :: nodata2

don't copy data of tensor 1 don't copy data of tensor 2

logical, intent(in), optional :: move_data

don't copy data of tensor 1 don't copy data of tensor 2