|
CP2K 2.4 (Revision 12889)
|
Base methods on DBCSR data structures. More...
Classes | |
| interface | dbcsr_init |
| interface | dbcsr_init_p |
| interface | dbcsr_valid_index |
| interface | dbcsr_is_initialized |
| interface | dbcsr_get_data_size |
| interface | dbcsr_get_data_size_used |
| interface | dbcsr_get_data_size_referenced |
| interface | dbcsr_get_data_type |
| interface | dbcsr_is_real |
| interface | dbcsr_is_complex |
| interface | dbcsr_blk_row_size |
| interface | dbcsr_blk_column_size |
| interface | dbcsr_allocate_matrix_array |
| interface | dbcsr_array_new |
| interface | dbcsr_array_put |
| interface | dbcsr_array_get |
| interface | dbcsr_array_destroy |
| interface | dbcsr_array_hold |
| interface | dbcsr_array_release |
| interface | dbcsr_destroy_array |
Functions | |
| subroutine | dbcsr_init_type (matrix) |
| Initializes a DBCSR matrix but does not create it. | |
| subroutine | dbcsr_init_obj (matrix) |
| Initializes a DBCSR matrix but does not allocate any memory. | |
| subroutine | dbcsr_init_obj_p (matrix, error) |
| Initializes a DBCSR matrix but does not allocate any memory. | |
| LOGICAL | dbcsr_valid_index_type (matrix) |
| Returns whether the index structure of the matrix is valid. | |
| LOGICAL | dbcsr_valid_index_obj (matrix) |
| Returns whether the index structure of the matrix is valid. | |
| LOGICAL | dbcsr_is_initialized_type (matrix) |
| Returns whether the index structure of the matrix is valid. | |
| LOGICAL | dbcsr_is_initialized_obj (matrix) |
| Returns whether the index structure of the matrix is valid. | |
| subroutine, public | dbcsr_hold (matrix) |
| Registers another reference for a DBCSR matrix. | |
| recursive subroutine, public | dbcsr_release (matrix) |
| Releases a reference for a DBCSR matrix. | |
| subroutine, public | dbcsr_release_p (matrix, error) |
| Releases a reference for a DBCSR matrix. | |
| recursive subroutine, public | dbcsr_destroy (matrix, error, force) |
| Deallocates and destroys a matrix. | |
| subroutine, public | dbcsr_release_locals (matrix, error) |
| subroutine, public | dbcsr_mp_init (mp_env) |
| Initializes a new process grid. | |
| LOGICAL, public | dbcsr_mp_exists (mp_env) |
| Checks whether the message passing environment exists. | |
| LOGICAL, public | dbcsr_mp_active (mp_env) |
| Checks whether this process is part of the message passing environment. | |
| subroutine, public | dbcsr_mp_new (mp_env, pgrid, mp_group, mynode, numnodes, myprow, mypcol) |
| Creates new process grid. | |
| subroutine, public | dbcsr_mp_grid_setup (mp_env, force) |
| Sets up MPI cartesian process grid. | |
| subroutine, public | dbcsr_mp_grid_remove (mp_env) |
| Removes an MPI cartesian process grid. | |
| subroutine, public | dbcsr_modify_lock (matrix) |
| Locks the DBCSR data structure for modification. | |
| subroutine, public | dbcsr_modify_unlock (matrix) |
| Releases the modification lock on a DBCSR data structure. | |
| subroutine | dbcsr_read_lock (matrix) |
| Locks the DBCSR data structure for reading. | |
| subroutine | dbcsr_read_unlock (matrix) |
| Releases the reading lock on a DBCSR data structure. | |
| pure subroutine, public | dbcsr_mp_hold (mp_env) |
| Marks another use of the mp_env. | |
| subroutine, public | dbcsr_mp_release (mp_env) |
| Releases and potentially destrops an mp_env. | |
| INTEGER, public | dbcsr_mp_get_process (mp_env, prow, pcol) |
| pure subroutine, public | dbcsr_mp_get_coordinates (mp_env, node, prow, pcol) |
| INTEGER, dimension(:,:), pointer, public | dbcsr_mp_pgrid (mp_env) |
| INTEGER, public | dbcsr_mp_numnodes (mp_env) |
| INTEGER, public | dbcsr_mp_mynode (mp_env) |
| INTEGER, public | dbcsr_mp_group (mp_env) |
| INTEGER, public | dbcsr_mp_nprows (mp_env) |
| INTEGER, public | dbcsr_mp_npcols (mp_env) |
| INTEGER, public | dbcsr_mp_myprow (mp_env) |
| INTEGER, public | dbcsr_mp_mypcol (mp_env) |
| LOGICAL, public | dbcsr_mp_has_subgroups (mp_env) |
| INTEGER, public | dbcsr_mp_my_row_group (mp_env) |
| INTEGER, public | dbcsr_mp_my_col_group (mp_env) |
| LOGICAL, public | dbcsr_mp_pgrid_equal (mp_env1, mp_env2) |
| subroutine, public | dbcsr_mp_new_transposed (mp_t, mp) |
| Transposes a multiprocessor environment. | |
| subroutine, public | dbcsr_distribution_new (dist, mp_env, row_dist, col_dist, local_rows, local_cols) |
| Creates new distribution. | |
| subroutine, public | dbcsr_distribution_hold (dist) |
| Marks another use of the distribution. | |
| subroutine, public | dbcsr_distribution_release (dist) |
| Releases and potentially destrops a distribution. | |
| subroutine, public | dbcsr_dist_release_locals (dist, error) |
| subroutine, public | dbcsr_distribution_init (dist) |
| subroutine, public | dbcsr_distribution_add_row_map (dist, row_map) |
| subroutine, public | dbcsr_distribution_add_col_map (dist, col_map) |
| subroutine, public | dbcsr_distribution_del_row_map (dist) |
| subroutine, public | dbcsr_distribution_del_col_map (dist) |
| TYPE(dbcsr_mp_obj), public | dbcsr_distribution_mp (dist) |
| INTEGER, public | dbcsr_distribution_nrows (dist) |
| INTEGER, public | dbcsr_distribution_ncols (dist) |
| TYPE(array_i1d_obj), public | dbcsr_distribution_row_dist (dist) |
| TYPE(array_i1d_obj), public | dbcsr_distribution_col_dist (dist) |
| INTEGER, public | dbcsr_distribution_nlocal_rows (dist) |
| INTEGER, public | dbcsr_distribution_nlocal_cols (dist) |
| TYPE(array_i1d_obj), public | dbcsr_distribution_local_rows (dist) |
| TYPE(array_i1d_obj), public | dbcsr_distribution_local_cols (dist) |
| pure function, public | dbcsr_distribution_processor (dist, row, col) |
| TYPE(array_i1d_obj), public | dbcsr_distribution_thread_dist (dist) |
| LOGICAL, public | dbcsr_distribution_has_threads (dist) |
| INTEGER, public | dbcsr_distribution_num_threads (dist) |
| subroutine, public | dbcsr_distribution_make_threads (dist, row_sizes) |
| Creates a distribution for threads. | |
| subroutine | make_threads (dist, row_sizes) |
| Creates a distribution for threads. | |
| subroutine, public | dbcsr_distribution_no_threads (dist) |
| Removes the thread distribution from a distribution. | |
| INTEGER, public | dbcsr_nblkrows_total (matrix) |
| INTEGER, public | dbcsr_nblkcols_total (matrix) |
| INTEGER, public | dbcsr_nfullrows_total (matrix) |
| INTEGER, public | dbcsr_nfullcols_total (matrix) |
| INTEGER, public | dbcsr_nblkrows_local (matrix) |
| INTEGER, public | dbcsr_nblkcols_local (matrix) |
| INTEGER, public | dbcsr_nfullrows_local (matrix) |
| INTEGER, public | dbcsr_nfullcols_local (matrix) |
| INTEGER, public | dbcsr_max_row_size (matrix) |
| INTEGER, public | dbcsr_max_col_size (matrix) |
| TYPE(dbcsr_distribution_obj), public | dbcsr_distribution (matrix) |
| CHARACTER(len=default_string_length), public | dbcsr_name (matrix) |
| LOGICAL, public | dbcsr_wm_use_mutable (wm) |
| Returns whether this work matrix uses the mutable type. | |
| LOGICAL, public | dbcsr_use_mutable (matrix) |
| Returns whether work matrices should use the mutable data type. | |
| TYPE(array_i1d_obj), public | dbcsr_row_block_sizes (matrix) |
| TYPE(array_i1d_obj), public | dbcsr_col_block_sizes (matrix) |
| TYPE(array_i1d_obj), public | dbcsr_col_block_offsets (matrix) |
| TYPE(array_i1d_obj), public | dbcsr_row_block_offsets (matrix) |
| subroutine, public | dbcsr_get_info (matrix, nblkrows_total, nblkcols_total, nfullrows_total, nfullcols_total, nblkrows_local, nblkcols_local, nfullrows_local, nfullcols_local, my_prow, my_pcol, local_rows, local_cols, proc_row_dist, proc_col_dist, row_blk_size, col_blk_size, row_blk_offset, col_blk_offset, distribution, name, data_area, matrix_type, data_type) |
| Gets information about a matrix. | |
| LOGICAL, public | dbcsr_may_be_dense (matrix, occ_thresh) |
| Returns whether the matrix could be represeneted in a dense form. | |
| INTEGER | dbcsr_blk_row_size_type (matrix, row) |
| Returns the blocked row size of a row. | |
| INTEGER | dbcsr_blk_row_size_obj (matrix, row) |
| INTEGER, public | dbcsr_blk_row_offset (matrix, row) |
| INTEGER | dbcsr_blk_column_size_type (matrix, column) |
| Returns the blocked column size of a column. | |
| INTEGER | dbcsr_blk_column_size_obj (matrix, column) |
| INTEGER, public | dbcsr_blk_col_offset (matrix, col) |
| TYPE(dbcsr_data_obj), public | dbcsr_data_area (matrix) |
| Returns the data area. | |
| subroutine, public | dbcsr_switch_data_area (matrix, data_area, previous_data_area, error) |
| Sets the data area of a matrix. | |
| CHARACTER, public | dbcsr_get_matrix_type (matrix) |
| Returns the matrix type. | |
| LOGICAL, public | dbcsr_has_symmetry (matrix) |
| Whether matrix has symmetry. | |
| CHARACTER, public | dbcsr_get_replication_type (matrix) |
| Whether matrix is (logically) transposed. | |
| INTEGER | dbcsr_get_data_type_obj (matrix) |
| Returns the data type stored in the matrix. | |
| INTEGER | data_get_data_type (area) |
| Returns data type of a data area. | |
| LOGICAL | dbcsr_is_real_obj (matrix) |
| Returns true if the data type of the matrix is real. | |
| LOGICAL | dbcsr_is_complex_obj (matrix) |
| Returns true if the data type of the matrix is complex. | |
| pure function, public | dbcsr_get_data_memory_type (matrix) |
| Returns the type of memory used for data in the matrix. | |
| INTEGER, public | dbcsr_get_index_memory_type (matrix) |
| Returns the type of memory used for the index in the matrix. | |
| LOGICAL | uses_special_memory_matrix (matrix) |
| Returns whether the matrix uses specially-allocated memory. | |
| LOGICAL | uses_special_memory_area (area) |
| Returns whether the data area uses speciall-allocated memory. | |
| INTEGER | get_data_size_area (area) |
| Returns the allocated data size. | |
| INTEGER | data_data_get_type (area) |
| Returns data type of a data area. | |
| INTEGER | get_data_size_matrix (matrix) |
| Returns the allocated data size of a DBCSR matrix. | |
| INTEGER | get_data_size_ref_matrix (matrix) |
| Get actual data storage used for matrix. | |
| INTEGER | get_data_size_ref_area (area) |
| Get actual data storage used for matrix. | |
| pure subroutine | set_data_size_ref_area (data_area, referenced_size) |
| Sets the referenced size of the data area. | |
| INTEGER, public | dbcsr_get_data_size_used (matrix, error) |
| Count actual data storage used for matrix data. | |
| INTEGER, public | dbcsr_get_num_blocks (matrix) |
| Returns the number of blocks in the matrix. | |
| INTEGER, public | dbcsr_get_nze (matrix) |
| Returns the number of non-zero elements in the matrix. | |
| REAL(KIND=real_8), public | dbcsr_get_occupation (matrix) |
| Returns the occupation of the matrix. | |
| subroutine | array_init_1d (array, n) |
| Initializes a 1-d array of DBCSR matrices. | |
| subroutine | array_init_2d (array, n) |
| Initializes a 2-d array of DBCSR matrices. | |
| subroutine | array_new_1d (array, n) |
| Allocates a 1-d array of DBCSR matrices. | |
| subroutine | array_new_2d (array, n) |
| Allocates a 2-d array of DBCSR matrices. | |
| subroutine | array_put_1d (array, position, matrix) |
| Inserts a DBCSR matrix into the array. | |
| subroutine | array_put_2d (array, position, matrix) |
| Inserts a DBCSR matrix into the array. | |
| TYPE(dbcsr_obj) | array_get_1d (array, position) |
| Gets a DBCSR matrix from the array. | |
| TYPE(dbcsr_obj) | array_get_2d (array, position) |
| Gets a DBCSR matrix from the array. | |
| subroutine | array_destroy_1d (array) |
| Destroys a 1-d array and releases all held resources. | |
| subroutine | array_destroy_2d (array) |
| Destroys a 2-d array and releases all held resources. | |
| subroutine | array_hold_1d (array) |
| Registers another reference for a 1-d array. | |
| subroutine | array_hold_2d (array) |
| Registers another reference for a 2-d array. | |
| subroutine | array_release_1d (array) |
| Releases a reference for a 1-d array. | |
| subroutine | array_release_2d (array) |
| Releases a reference for a 2-d array. | |
| subroutine | dbcsr_destroy_1d_array (marray, error) |
| Releases all matrices in a 1-d arrray. | |
| subroutine | dbcsr_destroy_2d_array (marray, error) |
| Releases all matrices in 2-d arrray. | |
| subroutine, public | dbcsr_image_dist_release (imgdist, error) |
| Releases a reference to and possible deallocates an image. | |
| subroutine, public | dbcsr_image_dist_hold (imgdist, error) |
| Retains a reference to an image distribution. | |
| subroutine, public | dbcsr_image_dist_init (imgdist, error) |
| Initialized an image distribution. | |
| subroutine | dbcsr_destroy_image_dist (imgdist) |
| Destroys a DBCSR distribution for a matrix multiplication based on the right matrix. | |
| subroutine, public | dbcsr_mutable_init (mutable) |
| Initializes a mutable data type. | |
| subroutine, public | dbcsr_mutable_destroy (mutable) |
| Destroys a mutable data type. | |
| subroutine, public | dbcsr_mutable_hold (mutable) |
| Registers another reference to the mutable data type. | |
| subroutine, public | dbcsr_mutable_release (mutable) |
| Deregisters a reference to the mutable data type. | |
| subroutine, public | dbcsr_mutable_new (mutable, data_type) |
| Creates a new mutable instance. | |
| LOGICAL, public | dbcsr_mutable_instantiated (mutable) |
| Deregisters a reference to the mutable data type. | |
Variables | |
| CHARACTER(len=*), parameter, private | moduleN = 'dbcsr_methods' |
| INTEGER, save, public | dbcsr_matrix_counter = 111111 |
Base methods on DBCSR data structures.
Modification history:
| subroutine dbcsr_methods::array_destroy_1d | ( | TYPE(dbcsr_1d_array_obj),intent(inout) | array | ) | [private] |
Destroys a 1-d array and releases all held resources.
| [in,out] | array | the array of matrices |
Definition at line 2419 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, dbcsr_error_handling::dbcsr_fatal_level, dbcsr_release(), and dbcsr_error_handling::dbcsr_warning_level.
Here is the call graph for this function:| subroutine dbcsr_methods::array_destroy_2d | ( | TYPE(dbcsr_2d_array_obj),intent(inout) | array | ) | [private] |
Destroys a 2-d array and releases all held resources.
| [in,out] | array | the array of matrices |
Definition at line 2449 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, dbcsr_error_handling::dbcsr_fatal_level, dbcsr_release(), and dbcsr_error_handling::dbcsr_warning_level.
Here is the call graph for this function:| TYPE(dbcsr_obj) dbcsr_methods::array_get_1d | ( | TYPE(dbcsr_1d_array_obj),intent(in) | array, |
| INTEGER,intent(in) | position | ||
| ) | [private] |
Gets a DBCSR matrix from the array.
| [in] | array | the array of matrices |
| [in] | position | array position into which matrix is inserted |
| matrix | matrix (no new reference is registered) |
Definition at line 2365 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, and dbcsr_error_handling::dbcsr_fatal_level.
| TYPE(dbcsr_obj) dbcsr_methods::array_get_2d | ( | TYPE(dbcsr_2d_array_obj),intent(in) | array, |
| INTEGER,dimension(2),intent(in) | position | ||
| ) | [private] |
Gets a DBCSR matrix from the array.
| [in] | array | the array of matrices |
| [in] | position | array position into which matrix is inserted |
| matrix | matrix (no new reference is registered) |
Definition at line 2392 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, and dbcsr_error_handling::dbcsr_fatal_level.
| subroutine dbcsr_methods::array_hold_1d | ( | TYPE(dbcsr_1d_array_obj),intent(inout) | array | ) | [private] |
Registers another reference for a 1-d array.
| [in,out] | array | the array of matrices |
Definition at line 2482 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_failure_level.
| subroutine dbcsr_methods::array_hold_2d | ( | TYPE(dbcsr_2d_array_obj),intent(inout) | array | ) | [private] |
Registers another reference for a 2-d array.
| [in,out] | array | the array of matrices |
Definition at line 2502 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_failure_level.
| subroutine dbcsr_methods::array_init_1d | ( | TYPE(dbcsr_1d_array_obj),intent(out) | array, |
| INTEGER,intent(in),optional | n | ||
| ) | [private] |
Initializes a 1-d array of DBCSR matrices.
| [out] | array | the array of matrices |
| [in] | n | (optional) number of matrices to be included |
Definition at line 2227 of file dbcsr_methods.f90.
| subroutine dbcsr_methods::array_init_2d | ( | TYPE(dbcsr_2d_array_obj),intent(out) | array, |
| INTEGER,dimension(2),intent(in),optional | n | ||
| ) | [private] |
Initializes a 2-d array of DBCSR matrices.
| [out] | array | the array of matrices |
| [in] | n | (optional) number of matrices to be included |
Definition at line 2240 of file dbcsr_methods.f90.
| subroutine dbcsr_methods::array_new_1d | ( | TYPE(dbcsr_1d_array_obj),intent(inout) | array, |
| INTEGER,intent(in) | n | ||
| ) | [private] |
Allocates a 1-d array of DBCSR matrices.
| [in,out] | array | the array of matrices |
| [in] | n | number of matrices to be included |
Definition at line 2254 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_warning_level.
| subroutine dbcsr_methods::array_new_2d | ( | TYPE(dbcsr_2d_array_obj),intent(inout) | array, |
| INTEGER,dimension(2),intent(in) | n | ||
| ) | [private] |
Allocates a 2-d array of DBCSR matrices.
| [in,out] | array | the array of matrices |
| [in] | n | number of matrices to be included |
Definition at line 2278 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_warning_level.
| subroutine dbcsr_methods::array_put_1d | ( | TYPE(dbcsr_1d_array_obj),intent(inout) | array, |
| INTEGER,intent(in) | position, | ||
| TYPE(dbcsr_obj),intent(in) | matrix | ||
| ) | [private] |
Inserts a DBCSR matrix into the array.
The matrix is inserted into the array and its reference is registered.
| [in,out] | array | the array of matrices |
| [in] | position | array position into which matrix is inserted |
| [in] | matrix | matrices to be included |
Definition at line 2305 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, dbcsr_error_handling::dbcsr_fatal_level, and dbcsr_hold().
Here is the call graph for this function:| subroutine dbcsr_methods::array_put_2d | ( | TYPE(dbcsr_2d_array_obj),intent(inout) | array, |
| INTEGER,dimension(2),intent(in) | position, | ||
| TYPE(dbcsr_obj),intent(in) | matrix | ||
| ) | [private] |
Inserts a DBCSR matrix into the array.
The matrix is inserted into the array and its reference is registered.
| [in,out] | array | the array of matrices |
| [in] | position | array position into which matrix is inserted |
| [in] | matrix | matrices to be included |
Definition at line 2335 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, dbcsr_error_handling::dbcsr_fatal_level, and dbcsr_hold().
Here is the call graph for this function:| subroutine dbcsr_methods::array_release_1d | ( | TYPE(dbcsr_1d_array_obj),intent(inout) | array | ) | [private] |
Releases a reference for a 1-d array.
If there are no references left, the array is destroyed.
| [in,out] | array | the array of matrices |
Definition at line 2525 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_failure_level.
| subroutine dbcsr_methods::array_release_2d | ( | TYPE(dbcsr_2d_array_obj),intent(inout) | array | ) | [private] |
Releases a reference for a 2-d array.
If there are no references left, the array is destroyed.
| [in,out] | array | the array of matrices |
Definition at line 2550 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_failure_level.
| INTEGER dbcsr_methods::data_data_get_type | ( | TYPE(dbcsr_data_obj),intent(in) | area | ) | [private] |
Returns data type of a data area.
| [in] | area | data area |
Definition at line 2033 of file dbcsr_methods.f90.
| INTEGER dbcsr_methods::data_get_data_type | ( | TYPE(dbcsr_data_obj),intent(in) | area | ) | [private] |
Returns data type of a data area.
| [in] | area | data area |
Definition at line 1909 of file dbcsr_methods.f90.
| INTEGER,public dbcsr_methods::dbcsr_blk_col_offset | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| INTEGER,intent(in) | col | ||
| ) |
Definition at line 1765 of file dbcsr_methods.f90.
Referenced by dbcsr_util::dbcsr_checksum(), and cp_dbcsr_interface::fill_sizes().
Here is the caller graph for this function:| INTEGER dbcsr_methods::dbcsr_blk_column_size_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| INTEGER,intent(in) | column | ||
| ) | [private] |
Definition at line 1758 of file dbcsr_methods.f90.
| INTEGER dbcsr_methods::dbcsr_blk_column_size_type | ( | TYPE(dbcsr_type),intent(in) | matrix, |
| INTEGER,intent(in) | column | ||
| ) | [private] |
Returns the blocked column size of a column.
This routine is optimized for speed and no checks are performed.
| [in] | matrix | DBCSR matrix |
| [in] | column | column number |
| column_size | blocked row size |
Definition at line 1751 of file dbcsr_methods.f90.
| INTEGER,public dbcsr_methods::dbcsr_blk_row_offset | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| INTEGER,intent(in) | row | ||
| ) |
Definition at line 1734 of file dbcsr_methods.f90.
Referenced by dbcsr_util::dbcsr_checksum(), and cp_dbcsr_interface::fill_sizes().
Here is the caller graph for this function:| INTEGER dbcsr_methods::dbcsr_blk_row_size_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| INTEGER,intent(in) | row | ||
| ) | [private] |
Definition at line 1727 of file dbcsr_methods.f90.
| INTEGER dbcsr_methods::dbcsr_blk_row_size_type | ( | TYPE(dbcsr_type),intent(in) | matrix, |
| INTEGER,intent(in) | row | ||
| ) | [private] |
Returns the blocked row size of a row.
This routine is optimized for speed and no checks are performed.
| [in] | matrix | DBCSR matrix |
| [in] | row | row number |
| row_size | blocked row size |
Definition at line 1720 of file dbcsr_methods.f90.
| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_col_block_offsets | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1578 of file dbcsr_methods.f90.
Referenced by dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_operations::dbcsr_crop_matrix(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_performance_multiply::perf_multiply(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_col_block_sizes | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1571 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_create_template(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_get_data_size_used(), dbcsr_transformations::dbcsr_make_untransposed_blocks(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_reduce(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| TYPE(dbcsr_data_obj),public dbcsr_methods::dbcsr_data_area | ( | TYPE(dbcsr_type),intent(in) | matrix | ) |
Returns the data area.
| matrix | matrix from which to get data |
| area | data area |
Definition at line 1778 of file dbcsr_methods.f90.
Referenced by dbcsr_io::dbcsr_binary_write().
Here is the caller graph for this function:| recursive subroutine,public dbcsr_methods::dbcsr_destroy | ( | TYPE(dbcsr_obj),intent(inout) | matrix, |
| TYPE(dbcsr_error_type),intent(inout) | error, | ||
| LOGICAL,intent(in),optional | force | ||
| ) |
Deallocates and destroys a matrix.
| [in,out] | matrix | matrix |
| [in,out] | error | cp2k error |
| [in] | force | (optional) force deallocation |
Definition at line 467 of file dbcsr_methods.f90.
References dbcsr_block_buffers::dbcsr_buffers_2d_needed, dbcsr_error_handling::dbcsr_caller_error, dbcsr_distribution_release(), dbcsr_error_handling::dbcsr_error_set(), dbcsr_error_handling::dbcsr_error_stop(), dbcsr_error_handling::dbcsr_fatal_level, dbcsr_error_handling::dbcsr_internal_error, dbcsr_release_locals(), and dbcsr_error_handling::dbcsr_warning_level.
Referenced by dbcsr_destroy_1d_array(), dbcsr_destroy_2d_array(), dbcsr_release(), and dbcsr_release_p().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine dbcsr_methods::dbcsr_destroy_1d_array | ( | TYPE(dbcsr_array_type),intent(inout) | marray, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) | [private] |
Releases all matrices in a 1-d arrray.
| [in] | source | input matrix |
| [in,out] | marray | matrix array |
Definition at line 2574 of file dbcsr_methods.f90.
References dbcsr_destroy().
Here is the call graph for this function:| subroutine dbcsr_methods::dbcsr_destroy_2d_array | ( | TYPE(dbcsr_2d_array_type),intent(inout) | marray, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) | [private] |
Releases all matrices in 2-d arrray.
| [in] | source | input matrix |
| [in,out] | marray | matrix array |
Definition at line 2598 of file dbcsr_methods.f90.
References dbcsr_destroy(), and dbcsr_image_dist_release().
Here is the call graph for this function:| subroutine dbcsr_methods::dbcsr_destroy_image_dist | ( | TYPE(dbcsr_imagedistribution_type),intent(inout) | imgdist | ) | [private] |
Destroys a DBCSR distribution for a matrix multiplication based on the right matrix.
| inout] | imgdist_product product distribution repetition |
Definition at line 2666 of file dbcsr_methods.f90.
References dbcsr_distribution_release().
Referenced by dbcsr_image_dist_release().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_dist_release_locals | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Definition at line 1085 of file dbcsr_methods.f90.
Referenced by dbcsr_distribution_release().
Here is the caller graph for this function:| TYPE(dbcsr_distribution_obj),public dbcsr_methods::dbcsr_distribution | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1519 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_distribution(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_io::dbcsr_binary_write(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_work_operations::dbcsr_create_template(), dbcsr_transformations::dbcsr_datablock_redistribute(), dbcsr_transformations::dbcsr_distribute(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_init_random(), dbcsr_iterator_operations::dbcsr_iterator_start(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_transformations::dbcsr_make_dense(), dbcsr_index_operations::dbcsr_make_index_list(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_operations::dbcsr_reduce(), dbcsr_dist_operations::dbcsr_reset_locals(), dbcsr_dist_operations::dbcsr_reset_vlocals(), dbcsr_operations::dbcsr_sum_replicated(), dbcsr_transformations::make_images(), dbcsr_performance_multiply::perf_multiply(), and dbcsr_tests::test_multiplies_multiproc().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_add_col_map | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist, |
| TYPE(array_i1d_obj),intent(in) | col_map | ||
| ) |
Definition at line 1135 of file dbcsr_methods.f90.
| subroutine,public dbcsr_methods::dbcsr_distribution_add_row_map | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist, |
| TYPE(array_i1d_obj),intent(in) | row_map | ||
| ) |
Definition at line 1127 of file dbcsr_methods.f90.
| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_distribution_col_dist | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1186 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::cp_dbcsr_sm_fm_multiply(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_dist_operations::dbcsr_create_dist_l_unrot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_unrot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_dist_operations::dbcsr_get_global_col_map(), dbcsr_get_info(), dbcsr_dist_operations::dbcsr_get_local_cols(), dbcsr_mm_multrec::dbcsr_mm_multrec_init(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_dist_operations::dbcsr_transpose_distribution(), dbcsr_transformations::make_images(), dbcsr_dist_operations::match_sizes_to_dist(), dm_ls_scf_qs::matrix_ls_create(), cp_dbcsr_interface::matrix_match_sizes(), and dbcsr_performance_multiply::perf_multiply().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_del_col_map | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist | ) |
Definition at line 1150 of file dbcsr_methods.f90.
| subroutine,public dbcsr_methods::dbcsr_distribution_del_row_map | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist | ) |
Definition at line 1143 of file dbcsr_methods.f90.
| LOGICAL,public dbcsr_methods::dbcsr_distribution_has_threads | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1252 of file dbcsr_methods.f90.
Referenced by dbcsr_dist_operations::dbcsr_make_dists_dense(), and dbcsr_operations::dbcsr_multiply_anytype().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_hold | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist | ) |
Marks another use of the distribution.
| [in,out] | mp_env | multiprocessor environment |
Definition at line 1045 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_create_new(), dbcsr_dist_operations::dbcsr_make_dists_dense(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_dist_operations::dbcsr_new_image_dist(), and dbcsr_transformations::dbcsr_new_transposed().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_init | ( | TYPE(dbcsr_distribution_obj),intent(out) | dist | ) |
Definition at line 1120 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_cfm_to_dbcsr(), cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), cp_dbcsr_operations::copy_fm_to_dbcsr(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_distribution_release(), and dbcsr_init_type().
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_distribution_local_cols | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1213 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_dist_operations::dbcsr_create_dist_l_unrot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_get_info(), dbcsr_transformations::dbcsr_make_dense(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_dist_operations::dbcsr_transpose_distribution(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_distribution_local_rows | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1207 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_get_info(), dbcsr_transformations::dbcsr_make_dense(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_dist_operations::dbcsr_transpose_distribution(), make_threads(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_make_threads | ( | TYPE(dbcsr_distribution_obj),intent(inout),target | dist, |
| INTEGER,dimension(:),intent(in),optional | row_sizes | ||
| ) |
Creates a distribution for threads.
| [in,out] | dist | Add thread distribution to this distribution |
| [in] | row_sizes | (optional) row block sizes |
Definition at line 1275 of file dbcsr_methods.f90.
References make_threads().
Referenced by dbcsr_dist_operations::dbcsr_make_dists_dense(), and dbcsr_operations::dbcsr_multiply_anytype().
Here is the call graph for this function:
Here is the caller graph for this function:| TYPE(dbcsr_mp_obj),public dbcsr_methods::dbcsr_distribution_mp | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1158 of file dbcsr_methods.f90.
Referenced by preconditioner::apply_sparse_single(), qs_initial_guess::calculate_first_density_matrix(), cp_dbcsr_operations::copy_cfm_to_dbcsr(), cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), cp_dbcsr_operations::copy_fm_to_dbcsr(), cp_dbcsr_operations::cp_dbcsr_add_block_node(), cp_dbcsr_operations::cp_dbcsr_multiply_vec(), cp_dbcsr_operations::cp_dbcsr_plus_fm_fm_t_native(), cp_dbcsr_operations::cp_dbcsr_sm_fm_multiply(), cp_dbcsr_operations::cp_dbcsr_unpack_vec(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_io::dbcsr_binary_read(), dbcsr_io::dbcsr_binary_write(), dbcsr_util::dbcsr_checksum(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_dist_l_unrot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_unrot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_transformations::dbcsr_datablock_redistribute(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_transformations::dbcsr_distribute(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_frobenius_norm_r8(), dbcsr_operations::dbcsr_gershgorin_norm_r8(), dbcsr_dist_operations::dbcsr_get_global_col_map(), dbcsr_dist_operations::dbcsr_get_global_row_map(), dbcsr_dist_operations::dbcsr_get_global_vcol_map(), dbcsr_dist_operations::dbcsr_get_global_vrow_map(), dbcsr_get_info(), dbcsr_dist_operations::dbcsr_get_local_cols(), dbcsr_dist_operations::dbcsr_get_local_rows(), dbcsr_dist_operations::dbcsr_get_local_vcols(), dbcsr_dist_operations::dbcsr_get_local_vrows(), dbcsr_get_occupation(), dbcsr_operations::dbcsr_init_random(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_operations::dbcsr_maxabs_r8(), dbcsr_may_be_dense(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_norm_anytype(), dbcsr_dist_operations::dbcsr_print_dist(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_reset_locals(), dbcsr_operations::dbcsr_sum_replicated(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_dist_operations::dbcsr_transpose_distribution(), dbcsr_util::dbcsr_verify_matrix(), qs_scf_block_davidson::generate_extended_space_sparse(), dbcsr_dist_operations::make_image_distribution_dense(), dbcsr_transformations::make_images(), preconditioner::make_sparse_inverse_bif(), dbcsr_dist_operations::match_sizes_to_dist(), cp_dbcsr_interface::matrix_match_sizes(), dbcsr_util::meta_from_dist(), mp2_gpw::mp2_gpw_compute(), mp2_ri_gpw::mp2_ri_gpw_compute_in(), qs_ot_eigensolver::ot_eigensolver(), qs_ot_scf::ot_scf_init(), qs_ot_types::qs_ot_allocate(), qs_ot::qs_ot_on_the_fly_localize(), mp2_gpw::replicate_mat_to_subgroup(), qs_scf::scf_env_check_i_alloc(), qs_mo_methods::subspace_eigenvalues_ks_dbcsr(), and dbcsr_tests::test_multiplies_multiproc().
| INTEGER,public dbcsr_methods::dbcsr_distribution_ncols | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1172 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_work_operations::dbcsr_create_new(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_new_transposed(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_new | ( | TYPE(dbcsr_distribution_obj),intent(out) | dist, |
| TYPE(dbcsr_mp_obj),intent(in) | mp_env, | ||
| TYPE(array_i1d_obj),intent(in) | row_dist, | ||
| TYPE(array_i1d_obj),intent(in) | col_dist, | ||
| TYPE(array_i1d_obj),intent(in),optional | local_rows, | ||
| TYPE(array_i1d_obj),intent(in),optional | local_cols | ||
| ) |
Creates new distribution.
| [out] | dist | distribution |
| [in] | mp_env | multiprocessing environment |
| [in] | row_dist,col_dist | row and column distributions |
Definition at line 951 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_fatal_level, dbcsr_mp_hold(), dbcsr_mp_mypcol(), dbcsr_mp_myprow(), dbcsr_mp_npcols(), dbcsr_mp_nprows(), and dbcsr_error_handling::dbcsr_wrong_args_error.
Referenced by preconditioner::apply_sparse_single(), cp_dbcsr_operations::cp_dbcsr_dist2d_to_dist(), cp_dbcsr_operations::cp_dbcsr_plus_fm_fm_t_native(), cp_dbcsr_operations::cp_dbcsr_sm_fm_multiply(), dbcsr_tests::cp_test_multiplies(), dbcsr_dist_operations::dbcsr_create_dist_block_cyclic(), dbcsr_dist_operations::dbcsr_create_dist_elemental(), dbcsr_dist_operations::dbcsr_create_dist_fullest(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_dist_l_unrot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_unrot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_example_1(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_dist_operations::dbcsr_make_dists_dense(), dbcsr_test_methods::dbcsr_make_null_dist(), dbcsr_performance_multiply::dbcsr_perf_multiply_low(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_dist_operations::dbcsr_transpose_distribution(), cp_dbcsr_interface::matrix_match_sizes(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the call graph for this function:
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_distribution_nlocal_cols | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1201 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_distribution_nlocal_rows | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1195 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_transformations::dbcsr_make_undense(), make_threads(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_no_threads | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist | ) |
Removes the thread distribution from a distribution.
Definition at line 1444 of file dbcsr_methods.f90.
Referenced by dbcsr_dist_operations::dbcsr_make_dists_dense(), and dbcsr_operations::dbcsr_multiply_anytype().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_distribution_nrows | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1166 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_work_operations::dbcsr_create_new(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_new_transposed(), make_threads(), dbcsr_index_operations::make_undense_index(), and dbcsr_util::meta_from_dist().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_distribution_num_threads | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1261 of file dbcsr_methods.f90.
| pure function,public dbcsr_methods::dbcsr_distribution_processor | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist, |
| INTEGER,intent(in) | row, | ||
| INTEGER,intent(in) | col | ||
| ) |
Definition at line 1220 of file dbcsr_methods.f90.
Referenced by dbcsr_dist_operations::get_stored_canonical(), and dbcsr_dist_operations::get_stored_coordinates_type().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_distribution_release | ( | TYPE(dbcsr_distribution_obj),intent(inout) | dist | ) |
Releases and potentially destrops a distribution.
| [in,out] | mp_env | multiprocessor environment |
Definition at line 1058 of file dbcsr_methods.f90.
References dbcsr_dist_release_locals(), dbcsr_distribution_init(), and dbcsr_mp_release().
Referenced by cp_dbcsr_operations::copy_cfm_to_dbcsr(), cp_dbcsr_operations::copy_dbcsr_to_cfm(), cp_dbcsr_operations::copy_dbcsr_to_fm(), cp_dbcsr_operations::copy_fm_to_dbcsr(), cp_dbcsr_interface::cp_dbcsr_distribution_release(), cp_dbcsr_operations::cp_dbcsr_plus_fm_fm_t_native(), cp_dbcsr_operations::cp_dbcsr_sm_fm_multiply(), dbcsr_tests::cp_test_multiplies(), dbcsr_work_operations::dbcsr_create_new(), dbcsr_destroy(), dbcsr_destroy_image_dist(), dbcsr_example_1(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_dist_operations::dbcsr_make_dists_dense(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_new_transposed(), dbcsr_performance_multiply::dbcsr_perf_multiply_low(), cp_dbcsr_interface::matrix_match_sizes(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the call graph for this function:
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_distribution_row_dist | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1178 of file dbcsr_methods.f90.
Referenced by preconditioner::apply_sparse_single(), cp_dbcsr_operations::cp_dbcsr_plus_fm_fm_t_native(), cp_dbcsr_operations::cp_dbcsr_sm_fm_multiply(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_dist_operations::dbcsr_get_global_row_map(), dbcsr_get_info(), dbcsr_dist_operations::dbcsr_get_local_rows(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_dist_operations::dbcsr_transpose_distribution(), dbcsr_transformations::make_images(), dbcsr_dist_operations::match_sizes_to_dist(), cp_dbcsr_interface::matrix_match_sizes(), and dbcsr_performance_multiply::perf_multiply().
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_distribution_thread_dist | ( | TYPE(dbcsr_distribution_obj),intent(in) | dist | ) |
Definition at line 1242 of file dbcsr_methods.f90.
Referenced by dbcsr_dist_operations::dbcsr_make_dists_dense(), and dbcsr_index_operations::dbcsr_make_index_list().
Here is the caller graph for this function:| pure function,public dbcsr_methods::dbcsr_get_data_memory_type | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the type of memory used for data in the matrix.
| [in] | matrix | query this matrix |
| [out] | same_as_actual | (optional) whether the data actually uses the declared memory type |
Definition at line 1960 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_create_template().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_get_data_size_used | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Count actual data storage used for matrix data.
| [in] | matrix | Count data of this matrix |
| [in,out] | error | Error |
Definition at line 2124 of file dbcsr_methods.f90.
References dbcsr_col_block_sizes(), dbcsr_error_handling::dbcsr_error_set(), dbcsr_error_handling::dbcsr_error_stop(), and dbcsr_row_block_sizes().
Referenced by dbcsr_work_operations::dbcsr_finalize().
Here is the call graph for this function:
Here is the caller graph for this function:| INTEGER dbcsr_methods::dbcsr_get_data_type_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) | [private] |
Returns the data type stored in the matrix.
| matrix | query this matrix |
| data_type | data_type (see dbcsr_types.F for possible values) |
Definition at line 1897 of file dbcsr_methods.f90.
| INTEGER,public dbcsr_methods::dbcsr_get_index_memory_type | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the type of memory used for the index in the matrix.
| [in] | matrix | query this matrix |
Definition at line 1973 of file dbcsr_methods.f90.
Referenced by dbcsr_operations::dbcsr_copy(), dbcsr_work_operations::dbcsr_create_template(), dbcsr_index_operations::dbcsr_index_compact(), dbcsr_operations::dbcsr_reduce(), and dbcsr_mm_cannon::setup_buffer_matrices().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_get_info | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| INTEGER,intent(out),optional | nblkrows_total, | ||
| INTEGER,intent(out),optional | nblkcols_total, | ||
| INTEGER,intent(out),optional | nfullrows_total, | ||
| INTEGER,intent(out),optional | nfullcols_total, | ||
| INTEGER,intent(out),optional | nblkrows_local, | ||
| INTEGER,intent(out),optional | nblkcols_local, | ||
| INTEGER,intent(out),optional | nfullrows_local, | ||
| INTEGER,intent(out),optional | nfullcols_local, | ||
| INTEGER,intent(out),optional | my_prow, | ||
| INTEGER,intent(out),optional | my_pcol, | ||
| INTEGER,dimension(:),optional,pointer | local_rows, | ||
| INTEGER,dimension(:),optional,pointer | local_cols, | ||
| INTEGER,dimension(:),optional,pointer | proc_row_dist, | ||
| INTEGER,dimension(:),optional,pointer | proc_col_dist, | ||
| TYPE(array_i1d_obj),intent(out),optional | row_blk_size, | ||
| TYPE(array_i1d_obj),intent(out),optional | col_blk_size, | ||
| TYPE(array_i1d_obj),intent(out),optional | row_blk_offset, | ||
| TYPE(array_i1d_obj),intent(out),optional | col_blk_offset, | ||
| TYPE(dbcsr_distribution_obj),intent(out),optional | distribution, | ||
| CHARACTER(len=*),intent(out),optional | name, | ||
| TYPE(dbcsr_data_obj),intent(out),optional | data_area, | ||
| CHARACTER,optional | matrix_type, | ||
| INTEGER,optional | data_type | ||
| ) |
Gets information about a matrix.
| [in] | matrix | matrix to query |
| [out] | nblkrows_total | |
| [out] | nblkcols_total | |
| [out] | nfullrows_total | |
| [out] | nfullcols_total | |
| [out] | nblkrows_local | |
| [out] | nblkrows_local | |
| [out] | nfullrows_local | |
| [out] | nfullrows_local | |
| [out] | my_prow,my_pcol | |
| [out] | local_rows,local_cols | |
| [out] | proc_row_dist,proc_col_dist | |
| [out] | row_blk_size | |
| [out] | col_blk_size | |
| [out] | row_blk_offset | |
| [out] | col_blk_offset | |
| [out] | distribution | the data distribution of the matrix |
| [out] | name | matrix name |
| [out] | data_area | data_area |
| [out] | matrix_type | matrix type (regular, symmetric, see dbcsr_types.F for values) |
| [out] | data_type | data type (single/double precision real/complex) |
| [in,out] | error | cp2k error |
Definition at line 1618 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_distribution_col_dist(), dbcsr_distribution_local_cols(), dbcsr_distribution_local_rows(), dbcsr_distribution_mp(), dbcsr_distribution_row_dist(), dbcsr_error_handling::dbcsr_failure_level, dbcsr_error_handling::dbcsr_fatal_level, dbcsr_get_matrix_type(), dbcsr_types::dbcsr_magic_number, dbcsr_mp_mypcol(), dbcsr_mp_myprow(), and dbcsr_types::dbcsr_type_invalid.
Referenced by cp_dbcsr_interface::cp_dbcsr_get_info(), and dbcsr_operations::dbcsr_lanczos_extremal_eig().
Here is the call graph for this function:
Here is the caller graph for this function:| CHARACTER,public dbcsr_methods::dbcsr_get_matrix_type | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the matrix type.
| matrix | query this matrix |
| matrix_type | matrix_type (see dbcsr_types.F for possible values) |
Definition at line 1834 of file dbcsr_methods.f90.
References dbcsr_types::dbcsr_type_antihermitian, dbcsr_types::dbcsr_type_antisymmetric, dbcsr_types::dbcsr_type_hermitian, dbcsr_types::dbcsr_type_invalid, dbcsr_types::dbcsr_type_no_symmetry, and dbcsr_types::dbcsr_type_symmetric.
Referenced by cp_dbcsr_interface::cp_dbcsr_get_matrix_type(), dbcsr_operations::dbcsr_add_anytype(), dbcsr_io::dbcsr_binary_write(), dbcsr_operations::dbcsr_copy(), dbcsr_work_operations::dbcsr_create_template(), dbcsr_operations::dbcsr_frobenius_norm_r8(), dbcsr_operations::dbcsr_gershgorin_norm_r8(), dbcsr_get_info(), dbcsr_test_methods::dbcsr_impose_sparsity(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_new_transposed(), dbcsr_operations::dbcsr_reduce(), dbcsr_test_methods::dbcsr_to_dense_local(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_get_num_blocks | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the number of blocks in the matrix.
| matrix | matrix from which to get data |
| area | data area |
Definition at line 2165 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_get_num_blocks(), dbcsr_operations::dbcsr_add_reserved(), dbcsr_io::dbcsr_binary_write(), dbcsr_operations::dbcsr_copy_submatrix(), dbcsr_operations::dbcsr_insert_blocks(), and dbcsr_block_access::dbcsr_reserve_blocks().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_get_nze | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the number of non-zero elements in the matrix.
| matrix | matrix from which to get data |
| area | data area |
Definition at line 2177 of file dbcsr_methods.f90.
| REAL(KIND=real_8),public dbcsr_methods::dbcsr_get_occupation | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Returns the occupation of the matrix.
| matrix | matrix from which to get the occupation |
Definition at line 2188 of file dbcsr_methods.f90.
References dbcsr_distribution_mp(), dbcsr_has_symmetry(), dbcsr_mp_group(), dbcsr_nfullcols_total(), and dbcsr_nfullrows_total().
Referenced by cp_dbcsr_interface::cp_dbcsr_get_occupation(), dbcsr_may_be_dense(), dbcsr_test_add::test_add(), and dbcsr_test_multiply::test_multiply().
Here is the call graph for this function:
Here is the caller graph for this function:| CHARACTER,public dbcsr_methods::dbcsr_get_replication_type | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Whether matrix is (logically) transposed.
| matrix | query this matrix |
| matrix | query this matrix |
| data_type | repl_type (see dbcsr_types.F for possible values) |
Definition at line 1884 of file dbcsr_methods.f90.
Referenced by dbcsr_operations::dbcsr_copy(), and dbcsr_work_operations::dbcsr_create_template().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_has_symmetry | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Whether matrix has symmetry.
| matrix | query this matrix |
Definition at line 1859 of file dbcsr_methods.f90.
Referenced by dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_operations::dbcsr_copy_into_existing(), dbcsr_operations::dbcsr_copy_into_existing_sym(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_get_occupation(), dbcsr_transformations::dbcsr_make_images(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_norm_anytype(), and dbcsr_util::dbcsr_verify_matrix().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_hold | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) |
Registers another reference for a DBCSR matrix.
| [in,out] | matrix | DBCSR matrix |
Definition at line 387 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_failure_level, and dbcsr_types::dbcsr_magic_number.
Referenced by array_put_1d(), and array_put_2d().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_image_dist_hold | ( | TYPE(dbcsr_imagedistribution_obj),intent(inout) | imgdist, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Retains a reference to an image distribution.
Definition at line 2641 of file dbcsr_methods.f90.
Referenced by dbcsr_transformations::dbcsr_make_images(), dbcsr_transformations::dbcsr_make_images_dense(), and dbcsr_operations::dbcsr_multiply_anytype().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_image_dist_init | ( | TYPE(dbcsr_imagedistribution_obj),intent(out) | imgdist, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Initialized an image distribution.
Definition at line 2653 of file dbcsr_methods.f90.
Referenced by dbcsr_mm_cannon::setup_buffer_matrices().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_image_dist_release | ( | TYPE(dbcsr_imagedistribution_obj),intent(inout) | imgdist, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Releases a reference to and possible deallocates an image.
Definition at line 2623 of file dbcsr_methods.f90.
References dbcsr_destroy_image_dist().
Referenced by dbcsr_destroy_2d_array(), dbcsr_transformations::dbcsr_make_images_dense(), and dbcsr_operations::dbcsr_multiply_anytype().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine dbcsr_methods::dbcsr_init_obj | ( | TYPE(dbcsr_obj),intent(out) | matrix | ) | [private] |
Initializes a DBCSR matrix but does not allocate any memory.
| [out] | matrix | uninitialized matrix |
| [in,out] | error | cp2k error |
Definition at line 280 of file dbcsr_methods.f90.
| subroutine dbcsr_methods::dbcsr_init_obj_p | ( | TYPE(dbcsr_obj),pointer | matrix, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) | [private] |
Initializes a DBCSR matrix but does not allocate any memory.
| [out] | matrix | uninitialized matrix |
| [in,out] | error | cp2k error |
Definition at line 299 of file dbcsr_methods.f90.
References dbcsr_release_p().
Here is the call graph for this function:| subroutine dbcsr_methods::dbcsr_init_type | ( | TYPE(dbcsr_type),intent(out) | matrix | ) | [private] |
Initializes a DBCSR matrix but does not create it.
| [out] | matrix | uninitialized matrix |
| [in,out] | error | cp2k error |
Definition at line 246 of file dbcsr_methods.f90.
References dbcsr_distribution_init(), and dbcsr_types::dbcsr_magic_number.
Here is the call graph for this function:| LOGICAL dbcsr_methods::dbcsr_is_complex_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) | [private] |
Returns true if the data type of the matrix is complex.
| [in] | matrix | query this matrix |
| [out] | is_complex |
Definition at line 1939 of file dbcsr_methods.f90.
References dbcsr_types::dbcsr_type_complex_4, and dbcsr_types::dbcsr_type_complex_8.
| LOGICAL dbcsr_methods::dbcsr_is_initialized_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) | [private] |
Returns whether the index structure of the matrix is valid.
| [in] | matrix | verify index validity of this matrix |
| initialized | the matrix is initialized |
Definition at line 373 of file dbcsr_methods.f90.
References dbcsr_is_initialized_type().
Here is the call graph for this function:| LOGICAL dbcsr_methods::dbcsr_is_initialized_type | ( | TYPE(dbcsr_type),intent(in) | matrix | ) | [private] |
Returns whether the index structure of the matrix is valid.
| [in] | matrix | verify index validity of this matrix |
| initialized | the matrix is initialized |
Definition at line 359 of file dbcsr_methods.f90.
References dbcsr_types::dbcsr_magic_number.
Referenced by dbcsr_is_initialized_obj().
Here is the caller graph for this function:| LOGICAL dbcsr_methods::dbcsr_is_real_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) | [private] |
Returns true if the data type of the matrix is real.
| [in] | matrix | query this matrix |
| [out] | is_real |
Definition at line 1922 of file dbcsr_methods.f90.
References dbcsr_types::dbcsr_type_real_4, and dbcsr_types::dbcsr_type_real_8.
| INTEGER,public dbcsr_methods::dbcsr_max_col_size | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1512 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_max_col_size(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_hadamard_product(), and dbcsr_test_methods::dbcsr_make_random_matrix().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_max_row_size | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1506 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_max_row_size(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_hadamard_product(), and dbcsr_test_methods::dbcsr_make_random_matrix().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_may_be_dense | ( | TYPE(dbcsr_obj),intent(in) | matrix, |
| REAL(real_8),intent(in) | occ_thresh | ||
| ) |
Returns whether the matrix could be represeneted in a dense form.
| [in] | matrix | matrix |
Definition at line 1697 of file dbcsr_methods.f90.
References dbcsr_distribution_mp(), dbcsr_get_occupation(), and dbcsr_mp_group().
Referenced by dbcsr_operations::dbcsr_multiply_anytype().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_modify_lock | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) |
Locks the DBCSR data structure for modification.
| [in,out] | matrix | the matrix to lock |
Definition at line 747 of file dbcsr_methods.f90.
| subroutine,public dbcsr_methods::dbcsr_modify_unlock | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) |
Releases the modification lock on a DBCSR data structure.
| [in,out] | matrix | the matrix to lock |
Definition at line 758 of file dbcsr_methods.f90.
| LOGICAL,public dbcsr_methods::dbcsr_mp_active | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Checks whether this process is part of the message passing environment.
Definition at line 600 of file dbcsr_methods.f90.
Referenced by dbcsr_tests::test_multiplies_multiproc().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_mp_exists | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Checks whether the message passing environment exists.
Definition at line 590 of file dbcsr_methods.f90.
| pure subroutine,public dbcsr_methods::dbcsr_mp_get_coordinates | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env, |
| INTEGER,intent(in) | node, | ||
| INTEGER,intent(out) | prow, | ||
| INTEGER,intent(out) | pcol | ||
| ) |
Definition at line 827 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::cp_dbcsr_multiply_vec().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_get_process | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env, |
| INTEGER,intent(in) | prow, | ||
| INTEGER,intent(in) | pcol | ||
| ) |
Definition at line 819 of file dbcsr_methods.f90.
Referenced by most_point_to_point(), and remainder_point_to_point().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_grid_remove | ( | TYPE(dbcsr_mp_obj),intent(inout) | mp_env | ) |
Removes an MPI cartesian process grid.
| [in,out] | mp_env | multiprocessor environment |
Definition at line 734 of file dbcsr_methods.f90.
Referenced by dbcsr_mp_release(), and dbcsr_transformations::dbcsr_replicate().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_grid_setup | ( | TYPE(dbcsr_mp_obj),intent(inout) | mp_env, |
| LOGICAL,intent(in),optional | force | ||
| ) |
Sets up MPI cartesian process grid.
| [in,out] | mp_env | multiprocessor environment |
| [in] | force | (optional) force creation of subcommunicators |
Definition at line 684 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_fatal_level, dbcsr_error_handling::dbcsr_internal_error, and dbcsr_message_passing::mp_cart_create().
Referenced by dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), and dbcsr_mp_operations::hybrid_alltoall_i1().
Here is the call graph for this function:
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_group | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 859 of file dbcsr_methods.f90.
Referenced by dbcsr_io::all_print(), dbcsr_io::dbcsr_binary_read(), dbcsr_io::dbcsr_binary_write(), dbcsr_util::dbcsr_checksum(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_transformations::dbcsr_datablock_redistribute(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_operations::dbcsr_frobenius_norm_r8(), dbcsr_operations::dbcsr_gershgorin_norm_r8(), dbcsr_get_occupation(), dbcsr_operations::dbcsr_maxabs_r8(), dbcsr_may_be_dense(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_norm_anytype(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_operations::dbcsr_sum_replicated(), dbcsr_util::dbcsr_verify_matrix(), dbcsr_mp_operations::hybrid_alltoall_i1(), dbcsr_transformations::make_images(), preconditioner::make_sparse_inverse_bif(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), cp_dbcsr_operations::packed_vec_reduce(), and dbcsr_tests::test_multiplies_multiproc().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_mp_has_subgroups | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 889 of file dbcsr_methods.f90.
Referenced by dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), and dbcsr_mp_operations::hybrid_alltoall_i1().
Here is the caller graph for this function:| pure subroutine,public dbcsr_methods::dbcsr_mp_hold | ( | TYPE(dbcsr_mp_obj),intent(inout) | mp_env | ) |
Marks another use of the mp_env.
| [in,out] | mp_env | multiprocessor environment |
Definition at line 789 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::cp_dbcsr_dist2d_to_dist(), and dbcsr_distribution_new().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_init | ( | TYPE(dbcsr_mp_obj),intent(out) | mp_env | ) |
Initializes a new process grid.
Definition at line 581 of file dbcsr_methods.f90.
Referenced by dbcsr_dist_operations::dbcsr_mp_make_env().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_my_col_group | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 901 of file dbcsr_methods.f90.
Referenced by dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), most_alltoall(), and most_point_to_point().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_my_row_group | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 895 of file dbcsr_methods.f90.
Referenced by dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), most_alltoall(), and most_point_to_point().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_mynode | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 853 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::cp_dbcsr_add_block_node(), cp_dbcsr_operations::cp_dbcsr_unpack_vec(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_transformations::dbcsr_distribute(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_init_random(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_operations::dbcsr_sum_replicated(), dbcsr_mp_operations::hybrid_alltoall_i1(), preconditioner::make_sparse_inverse_bif(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), and cp_dbcsr_operations::packed_vec_reduce().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_mypcol | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 883 of file dbcsr_methods.f90.
Referenced by dbcsr_distribution_new(), dbcsr_get_info(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_reset_locals(), dbcsr_mp_operations::hybrid_alltoall_i1(), preconditioner::make_sparse_inverse_bif(), dbcsr_util::meta_from_dist(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), and cp_dbcsr_operations::packed_vec_reduce().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_myprow | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 877 of file dbcsr_methods.f90.
Referenced by dbcsr_distribution_new(), dbcsr_get_info(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_reset_locals(), dbcsr_mp_operations::hybrid_alltoall_i1(), preconditioner::make_sparse_inverse_bif(), dbcsr_util::meta_from_dist(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), and cp_dbcsr_operations::packed_vec_reduce().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_new | ( | TYPE(dbcsr_mp_obj),intent(out) | mp_env, |
| INTEGER,dimension(0:, 0:),intent(in) | pgrid, | ||
| INTEGER,intent(in) | mp_group, | ||
| INTEGER,intent(in) | mynode, | ||
| INTEGER,intent(in),optional | numnodes, | ||
| INTEGER,intent(in),optional | myprow, | ||
| INTEGER,intent(in),optional | mypcol | ||
| ) |
Creates new process grid.
| [out] | mp_env | multiprocessor environment |
| [in] | pgrid | process grid |
| [in] | mynode | my processor number |
| [in] | numnodes | total number of processors (processes) |
Definition at line 618 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_operations::cp_dbcsr_dist2d_to_dist(), cp_dbcsr_interface::cp_dbcsr_mp_new(), dbcsr_example_1(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_test_methods::dbcsr_make_null_mp(), dbcsr_dist_operations::dbcsr_mp_make_env(), and dbcsr_mp_new_transposed().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_new_transposed | ( | TYPE(dbcsr_mp_obj),intent(out) | mp_t, |
| TYPE(dbcsr_mp_obj),intent(in) | mp | ||
| ) |
Transposes a multiprocessor environment.
| [out] | mp_t | transposed multiprocessor environment |
| [in] | mp | original multiprocessor environment |
Definition at line 932 of file dbcsr_methods.f90.
References dbcsr_mp_group(), dbcsr_mp_mynode(), dbcsr_mp_mypcol(), dbcsr_mp_myprow(), dbcsr_mp_new(), dbcsr_mp_numnodes(), and dbcsr_mp_pgrid().
Referenced by dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), and dbcsr_dist_operations::dbcsr_transpose_distribution().
Here is the call graph for this function:
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_npcols | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 871 of file dbcsr_methods.f90.
Referenced by preconditioner::apply_sparse_single(), cp_dbcsr_operations::cp_dbcsr_plus_fm_fm_t_native(), dbcsr_tests::cp_test_multiplies(), dbcsr_dist_operations::dbcsr_create_dist_block_cyclic(), dbcsr_dist_operations::dbcsr_create_dist_elemental(), dbcsr_dist_operations::dbcsr_create_dist_fullest(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_unrot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_distribution_new(), dbcsr_dist_operations::dbcsr_get_global_col_map(), dbcsr_dist_operations::dbcsr_get_global_vcol_map(), dbcsr_dist_operations::dbcsr_get_local_cols(), dbcsr_dist_operations::dbcsr_get_local_vcols(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_dist_operations::dbcsr_make_dists_dense(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_dist_operations::dbcsr_print_dist(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_mp_operations::hybrid_alltoall_i1(), dbcsr_dist_operations::make_image_distribution_dense(), preconditioner::make_sparse_inverse_bif(), dbcsr_dist_operations::match_sizes_to_dist(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), cp_dbcsr_operations::packed_vec_reduce(), and dbcsr_tests::test_multiplies_multiproc().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_nprows | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 865 of file dbcsr_methods.f90.
Referenced by dbcsr_tests::cp_test_multiplies(), dbcsr_dist_operations::dbcsr_create_dist_block_cyclic(), dbcsr_dist_operations::dbcsr_create_dist_elemental(), dbcsr_dist_operations::dbcsr_create_dist_fullest(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_dist_l_unrot(), dbcsr_dist_operations::dbcsr_create_dist_r_unrot(), dbcsr_dist_operations::dbcsr_create_image_dist(), dbcsr_distribution_new(), dbcsr_dist_operations::dbcsr_get_global_row_map(), dbcsr_dist_operations::dbcsr_get_global_vrow_map(), dbcsr_dist_operations::dbcsr_get_local_rows(), dbcsr_dist_operations::dbcsr_get_local_vrows(), dbcsr_dist_operations::dbcsr_make_dists_dense(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_pgrid_equal(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_dist_operations::dbcsr_print_dist(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_dist_operations::dbcsr_transpose_dims(), dbcsr_mp_operations::hybrid_alltoall_i1(), dbcsr_dist_operations::make_image_distribution_dense(), preconditioner::make_sparse_inverse_bif(), dbcsr_dist_operations::match_sizes_to_dist(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), cp_dbcsr_operations::packed_vec_reduce(), and dbcsr_tests::test_multiplies_multiproc().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_mp_numnodes | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 847 of file dbcsr_methods.f90.
Referenced by dbcsr_io::all_print(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_transformations::dbcsr_datablock_redistribute(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_operations::dbcsr_sum_replicated(), dbcsr_mp_operations::hybrid_alltoall_i1(), dbcsr_transformations::make_images(), preconditioner::make_sparse_inverse_bif(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), and cp_dbcsr_operations::packed_vec_reduce().
Here is the caller graph for this function:| INTEGER,dimension(:, :),pointer,public dbcsr_methods::dbcsr_mp_pgrid | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env | ) |
Definition at line 841 of file dbcsr_methods.f90.
Referenced by dbcsr_io::dbcsr_binary_write(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_transformations::dbcsr_desymmetrize_deep(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_mp_new_transposed(), dbcsr_mp_pgrid_equal(), dbcsr_transformations::dbcsr_redistribute(), dbcsr_transformations::dbcsr_replicate(), dbcsr_mp_operations::hybrid_alltoall_i1(), dbcsr_transformations::make_images(), cp_dbcsr_operations::packed_vec_alltoall(), cp_dbcsr_operations::packed_vec_bcast(), and cp_dbcsr_operations::packed_vec_reduce().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_mp_pgrid_equal | ( | TYPE(dbcsr_mp_obj),intent(in) | mp_env1, |
| TYPE(dbcsr_mp_obj),intent(in) | mp_env2 | ||
| ) |
Definition at line 907 of file dbcsr_methods.f90.
References dbcsr_mp_nprows(), and dbcsr_mp_pgrid().
Here is the call graph for this function:| subroutine,public dbcsr_methods::dbcsr_mp_release | ( | TYPE(dbcsr_mp_obj),intent(inout) | mp_env | ) |
Releases and potentially destrops an mp_env.
| [in,out] | mp_env | multiprocessor environment |
Definition at line 801 of file dbcsr_methods.f90.
References dbcsr_mp_grid_remove().
Referenced by cp_dbcsr_operations::cp_dbcsr_dist2d_to_dist(), cp_dbcsr_interface::cp_dbcsr_mp_release(), dbcsr_tests::cp_test_multiplies(), dbcsr_dist_operations::dbcsr_create_dist_l_rot(), dbcsr_dist_operations::dbcsr_create_dist_r_rot(), dbcsr_distribution_release(), dbcsr_example_1(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_test_methods::dbcsr_make_null_dist(), dbcsr_dist_operations::dbcsr_transpose_distribution(), and dbcsr_tests::test_multiplies_multiproc().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mutable_destroy | ( | TYPE(dbcsr_mutable_obj),intent(inout) | mutable | ) |
Destroys a mutable data type.
| [in,out] | mutable | mutable data |
Definition at line 2730 of file dbcsr_methods.f90.
Referenced by dbcsr_mutable_release(), and dbcsr_work_operations::dbcsr_work_destroy().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mutable_hold | ( | TYPE(dbcsr_mutable_obj),intent(inout) | mutable | ) |
Registers another reference to the mutable data type.
| [in,out] | mutable | mutable data |
Definition at line 2755 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, and dbcsr_error_handling::dbcsr_fatal_level.
| subroutine,public dbcsr_methods::dbcsr_mutable_init | ( | TYPE(dbcsr_mutable_obj),intent(out) | mutable | ) |
Initializes a mutable data type.
| [out] | mutable | mutable data |
Definition at line 2715 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_init_wm().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_mutable_instantiated | ( | TYPE(dbcsr_mutable_obj),intent(in) | mutable | ) |
Deregisters a reference to the mutable data type.
The object is destroy when there is no reference to it left.
| [in] | mutable | mutable data |
| [out] | instantiated | whether the object is instantiated |
Definition at line 2835 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_fill_wm_from_matrix(), dbcsr_block_access::dbcsr_get_block_p_area(), and dbcsr_wm_use_mutable().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mutable_new | ( | TYPE(dbcsr_mutable_obj),intent(inout) | mutable, |
| INTEGER,intent(in) | data_type | ||
| ) |
Creates a new mutable instance.
| [in,out] | mutable | mutable data |
| [in] | data_type | data type to be stored here (see dbcsr_types for possibilities) |
Definition at line 2801 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_fatal_level, dbcsr_types::dbcsr_type_complex_4, dbcsr_types::dbcsr_type_complex_8, dbcsr_types::dbcsr_type_real_4, dbcsr_types::dbcsr_type_real_8, and dbcsr_error_handling::dbcsr_wrong_args_error.
Referenced by dbcsr_work_operations::dbcsr_fill_wm_from_matrix(), and dbcsr_work_operations::dbcsr_work_create().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_mutable_release | ( | TYPE(dbcsr_mutable_obj),intent(inout) | mutable | ) |
Deregisters a reference to the mutable data type.
The object is destroy when there is no reference to it left.
| [in,out] | mutable | mutable data |
Definition at line 2776 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_error_handling::dbcsr_fatal_level, and dbcsr_mutable_destroy().
Here is the call graph for this function:| CHARACTER(len=default_string_length),public dbcsr_methods::dbcsr_name | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1526 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_name(), dbcsr_io::dbcsr_binary_write(), dbcsr_operations::dbcsr_copy(), dbcsr_work_operations::dbcsr_create_template(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nblkcols_local | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1488 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nblkcols_local(), and dbcsr_mm_cannon::setup_rec_index().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nblkcols_total | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1464 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nblkcols_total(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_io::dbcsr_binary_write(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_operations::dbcsr_crop_matrix(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_init_random(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_index_operations::dbcsr_order_matrix_index(), dbcsr_operations::dbcsr_scale_mat_any(), dbcsr_mm_cannon::setup_rec_index(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nblkrows_local | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1482 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nblkrows_local(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), and dbcsr_mm_cannon::setup_rec_index().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nblkrows_total | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1457 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nblkrows_total(), dbcsr_operations::dbcsr_add_anytype(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_operations::dbcsr_add_reserved(), dbcsr_io::dbcsr_binary_write(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_operations::dbcsr_crop_matrix(), dbcsr_transformations::dbcsr_datablock_redistribute(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_hadamard_product(), dbcsr_operations::dbcsr_init_random(), dbcsr_operations::dbcsr_insert_blocks(), dbcsr_test_methods::dbcsr_make_random_matrix(), dbcsr_mm_cannon::dbcsr_mm_cannon_multiply(), dbcsr_index_operations::dbcsr_order_matrix_index(), dbcsr_block_access::dbcsr_reserve_blocks(), dbcsr_operations::dbcsr_scale_mat_any(), dbcsr_mm_cannon::setup_rec_index(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nfullcols_local | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1500 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nfullcols_local(), and dbcsr_mm_cannon::dbcsr_mm_cannon_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nfullcols_total | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1476 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nfullcols_total(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_operations::dbcsr_crop_matrix(), dbcsr_operations::dbcsr_gershgorin_norm_r8(), dbcsr_get_occupation(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_norm_anytype(), dbcsr_operations::dbcsr_scale_anytype(), dbcsr_test_add::dbcsr_test_add_low(), dbcsr_test_multiply::dbcsr_test_multiply_low(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nfullrows_local | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1494 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nfullrows_local(), and dbcsr_mm_cannon::dbcsr_mm_cannon_multiply().
Here is the caller graph for this function:| INTEGER,public dbcsr_methods::dbcsr_nfullrows_total | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1470 of file dbcsr_methods.f90.
Referenced by cp_dbcsr_interface::cp_dbcsr_nfullrows_total(), dbcsr_operations::dbcsr_add_on_diag_anytype(), dbcsr_transformations::dbcsr_complete_redistribute(), dbcsr_operations::dbcsr_crop_matrix(), dbcsr_operations::dbcsr_gershgorin_norm_r8(), dbcsr_operations::dbcsr_get_diag_anytype(), dbcsr_get_occupation(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_operations::dbcsr_norm_anytype(), dbcsr_operations::dbcsr_scale_anytype(), dbcsr_operations::dbcsr_set_diag_anytype(), dbcsr_test_add::dbcsr_test_add_low(), dbcsr_test_multiply::dbcsr_test_multiply_low(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| subroutine dbcsr_methods::dbcsr_read_lock | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) | [private] |
Locks the DBCSR data structure for reading.
| [in,out] | matrix | the matrix to lock |
Definition at line 768 of file dbcsr_methods.f90.
| subroutine dbcsr_methods::dbcsr_read_unlock | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) | [private] |
Releases the reading lock on a DBCSR data structure.
| [in,out] | matrix | the matrix to lock |
Definition at line 778 of file dbcsr_methods.f90.
| recursive subroutine,public dbcsr_methods::dbcsr_release | ( | TYPE(dbcsr_obj),intent(inout) | matrix | ) |
Releases a reference for a DBCSR matrix.
If there are no references left, the matrix is destroyed.
| [in,out] | set | DBCSR matrix |
Definition at line 410 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_destroy(), dbcsr_types::dbcsr_magic_number, and dbcsr_error_handling::dbcsr_warning_level.
Referenced by array_destroy_1d(), array_destroy_2d(), cp_dbcsr_interface::cp_dbcsr_release(), dbcsr_tests::cp_test_multiplies(), dbcsr_transformations::dbcsr_distribute(), dbcsr_example_1(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_operations::dbcsr_lanczos_extremal_eig(), dbcsr_transformations::dbcsr_make_images_dense(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_transformations::dbcsr_new_transposed(), dbcsr_performance_multiply::dbcsr_perf_multiply_low(), dbcsr_operations::dbcsr_reduce(), dbcsr_transformations::dbcsr_replicate(), dbcsr_test_add::dbcsr_test_add_low(), dbcsr_test_multiply::dbcsr_test_multiply_low(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_release_locals | ( | TYPE(dbcsr_obj),intent(inout) | matrix, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Definition at line 540 of file dbcsr_methods.f90.
Referenced by dbcsr_destroy(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_dist_operations::dbcsr_reset_locals(), and dbcsr_dist_operations::dbcsr_reset_vlocals().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_release_p | ( | TYPE(dbcsr_obj),pointer | matrix, |
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Releases a reference for a DBCSR matrix.
If there are no references left, the matrix is destroyed.
| [in,out] | set | DBCSR matrix |
Definition at line 438 of file dbcsr_methods.f90.
References dbcsr_error_handling::dbcsr_caller_error, dbcsr_destroy(), dbcsr_types::dbcsr_magic_number, and dbcsr_error_handling::dbcsr_warning_level.
Referenced by dbcsr_init_obj_p().
Here is the call graph for this function:
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_row_block_offsets | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1585 of file dbcsr_methods.f90.
Referenced by dbcsr_operations::dbcsr_crop_matrix(), dbcsr_operations::dbcsr_multiply_anytype(), dbcsr_performance_multiply::perf_multiply(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| TYPE(array_i1d_obj),public dbcsr_methods::dbcsr_row_block_sizes | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) |
Definition at line 1564 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_create_template(), dbcsr_example_2(), dbcsr_example_3(), dbcsr_get_data_size_used(), dbcsr_transformations::dbcsr_make_untransposed_blocks(), dbcsr_operations::dbcsr_reduce(), dbcsr_performance_multiply::perf_multiply(), dbcsr_test_add::test_add(), dbcsr_tests::test_multiplies_multiproc(), and dbcsr_test_multiply::test_multiply().
Here is the caller graph for this function:| subroutine,public dbcsr_methods::dbcsr_switch_data_area | ( | TYPE(dbcsr_obj),intent(inout) | matrix, |
| TYPE(dbcsr_data_obj),intent(in) | data_area, | ||
| TYPE(dbcsr_data_obj),intent(out),optional | previous_data_area, | ||
| TYPE(dbcsr_error_type),intent(inout) | error | ||
| ) |
Sets the data area of a matrix.
| [in,out] | matrix | matrix for which to set the data area |
| [in] | data_area | data area to set |
| [out] | previous_data_area | (optional) previous data area |
| [in,out] | error | error |
Definition at line 1792 of file dbcsr_methods.f90.
References dbcsr_block_buffers::dbcsr_buffers_2d_needed, dbcsr_error_handling::dbcsr_error_set(), dbcsr_error_handling::dbcsr_error_stop(), and error.
Referenced by dbcsr_operations::dbcsr_copy(), dbcsr_operations::dbcsr_copy_submatrix(), dbcsr_transformations::dbcsr_distribute(), dbcsr_transformations::dbcsr_make_undense(), dbcsr_transformations::dbcsr_new_transposed(), dbcsr_transformations::dbcsr_replicate(), dbcsr_transformations::make_dense(), and dbcsr_work_operations::quick_finalize().
Here is the call graph for this function:
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_use_mutable | ( | TYPE(dbcsr_type),intent(in) | matrix | ) |
Returns whether work matrices should use the mutable data type.
| [in] | matrix | matrix |
| [out] | use_mutable | use the mutable and not append-only working structures |
Definition at line 1554 of file dbcsr_methods.f90.
Referenced by dbcsr_work_operations::dbcsr_create_template(), and dbcsr_block_access::dbcsr_get_block_p_area().
Here is the caller graph for this function:| LOGICAL dbcsr_methods::dbcsr_valid_index_obj | ( | TYPE(dbcsr_obj),intent(in) | matrix | ) | [private] |
Returns whether the index structure of the matrix is valid.
| [in] | matrix | verify index validity of this matrix |
| valid_index | index validity |
Definition at line 337 of file dbcsr_methods.f90.
References dbcsr_valid_index_type().
Here is the call graph for this function:| LOGICAL dbcsr_methods::dbcsr_valid_index_type | ( | TYPE(dbcsr_type),intent(in) | matrix | ) | [private] |
Returns whether the index structure of the matrix is valid.
| [in] | matrix | verify index validity of this matrix |
| valid_index | index validity |
Definition at line 319 of file dbcsr_methods.f90.
Referenced by dbcsr_valid_index_obj().
Here is the caller graph for this function:| LOGICAL,public dbcsr_methods::dbcsr_wm_use_mutable | ( | TYPE(dbcsr_work_type),intent(in) | wm | ) |
Returns whether this work matrix uses the mutable type.
| [in] | wm | work matrix |
| [out] | use_mutable | use the mutable and not append-only working structures |
Definition at line 1539 of file dbcsr_methods.f90.
References dbcsr_mutable_instantiated().
Referenced by dbcsr_work_operations::can_quickly_finalize(), cp_dbcsr_operations::cp_dbcsr_add_block_node(), dbcsr_work_operations::dbcsr_fill_wm_from_matrix(), dbcsr_work_operations::dbcsr_finalize(), dbcsr_work_operations::dbcsr_merge_all(), dbcsr_work_operations::dbcsr_merge_single_wm(), and dbcsr_index_operations::dbcsr_sort_many_indices().
Here is the call graph for this function:
Here is the caller graph for this function: