EigenvalueSoLversforPetaflop-Applications(ELPA)  2016.05.003
Private Member Functions | List of all members
elpa1_auxiliary::mult_at_b_real Interface Reference

mult_at_b_real: Performs C : = A**T * B this is the old, deprecated interface for the newer elpa_mult_at_b_real where A is a square matrix (na,na) which is optionally upper or lower triangular B is a (na,ncb) matrix C is a (na,ncb) matrix where optionally only the upper or lower triangle may be computed More...

Private Member Functions

logical function elpa_mult_at_b_real (uplo_a, uplo_c, na, ncb, a, lda, b, ldb, nblk, mpi_comm_rows, mpi_comm_cols, c, ldc)
 elpa_mult_at_b_real: Performs C : = A**T * B where A is a square matrix (na,na) which is optionally upper or lower triangular B is a (na,ncb) matrix C is a (na,ncb) matrix where optionally only the upper or lower triangle may be computed More...
 

Detailed Description

mult_at_b_real: Performs C : = A**T * B this is the old, deprecated interface for the newer elpa_mult_at_b_real where A is a square matrix (na,na) which is optionally upper or lower triangular B is a (na,ncb) matrix C is a (na,ncb) matrix where optionally only the upper or lower triangle may be computed

Parameters
uplo_a'U' if A is upper triangular 'L' if A is lower triangular anything else if A is a full matrix Please note: This pertains to the original A (as set in the calling program) whereas the transpose of A is used for calculations If uplo_a is 'U' or 'L', the other triangle is not used at all, i.e. it may contain arbitrary numbers
uplo_c'U' if only the upper diagonal part of C is needed 'L' if only the upper diagonal part of C is needed anything else if the full matrix C is needed Please note: Even when uplo_c is 'U' or 'L', the other triangle may be written to a certain extent, i.e. one shouldn't rely on the content there!
naNumber of rows/columns of A, number of rows of B and C
ncbNumber of columns of B and C
amatrix a
ldaleading dimension of matrix a
bmatrix b
ldbleading dimension of matrix b
nblkblocksize of cyclic distribution, must be the same in both directions!
mpi_comm_rowsMPI communicator for rows
mpi_comm_colsMPI communicator for columns
cmatrix c
ldcleading dimension of matrix c

Member Function/Subroutine Documentation

logical function elpa1_auxiliary::mult_at_b_real::elpa_mult_at_b_real ( character*1  uplo_a,
character*1  uplo_c,
integer(kind=ik)  na,
integer(kind=ik)  ncb,
real(kind=rk), dimension(lda,*)  a,
integer(kind=ik)  lda,
real(kind=rk), dimension(ldb,*)  b,
integer(kind=ik)  ldb,
integer(kind=ik)  nblk,
integer(kind=ik)  mpi_comm_rows,
integer(kind=ik)  mpi_comm_cols,
real(kind=rk), dimension(ldc,*)  c,
integer(kind=ik)  ldc 
)
private

elpa_mult_at_b_real: Performs C : = A**T * B where A is a square matrix (na,na) which is optionally upper or lower triangular B is a (na,ncb) matrix C is a (na,ncb) matrix where optionally only the upper or lower triangle may be computed

Parameters
uplo_a'U' if A is upper triangular 'L' if A is lower triangular anything else if A is a full matrix Please note: This pertains to the original A (as set in the calling program) whereas the transpose of A is used for calculations If uplo_a is 'U' or 'L', the other triangle is not used at all, i.e. it may contain arbitrary numbers
uplo_c'U' if only the upper diagonal part of C is needed 'L' if only the upper diagonal part of C is needed anything else if the full matrix C is needed Please note: Even when uplo_c is 'U' or 'L', the other triangle may be written to a certain extent, i.e. one shouldn't rely on the content there!
naNumber of rows/columns of A, number of rows of B and C
ncbNumber of columns of B and C
amatrix a
ldaleading dimension of matrix a
bmatrix b
ldbleading dimension of matrix b
nblkblocksize of cyclic distribution, must be the same in both directions!
mpi_comm_rowsMPI communicator for rows
mpi_comm_colsMPI communicator for columns
cmatrix c
ldcleading dimension of matrix c
Returns
success logical reports success or failure

The documentation for this interface was generated from the following file: