McWeenyStep Subroutine

public subroutine McWeenyStep(D, DOut, S_in, threshold_in)

Take one McWeeny Step DOut = 3DSD - 2DSDSD

Arguments

Type IntentOptional Attributes Name
type(Matrix_ps), intent(in) :: D

The density matrix.

type(Matrix_ps), intent(inout) :: DOut

The resulting purified matrix.

type(Matrix_ps), intent(in), optional :: S_in

The overlap matrix (optional)

real(kind=NTREAL), intent(in), optional :: threshold_in

Threshold for flushing small values (default = 0).


Contents