MPI-SCATCI  2.0
An MPI version of SCATCI
scalapackdiagonalizer_module Module Reference

Diagonalizer type using ScaLAPACK backend. More...

Data Types

type  scalapackdiagonalizer
 

Functions/Subroutines

subroutine diagonalize_scalapack (this, matrix_elements, num_eigenpair, dresult, all_procs, option, integrals)
 
subroutine diagonalize_backend_scalapack (this, matrix_elements, num_eigenpair, z_mat, w, all_procs, option, integrals)
 
subroutine process_solution (this, matrix_elements, num_eigenpair, z_mat, w, dresult, all_procs, option, integrals)
 

Detailed Description

Diagonalizer type using ScaLAPACK backend.

Authors
A Al-Refaie
Date
2017

This module will be built only if ScaLAPACK is available. Uses the ScaLAPACK routine pdsyevd and several supporting ScaLAPACK and BLACS routines. Uses a compile-time macro for the BLAS/LAPACK integer, which is long integer by default, or controllable by the compiler flags -Dblas64int/-Dblas32int.

Note
16/01/2019 - Jakub Benda: Unifom coding style and expanded documentation.

Function/Subroutine Documentation

◆ diagonalize_backend_scalapack()

subroutine scalapackdiagonalizer_module::diagonalize_backend_scalapack ( class(scalapackdiagonalizer this,
class(scalapackmatrix), intent(in)  matrix_elements,
integer, intent(in)  num_eigenpair,
real(wp), dimension(:,:), intent(inout), allocatable  z_mat,
real(wp), dimension(:), intent(inout), allocatable  w,
logical, intent(in)  all_procs,
type(options), intent(in)  option,
class(baseintegral), intent(in)  integrals 
)
private

Definition at line 90 of file SCALAPACKDiagonalizer_module.f90.

◆ diagonalize_scalapack()

subroutine scalapackdiagonalizer_module::diagonalize_scalapack ( class(scalapackdiagonalizer this,
class(basematrix), intent(in)  matrix_elements,
integer, intent(in)  num_eigenpair,
class(diagonalizerresult dresult,
logical, intent(in)  all_procs,
type(options), intent(in)  option,
class(baseintegral), intent(in)  integrals 
)
private

Definition at line 63 of file SCALAPACKDiagonalizer_module.f90.

◆ process_solution()

subroutine scalapackdiagonalizer_module::process_solution ( class(scalapackdiagonalizer this,
class(scalapackmatrix), intent(in)  matrix_elements,
integer, intent(in)  num_eigenpair,
real(wp), dimension(:,:), intent(inout), allocatable  z_mat,
real(wp), dimension(:), intent(inout), allocatable  w,
class(diagonalizerresult dresult,
logical, intent(in)  all_procs,
type(options), intent(in)  option,
class(baseintegral), intent(in)  integrals 
)
private

Definition at line 163 of file SCALAPACKDiagonalizer_module.f90.