pub struct Yukawa { /* private fields */ }Expand description
Exponentially screened Coulomb potential V(r) = -Z exp(-r/a)/r
(hartree, bohr). Its first-Born cross sections are analytic.
Implementations§
Trait Implementations§
impl Copy for Yukawa
Source§impl ElectronDensity for Yukawa
Poisson density of V = -Z exp(-r/a)/r (the one-term case of Salvat et
al. (1987) Eq. (12)): rho = Z exp(-r/a)/(4 pi a^2 r). A fixture density.
impl ElectronDensity for Yukawa
Poisson density of V = -Z exp(-r/a)/r (the one-term case of Salvat et
al. (1987) Eq. (12)): rho = Z exp(-r/a)/(4 pi a^2 r). A fixture density.
Source§impl ScreenedPotential for Yukawa
impl ScreenedPotential for Yukawa
Source§fn energy(&self, r: f64) -> f64
fn energy(&self, r: f64) -> f64
Potential energy
V(r) of the electron, hartree, at radius r bohr.
Attractive potentials are negative.Source§fn nuclear_charge(&self) -> f64
fn nuclear_charge(&self) -> f64
Coefficient
Z of the point-Coulomb singularity V -> -Z/r at the
origin (0 for a regular potential). Selects the series used to start
the integration.Source§fn length_scale(&self) -> f64
fn length_scale(&self) -> f64
A length over which
V changes appreciably, bohr. It caps the step.Source§fn breakpoints(&self) -> Vec<f64>
fn breakpoints(&self) -> Vec<f64>
Radii at which
V is discontinuous; the integrator restarts there.Source§fn bound_energy_ev(&self) -> Option<f64>
fn bound_energy_ev(&self) -> Option<f64>
The kinetic energy (eV) this potential was built for, when it depends
on one (such as
CorrectedPotential, whose exchange and polarization
cutoff use the energy). ElasticSolver::new rejects any other solver
energy. The default, None, accepts every energy.Source§fn correction_metadata(&self) -> CorrectionMetadata
fn correction_metadata(&self) -> CorrectionMetadata
Which corrections the potential includes; copied into
ElasticResult::corrections by solve. The default reports both
off.Source§fn matching_radius(&self, threshold: f64) -> f64
fn matching_radius(&self, threshold: f64) -> f64
Radius beyond which the potential is neglected: the smallest radius on
a geometric grid (ratio 1.05, from
length_scale) with
|r V(r)| < threshold that also lies beyond every breakpoint.impl StructuralPartialEq for Yukawa
Auto Trait Implementations§
impl Freeze for Yukawa
impl RefUnwindSafe for Yukawa
impl Send for Yukawa
impl Sync for Yukawa
impl Unpin for Yukawa
impl UnsafeUnpin for Yukawa
impl UnwindSafe for Yukawa
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
Converts
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> ⓘ
Converts
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 more