pub struct QzConfig {
pub n: u32,
pub compute_schur_vectors: bool,
pub balance: BalanceStrategy,
pub max_iterations: u32,
pub tolerance: f64,
pub sm_version: SmVersion,
}Expand description
Configuration for the QZ decomposition.
Fields§
§n: u32Matrix dimension (both A and B are n×n).
compute_schur_vectors: boolWhether to compute the orthogonal Schur vectors Q and Z.
balance: BalanceStrategyPre-balancing strategy.
max_iterations: u32Maximum number of QZ iterations before declaring non-convergence.
tolerance: f64Convergence tolerance for subdiagonal deflation.
sm_version: SmVersionTarget GPU SM version for PTX generation.
Implementations§
Source§impl QzConfig
impl QzConfig
Sourcepub fn new(n: u32, sm_version: SmVersion) -> Self
pub fn new(n: u32, sm_version: SmVersion) -> Self
Creates a new QZ configuration with default parameters.
Sourcepub fn with_schur_vectors(self, enabled: bool) -> Self
pub fn with_schur_vectors(self, enabled: bool) -> Self
Enables computation of Schur vectors Q and Z.
Sourcepub fn with_balance(self, strategy: BalanceStrategy) -> Self
pub fn with_balance(self, strategy: BalanceStrategy) -> Self
Sets the balancing strategy.
Sourcepub fn with_max_iterations(self, max_iter: u32) -> Self
pub fn with_max_iterations(self, max_iter: u32) -> Self
Sets the maximum number of iterations.
Sourcepub fn with_tolerance(self, tol: f64) -> Self
pub fn with_tolerance(self, tol: f64) -> Self
Sets the convergence tolerance.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for QzConfig
impl RefUnwindSafe for QzConfig
impl Send for QzConfig
impl Sync for QzConfig
impl Unpin for QzConfig
impl UnsafeUnpin for QzConfig
impl UnwindSafe for QzConfig
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