Documentation for module dbcsr_methods

Base methods on DBCSR data structures

source: dbcsr_methods.F
Loading...

Generic procedures:

dbcsr_destroy_array

public Subroutines/Functions:

FUNCTION
INTEGER PURE
dbcsr_blk_column_size (matrix, column)
Returns the blocked column size of a column
FUNCTION
INTEGER PURE
dbcsr_blk_col_offset (matrix, col)
...
FUNCTION
INTEGER PURE
dbcsr_blk_row_offset (matrix, row)
...
FUNCTION
INTEGER PURE
dbcsr_blk_row_size (matrix, row)
Returns the blocked row size of a row
FUNCTION
INTEGER
dbcsr_col_block_offsets (matrix)
...
FUNCTION
INTEGER
dbcsr_col_block_sizes (matrix)
...
Returns the data area
...
Releases and potentially destrops a distribution
Returns the type of memory used for data in the matrix
FUNCTION
INTEGER
dbcsr_get_data_size (matrix)
Returns the allocated data size of a DBCSR matrix
FUNCTION
INTEGER
dbcsr_get_data_size_used (matrix)
Count actual data storage used for matrix data.
FUNCTION
INTEGER PURE
dbcsr_get_data_type (matrix)
Returns the data type stored in the matrix
Returns the type of memory used for the index in the matrix
FUNCTION
CHARACTER PURE
dbcsr_get_matrix_type (matrix)
Returns the matrix type
FUNCTION
INTEGER PURE
dbcsr_get_num_blocks (matrix)
Returns the number of blocks in the matrix
FUNCTION
INTEGER PURE
dbcsr_get_nze (matrix)
Returns the number of non-zero elements in the matrix
FUNCTION
CHARACTER PURE
dbcsr_get_replication_type (matrix)
Returns the data type stored in the matrix
FUNCTION
LOGICAL PURE
dbcsr_has_symmetry (matrix)
Whether matrix has symmetry
Retains a reference to an image distribution
Initialized an image distribution
Releases a reference to and possible deallocates an image distribution
FUNCTION
INTEGER
dbcsr_max_col_size (matrix)
...
FUNCTION
INTEGER
dbcsr_max_row_size (matrix)
...
Removes an MPI cartesian process grid
Releases and potentially destrops an mp_env
Destroys a mutable data type
Initializes a mutable data type
FUNCTION
LOGICAL PURE
dbcsr_mutable_instantiated (mutable)
Deregisters a reference to the mutable data type
Creates a new mutable instance.
Deregisters a reference to the mutable data type
FUNCTION
dbcsr_name (matrix)
...
FUNCTION
INTEGER
dbcsr_nblkcols_local (matrix)
...
FUNCTION
INTEGER
dbcsr_nblkcols_total (matrix)
...
FUNCTION
INTEGER
dbcsr_nblkrows_local (matrix)
...
FUNCTION
INTEGER
dbcsr_nblkrows_total (matrix)
...
FUNCTION
INTEGER
dbcsr_nfullcols_local (matrix)
...
FUNCTION
INTEGER
dbcsr_nfullcols_total (matrix)
...
FUNCTION
INTEGER
dbcsr_nfullrows_local (matrix)
...
FUNCTION
INTEGER
dbcsr_nfullrows_total (matrix)
...
SUBROUTINE RECURSIVE
dbcsr_release (matrix)
Releases a reference for a DBCSR matrix
...
FUNCTION
INTEGER
dbcsr_row_block_offsets (matrix)
...
FUNCTION
INTEGER
dbcsr_row_block_sizes (matrix)
...
...
FUNCTION
LOGICAL PURE
dbcsr_use_mutable (matrix)
Returns whether work matrices should use the mutable data type
FUNCTION
LOGICAL PURE
dbcsr_valid_index (matrix)
Returns whether the index structure of the matrix is valid.
FUNCTION
LOGICAL PURE
dbcsr_wm_use_mutable (wm)
Returns whether this work matrix uses the mutable type

Module variables:

INTEGER
:: dbcsr_matrix_counter = 111111

Generic procedure dbcsr_destroy_array

...

INTENT(inout)
:: marray ×
INTENT(inout)
:: marray ×

PURE FUNCTIONdbcsr_blk_column_size(matrix, column)

Returns the blocked column size of a column

Return Value ::
INTEGER
blocked row size
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix DBCSR matrix
INTEGER,
INTENT(in)
:: column column number

PURE FUNCTIONdbcsr_blk_col_offset(matrix, col)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...
INTEGER,
INTENT(in)
:: col ...

PURE FUNCTIONdbcsr_blk_row_offset(matrix, row)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...
INTEGER,
INTENT(in)
:: row ...

PURE FUNCTIONdbcsr_blk_row_size(matrix, row)

Returns the blocked row size of a row

Return Value ::
INTEGER
blocked row size
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix DBCSR matrix
INTEGER,
INTENT(in)
:: row row number

