pub struct Gfn2ElementParams {Show 23 fields
pub z: u8,
pub nshell: usize,
pub ang_shell: [u8; 3],
pub selfenergy: [f64; 3],
pub slater: [f64; 3],
pub ref_occ: [f64; 3],
pub hubbard: f64,
pub shell_hubbard: [f64; 3],
pub rep_alpha: f64,
pub rep_zeff: f64,
pub n_valence: u8,
pub pqn: [u8; 3],
pub ngauss: [u8; 3],
pub shpoly: [f64; 3],
pub kcn: [f64; 3],
pub gam3: f64,
pub atomic_rad: f64,
pub pauling_en: f64,
pub kind: u8,
pub dkernel: f64,
pub qkernel: f64,
pub mp_rad: f64,
pub mp_vcn: f64,
}Expand description
Per-element GFN2-xTB parameter set.
Fields§
§z: u8§nshell: usizeNumber of shells in the basis.
ang_shell: [u8; 3]Angular momentum per shell: 0=s, 1=p, 2=d.
selfenergy: [f64; 3]Self-energy / atomic level per shell (eV).
slater: [f64; 3]Slater exponent per shell (bohr⁻¹).
ref_occ: [f64; 3]Reference occupation per shell.
hubbard: f64Hubbard parameter (Hartree).
shell_hubbard: [f64; 3]Shell-resolved Hubbard scaling: 1 + shell_hubbard[l].
rep_alpha: f64Repulsion exponent α.
rep_zeff: f64Repulsion effective nuclear charge Z_eff.
n_valence: u8Number of valence electrons.
pqn: [u8; 3]Principal quantum number per shell.
ngauss: [u8; 3]Number of Gaussian primitives per shell for STO-nG.
shpoly: [f64; 3]Shell polynomial coefficients (per shell, already ×0.01 scaled). Indexed by shell index (matching ang_shell ordering).
kcn: [f64; 3]CN-dependent self-energy shift per shell (eV). SE_eff = SE - kCN * CN.
gam3: f64Third-order Hubbard derivative (already ×0.1 scaled, Hartree).
atomic_rad: f64Atomic radius (bohr) for shell polynomial distance scaling.
pauling_en: f64Pauling electronegativity.
kind: u8Element kind (1=main group, 2=transition metal) for gam3shell lookup.
dkernel: f64Multipole dipole XC kernel (already scaled by 0.01).
qkernel: f64Multipole quadrupole XC kernel (already scaled by 0.01).
mp_rad: f64Multipole damping radius (bohr).
mp_vcn: f64Valence CN for multipole radii.
Trait Implementations§
Source§impl Clone for Gfn2ElementParams
impl Clone for Gfn2ElementParams
Source§fn clone(&self) -> Gfn2ElementParams
fn clone(&self) -> Gfn2ElementParams
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Gfn2ElementParams
impl Debug for Gfn2ElementParams
impl Copy for Gfn2ElementParams
Auto Trait Implementations§
impl Freeze for Gfn2ElementParams
impl RefUnwindSafe for Gfn2ElementParams
impl Send for Gfn2ElementParams
impl Sync for Gfn2ElementParams
impl Unpin for Gfn2ElementParams
impl UnsafeUnpin for Gfn2ElementParams
impl UnwindSafe for Gfn2ElementParams
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.