Untuk solusi sistem linear besar menggunakan metode iteratif, sering kali menarik untuk memperkenalkan prakondisi, misalnya menyelesaikan , di mana sini digunakan untuk prakondisi kiri sistem. . Biasanya, kita harus memiliki M ^ {- 1} \ approx A ^ {- 1} dan memberikan dasar untuk (lebih banyak) solusi efisien atau pengurangan sumber daya komputasi (misalnya penyimpanan memori) dibandingkan dengan solusi dari sistem asli ( yaitu ketika M = A ). Namun, pedoman apa yang harus kita gunakan untuk memilih prekondisi? Bagaimana para praktisi melakukan ini untuk masalah khusus mereka?M - 1 ( A x = b ) M M = A
linear-algebra
iterative-method
preconditioning
Allan P. Engsig-Karup
sumber
sumber
Jawaban:
Saya awalnya tidak ingin memberikan jawaban karena ini memerlukan perawatan yang sangat lama, dan semoga orang lain masih memberikannya. Namun, saya pasti bisa memberikan gambaran singkat tentang pendekatan yang direkomendasikan:
Contoh dari 3 adalah Helmholtz versi Laplacian yang bergeser, dan karya Jinchao Xu baru - baru ini tentang memprakondisi operator biharmonik dengan Laplacians.
sumber
Yang lain telah mengomentari masalah prasyarat apa yang akan saya sebut matriks "monolitik", yaitu misalnya bentuk diskal dari persamaan skalar seperti persamaan Laplace, persamaan Helmholtz atau, jika Anda ingin menggeneralisasikannya, vektor-dihargai persamaan elastisitas. Untuk hal-hal ini, jelas bahwa multigrid (baik aljabar atau geometris) adalah pemenang jika persamaannya berbentuk bulat panjang, dan untuk persamaan lainnya tidak begitu jelas - tetapi sesuatu seperti SSOR sering bekerja dengan cukup baik (untuk beberapa arti dari "masuk akal").
Bagi saya, wahyu besar adalah apa yang harus dilakukan tentang masalah yang tidak monolitik, misalnya untuk operator Stokes Ketika saya mulai dengan analisis numerik sekitar 15 tahun yang lalu, saya pikir orang memiliki harapan bahwa teknik yang sama dapat diterapkan pada matriks seperti di atas, dan arah penelitian adalah untuk mencoba multigrid secara langsung atau menggunakan generalisasi SSOR (menggunakan " titik smoothers "seperti Vanka) dan metode serupa. Tapi ini sudah pudar karena tidak bekerja dengan baik.
Apa yang datang untuk menggantikan ini adalah apa yang awalnya disebut "prekondisi berbasis fisika" dan kemudian secara sederhana (dan mungkin lebih akurat) "blok prekondisi" seperti yang oleh Silvester dan Wathen. Ini sering didasarkan pada penghilangan blok atau komplemen Schur dan idenya adalah untuk membangun sebuah prekondisi sedemikian rupa sehingga orang dapat menggunakan kembali prekondisier untuk masing-masing blok yang diketahui bekerja dengan baik. Dalam kasus persamaan Stokes, misalnya, prekondisi Silvester / Wathen menggunakan matriks ( ~ A - 1 B 0 ~ ( B T A
Gagasan bekerja dengan blok-blok individual yang terdiri dari matriks dan menggunakan kembali prekondisi pada masing-masing blok telah terbukti sangat kuat dan benar-benar mengubah cara kita berpikir tentang sistem persamaan awal saat ini. Tentu saja, ini relevan karena sebagian besar masalah aktual sebenarnya adalah sistem persamaan.
sumber
Jack telah memberikan prosedur yang baik untuk menemukan prekondisi. Saya akan mencoba menjawab pertanyaan, "Apa yang membuat prekondisi bagus?". Definisi operasional adalah:
namun ini tidak memberi kita wawasan apa pun untuk mendesain prekondisi. Sebagian besar prekondisi didasarkan pada manipulasi spektrum operator. Secara umum, metode Krylov konvergen lebih cepat ketika nilai eigen dikelompokkan, lihat Iterasi Matriks atau Fungsi Meromorfik dan Aljabar Linier . Kadang-kadang kita dapat membuktikan hasil prekondisi hanya beberapa nilai eigen yang unik, misalnya Catatan tentang Prasyondisi untuk Sistem Linier Tidak Terbatas .
Strategi umum dicontohkan oleh Multigrid. Prasyarat relaksasi (di sini lebih baik) seperti SOR menghapus komponen frekuensi tinggi dalam kesalahan. Ketika residual diproyeksikan ke grid kasar, komponen kesalahan frekuensi yang lebih rendah menjadi frekuensi yang lebih tinggi dan dapat kembali diserang oleh SOR. Strategi dasar ini mendasari versi MG yang lebih rumit, seperti AMG. Perhatikan bahwa di bagian bawah, pemecah harus menyelesaikan frekuensi terendah dalam kesalahan secara akurat.
Strategi lain melibatkan penyelesaian persamaan dalam ruang bagian kecil, yang persis apa yang dilakukan pemecah Krylov. Dalam bentuk yang paling sederhana, ini adalah metode Kaczmarz atau Metode Additive Schwarz . Ketertarikan teori di sini, Domain Decomposition , berkonsentrasi pada perkiraan spektral dari kesalahan pada antarmuka, karena domain diasumsikan diselesaikan dengan cukup akurat.
Lalu ada banyak hal menghasilkan operator dekat dengan adalah beberapa pengertian, yang mudah untuk dibalik, tetapi tidak memberikan jaminan untuk benar-benar meningkatkan konvergensi iterasi Krylov, sejauh yang saya tahu. Prekondisi ini termasuk faktorisasi tidak lengkap (ICC, ILU), invers perkiraan jarang (SPAI), dan beberapa perkiraan peringkat rendah.A
sumber