# BECKE_CONSTRAINT

References: Becke1988b

Define settings influencing the construction of the Becke weight function. [Edit on GitHub]

## Keywords

- ADJUST_SIZE

- ATOMIC_RADII

- CAVITY_CONFINE

- CAVITY_PRINT

- CAVITY_RADIUS

- CAVITY_SHAPE

- CAVITY_USE_BOHR

- CUTOFF_TYPE

- ELEMENT_CUTOFF

- EPS_CAVITY

- GLOBAL_CUTOFF

- IN_MEMORY

- SHOULD_SKIP

## Keyword descriptions

ADJUST_SIZE: logical = F

  Lone keyword: `T`

  Usage: ADJUST_SIZE

  Mentions: ⭐Constrained DFT

  Adjust Becke cell boundaries with atomic radii to generate a heteronuclear cutoff profile. These radii are defined with the keyword ATOMIC_RADII. [Edit on GitHub]

ATOMIC_RADII: real[ ] = [angstrom]

  Usage: ATOMIC_RADII {real} {real} {real}

  Mentions: ⭐Constrained DFT

  Defines atomic radii to generate a heteronuclear cutoff profile. Give one value per element in the same order as they appear in the input coordinates. [Edit on GitHub]

CAVITY_CONFINE: logical = F

  Lone keyword: `T`

  Usage: CAVITY_CONFINE

  Mentions: ⭐Constrained DFT

  Activates Gaussian cavity confinement. The constraint is evaluated only inside the cavity. The cavity is formed by summing spherical Gaussians centered on the constraint atoms. [Edit on GitHub]

CAVITY_PRINT: logical = F

  Lone keyword: `T`

  Usage: CAVITY_PRINT

  Print cavity in Gaussian cube file format. Currently, printing options are hardcoded. [Edit on GitHub]

CAVITY_RADIUS: real = 3.00000000E+000 [angstrom]

  Usage: CAVITY_RADIUS <REAL>

  Radius parameter controlling the creation of Gaussian cavity confinement. [Edit on GitHub]

CAVITY_SHAPE: enum = DEFAULT

  Usage: CAVITY_SHAPE (SINGLE|VDW|COVALENT|USER)

  Valid values:

  - `DEFAULT` Use covalent radii (in angstrom) to construct Gaussians, but fixed 1.0_dp radius for elements with a radius larger than this value.

  - `SINGLE` Single Gaussian for all atom types with radius given by CAVITY_RADIUS.

  - `VDW` Use van der Waals radii to construct Gaussians.

  - `COVALENT` Use covalent radii to construct Gaussians.

  - `USER` Use user defined radii (keyword ATOMIC_RADII) to construct Gaussians.

  Specifies the type of Gaussian cavity used. [Edit on GitHub]

CAVITY_USE_BOHR: logical = F

  Lone keyword: `T`

  Usage: CAVITY_USE_BOHR TRUE

  Convert the cavity radius from angstrom to bohr. This results in a larger confinement cavity than without unit conversion. [Edit on GitHub]

CUTOFF_TYPE: enum = GLOBAL

  Usage: CUTOFF_TYPE (GLOBAL|ELEMENT)

  Valid values:

  - `GLOBAL` Use a single value for all elements. Read from GLOBAL_CUTOFF.

  - `ELEMENT` Use a different value for all elements. Values read from ELEMENT_CUTOFF.

  Specifies the type of cutoff used when building the Becke weight function. [Edit on GitHub]

ELEMENT_CUTOFF: real[ ] = [angstrom]

  Usage: ELEMENT_CUTOFF {real} {real} {real}

  Defines element specific cutoffs to decide which atoms contribute to the weight function at each real space grid point. Give one value per element in the same order as they appear in the coordinates. [Edit on GitHub]

EPS_CAVITY: real = 1.00000000E-006

  Usage: EPS_CAVITY {real}

  Density threshold for cavity creation. Grid points where the Gaussian density falls below the threshold are ignored. [Edit on GitHub]

GLOBAL_CUTOFF: real = 3.17506325E+000 [angstrom]

  Usage: GLOBAL_CUTOFF <REAL>

  Parameter used to select which atoms contribute to the weight function at each real space grid point. [Edit on GitHub]

IN_MEMORY: logical = F

  Lone keyword: `T`

  Usage: IN_MEMORY

  Precompute gradients due to Becke constraint during initial formation of constraint and store them in memory. Useful in combination with confinement, memory intensive otherwise. Does nothing if forces are not calculated. [Edit on GitHub]

SHOULD_SKIP: logical = F

  Lone keyword: `T`

  Usage: SHOULD_SKIP

  If grid point is farther than GLOBAL_CUTOFF from all constraint atoms, move directly to next grid point, thus saving computational resources. [Edit on GitHub]