(git:6a2e663)
cp_dbcsr_diag Module Reference

Interface to (sca)lapack for the Cholesky based procedures. More...

Functions/Subroutines

subroutine, public cp_dbcsr_syevd (matrix, eigenvectors, eigenvalues, para_env, blacs_env)
 ... More...
 
subroutine, public cp_dbcsr_syevx (matrix, eigenvectors, eigenvalues, neig, work_syevx, para_env, blacs_env)
 compute eigenvalues and optionally eigenvectors of a real symmetric matrix using scalapack. If eigenvectors are required this routine will replicate a full matrix on each CPU... if more than a handful of vectors are needed, use cp_dbcsr_syevd instead More...
 
subroutine, public cp_dbcsr_heevd (matrix, eigenvectors, eigenvalues, para_env, blacs_env)
 ... More...
 
subroutine, public cp_dbcsr_power (matrix, exponent, threshold, n_dependent, para_env, blacs_env, verbose, eigenvectors, eigenvalues)
 ... More...
 

Detailed Description

Interface to (sca)lapack for the Cholesky based procedures.

Author
VW
Date
2009-11-09
Version
0.8

Modification history:

  • Created 2009-11-09

Function/Subroutine Documentation

◆ cp_dbcsr_syevd()

subroutine, public cp_dbcsr_diag::cp_dbcsr_syevd ( type(dbcsr_type)  matrix,
type(dbcsr_type)  eigenvectors,
real(kind=dp), dimension(:), intent(out)  eigenvalues,
type(mp_para_env_type), pointer  para_env,
type(cp_blacs_env_type), pointer  blacs_env 
)

...

Parameters
matrix...
eigenvectors...
eigenvalues...
para_env...
blacs_env...

Definition at line 66 of file cp_dbcsr_diag.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cp_dbcsr_syevx()

subroutine, public cp_dbcsr_diag::cp_dbcsr_syevx ( type(dbcsr_type), pointer  matrix,
type(dbcsr_type), optional, pointer  eigenvectors,
real(kind=dp), dimension(:), intent(out)  eigenvalues,
integer, intent(in), optional  neig,
real(kind=dp), intent(in), optional  work_syevx,
type(mp_para_env_type), pointer  para_env,
type(cp_blacs_env_type), pointer  blacs_env 
)

compute eigenvalues and optionally eigenvectors of a real symmetric matrix using scalapack. If eigenvectors are required this routine will replicate a full matrix on each CPU... if more than a handful of vectors are needed, use cp_dbcsr_syevd instead

Parameters
matrix...
eigenvectors...
eigenvalues...
neig...
work_syevx...
para_env...
blacs_env...
matrix is supposed to be in upper triangular form, and overwritten by this routine
neig is the number of vectors needed (default all) work_syevx evec calculation only, is the fraction of the working buffer allowed (1.0 use full buffer) reducing this saves time, but might cause the routine to fail

Definition at line 124 of file cp_dbcsr_diag.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cp_dbcsr_heevd()

subroutine, public cp_dbcsr_diag::cp_dbcsr_heevd ( type(dbcsr_type)  matrix,
type(dbcsr_type), optional, pointer  eigenvectors,
real(kind=dp), dimension(:), intent(out)  eigenvalues,
type(mp_para_env_type), pointer  para_env,
type(cp_blacs_env_type), pointer  blacs_env 
)

...

Parameters
matrix...
eigenvectors...
eigenvalues...
para_env...
blacs_env...

Definition at line 182 of file cp_dbcsr_diag.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cp_dbcsr_power()

subroutine, public cp_dbcsr_diag::cp_dbcsr_power ( type(dbcsr_type), intent(inout)  matrix,
real(dp), intent(in)  exponent,
real(dp), intent(in)  threshold,
integer, intent(out)  n_dependent,
type(mp_para_env_type), pointer  para_env,
type(cp_blacs_env_type), pointer  blacs_env,
logical, intent(in), optional  verbose,
type(dbcsr_type), intent(inout), optional  eigenvectors,
real(kind=dp), dimension(2), intent(out), optional  eigenvalues 
)

...

Parameters
matrix...
exponent...
threshold...
n_dependent...
para_env...
blacs_env...
verbose...
eigenvectors...
eigenvalues...

Definition at line 232 of file cp_dbcsr_diag.F.

Here is the call graph for this function:
Here is the caller graph for this function: