pub struct OperatorSpectrum {
pub matrix: Vec<Vec<f64>>,
pub n: usize,
}Expand description
Spectral analysis of compact operators represented as finite matrices.
Provides eigenvalue computation via power iteration, spectral radius estimation, and resolvent norm.
Fields§
§matrix: Vec<Vec<f64>>Matrix representation of the operator (row-major, square).
n: usizeSize of the square matrix.
Implementations§
Source§impl OperatorSpectrum
impl OperatorSpectrum
Sourcepub fn new(matrix: Vec<Vec<f64>>) -> Self
pub fn new(matrix: Vec<Vec<f64>>) -> Self
Create an OperatorSpectrum from a square matrix.
Panics if the matrix is not square.
Sourcepub fn spectral_radius(&self, max_iter: usize) -> f64
pub fn spectral_radius(&self, max_iter: usize) -> f64
Estimate the largest eigenvalue (spectral radius) via the power method.
Returns the dominant eigenvalue after max_iter iterations.
Sourcepub fn smallest_eigenvalue(&self, shift: f64, max_iter: usize) -> f64
pub fn smallest_eigenvalue(&self, shift: f64, max_iter: usize) -> f64
Estimate the smallest eigenvalue via inverse power iteration with shift.
Uses Rayleigh quotient shift mu (default 0.0 ≈ smallest eigenvalue).
Sourcepub fn frobenius_norm(&self) -> f64
pub fn frobenius_norm(&self) -> f64
Compute the Frobenius norm ‖A‖_F = √(Σ aᵢⱼ²).
Sourcepub fn resolvent_norm(&self, lambda: f64) -> f64
pub fn resolvent_norm(&self, lambda: f64) -> f64
Estimate the resolvent norm ‖(A - λI)⁻¹‖ at a regular point lambda.
Uses power iteration on the shifted operator (A - λI). Returns
1 / smallest_singular_value, approximated via the Frobenius norm of
the shifted matrix.
Trait Implementations§
Source§impl Clone for OperatorSpectrum
impl Clone for OperatorSpectrum
Source§fn clone(&self) -> OperatorSpectrum
fn clone(&self) -> OperatorSpectrum
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for OperatorSpectrum
impl RefUnwindSafe for OperatorSpectrum
impl Send for OperatorSpectrum
impl Sync for OperatorSpectrum
impl Unpin for OperatorSpectrum
impl UnsafeUnpin for OperatorSpectrum
impl UnwindSafe for OperatorSpectrum
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.