Cutoff Functions

The cutoffs module gives a few different options for smoothly sending the GP kernel to zero near the boundary of the cutoff sphere.

flare.kernels.cutoffs.cosine_cutoff(r_cut: float, ri: float, ci: float, d: float = 1)

A cosine cutoff that returns 1 up to r_cut - d, and assigns a cosine envelope to values of r between r_cut - d and r_cut. Based on Eq. 24 of Albert P. Bartók and Gábor Csányi. “Gaussian approximation potentials: A brief tutorial introduction.” International Journal of Quantum Chemistry 115.16 (2015): 1051-1057.

Parameters:
  • r_cut (float) – Cutoff value (in angstrom).
  • ri (float) – Interatomic distance.
  • ci (float) – Cartesian coordinate divided by the distance.
Returns:

Cutoff value and its derivative.

Return type:

(float, float)

flare.kernels.cutoffs.cubic_cutoff(r_cut: float, ri: float, ci: float)

A cubic cutoff that goes to zero smoothly at the cutoff boundary.

Parameters:
  • r_cut (float) – Cutoff value (in angstrom).
  • ri (float) – Interatomic distance.
  • ci (float) – Cartesian coordinate divided by the distance.
Returns:

Cutoff value and its derivative.

Return type:

(float, float)

flare.kernels.cutoffs.hard_cutoff(r_cut: float, ri: float, ci: float)

A hard cutoff that assigns a value of 1 to all interatomic distances.

Parameters:
  • r_cut (float) – Cutoff value (in angstrom).
  • ri (float) – Interatomic distance.
  • ci (float) – Cartesian coordinate divided by the distance.
Returns:

Cutoff value and its derivative.

Return type:

(float, float)

flare.kernels.cutoffs.quadratic_cutoff(r_cut: float, ri: float, ci: float)

A quadratic cutoff that goes to zero smoothly at the cutoff boundary.

Parameters:
  • r_cut (float) – Cutoff value (in angstrom).
  • ri (float) – Interatomic distance.
  • ci (float) – Cartesian coordinate divided by the distance.
Returns:

Cutoff value and its derivative.

Return type:

(float, float)

flare.kernels.cutoffs.quadratic_cutoff_bound(r_cut: float, ri: float, ci: float)

A quadratic cutoff that goes to zero smoothly at the cutoff boundary.

Parameters:
  • r_cut (float) – Cutoff value (in angstrom).
  • ri (float) – Interatomic distance.
  • ci (float) – Cartesian coordinate divided by the distance.
Returns:

Cutoff value and its derivative.

Return type:

(float, float)