(git:48c3be8)
Loading...
Searching...
No Matches
pexsi_interface Module Reference

Interface to the PEXSI library, providing wrappers for all PEXSI routines that are called inside CP2K. Requires PEXSI version 0.10.x. More...

Data Types

type  cp_pexsi_options

Functions/Subroutines

subroutine, public cp_pexsi_set_options (pexsi_options, temperature, gap, deltae, numpole, isinertiacount, maxpexsiiter, mumin0, mumax0, mu0, muinertiatolerance, muinertiaexpansion, mupexsisafeguard, numelectronpexsitolerance, matrixtype, issymbolicfactorize, ordering, rowordering, npsymbfact, verbosity)
 Set PEXSI internal options.
subroutine, public cp_pexsi_get_options (pexsi_options, temperature, gap, deltae, numpole, isinertiacount, maxpexsiiter, mumin0, mumax0, mu0, muinertiatolerance, muinertiaexpansion, mupexsisafeguard, numelectronpexsitolerance, matrixtype, issymbolicfactorize, ordering, rowordering, npsymbfact, verbosity)
 Access PEXSI internal options.
subroutine, public cp_pexsi_set_default_options (pexsi_options)
 ...
integer(kind=c_intptr_t) function, public cp_pexsi_plan_initialize (comm, numprocrow, numproccol, outputfileindex)
 ...
subroutine, public cp_pexsi_load_real_hs_matrix (plan, pexsi_options, nrows, nnz, nnzlocal, numcollocal, colptrlocal, rowindlocal, hnzvallocal, issidentity, snzvallocal)
 ...
subroutine, public cp_pexsi_dft_driver (plan, pexsi_options, numelectronexact, mupexsi, numelectronpexsi, mumininertia, mumaxinertia, numtotalinertiaiter, numtotalpexsiiter)
 ...
subroutine, public cp_pexsi_retrieve_real_dft_matrix (plan, dmnzvallocal, edmnzvallocal, fdmnzvallocal, totalenergyh, totalenergys, totalfreeenergy)
 ...
subroutine, public cp_pexsi_plan_finalize (plan)
 ...

Detailed Description

Interface to the PEXSI library, providing wrappers for all PEXSI routines that are called inside CP2K. Requires PEXSI version 0.10.x.

History
2014.12 created [Patrick Seewald]
Author
Patrick Seewald

Function/Subroutine Documentation

◆ cp_pexsi_set_options()

subroutine, public pexsi_interface::cp_pexsi_set_options ( type(cp_pexsi_options), intent(inout) pexsi_options,
real(kind=real_8), intent(in), optional temperature,
real(kind=real_8), intent(in), optional gap,
real(kind=real_8), intent(in), optional deltae,
integer, intent(in), optional numpole,
integer, intent(in), optional isinertiacount,
integer, intent(in), optional maxpexsiiter,
real(kind=real_8), intent(in), optional mumin0,
real(kind=real_8), intent(in), optional mumax0,
real(kind=real_8), intent(in), optional mu0,
real(kind=real_8), intent(in), optional muinertiatolerance,
real(kind=real_8), intent(in), optional muinertiaexpansion,
real(kind=real_8), intent(in), optional mupexsisafeguard,
real(kind=real_8), intent(in), optional numelectronpexsitolerance,
integer, intent(in), optional matrixtype,
integer, intent(in), optional issymbolicfactorize,
integer, intent(in), optional ordering,
integer, intent(in), optional rowordering,
integer, intent(in), optional npsymbfact,
integer, intent(in), optional verbosity )

Set PEXSI internal options.

Parameters
pexsi_options...
temperature...
gap...
deltaE...
numPole...
isInertiaCount...
maxPEXSIIter...
muMin0...
muMax0...
mu0...
muInertiaTolerance...
muInertiaExpansion...
muPEXSISafeGuard...
numElectronPEXSITolerance...
matrixType...
isSymbolicFactorize...
ordering...
rowOrdering...
npSymbFact...
verbosity...

Definition at line 82 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_get_options()

subroutine, public pexsi_interface::cp_pexsi_get_options ( type(cp_pexsi_options), intent(in) pexsi_options,
real(kind=real_8), intent(out), optional temperature,
real(kind=real_8), intent(out), optional gap,
real(kind=real_8), intent(out), optional deltae,
integer, intent(out), optional numpole,
integer, intent(out), optional isinertiacount,
integer, intent(out), optional maxpexsiiter,
real(kind=real_8), intent(out), optional mumin0,
real(kind=real_8), intent(out), optional mumax0,
real(kind=real_8), intent(out), optional mu0,
real(kind=real_8), intent(out), optional muinertiatolerance,
real(kind=real_8), intent(out), optional muinertiaexpansion,
real(kind=real_8), intent(out), optional mupexsisafeguard,
real(kind=real_8), intent(out), optional numelectronpexsitolerance,
integer, intent(out), optional matrixtype,
integer, intent(out), optional issymbolicfactorize,
integer, intent(out), optional ordering,
integer, intent(out), optional rowordering,
integer, intent(out), optional npsymbfact,
integer, intent(out), optional verbosity )

