pub struct PerformanceMetrics {
pub total_time: Duration,
pub phase_times: HashMap<String, Duration>,
pub function_evaluations: usize,
pub jacobian_evaluations: usize,
pub linear_solves: usize,
pub memory_stats: MemoryStatistics,
pub algorithmmetrics: HashMap<String, f64>,
pub convergence_history: Vec<f64>,
pub step_size_history: Vec<f64>,
pub error_estimates: Vec<f64>,
pub cache_stats: CacheStatistics,
}Expand description
Comprehensive performance metrics for numerical algorithms
Fields§
§total_time: DurationTotal computation time
phase_times: HashMap<String, Duration>Time spent in different algorithm phases
function_evaluations: usizeNumber of function evaluations
jacobian_evaluations: usizeNumber of jacobian evaluations
linear_solves: usizeNumber of linear system solves
memory_stats: MemoryStatisticsMemory usage statistics
algorithmmetrics: HashMap<String, f64>Algorithm-specific metrics
convergence_history: Vec<f64>Convergence history
step_size_history: Vec<f64>Step size adaptation history
error_estimates: Vec<f64>Error estimates over time
cache_stats: CacheStatisticsCache performance statistics
Trait Implementations§
Source§impl Clone for PerformanceMetrics
impl Clone for PerformanceMetrics
Source§fn clone(&self) -> PerformanceMetrics
fn clone(&self) -> PerformanceMetrics
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PerformanceMetrics
impl Debug for PerformanceMetrics
Auto Trait Implementations§
impl Freeze for PerformanceMetrics
impl RefUnwindSafe for PerformanceMetrics
impl Send for PerformanceMetrics
impl Sync for PerformanceMetrics
impl Unpin for PerformanceMetrics
impl UnwindSafe for PerformanceMetrics
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
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