Satu hal yang CG memiliki yang mendukung adalah bahwa hal itu tidak meminimalkan diskrit norma untuk polinomial sisa nya (apa GMRES tidak). Ini meminimalkan norma yang diinduksi matriks, dan sangat sering norma yang diinduksi matriks ini berakhir sangat dekat dengan norma energi untuk diskritisasi masalah fisik, dan seringkali ini adalah norma yang jauh lebih masuk akal untuk mengukur kesalahan karena sifat konservasi yang datang dari fisika.l2
Anda benar-benar dapat mencapai efek semacam ini dengan GMRES juga jika melakukan faktorisasi Cholesky dari matriks massa tidak terlalu mahal, Anda dapat memaksa produk dalam menjadi produk energi dalam yang Anda inginkan.
Maka kasus-kasus di mana seseorang harus mengharapkan CG untuk melakukan sangat berbeda dari GMRES kemudian adalah ketika konstanta yang tersirat dalam kesetaraan norma sangat berbeda. Ini bisa benar misalnya dalam metode spektral-Galerkin orde tinggi di mana diskritl2 norma yang digunakan dalam GMRES memperlakukan semua derajat kebebasan sebagai sama, walaupun pada kenyataannya gradien polinomial yang paling tajam di dekat batas (maka node clustering), sehingga konstanta kesetaraan norma antara norma itu dan mengatakannorma kontinu yangL2diberikan oleh matriks massa bisa sangat besar.
Saya menduga secara umum tidak ada banyak perbedaan antara GMRES dan CG untuk matriks SPD.
Katakanlah kita sedang memecahkan dengan A pasti positif simetris dan tebakan awal x 0 = 0 dan menghasilkan iterasi dengan CG dan GMRES, sebut mereka x c k dan x g k . Kedua metode iterasi akan membangun x k dari yang sama Krylov ruang K k = { b , A b , A 2 b , ... } . Mereka akan melakukannya dengan cara yang sedikit berbeda.Ax=b A x0=0 xck xgk xk Kk={b,Ab,A2b,…}
CG ditandai dengan meminimalkan kesalahan di norma energi yang disebabkan oleh A , sehingga ( A e c k , e c k ) = ( A ( x - x c k ) , x - x c k ) = min y ∈ K ( A ( x - y ) , x -eck=x−xck A
GMRES meminimalkan bukannya sisa , dan melakukannya dalam diskrit ℓ 2 norma, sehingga ( r k , r k ) = ( b - Sebuah x g k , b - Sebuah x g k ) = min y ∈ K ( b - A y , b - A y ) .rk= b - A xgk ℓ2
Untuk mendapatkan lebih spesifik, dalam iterasi pertama dengan ruang Krylov , baik CG dan GMRES akan membangun perkiraan bentuk x 1 = α b . CG akan memilih α = ( b , b )K1= { b } x1= α b
sumber
Satu hal adalah bahwa GMRES tidak pernah digunakan di mana pun CG dapat diterapkan. Saya rasa tidak masuk akal untuk membandingkan keduanya. Untuk matriks SPD, CG jelas merupakan pemenang karena persyaratan penyimpanan dan alasan yang Anda sebutkan di atas. Sebuah pertanyaan yang akan menarik adalah, untuk menemukan perpanjangan dari CG, yang berlaku untuk masalah di mana CG tidak dapat diterapkan. Ada metode seperti BiCG-stab yang tidak memerlukan peningkatan memori linear seperti GMRES, tetapi konvergensi tidak sebagus GMRES (beberapa kali bahkan dengan restart GMRES).
sumber