Access PEXSI internal options.

Parameters
pexsi_options...
temperature...
gap...
deltaE...
numPole...
isInertiaCount...
maxPEXSIIter...
muMin0...
muMax0...
mu0...
muInertiaTolerance...
muInertiaExpansion...
muPEXSISafeGuard...
numElectronPEXSITolerance...
matrixType...
isSymbolicFactorize...
ordering...
rowOrdering...
npSymbFact...
verbosity...

Definition at line 185 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_set_default_options()

subroutine, public pexsi_interface::cp_pexsi_set_default_options ( type(cp_pexsi_options), intent(out) pexsi_options)

...

Parameters
pexsi_options...

Definition at line 263 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_plan_initialize()

integer(kind=c_intptr_t) function, public pexsi_interface::cp_pexsi_plan_initialize ( type(mp_comm_type), intent(in) comm,
integer, intent(in) numprocrow,
integer, intent(in) numproccol,
integer, intent(in) outputfileindex )

...

Parameters
comm...
numProcRow...
numProcCol...
outputFileIndex...
Returns
...

Definition at line 281 of file pexsi_interface.F.

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

◆ cp_pexsi_load_real_hs_matrix()

subroutine, public pexsi_interface::cp_pexsi_load_real_hs_matrix ( integer(kind=c_intptr_t), intent(in) plan,
type(cp_pexsi_options), intent(in) pexsi_options,
integer, intent(in) nrows,
integer, intent(in) nnz,
integer, intent(in) nnzlocal,
integer, intent(in) numcollocal,
integer, dimension(*), intent(in) colptrlocal,
integer, dimension(*), intent(in) rowindlocal,
real(kind=real_8), dimension(*), intent(in) hnzvallocal,
integer, intent(in) issidentity,
real(kind=real_8), dimension(*), intent(in) snzvallocal )

...

Parameters
plan...
pexsi_options...
nrows...
nnz...
nnzLocal...
numColLocal...
colptrLocal...
rowindLocal...
HnzvalLocal...
isSIdentity...
SnzvalLocal...

Definition at line 322 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_dft_driver()

subroutine, public pexsi_interface::cp_pexsi_dft_driver ( integer(kind=c_intptr_t), intent(in) plan,
type(cp_pexsi_options), intent(in) pexsi_options,
real(kind=real_8), intent(in) numelectronexact,
real(kind=real_8), intent(out) mupexsi,
real(kind=real_8), intent(out) numelectronpexsi,
real(kind=real_8), intent(out) mumininertia,
real(kind=real_8), intent(out) mumaxinertia,
integer, intent(out) numtotalinertiaiter,
integer, intent(out) numtotalpexsiiter )

...

Parameters
plan...
pexsi_options...
numElectronExact...
muPEXSI...
numElectronPEXSI...
muMinInertia...
muMaxInertia...
numTotalInertiaIter...
numTotalPEXSIIter...

Definition at line 378 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_retrieve_real_dft_matrix()

subroutine, public pexsi_interface::cp_pexsi_retrieve_real_dft_matrix ( integer(kind=c_intptr_t), intent(in) plan,
real(kind=real_8), dimension(*), intent(out) dmnzvallocal,
real(kind=real_8), dimension(*), intent(out) edmnzvallocal,
real(kind=real_8), dimension(*), intent(out) fdmnzvallocal,
real(kind=real_8), intent(out) totalenergyh,
real(kind=real_8), intent(out) totalenergys,
real(kind=real_8), intent(out) totalfreeenergy )

...

Parameters
plan...
DMnzvalLocal...
EDMnzvalLocal...
FDMnzvalLocal...
totalEnergyH...
totalEnergyS...
totalFreeEnergy...

Definition at line 442 of file pexsi_interface.F.

Here is the caller graph for this function:

◆ cp_pexsi_plan_finalize()

subroutine, public pexsi_interface::cp_pexsi_plan_finalize ( integer(kind=c_intptr_t), intent(in) plan)

...

Parameters
plan...

Definition at line 480 of file pexsi_interface.F.