Untuk banyak persamaan diferensial parsial yang muncul di alam, khususnya dengan nonlinier atau anisotropi yang kuat, pilihan prekondisi yang tepat dapat memiliki efek besar pada apakah metode iteratif berkonvergensi dengan cepat, lambat, atau tidak sama sekali. Contoh masalah yang diketahui memiliki prekondisi cepat dan efektif termasuk persamaan diferensial parsial sangat elips, di mana metode multigrid sering mencapai konvergensi cepat. Ada sejumlah tes yang dapat digunakan untuk menilai konvergensi; di sini saya akan menggunakan fungsionalitas dari PETSc sebagai contoh, karena ini bisa dibilang perpustakaan tertua dan paling matang untuk iteratif memecahkan sistem linear linear (dan persamaan nonlinier).
PETSc menggunakan objek yang disebut KSPMonitor untuk memantau kemajuan dari pemecah iteratif, dan memutuskan apakah pemecah telah konvergen atau menyimpang. Monitor menggunakan empat kriteria berbeda untuk memutuskan apakah akan berhenti. Rincian lebih lanjut tentang diskusi di sini dapat ditemukan di halaman manual untuk KSPGetConvergedReason () .
x
Ax=b
x^r^
(P−1(Ax−b))
r^=P−1(Ax^−b)
(AP−1Px=b)
r^=Ax^−b
Kriteria Konvergensi
- atol
∥r^∥≤atol
- Toleransi Relatif - Kriteria toleransi relatif terpenuhi ketika norma residual kurang dari norma sisi kanan dengan faktor konstanta yang telah ditentukan sebelumnya :rtol
∥r^∥≤rtol⋅∥b∥
- Kriteria Lain - Pemecahan iteratif juga dapat konvergen karena deteksi panjang langkah kecil atau kelengkungan negatif.
Kriteria Penyimpangan
Iterasi Maksimum - Jumlah iterasi yang dapat diambil oleh pemecah dibatasi oleh iterasi maksimum. Jika tidak ada kriteria lain yang terpenuhi ketika jumlah iterasi maksimum tercapai, monitor kembali sebagai berbeda.
Residual NaN - Jika suatu saat residual mengevaluasi ke NaN, solver kembali sebagai menyimpang.
Divergensi Norma Sisa Monitor kembali sebagai menyimpang jika pada suatu titik norma residu lebih besar daripada norma sisi kanan oleh faktor konstanta yang telah ditentukan sebelumnya :
dtol
∥r^∥≥dtol⋅∥b∥
Solver Breakdown Metode Krylov sendiri dapat memberi sinyal divergensi jika mendeteksi matriks tunggal atau prekondisi.