PM Subroutine

public subroutine PM(H, ISQ, trace, K, energy_value_out, chemical_potential_out, solver_parameters_in)

Compute the density matrix from a Hamiltonian using the PM method. Based on the PM algorithm presented in \cite palser1998canonical

Arguments

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

The matrix to compute the corresponding density from.

type(Matrix_ps), intent(in) :: ISQ

The inverse square root of the overlap matrix.

real(kind=NTREAL), intent(in) :: trace

The trace of the density matrix (usually the number of electrons)

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

The density matrix computed by this routine.

real(kind=NTREAL), intent(out), optional :: energy_value_out

The energy of the system (optional).

real(kind=NTREAL), intent(out), optional :: chemical_potential_out

The chemical potential (optional).

type(SolverParameters_t), intent(in), optional :: solver_parameters_in

Parameters for the solver (optional).


Contents