Büyük doğrusal sistemler için yinelemeli bir yöntemin pratikte yakınsak olduğu nasıl belirlenir?


11

Hesaplamalı bilimde sıklıkla, bazı (verimli) yöntemlerle, örneğin doğrudan ya da yinelemeli yöntemlerle çözmemiz gereken büyük doğrusal sistemlerle karşılaşırız. İkincisine odaklanırsak, büyük bir doğrusal sistemi çözmek için yinelemeli bir yöntemin pratikte yakınsak olduğunu nasıl belirleyebiliriz?

Deneme ve hata analizi yapabileceğimiz açıktır (bkz. Yinelemeli doğrusal çözücüm neden yakınsama yapmıyor? ) Ve kanıtlarla yakınsamayı garanti eden veya sağlam bir deneyim tabanına sahip olan (örn. CG ve GMRES gibi Krylov altuzay yöntemleri) yinelemeli yöntemlere güvenebileceğimiz açıktır. sırasıyla simetrik ve simetrik olmayan sistemler için).

Ancak, pratikte yakınsama sağlamak için ne yapılabilir? ve ne yapılır?


1
Harika bir soru! 'Yakınsama sağla' derken, 'çözümün yakınsamayı sağla' mı yoksa 'yakınsama gerçekleşmesini sağla' mı demek istiyorsun? Örneğin, PETSc KSP nesnesinin yakınsama testi için birkaç varsayılan teknik olduğunu biliyorum (hata normu azalıyor, maksimum yineleme sayısı). Aradığınız cevap bu mu?
Aron Ahmadia

@aron: Bence her iki konuya da cevap bulmak ilginç olacak.
Allan P. Engsig-Karup

Yanıtlar:


6

Doğada, özellikle güçlü doğrusal olmayanlar veya anizotropiler ile ortaya çıkan birçok kısmi diferansiyel denklem için, uygun bir ön koşullandırıcının seçilmesi, yinelemeli yöntemin hızlı, yavaş veya hiç birleşmediği üzerinde büyük bir etkiye sahip olabilir. Hızlı ve etkili önkoşullayıcılara sahip olduğu bilinen sorunlara örnek olarak, çoklu-ızgara yönteminin sıklıkla hızlı yakınsaklık sağladığı güçlü eliptik kısmi diferansiyel denklemler gösterilebilir. Yakınsamanın değerlendirilmesi için kullanılabilecek birkaç test vardır; Burada örnek olarak PETSc'nin işlevselliğini kullanacağım, çünkü lineer (ve lineer olmayan denklemlerin) seyrek sistemlerini tekrarlı olarak çözmek için tartışmasız en eski ve en olgun kütüphane.

PETSc, yinelemeli bir çözücünün ilerlemesini izlemek ve çözücünün yakınsaması veya sapması olup olmadığına karar vermek için KSPMonitor adlı bir nesne kullanır. Monitör durup durmayacağınıza karar vermek için dört farklı kriter kullanır. Burada tartışma hakkında daha fazla ayrıntı KSPGetConvergedReason () kılavuz sayfasında bulunabilir .

Biz gösterim açısından kullanıcı için denklem aşağıdaki sistemini çözme olduğunu varsayın : A x = b Biz cari tahmin diyoruz x ve kalan tanımlamak r önkoşullanma tarzında dayalı:x

birx=b

x^r^
  1. (P-1(birx-b))

    r^=P-1(birx^-b)
  2. (birP-1Px=b)

    r^=birx^-b

Yakınsama Kriterleri

  1. birtÖl
    r^birtÖl
  2. rtÖl
    r^rtÖlb
  3. Diğer Kriterler - Yinelemeli çözüm, küçük bir adım uzunluğunun veya negatif eğriliğin algılanması nedeniyle de birleşebilir.

Iraksama Kriterleri

  1. Maksimum Yineleme - Bir çözücünün alabileceği yineleme sayısı maksimum yineleme ile sınırlıdır. Maksimum yineleme sayısına ulaşıldığında diğer kriterlerden hiçbiri karşılanmadıysa, monitör birbirinden ayrı olarak döner.

  2. Kalan NaN - Herhangi bir noktada kalıntı NaN olarak değerlendirilirse, çözücü saptırılmış olarak geri döner.

  3. dtÖl

    r^dtÖlb
  4. Çözücü Dağılımı Krylov yönteminin kendisi tekil bir matris veya önkoşul tespit ederse sapma sinyalini verebilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.