Як я можу оцінити число умови великої розрідженої матриці за допомогою PETSc?


Відповіді:


11

Для малих матриць число умови можна надійно обчислити, використовуючи розклад сингулярного значення. Зробіть KSPSolve()матрицю і почніть з -pc_type svd -pc_svd_monitor.

Для більших матриць можна оцінити число умови за допомогою методу Крилова. Наприклад, ітерація Арнольді, виконана GMRES, поступово обчислює декомпозицію Гессенберга. Екстремальні сингулярні значення та власні значення матриці Гессенберга є хорошими наближеннями до початкових матриць. Щоб таким чином оцінити власні значення PETSc, запустіть з

-ksp_monitor_singular_value -ksp_type gmres -ksp_gmres_restart 1000 -pc_type none

-pc_type noneП-1ААП-1

KSPSolve()АА-1

Використовуйте SLEPc, якщо вам потрібні точніші оцінки найменшого сингулярного значення (і для всіх інших задач власного значення та одиничного значення).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.