# DIIS

Activate the DIIS based optimization procedure for BAND [Edit on GitHub]

Subsections

- DIIS_INFO

## Keywords

- CHECK_DIIS

- MAX_SD_STEPS

- MAX_STEPS

- MAX_STEPSIZE

- NO_LS

- NP_LS

- N_DIIS

- STEPSIZE

## Keyword descriptions

CHECK_DIIS: logical = T

  Lone keyword: `T`

  Performs a series of checks on the DIIS solution in order to accept the DIIS step. If set to .FALSE. the only check performed is that the angle between the DIIS solution and the reference vector is less than Pi/2. Can be useful if many DIIS steps are rejected. [Edit on GitHub]

MAX_SD_STEPS: integer = 1

  Specify the maximum number of SD steps to perform before switching on DIIS (the minimum number will always be equal to N_DIIS). [Edit on GitHub]

MAX_STEPS: integer = 100

  Specify the maximum number of optimization steps [Edit on GitHub]

MAX_STEPSIZE: real = 2.00000000E+000

  Usage: MAX_STEPSIZE <REAL>

  Maximum stepsize used for the line search, sometimes this parameter can be reduced to stabilize the LS for particularly difficult initial geometries [Edit on GitHub]

NO_LS: logical = F

  Lone keyword: `T`

  Does not perform LS during SD. Useful in combination with a proper STEPSIZE for particularly out of equilibrium starting geometries. [Edit on GitHub]

NP_LS: integer = 2

  Usage: NP_LS <INTEGER>

  Number of points used in the line search SD. [Edit on GitHub]

N_DIIS: integer = 7

  Aliases: NDIIS

  Usage: N_DIIS 4

  Number of history vectors to be used with DIIS [Edit on GitHub]

STEPSIZE: real = 1.00000000E+000

  Usage: STEPSIZE <REAL>

  Initial stepsize used for the line search, sometimes this parameter can be reduced to stabilize DIIS [Edit on GitHub]