Я підозрюю, що взагалі немає великої різниці між GMRES та CG для матриці SPD.
Скажімо , ми вирішуємо х = Ь з А симетричним позитивно певним і вихідним припущенням х 0 = 0 і породжує итерацией з CG і GMRES, назвемо їх х з до і х г до . Обидва ітеративні методи будуть будувати x k з того самого простору Крилова K k = { b , A b , A 2 b , … } . Вони зроблять це дещо по-різному.A x = bАх0= 0хcкхгкхкКк= { b , A b , A2b , … }
CG характеризується мінімізацією похибки в енергетичній нормі, індукованій A , так що
( A e c k , e c k ) = ( A ( x - x c k ) , x - x c k ) = min y ∈ K ( A ( x - y ) , x -еcк=x−xckA
( А еcк, еcк) = ( A ( x - x)cк) , х - хcк) = хву∈ K( А ( х - у) , х - у) .
GMRES мінімізує замість залишкового , і робить це в дискретній нормі ℓ 2 , так що
( r k , r k ) = ( b - A x g k , b - A x g k ) = min y ∈ K ( b - A y , b - A y ) .rк= b - A xгкℓ2
( rк, rк) = ( b - A xгк, b - A xгк) = хву∈ K( б - А у, б - А у) .
Тепер, використовуючи рівняння помилок
ми також можемо записати GMRES як мінімізацію
( r k , r k ) = ( A e g k , A e g k ) = ( A 2 e g k , e g k )
де Я хочу підкреслити , що це справедливо тільки для СПД матриці
A . Тоді ми маємо CG, мінімізуючи помилку щодо
AА ек= rк( rк, rк) = ( А егк, А егк) = ( А2егк, егк)
ААнорма та GMRES мінімізуючи похибку щодо норми
. Якщо ми хочемо, щоб вони поводилися дуже по-різному, інтуїтивно нам би знадобився такий
А , що ці дві норми сильно відрізняються. Але для SPD
A ці норми поводяться зовсім аналогічно.
А2АА
Щоб отримати ще більш конкретний характер, у першій ітерації з простором Крилова і CG, і GMRES побудують наближення вигляду x 1 = α b . CG вибере
α = ( b , b )К1= { b }х1= α b
і GMRES вибере
α=(Ab,b)
α = ( b , b )( A b , b )
α = ( A b , b )( А2б , б ).
А( ϵ , 1 , 1 , 1 , … )b = ( 1 , 1 , 0 , 0 , 0 , … )ϵ → 0Аб так що цей фактор у двох відмінностях продовжується протягом усієї ітерації, але я сумніваюся, що вона стає гіршою за це.