vibeqc.ShortRangeCorrection

class vibeqc.ShortRangeCorrection(name, s_srb, gamma, citation)[source]

Bases: object

A modified short-range pairwise correction in the spirit of HF-3c’s 3c-SRB term.

Sure & Grimme (J. Comput. Chem. 34, 1672 (2013)) introduced the SRB term as a per-atom-pair exponential damping that corrects the small-basis geometry error around equilibrium bond lengths. The functional form is similar to D3-BJ’s geometry-only piece:

E_SRB = -s_SRB · Σ_a Σ_{b>a} Z_a^{0.5} Z_b^{0.5}

· exp(-γ R_ab^{1/3})

where s_SRB is the per-recipe scaling factor, γ is the per-recipe range parameter, and (Z_a^0.5 · Z_b^0.5) is a nuclear-charge weighting.

Parameters:
name

Human-readable label for SCF-log dumping (e.g. "HF-3c short-range Becke correction (SRB)").

Type:

str

s_srb

Pairwise scaling factor.

Type:

float

gamma

Distance attenuation parameter (inverse bohr).

Type:

float

citation

Originating publication.

Type:

str

__init__(name, s_srb, gamma, citation)
Parameters:
Return type:

None

Methods

__init__(name, s_srb, gamma, citation)

evaluate(atomic_numbers, positions)

Evaluate E_SRB for a given (atomic_numbers, positions in bohr) pair.

Attributes

name: str
s_srb: float
gamma: float
citation: str
evaluate(atomic_numbers, positions)[source]

Evaluate E_SRB for a given (atomic_numbers, positions in bohr) pair. Standalone — does not require an SCF result. Used by the composite dispatcher to add the SRB contribution after the SCF + dispersion + gCP sum.

Returns the energy in Hartree. Sign convention: SRB is binding, so the returned value is negative for any bound geometry.

Return type:

float