PROGRESS  master
prg_pulaymixer_mod Module Reference

Pulay mixer mode. More...

Data Types

type  mx_type
 

Functions/Subroutines

subroutine, public prg_parse_mixer (input, filename)
 The parser for the mixer routines. More...
 
subroutine, public prg_qmixer (charges, oldcharges, dqin, dqout, scferror, piter, pulaycoef, mpulay, verbose)
 Mixing the charges to acelerate scf convergence. More...
 
subroutine, public prg_linearmixer (charges, oldcharges, scferror, linmixcoef, verbose)
 Routine to perform linear mixing. More...
 

Variables

integer, parameter dp = kind(1.0d0)
 

Detailed Description

Pulay mixer mode.

Gets the best coefficient for mixing the charges during scf.

Todo:
add the density matrix mixer.

Function/Subroutine Documentation

◆ prg_linearmixer()

subroutine, public prg_pulaymixer_mod::prg_linearmixer ( real(dp), dimension(:), intent(inout), allocatable  charges,
real(dp), dimension(:), intent(inout), allocatable  oldcharges,
real(dp), intent(inout)  scferror,
real(dp), intent(in)  linmixcoef,
integer, intent(in)  verbose 
)

Routine to perform linear mixing.

Parameters
chargesActual charges of the system.
oldchargesPrevious scf charges.
scferrorSCF error.
linmixcoefMixing coefficient.
verboseVerbosity level.

Definition at line 245 of file prg_pulaymixer_mod.F90.

◆ prg_parse_mixer()

subroutine, public prg_pulaymixer_mod::prg_parse_mixer ( type(mx_type), intent(inout)  input,
character(len=*)  filename 
)

The parser for the mixer routines.

Definition at line 42 of file prg_pulaymixer_mod.F90.

◆ prg_qmixer()

subroutine, public prg_pulaymixer_mod::prg_qmixer ( real(dp), dimension(:), intent(inout)  charges,
real(dp), dimension(:), intent(inout), allocatable  oldcharges,
real(dp), dimension(:,:), intent(inout), allocatable  dqin,
real(dp), dimension(:,:), intent(inout), allocatable  dqout,
real(dp), intent(inout)  scferror,
integer  piter,
real(dp), intent(in)  pulaycoef,
integer, intent(in)  mpulay,
integer, intent(in)  verbose 
)

Mixing the charges to acelerate scf convergence.

Parameters
chargesSystem charges.
oldchargesOld charges of the system.
dqinMatrix for charges history in.
dqoutMatrix for charges history out.
scferrorSCF error.
piterscf iteration number.
pulaycoefCoefficient for pulay mixing (generally between 0.01 and 0.1).
mpulayNumber of matrices stored (generally 3-5).
verboseDifferent levels of verbosity.

Definition at line 103 of file prg_pulaymixer_mod.F90.

Variable Documentation

◆ dp

integer, parameter prg_pulaymixer_mod::dp = kind(1.0d0)
private

Definition at line 15 of file prg_pulaymixer_mod.F90.