pub trait ChemElement: Clone {
// Required methods
fn atomic_num(&self) -> u64;
fn am(&self) -> f64;
fn electron_affinity(&self) -> f64;
fn ionization_energies(&self, level: usize) -> Option<f64>;
fn electronegativity(&self) -> f64;
fn mullikan_en(&self) -> f64;
fn allen_en(&self) -> f64;
fn pauling_en(&self) -> f64;
fn covalent_radii(&self, bond: usize) -> Option<f64>;
fn ionic_radii(&self) -> f64;
fn vdr_crystal(&self) -> f64;
fn vdr_isolated(&self) -> f64;
}Expand description
General chemical element properties
Required Methods§
Sourcefn atomic_num(&self) -> u64
fn atomic_num(&self) -> u64
Atomic number
Sourcefn electron_affinity(&self) -> f64
fn electron_affinity(&self) -> f64
Electron affinity in kj/mol
Sourcefn ionization_energies(&self, level: usize) -> Option<f64>
fn ionization_energies(&self, level: usize) -> Option<f64>
Returns the ionization energies for all known levels. Values are in kj/mol
Sourcefn electronegativity(&self) -> f64
fn electronegativity(&self) -> f64
Returns Oganov-Tantardini values, the current best evaluation
Sourcefn mullikan_en(&self) -> f64
fn mullikan_en(&self) -> f64
Mullikan electronegativity
Sourcefn pauling_en(&self) -> f64
fn pauling_en(&self) -> f64
Pauling electronegativity
Sourcefn covalent_radii(&self, bond: usize) -> Option<f64>
fn covalent_radii(&self, bond: usize) -> Option<f64>
Covalent radii of the first three bonds
Sourcefn ionic_radii(&self) -> f64
fn ionic_radii(&self) -> f64
Ionic radii
Sourcefn vdr_crystal(&self) -> f64
fn vdr_crystal(&self) -> f64
Van der Waal radius in crystalline structure
Sourcefn vdr_isolated(&self) -> f64
fn vdr_isolated(&self) -> f64
Van der Waal radius in isolated atoms
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.