MPI-SCATCI
2.0
An MPI version of SCATCI
SLEPCDavidsonDiagonalizer_module.F90
Go to the documentation of this file.
1
! Copyright 2019
2
!
3
! For a comprehensive list of the developers that contributed to these codes
4
! see the UK-AMOR website.
5
!
6
! This file is part of UKRmol-in (UKRmol+ suite).
7
!
8
! UKRmol-in is free software: you can redistribute it and/or modify
9
! it under the terms of the GNU General Public License as published by
10
! the Free Software Foundation, either version 3 of the License, or
11
! (at your option) any later version.
12
!
13
! UKRmol-in is distributed in the hope that it will be useful,
14
! but WITHOUT ANY WARRANTY; without even the implied warranty of
15
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
! GNU General Public License for more details.
17
!
18
! You should have received a copy of the GNU General Public License
19
! along with UKRmol-in (in source/COPYING). Alternatively, you can also visit
20
! <https://www.gnu.org/licenses/>.
21
33
module
slepcdavidsondiagonalizer_module
34
35
use
const_gbl,
only
: stdout
36
use
slepcdiagonalizer_module
,
only
:
slepcdiagonalizer
37
use
slepceps
38
39
implicit none
40
41
#include <finclude/slepceps.h>
42
43
public
slepcdavidsondiagonalizer
44
45
private
46
47
type
,
extends
(
slepcdiagonalizer
) ::
slepcdavidsondiagonalizer
48
contains
49
procedure
,
public
:: selecteps =>
select_davidson
50
end type
51
52
contains
53
54
subroutine
select_davidson
(this,eps)
55
class
(
slepcdavidsondiagonalizer
) :: this
56
eps,
intent(inout)
:: eps
57
petscerrorcode :: ierr
58
59
write
(stdout,
"('--------Generalized Davidson used as Diagonalizer------')"
)
60
61
! ** Create eigensolver context
62
!call PetscSetFPTrap(PETSC_FP_TRAP_ON, ierr)
63
call
epssettype(eps, epsgd, ierr)
64
!call EPSGDSetDoubleExpansion(eps, PETSC_TRUE)
65
chkerrq(ierr)
66
67
end subroutine
select_davidson
68
69
end module
slepcdavidsondiagonalizer_module
slepcdavidsondiagonalizer_module
Diagonalizer type using SLEPc (Davidson) backend.
Definition:
SLEPCDavidsonDiagonalizer_module.F90:33
slepcdiagonalizer_module
Diagonalizer type using SLEPc backend.
Definition:
SLEPCDiagonalizer_module.F90:30
slepcdavidsondiagonalizer_module::select_davidson
subroutine select_davidson(this, eps)
Definition:
SLEPCDavidsonDiagonalizer_module.F90:55
slepcdavidsondiagonalizer_module::slepcdavidsondiagonalizer
Definition:
SLEPCDavidsonDiagonalizer_module.F90:47
slepcdiagonalizer_module::slepcdiagonalizer
Definition:
SLEPCDiagonalizer_module.F90:58
Modules
Diagonalizers
SLEPCDavidsonDiagonalizer_module.F90
Generated on Thu Nov 26 2020 16:37:08 for MPI-SCATCI by
1.8.20