Eigenvalue SoLvers for Petaflop-Applications (ELPA) 2024.05.001.rc1
Loading...
Searching...
No Matches
Functions/Subroutines
trans_ev_template.F90 File Reference
#include "../general/sanity.F90"
#include "../general/precision_kinds.F90"

Functions/Subroutines

subroutine trans_ev_cpu_MATH_DATATYPE_PRECISION (obj, na, nqc, a_mat, lda, tau, q_mat, ldq, nblk, matrixcols, mpi_comm_rows, mpi_comm_cols, success)
 Transforms the eigenvectors of a tridiagonal matrix back to the eigenvectors of the original matrix (like Scalapack Routine PDORMTR)
 

Function/Subroutine Documentation

◆ trans_ev_cpu_MATH_DATATYPE_PRECISION()

subroutine trans_ev_cpu_MATH_DATATYPE_PRECISION ( class(elpa_abstract_impl_t), intent(inout) obj,
integer(kind=ik), intent(in) na,
integer(kind=ik), intent(in) nqc,
dimension(lda,matrixcols), intent(inout) a_mat,
integer(kind=ik), intent(in) lda,
dimension(na), intent(in) tau,
dimension(ldq,matrixcols), intent(inout) q_mat,
integer(kind=ik), intent(in) ldq,
integer(kind=ik), intent(in) nblk,
integer(kind=ik), intent(in) matrixcols,
integer(kind=ik), intent(in) mpi_comm_rows,
integer(kind=ik), intent(in) mpi_comm_cols,
logical success )

Transforms the eigenvectors of a tridiagonal matrix back to the eigenvectors of the original matrix (like Scalapack Routine PDORMTR)

Parameters
naOrder of matrix a_mat, number of rows of matrix q_mat
nqcNumber of columns of matrix q_mat
a_mat(lda,matrixCols)Matrix containing the Householder vectors (i.e. matrix a after tridiag_real) Distribution is like in Scalapack.
ldaLeading dimension of a_mat
tau(na)Factors of the Householder vectors
q_matOn input: Eigenvectors of tridiagonal matrix On output: Transformed eigenvectors Distribution is like in Scalapack.
ldqLeading dimension of q_mat
nblkblocksize of cyclic distribution, must be the same in both directions!
matrixColslocal columns of matrix a_mat and q_mat
mpi_comm_rowsMPI-Communicator for rows
mpi_comm_colsMPI-Communicator for columns
useGPUIf true, GPU version of the subroutine will be used