pub struct DFTD3ZeroDampingParam {
pub s6: f64,
pub s8: f64,
pub s9: f64,
pub rs6: f64,
pub rs8: f64,
pub alp: f64,
}Expand description
Original DFT-D3 damping function with variant.
Original DFT-D3 damping function 1, based on a variant proposed by Chai and Head-Gordon 2. Since it is damping the dispersion energy to zero at short distances it is usually called zero damping scheme for simplicity. However, due to this short-range limit of the dispersion energy a repulsive contribution to the gradient can arise, which is considered artificial 3.
§Common API documentation for custom damping parameter specification
If your task is to retrive damping parameters of some specific xc-functionals, you may wish to try dftd3_load_param function.
In this crate, you may have three ways to define customized parameters:
-
By
DFTD3***DampingParamstruct. In this way, all parameters (include optional parameters with default value) must be provided. For example of B3-Zero:let param = DFTD3ZeroDampingParam { s6: 1.0, s8: 1.683, rs6: 1.139, rs8: 1.0, alp: 14.0, s9: if atm { 1.0 } else { 0.0 }, }; let param = param.new_param(); // this will give param: DFTD3Param -
By
DFTD3***DampingParamBuilderstruct. In this way, optional parameters can be omitted. For example of B3-Zero:let param = DFTD3ZeroDampingParamBuilder::default() .s8(1.683) .rs6(1.139) .s9(if atm { 1.0 } else { 0.0 }) .init(); // this will give param: DFTD3Param -
By
DFTD3Paramutility. In this way, all parameters must be provided. For example of B3-Zero:let param = DFTD3Param::new_zero_damping( 1.0, // s6 1.683, // s8 if atm { 1.0 } else { 0.0 }, // s9 1.139, // rs6 1.0, // rs8 14.0, // alp );
Please note that different DFT-D3 versions may have different parameters, for example modified zero damping have another parameter bet for beta, and rational damping (D3-BJ) have parameter name a1, a2 instead of rs6, rs8.
S. Grimme, J. Antony, S. Ehrlich, and H. Krieg. A consistent and accurate ab initio parametrization of density functional dispersion correction (DFT-D) for the 94 elements H-Pu. J. Chem. Phys., 132:154104, 2010. doi: 10.1063/1.3382344. ↩
Chai, J.-D.; Head-Gordon, M. Long-range corrected hybrid density functionals with damped atom–atom dispersion corrections. Phys. Chem. Chem. Phys., 2008, 10(44), 6615–6620. doi: 10.1039/B810189B. ↩
Grimme, S.; Ehrlich, S.; Goerigk, L. Effect of the damping function in dispersion corrected density functional theory. J. Comput. Chem., 2011, 32, 1456–1465. doi: 10.1002/jcc.21759. ↩
Fields§
§s6: f64optional, default 1.0
s8: f64§s9: f64optional, default 1.0
rs6: f64§rs8: f64optional, default 1.0
alp: f64optional, default 14.0
Trait Implementations§
Source§impl Clone for DFTD3ZeroDampingParam
impl Clone for DFTD3ZeroDampingParam
Source§fn clone(&self) -> DFTD3ZeroDampingParam
fn clone(&self) -> DFTD3ZeroDampingParam
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more