(git:ccc2433)
cp_fm_types.F File Reference

Go to the source code of this file.

Modules

module  cp_fm_types
 represent a full matrix distributed on many processors
 

Functions/Subroutines

subroutine, public cp_fm_types::cp_fm_create (matrix, matrix_struct, name, use_sp)
 creates a new full matrix with the given structure More...
 
subroutine, public cp_fm_types::cp_fm_init_random (matrix, ncol, start_col)
 fills a matrix with random numbers More...
 
subroutine, public cp_fm_types::cp_fm_set_all (matrix, alpha, beta)
 set all elements of a matrix to the same value, and optionally the diagonal to a different one More...
 
subroutine, public cp_fm_types::cp_fm_get_diag (matrix, diag)
 returns the diagonal elements of a fm More...
 
subroutine, public cp_fm_types::cp_fm_get_element (matrix, irow_global, icol_global, alpha, local)
 returns an element of a fm this value is valid on every cpu using this call is expensive More...
 
subroutine, public cp_fm_types::cp_fm_set_element (matrix, irow_global, icol_global, alpha)
 sets an element of a matrix More...
 
subroutine, public cp_fm_types::cp_fm_set_submatrix (fm, new_values, start_row, start_col, n_rows, n_cols, alpha, beta, transpose)
 sets a submatrix of a full matrix fm(start_row:start_row+n_rows,start_col:start_col+n_cols) = alpha*op(new_values)(1:n_rows,1:n_cols)+ beta More...
 
subroutine, public cp_fm_types::cp_fm_get_submatrix (fm, target_m, start_row, start_col, n_rows, n_cols, transpose)
 gets a submatrix of a full matrix op(target_m)(1:n_rows,1:n_cols) =fm(start_row:start_row+n_rows,start_col:start_col+n_cols) target_m is replicated on all cpus using this call is expensive More...
 
subroutine, public cp_fm_types::cp_fm_get_info (matrix, name, nrow_global, ncol_global, nrow_block, ncol_block, nrow_local, ncol_local, row_indices, col_indices, local_data, context, nrow_locals, ncol_locals, matrix_struct, para_env)
 returns all kind of information about the full matrix More...
 
subroutine, public cp_fm_types::cp_fm_write_info (matrix, io_unit)
 Write nicely formatted info about the FM to the given I/O unit (including the underlying FM struct) More...
 
subroutine, public cp_fm_types::cp_fm_maxabsval (matrix, a_max, ir_max, ic_max)
 find the maximum absolute value of the matrix element maxval(abs(matrix)) More...
 
subroutine, public cp_fm_types::cp_fm_maxabsrownorm (matrix, a_max)
 find the maximum over the rows of the sum of the absolute values of the elements of a given row = || A ||_infinity More...
 
subroutine, public cp_fm_types::cp_fm_vectorsnorm (matrix, norm_array)
 find the inorm of each column norm_{j}= sqrt( \sum_{i} A_{ij}*A_{ij} ) More...
 
subroutine, public cp_fm_types::cp_fm_vectorssum (matrix, sum_array, dir)
 summing up all the elements along the matrix's i-th index \( \mathrm{sum}_{j} = \sum_{i} A_{ij} \) or \( \mathrm{sum}_{i} = \sum_{j} A_{ij} \) More...
 
subroutine, public cp_fm_types::cp_fm_to_fm_triangular (msource, mtarget, uplo)
 copy just a triangular matrix More...
 
subroutine, public cp_fm_types::cp_fm_to_fm_submat (msource, mtarget, nrow, ncol, s_firstrow, s_firstcol, t_firstrow, t_firstcol)
 copy just a part ot the matrix More...
 
subroutine, public cp_fm_types::cp_fm_copy_general (source, destination, para_env)
 General copy of a fm matrix to another fm matrix. Uses non-blocking MPI rather than ScaLAPACK. More...
 
subroutine, public cp_fm_types::cp_fm_start_copy_general (source, destination, para_env, info)
 Initiates the copy operation: get distribution data, post MPI isend and irecvs. More...
 
subroutine, public cp_fm_types::cp_fm_finish_copy_general (destination, info)
 Completes the copy operation: wait for comms, unpack, clean up MPI state. More...
 
subroutine, public cp_fm_types::cp_fm_cleanup_copy_general (info)
 Completes the copy operation: wait for comms clean up MPI state. More...
 
subroutine, public cp_fm_types::cp_fm_to_fm_submat_general (source, destination, nrows, ncols, s_firstrow, s_firstcol, d_firstrow, d_firstcol, global_context)
 General copy of a submatrix of fm matrix to a submatrix of another fm matrix. The two matrices can have different contexts. More...
 
subroutine, public cp_fm_types::cp_fm_add_to_element (matrix, irow_global, icol_global, alpha)
 ... More...
 
subroutine, public cp_fm_types::cp_fm_write_unformatted (fm, unit)
 ... More...
 
subroutine, public cp_fm_types::cp_fm_write_formatted (fm, unit, header, value_format)
 Write out a full matrix in plain text. More...
 
subroutine, public cp_fm_types::cp_fm_read_unformatted (fm, unit)
 ... More...
 
integer function, public cp_fm_types::cp_fm_indxg2p (INDXGLOB, NB, IPROC, ISRCPROC, NPROCS)
 wrapper to scalapack function INDXG2P that computes the process coordinate which possesses the entry of a distributed matrix specified by a global index INDXGLOB. More...
 
integer function, public cp_fm_types::cp_fm_indxg2l (INDXGLOB, NB, IPROC, ISRCPROC, NPROCS)
 wrapper to scalapack function INDXG2L that computes the local index of a distributed matrix entry pointed to by the global index INDXGLOB. More...
 
integer function, public cp_fm_types::cp_fm_indxl2g (INDXLOC, NB, IPROC, ISRCPROC, NPROCS)
 wrapper to scalapack function INDXL2G that computes the global index of a distributed matrix entry pointed to by the local index INDXLOC of the process indicated by IPROC. More...
 
subroutine, public cp_fm_types::cp_fm_setup (mult_type)
 ... More...
 
integer function, public cp_fm_types::cp_fm_get_mm_type ()
 ... More...
 
integer function, public cp_fm_types::cp_fm_pilaenv (ictxt, prec)
 ... More...