Dispersion Methods: D3#

DFT-D3 dispersion method implementation.

class tad_dftd4.dispersion.d3.DispD3BJ(model='d4', model_kwargs=None, cn_fn=None, cn_fn_kwargs=None, *, device=None, dtype=None)[source]#

Standard DFT-D3 dispersion method.

Parameters:
TERMS: ClassVar[list[tuple[type[DispTerm], dict[str, Any] | None]]] = [(<class 'tad_dftd4.dispersion.twobody.TwoBodyTerm'>, {'charge_dependent': False, 'damping_fn': <tad_dftd4.damping.functions.RationalDamping object>}), (<class 'tad_dftd4.dispersion.d3.D3ATM'>, {'charge_dependent': False, 'damping_fn': <tad_dftd4.damping.functions.ZeroDamping object>})]#

List of dispersion terms to be registered in the constructor.

cn_fn: CNFunc#

Coordination number.

cn_fn_kwargs: dict[str, Any]#

Keyword arguments for the coordination number function.

terms: list[DispTerm]#

List of dispersion terms for which the calculation is performed.

class tad_dftd4.dispersion.d3.DispD3Zero(model='d4', model_kwargs=None, cn_fn=None, cn_fn_kwargs=None, *, device=None, dtype=None)[source]#

Zero-damping DFT-D3 dispersion method.

Parameters:
TERMS: ClassVar[list[tuple[type[DispTerm], dict[str, Any] | None]]] = [(<class 'tad_dftd4.dispersion.twobody.TwoBodyTerm'>, {'charge_dependent': False, 'damping_fn': <tad_dftd4.damping.functions.ZeroDamping object>}), (<class 'tad_dftd4.dispersion.d3.D3ATM'>, {'charge_dependent': False, 'damping_fn': <tad_dftd4.damping.functions.ZeroDamping object>})]#

List of dispersion terms to be registered in the constructor.

cn_fn: CNFunc#

Coordination number.

cn_fn_kwargs: dict[str, Any]#

Keyword arguments for the coordination number function.

terms: list[DispTerm]#

List of dispersion terms for which the calculation is performed.