pub struct InelasticTableOptions {
pub energy_ev: Vec<f64>,
pub axis: EnergyAxis,
pub probability: Vec<f64>,
pub density_tolerance: f64,
pub refine_tolerance: Option<f64>,
pub rate_refinement: Option<RateRefinement>,
}Expand description
Grids and tolerances of a table build.
Fields§
§energy_ev: Vec<f64>Incident kinetic energies on the axis of Self::axis, eV (strictly
increasing, >= 2 points): above the model’s Fermi level by default,
above the band bottom with EnergyAxis::BandBottom.
axis: EnergyAxisThe axis energy_ev is on (EnergyAxis::ModelFermiLevel by
default).
probability: Vec<f64>Starting cumulative-probability grid of the stored inverse CDFs (from
exactly 0 to exactly 1); the final grid when refine_tolerance is
None.
density_tolerance: f64Tolerance of the loss-density model (DEFAULT_DENSITY_TOLERANCE).
refine_tolerance: Option<f64>Target of the probability-grid refinement, relative to the mean loss
of each row (None: no refinement).
rate_refinement: Option<RateRefinement>Extra rows that resolve the inelastic rate just above the Fermi level
(module docs, “Rate refinement”; #339). None (the default): the
table has exactly the rows of energy_ev. Only valid with
EnergyAxis::BandBottom; refused on the model’s own axis.
Implementations§
Source§impl InelasticTableOptions
impl InelasticTableOptions
Sourcepub fn with_axis(self, axis: EnergyAxis) -> Self
pub fn with_axis(self, axis: EnergyAxis) -> Self
The same options with the table stored on axis.
Sourcepub fn with_rate_refinement(self, refinement: RateRefinement) -> Self
pub fn with_rate_refinement(self, refinement: RateRefinement) -> Self
The same options with the rate refinement refinement (module docs,
“Rate refinement”); needs EnergyAxis::BandBottom.
Trait Implementations§
Source§impl Clone for InelasticTableOptions
impl Clone for InelasticTableOptions
Source§fn clone(&self) -> InelasticTableOptions
fn clone(&self) -> InelasticTableOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for InelasticTableOptions
impl Debug for InelasticTableOptions
Source§impl PartialEq for InelasticTableOptions
impl PartialEq for InelasticTableOptions
impl StructuralPartialEq for InelasticTableOptions
Auto Trait Implementations§
impl Freeze for InelasticTableOptions
impl RefUnwindSafe for InelasticTableOptions
impl Send for InelasticTableOptions
impl Sync for InelasticTableOptions
impl Unpin for InelasticTableOptions
impl UnsafeUnpin for InelasticTableOptions
impl UnwindSafe for InelasticTableOptions
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
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> ⓘ
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 more