Yanıtlar:
Küçük matrisler için, koşul numarası tekil değer ayrışımı kullanılarak güvenilir bir şekilde hesaplanabilir. Bir Do KSPSolve()
ile matris ve çalışma ile -pc_type svd -pc_svd_monitor
.
Daha büyük matrisler için, bir Krylov yöntemi kullanarak durum numarasını tahmin edebilirsiniz. Örneğin, GMRES tarafından yapılan Arnoldi yinelemesi, bir Hessenberg ayrışmasını hesaplar. Hessenberg matrisinin aşırı tekil değerleri ve özdeğerleri, orijinal matrisinkilere iyi yaklaşımlardır. PETSc'nin özdeğerlerini bu şekilde tahmin etmesini sağlamak için
-ksp_monitor_singular_value -ksp_type gmres -ksp_gmres_restart 1000 -pc_type none
-pc_type none
KSPSolve()
En küçük tekil değerin (ve diğer tüm özdeğer ve tekil değer problemleri için) daha doğru tahminlere ihtiyacınız varsa SLEPc kullanın .