pub struct Potential {
pub screening: Screening,
pub length: ScreeningLength,
pub z1: f64,
pub z2: f64,
}Expand description
A screened-Coulomb pair potential for a specific (Z1, Z2).
Fields§
§screening: ScreeningScreening function.
length: ScreeningLengthScreening length convention.
z1: f64Projectile atomic number.
z2: f64Target atomic number.
Implementations§
Source§impl Potential
impl Potential
Sourcepub fn new(screening: Screening, z1: f64, z2: f64) -> Self
pub fn new(screening: Screening, z1: f64, z2: f64) -> Self
Potential with the conventional length for the chosen screening function.
Sourcepub fn with_length(self, length: ScreeningLength) -> Self
pub fn with_length(self, length: ScreeningLength) -> Self
Override the screening length.
Sourcepub fn screening_length(&self) -> f64
pub fn screening_length(&self) -> f64
Screening length a, metres.
Sourcepub fn reduced_energy(&self, e_cm_j: f64) -> f64
pub fn reduced_energy(&self, e_cm_j: f64) -> f64
Reduced centre-of-mass energy eps = a E_cm / (Z1 Z2 e^2/(4 pi eps0)),
from E_cm in joules. (Lindhard-Scharff-Schiott reduced energy.)
Sourcepub fn cm_energy(e_lab_j: f64, m1: f64, m2: f64) -> f64
pub fn cm_energy(e_lab_j: f64, m1: f64, m2: f64) -> f64
Centre-of-mass energy in joules from lab energy e_lab_j for projectile
mass m1 and target mass m2 (any common unit): E_cm = E M2/(M1+M2).
Sourcepub fn impact_parameter(&self, beta: f64) -> f64
pub fn impact_parameter(&self, beta: f64) -> f64
Impact parameter in metres from reduced beta = b / a.
Trait Implementations§
impl Copy for Potential
impl StructuralPartialEq for Potential
Auto Trait Implementations§
impl Freeze for Potential
impl RefUnwindSafe for Potential
impl Send for Potential
impl Sync for Potential
impl Unpin for Potential
impl UnsafeUnpin for Potential
impl UnwindSafe for Potential
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