(git:08825b9)
Loading...
Searching...
No Matches
spectral_localizer_flatten Module Reference

Metric-covariant spectral flattening with existing distributed matrix iterations. More...

Functions/Subroutines

subroutine, public localizer_flatten_checked (h, s, energy, scale, tolerance, metric_tolerance, gap_tolerance, para_env, flattened, gap, metric_ratio, residuals, status)
 Establish a positive AO metric and electronic gap before iterating the matrix sign.
subroutine, public localizer_flatten_dbcsr (h, s, energy, scale, tolerance, para_env, flattened, residuals, status)
 Form scale*S*sign(S^-1*(H-energy*S)) without dense AO matrices or S^-1/2.

Detailed Description

Metric-covariant spectral flattening with existing distributed matrix iterations.

Author
Thomas D. Kuehne, tkueh.nosp@m.ne@c.nosp@m.p2k.o.nosp@m.rg

Function/Subroutine Documentation

◆ localizer_flatten_checked()

subroutine, public spectral_localizer_flatten::localizer_flatten_checked ( type(localizer_matrix_type), intent(inout) h,
type(localizer_matrix_type), intent(inout) s,
real(dp), intent(in) energy,
real(dp), intent(in) scale,
real(dp), intent(in) tolerance,
real(dp), intent(in) metric_tolerance,
real(dp), intent(in) gap_tolerance,
type(mp_para_env_type), pointer para_env,
type(localizer_matrix_type), intent(out) flattened,
real(dp), dimension(2), intent(out) gap,
real(dp), intent(out) metric_ratio,
real(dp), dimension(4), intent(out) residuals,
integer, intent(out) status )

Establish a positive AO metric and electronic gap before iterating the matrix sign.

Parameters
hCovariant physical Hamiltonian, unchanged
sCovariant physical metric, unchanged
energyReference energy
scalePositive flattened-band energy
toleranceMatrix-sign residual and Hermiticity tolerance
metric_toleranceMinimum overlap eigenvalue ratio
gap_toleranceAbsolute minimum original electronic gap
para_envCommunicator
flattenedNewly initialized shifted Hamiltonian only on success
gapOriginal electronic gap lower and upper bounds, not the flattened localizer gap
metric_ratioOverlap eigenvalue ratio
residualsFour matrix-sign residuals
status0 success, 1 unresolved input gap, -1 input, -2 metric, -4 solver, -6 matrix-sign iteration or structure failure

Definition at line 58 of file spectral_localizer_flatten.F.

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

◆ localizer_flatten_dbcsr()

subroutine, public spectral_localizer_flatten::localizer_flatten_dbcsr ( type(localizer_matrix_type), intent(inout) h,
type(localizer_matrix_type), intent(inout) s,
real(dp), intent(in) energy,
real(dp), intent(in) scale,
real(dp), intent(in) tolerance,
type(mp_para_env_type), pointer para_env,
type(localizer_matrix_type), intent(out) flattened,
real(dp), dimension(4), intent(out) residuals,
integer, intent(out) status )

Form scale*S*sign(S^-1*(H-energy*S)) without dense AO matrices or S^-1/2.

Parameters
hCovariant Hermitian Hamiltonian; unchanged
sPositive definite AO metric; must be validated by the caller
energyReference energy, separated from the generalized spectrum at input accuracy
scalePositive energy scale of the flattened bands
toleranceResidual tolerance, not a certificate of the original Hamiltonian gap
para_envDBCSR communicator
flattenedNewly initialized covariant operator only on success
residualsInverse, sign-square, complex-structure and Hermiticity residuals
status0 success, -1 invalid input, 1 unconverged sign/inverse, 2 broken structure
Note
Caller must establish a positive metric and a resolved electronic gap independently. Matrix-sign convergence alone cannot certify the occupied subspace near a gap closing.

Definition at line 125 of file spectral_localizer_flatten.F.

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