Eigenvalue SoLvers for Petaflop-Applications (ELPA)  2019.05.002
Data Types | Functions/Subroutines | Variables
elpa1 Module Reference

Fortran module which provides the routines to use the one-stage ELPA solver. More...

Data Types

interface  solve_evp_complex_1stage_double
 solve_evp_complex_1stage_double: Fortran function to solve the complex eigenvalue problem with 1-stage solver. This is called by "elpa_solve_evp_complex" More...
 
interface  solve_evp_real_1stage_double
 elpa_solve_evp_real_1stage_double: Fortran function to solve the real eigenvalue problem with 1-stage solver. This is called by "elpa_solve_evp_real" More...
 

Functions/Subroutines

integer(kind=c_int) function, public elpa_get_communicators (mpi_comm_global, my_prow, my_pcol, mpi_comm_rows, mpi_comm_cols)
 

Variables

real(kind=c_double), public time_evp_fwd
 time for forward transformations (to tridiagonal form) More...
 
real(kind=c_double), public time_evp_solve
 time for solving the tridiagonal system More...
 
real(kind=c_double), public time_evp_back
 time for back transformations of eigenvectors More...
 
logical, public elpa_print_times = .false.
 Set elpa_print_times to .true. for explicit timing outputs. More...
 

Detailed Description

Fortran module which provides the routines to use the one-stage ELPA solver.

Function/Subroutine Documentation

◆ elpa_get_communicators()

integer(kind=c_int) function, public elpa1::elpa_get_communicators ( integer(kind=c_int), intent(in)  mpi_comm_global,
integer(kind=c_int), intent(in)  my_prow,
integer(kind=c_int), intent(in)  my_pcol,
integer(kind=c_int), intent(out)  mpi_comm_rows,
integer(kind=c_int), intent(out)  mpi_comm_cols 
)
Parameters
mpi_comm_globalGlobal communicator for the calculations (in)
my_prowRow coordinate of the calling process in the process grid (in)
my_pcolColumn coordinate of the calling process in the process grid (in)
mpi_comm_rowsCommunicator for communicating within rows of processes (out)
mpi_comm_colsCommunicator for communicating within columns of processes (out)
Returns
mpierr integer error value of mpi_comm_split function

Variable Documentation

◆ elpa_print_times

logical, public elpa1::elpa_print_times = .false.

Set elpa_print_times to .true. for explicit timing outputs.

◆ time_evp_back

real(kind=c_double), public elpa1::time_evp_back

time for back transformations of eigenvectors

◆ time_evp_fwd

real(kind=c_double), public elpa1::time_evp_fwd

time for forward transformations (to tridiagonal form)

◆ time_evp_solve

real(kind=c_double), public elpa1::time_evp_solve

time for solving the tridiagonal system