(git:b279b6b)
cp_cfm_types.F File Reference

Go to the source code of this file.

Modules

module  cp_cfm_types
 Represents a complex full matrix distributed on many processors.
 

Functions/Subroutines

subroutine, public cp_cfm_types::cp_cfm_create (matrix, matrix_struct, name)
 Creates a new full matrix with the given structure. More...
 
subroutine, public cp_cfm_types::cp_cfm_release (matrix)
 Releases a full matrix. More...
 
subroutine, public cp_cfm_types::cp_cfm_set_all (matrix, alpha, beta)
 Set all elements of the full matrix to alpha. Besides, set all diagonal matrix elements to beta (if given explicitly). More...
 
subroutine, public cp_cfm_types::cp_cfm_get_element (matrix, irow_global, icol_global, alpha)
 Get the matrix element by its global index. More...
 
subroutine, public cp_cfm_types::cp_cfm_set_element (matrix, irow_global, icol_global, alpha)
 Set the matrix element (irow_global,icol_global) of the full matrix to alpha. More...
 
subroutine, public cp_cfm_types::cp_cfm_get_submatrix (fm, target_m, start_row, start_col, n_rows, n_cols, transpose)
 Extract a sub-matrix from the full matrix: op(target_m)(1:n_rows,1:n_cols) = fm(start_row:start_row+n_rows,start_col:start_col+n_cols). Sub-matrix 'target_m' is replicated on each CPU. Using this call is expensive. More...
 
subroutine, public cp_cfm_types::cp_cfm_set_submatrix (matrix, new_values, start_row, start_col, n_rows, n_cols, alpha, beta, transpose)
 Set a sub-matrix of the full matrix: matrix(start_row:start_row+n_rows,start_col:start_col+n_cols) = alpha*op(new_values)(1:n_rows,1:n_cols) + beta*matrix(start_row:start_row+n_rows,start_col:start_col+n_cols) More...
 
subroutine, public cp_cfm_types::cp_cfm_get_info (matrix, name, nrow_global, ncol_global, nrow_block, ncol_block, nrow_local, ncol_local, row_indices, col_indices, local_data, context, matrix_struct, para_env)
 Returns information about a full matrix. More...
 
subroutine, public cp_cfm_types::cp_cfm_to_fm (msource, mtargetr, mtargeti)
 Copy real and imaginary parts of a complex full matrix into separate real-value full matrices. More...
 
subroutine, public cp_cfm_types::cp_fm_to_cfm (msourcer, msourcei, mtarget)
 Construct a complex full matrix by taking its real and imaginary parts from two separate real-value full matrices. More...
 
subroutine, public cp_cfm_types::cp_cfm_start_copy_general (source, destination, para_env, info)
 Initiate the copy operation: get distribution data, post MPI isend and irecvs. More...
 
subroutine, public cp_cfm_types::cp_cfm_finish_copy_general (destination, info)
 Complete the copy operation: wait for comms, unpack, clean up MPI state. More...
 
subroutine, public cp_cfm_types::cp_cfm_cleanup_copy_general (info)
 Complete the copy operation: wait for comms clean up MPI state. More...