pub struct LossFunctionEvaluation {
pub value: f64,
pub lindhard_evaluations: u64,
pub unconverged_cells: u64,
pub unconverged_error: f64,
pub largest_interval_rules: u64,
}Expand description
One evaluation of the full Penn loss function Im[-1/ε(q, ω)]
(FullPenn::loss_function_evaluation): the value, the work of its
adaptive ω_p integral, and whether every cell of that integral met its
tolerance.
The bisection of each knot interval of the ω_p integral has a budget of
rule applications (#298; the rule and the budget are documented on the
weighted quadrature in quadrature.rs and in the module docs). A cell
that did not meet its tolerance (budget spent, maximum depth reached, or
midpoint no longer representable) keeps its estimate, is counted in
unconverged_cells, and contributes its error estimate to
unconverged_error; Self::converged is then false.
Fields§
§value: f64Im[-1/ε(q, ω)] (dimensionless), as FullPenn::loss_function.
lindhard_evaluations: u64Evaluations of the Lindhard continuum loss function in the ω_p
integral: the work, a deterministic count.
unconverged_cells: u64Cells of the ω_p integral accepted without meeting their tolerance.
unconverged_error: f64The sum of the error estimates of those cells, in the units of
value (zero when the integral converged).
largest_interval_rules: u64The most rule applications (of 5 evaluations each) that the bisection
of any one knot interval used, at most OMEGA_P_INTERVAL_BUDGET.
Implementations§
Trait Implementations§
Source§impl Clone for LossFunctionEvaluation
impl Clone for LossFunctionEvaluation
Source§fn clone(&self) -> LossFunctionEvaluation
fn clone(&self) -> LossFunctionEvaluation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for LossFunctionEvaluation
Source§impl Debug for LossFunctionEvaluation
impl Debug for LossFunctionEvaluation
Source§impl PartialEq for LossFunctionEvaluation
impl PartialEq for LossFunctionEvaluation
impl StructuralPartialEq for LossFunctionEvaluation
Auto Trait Implementations§
impl Freeze for LossFunctionEvaluation
impl RefUnwindSafe for LossFunctionEvaluation
impl Send for LossFunctionEvaluation
impl Sync for LossFunctionEvaluation
impl Unpin for LossFunctionEvaluation
impl UnsafeUnpin for LossFunctionEvaluation
impl UnwindSafe for LossFunctionEvaluation
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