TBLITE_MIXER
Controls tblite’s modified Broyden SCC-variable mixer when SCC_MIXER is set to TBLITE, either explicitly or through AUTO where AUTO selects tblite. The mixer variables are the self-consistent xTB/DFTB populations and, for methods that require them, atomic multipoles. ITERATIONS limits the number of tblite SCC-mixer updates, while MEMORY controls how many previous Broyden update vectors are retained. These are independent quantities when MEMORY is set explicitly; otherwise MEMORY follows ITERATIONS, matching the tblite library default. DAMPING controls the size of the retained population/multipole update. OMEGA0, MIN_WEIGHT, MAX_WEIGHT, and WEIGHT_FACTOR expose tblite’s modified-Broyden weighting constants. ITERATIONS is the tblite-side SCC-mixer update limit and defaults to the native tblite value of 250. When SCC_MIXER is explicitly set to TBLITE, CP2K also sets the regular DFT/SCF/MAX_SCF limit to ITERATIONS so that the tblite SCC cycle is not truncated by CP2K’s default SCF limit. With SCC_MIXER AUTO or CP2K, DFT/SCF/MAX_SCF keeps its normal CP2K meaning. This section configures the tblite SCC mixer, not the regular CP2K charge mixer. With SCC_MIXER CP2K, the CP2K-side SCC-variable mixer is controlled by DFT/SCF/MIXING. With QS/LS_SCF, this section is ignored and CP2K resets SCC_MIXER to NONE internally, because LS_SCF performs the density-matrix optimization instead of a separate SCC-variable mixing step. Native tblite REFERENCE_CLI diagnostics inherit this section. ITERATIONS and SOLVER are representable by tblite run directly; CP2K reports inherited MEMORY, DAMPING, or Broyden-weight settings that native tblite CLI cannot reproduce. [Edit on GitHub]
Keywords
Keyword descriptions
- DAMPING: real = 4.00000000E-001
Usage: DAMPING 0.4
Damping parameter for the tblite modified Broyden SCC mixer. It controls the size of the population/multipole update retained by the native tblite mixer between SCC iterations. Smaller values damp oscillatory SCC cycles more strongly but may slow convergence; larger values can accelerate well-behaved cases but may destabilize difficult ones. For CP2K-internal GFN1-xTB UKS k-point calculations with explicit SCC_MIXER TBLITE, CP2K uses a conservative damping of 0.25 unless DAMPING is set explicitly. [Edit on GitHub]
- ITERATIONS: integer = 250
Usage: ITERATIONS 250
Maximum number of tblite SCC-mixer updates. This is the tblite-side SCC iteration limit, matching native tblite’s –iterations setting for reference CLI diagnostics. For explicit SCC_MIXER TBLITE runs, CP2K synchronizes DFT/SCF/MAX_SCF to this value. For SCC_MIXER AUTO or CP2K, DFT/SCF/MAX_SCF remains the normal CP2K SCF-loop iteration limit. ITERATIONS is independent of MEMORY, which controls the Broyden history length. [Edit on GitHub]
- MAX_WEIGHT: real = 1.00000000E+005
Usage: MAX_WEIGHT 100000.0
Upper bound for the dynamic Broyden history weight derived from the current SCC residual. The default matches native tblite and caps the influence of very small residual norms. [Edit on GitHub]
- MEMORY: integer = 0
Usage: MEMORY 250
Number of previous modified-Broyden update vectors kept by the tblite SCC mixer. This is a history length, not an iteration limit. Larger values retain more history and use more memory; smaller values reduce the history and can be more robust for difficult SCC cycles. A value of zero means library default: inherit ITERATIONS, as native tblite does when it constructs the Broyden mixer from calc%max_iter. [Edit on GitHub]
- MIN_WEIGHT: real = 1.00000000E+000
Usage: MIN_WEIGHT 1.0
Lower bound for the dynamic Broyden history weight derived from the current SCC residual. The default matches native tblite and prevents tiny weights from removing history vectors from the update. [Edit on GitHub]
- OMEGA0: real = 1.00000000E-002
Usage: OMEGA0 0.01
Regularization weight added to the diagonal of tblite’s modified-Broyden linear system. The default matches the hard-coded value in native tblite and damps nearly singular history updates without changing the first simple-damping step. [Edit on GitHub]
- SOLVER: enum = GVD
Usage: SOLVER (GVD|GVR)
Valid values:
GVDUse LAPACK’s divide-and-conquer generalized symmetric eigensolver.GVRUse LAPACK’s relatively robust generalized symmetric eigensolver.
Electronic eigensolver selected for native tblite SCC calculations where tblite owns the electronic solve, and forwarded to native REFERENCE_CLI diagnostics as tblite run –solver. GVD is tblite’s default LAPACK divide-and-conquer generalized symmetric eigensolver. GVR selects LAPACK’s relatively robust generalized symmetric eigensolver. Production CP2K/tblite calculations still use CP2K’s electronic diagonalization machinery. [Edit on GitHub]
- WEIGHT_FACTOR: real = 1.00000000E-002
Usage: WEIGHT_FACTOR 0.01
Residual-to-weight scaling factor used by tblite’s modified Broyden mixer. For a residual norm above WEIGHT_FACTOR/MAX_WEIGHT, the dynamic weight is approximately WEIGHT_FACTOR divided by that residual norm; otherwise MAX_WEIGHT is used before applying MIN_WEIGHT. The default matches native tblite. [Edit on GitHub]