FUNCTIONdbcsr_col_block_offsets(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_col_block_sizes(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_data_area(matrix)

Returns the data area

Return Value ::
data area
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix from which to get data

FUNCTIONdbcsr_distribution(matrix)

...

Return Value ::
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

SUBROUTINEdbcsr_distribution_release(dist)

Releases and potentially destrops a distribution

Arguments:
INTENT(inout)
:: dist ...

FUNCTIONdbcsr_get_data_memory_type(matrix)

Returns the type of memory used for data in the matrix

Return Value ::
memory type used for data
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

FUNCTIONdbcsr_get_data_size(matrix)

Returns the allocated data size of a DBCSR matrix

Return Value ::
INTEGER
size of data
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix

FUNCTIONdbcsr_get_data_size_used(matrix)

Count actual data storage used for matrix data.

Return Value ::
INTEGER
Data size used by matrix
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix Count data of this matrix

PURE FUNCTIONdbcsr_get_data_type(matrix)

Returns the data type stored in the matrix

Return Value ::
INTEGER
data_type (see dbcsr_types.F for possible values)
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

FUNCTIONdbcsr_get_index_memory_type(matrix)

Returns the type of memory used for the index in the matrix

Return Value ::
memory type used for the index
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

PURE FUNCTIONdbcsr_get_matrix_type(matrix)

Returns the matrix type

Return Value ::
CHARACTER
matrix_type (see dbcsr_types.F for possible values)
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

PURE FUNCTIONdbcsr_get_num_blocks(matrix)

Returns the number of blocks in the matrix

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix from which to get data

PURE FUNCTIONdbcsr_get_nze(matrix)

Returns the number of non-zero elements in the matrix

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix from which to get data

PURE FUNCTIONdbcsr_get_replication_type(matrix)

Returns the data type stored in the matrix

Return Value ::
CHARACTER
repl_type (see dbcsr_types.F for possible values)
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

PURE FUNCTIONdbcsr_has_symmetry(matrix)

Whether matrix has symmetry

Return Value ::
LOGICAL
matrix has symmetry
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix query this matrix

SUBROUTINEdbcsr_image_dist_hold(imgdist)

Retains a reference to an image distribution

Arguments:
INTENT(inout)
:: imgdist ...

SUBROUTINEdbcsr_image_dist_init(imgdist)

Initialized an image distribution

Arguments:
INTENT(out)
:: imgdist ...

SUBROUTINEdbcsr_image_dist_release(imgdist)

Releases a reference to and possible deallocates an image distribution

Arguments:
INTENT(inout)
:: imgdist ...

FUNCTIONdbcsr_max_col_size(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_max_row_size(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

SUBROUTINEdbcsr_mp_grid_remove(mp_env)

Removes an MPI cartesian process grid

Arguments:
INTENT(inout)
:: mp_env multiprocessor environment

SUBROUTINEdbcsr_mp_release(mp_env)

Releases and potentially destrops an mp_env

Arguments:
INTENT(inout)
:: mp_env multiprocessor environment

SUBROUTINEdbcsr_mutable_destroy(mutable)

Destroys a mutable data type

Arguments:
INTENT(inout)
:: mutable mutable data

SUBROUTINEdbcsr_mutable_init(mutable)

Initializes a mutable data type

Arguments:
INTENT(out)
:: mutable mutable data

PURE FUNCTIONdbcsr_mutable_instantiated(mutable)

Deregisters a reference to the mutable data type

Return Value ::
LOGICAL
whether the object is instantiated
Arguments:
INTENT(in)
:: mutable mutable data

SUBROUTINEdbcsr_mutable_new(mutable, data_type)

Creates a new mutable instance.

Arguments:
INTENT(inout)
:: mutable mutable data
INTEGER,
INTENT(in)
:: data_type data type to be stored here (see dbcsr_types for possibilities)

SUBROUTINEdbcsr_mutable_release(mutable)

Deregisters a reference to the mutable data type

Arguments:
INTENT(inout)
:: mutable mutable data

FUNCTIONdbcsr_name(matrix)

...

Return Value ::
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nblkcols_local(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nblkcols_total(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nblkrows_local(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nblkrows_total(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nfullcols_local(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nfullcols_total(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nfullrows_local(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_nfullrows_total(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

RECURSIVE SUBROUTINEdbcsr_release(matrix)

Releases a reference for a DBCSR matrix

Arguments:
TYPE(dbcsr_type),
INTENT(inout)
:: matrix DBCSR matrix

SUBROUTINEdbcsr_release_locals(matrix)

...

Arguments:
TYPE(dbcsr_type),
INTENT(inout)
:: matrix ...

FUNCTIONdbcsr_row_block_offsets(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

FUNCTIONdbcsr_row_block_sizes(matrix)

...

Return Value ::
INTEGER
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix ...

SUBROUTINEdbcsr_setname(matrix, newname)

...

Arguments:
TYPE(dbcsr_type),
INTENT(inout)
:: matrix ...
CHARACTER(*),
INTENT(in)
:: newname ...

PURE FUNCTIONdbcsr_use_mutable(matrix)

Returns whether work matrices should use the mutable data type

Return Value ::
LOGICAL
use the mutable and not append-only working structures
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix matrix

PURE FUNCTIONdbcsr_valid_index(matrix)

Returns whether the index structure of the matrix is valid.

Return Value ::
LOGICAL
index validity
Arguments:
TYPE(dbcsr_type),
INTENT(in)
:: matrix verify index validity of this matrix

PURE FUNCTIONdbcsr_wm_use_mutable(wm)

Returns whether this work matrix uses the mutable type

Return Value ::
LOGICAL
use the mutable and not append-only working structures
Arguments:
INTENT(in)
:: wm work matrix

SUBROUTINEdbcsr_destroy_1d_array(marray)

Releases all matrices in a 1-d arrray.

Arguments:
INTENT(inout)
:: marray matrix array

SUBROUTINEdbcsr_destroy_2d_array(marray)

Releases all matrices in 2-d arrray.

Arguments:
INTENT(inout)
:: marray matrix array