Documentation for module dbcsr_io

DBCSR input/output

source: dbcsr_io.F
Loading...

public Subroutines/Functions:

Reads a DBCSR matrix from a file
Writes a DBCSR matrix in a file file's header consists of 3 sub-headers: sub-header1 contains: 1 string: (of length version_len) the current version of this routine, 1 string: (of length default_string_length) matrix_name, 1 character: matrix_type, 4 integers: numnodes, data_type, nblkrows_total, nblkcols_total, 2 vectors: row_blk_size (length = nblkrows_total), col_blk_size (length = nblkcols_total), sub-header2 contains: 2 integers: nblks, data_area_size, sub-header3 contains: 3 vectors: row_p (length = nblkrows_total+1), col_i (length = nblks), blk_p (length = nblks); and the file's body contains the block data
Prints a BCSR matrix (block-style, not full)
Prints the sum of the elements for each block

SUBROUTINEdbcsr_binary_read(filepath, distribution, groupid, matrix_new)

Reads a DBCSR matrix from a file

Arguments:
CHARACTER(*),
INTENT(in)
:: filepath path to the file
INTENT(in)
:: distribution row and column distribution
INTEGER,
INTENT(in),
OPTIONAL
:: groupid message passing environment identifier
TYPE(dbcsr_type),
INTENT(inout)
:: matrix_new DBCSR matrix

SUBROUTINEdbcsr_binary_write(matrix, filepath)

Writes a DBCSR matrix in a file file's header consists of 3 sub-headers: sub-header1 contains: 1 string: (of length version_len) the current version of this routine, 1 string: (of length default_string_length) matrix_name, 1 character: matrix_type, 4 integers: numnodes, data_type, nblkrows_total, nblkcols_total, 2 vectors: row_blk_size (length = nblkrows_total), col_blk_size (length = nblkcols_total), sub-header2 contains: 2 integers: nblks, data_area_size, sub-header3 contains: 3 vectors: row_p (length = nblkrows_total+1), col_i (length = nblks), blk_p (length = nblks); and the file's body contains the block data

Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix DBCSR matrix
CHARACTER(*),
INTENT(in)
:: filepath path to the file

SUBROUTINEdbcsr_print(matrix, nodata, matlab_format, variable_name, unit_nr)

Prints a BCSR matrix (block-style, not full)

Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix
LOGICAL,
INTENT(in),
OPTIONAL
:: nodata don't print actual data
LOGICAL,
INTENT(in),
OPTIONAL
:: matlab_format ...
CHARACTER(*),
INTENT(in),
OPTIONAL
:: variable_name ...
INTEGER,
INTENT(in),
OPTIONAL
:: unit_nr ...

SUBROUTINEdbcsr_print_block_sum(matrix, unit_nr)

Prints the sum of the elements for each block

Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix
INTEGER,
INTENT(in),
OPTIONAL
:: unit_nr ...