Etki alanı ayrıştırma önkoşullarına göre çoklu yükün avantajı nedir?


Yanıtlar:


16

Çok taneli ve çok düzeyli alan ayrıştırma yöntemleri o kadar ortaktır ki, her biri genellikle diğerinin özel bir durumu olarak yazılabilir. Analiz çerçeveleri, her alanın farklı felsefelerinin bir sonucu olarak, biraz farklıdır. Genel olarak konuşursak, çoklu-ızgara yöntemleri orta düzeyde iri oranlar ve basit düzleştiriciler kullanırken alan ayrıştırma yöntemleri son derece hızlı iri ve güçlü düzleştiriciler kullanır .

Multigrid (MG)

Multigrid, ılımlı iri oranlar kullanır ve enterpolasyon ve düzleştiricilerin modifikasyonu ile sağlamlık sağlar. Eliptik problemler için, enterpolasyon operatörleri "düşük enerji" olmalıdır, öyle ki operatörün neredeyse sıfır boşluğunu korurlar (örneğin rijit gövde modları). Bu düşük enerjili enterpolantlara örnek geometrik bir yaklaşım, Wan, Chan, Smith (2000) , düzleştirilmiş toplama Van agk , Mandel, Brezina'nın (1996) cebirsel yapısına kıyasla ( PCGAMG ile ML ve PETSc'de paralel uygulamalar, Prometheus'un yerini almıştır ) . Trottenberg, Oosterlee ve Schüller'in kitabı Multigrid yöntemleri hakkında iyi bir genel referanstır.

Çoğu çoklu ızgara düzleştirici, katkı maddesi (Jacobi) veya çarpma (Gauss Seidel) gibi noktaya dayalı gevşeme içerir. Bunlar küçük (tek düğüm veya tek eleman) Dirichlet problemlerine karşılık gelir. Bazı spektral uyarlanabilirlik, sağlamlık ve vektörleştirilebilirlik, Chebyshev düzleştiricileri kullanılarak elde edilebilir, bkz. Adams, Brezina, Hu, Tuminaro (2003) . Simetrik olmayan (örn. Taşıma) problemler için Gauss-Seidel gibi çoklayıcı düzleştiriciler genellikle gereklidir ve rüzgârlı ara ürünler kullanılabilir. Alternatif olarak, sele noktası ve sert dalga problemleri için düzleştiriciler, Schur tamamlayıcısından ilham alan "blok ön koşullandırıcılar" yoluyla veya ilgili "dağıtılmış gevşeme" ile basit düzleştiricilerin etkili olduğu sistemlere dönüştürülerek oluşturulabilir.

Ders kitabı çoklu-enerji verimliliği , ince ızgara üzerinde dörte kadar az sayıda kalan değerlendirme maliyetinin küçük bir katında, ayrıklaştırma hatasının çözülmesini ifade eder . Bu, sabit bir cebirsel tolerans yineleme sayısı gider eder aşağı artan seviyeleri sayısı. Paralel olarak, zaman tahmini, çoklu-ızgara hiyerarşisinin ima ettiği senkronizasyondan kaynaklanan logaritmik bir terimi içerir.

Alan Adı Ayrıştırma (DD)

İlk alan ayrıştırma yöntemlerinin sadece bir seviyesi vardır. Kaba seviye olmadan, önkoşullu operatörün durum numarası O'dan az olamaz ( L 2Lalanının çapı veH, nominal alt alan boyutudur. Pratikte, tek seviyeli DD için koşul sayıları bu sınır ileO(L2)arasına düşerÖ(L2'H2)L'Hburadaheleman büyüklüğüdür. Bir Krylov yönteminin ihtiyaç duyduğu yineleme sayısının koşul sayısının kare kökü olarak ölçeklendiğine dikkat edin. Optimize edilmiş Schwarz yöntemleri(Gander 2006), Dirichlet ve Neumann yöntemlerine göresabitleri veH/h'yebağımlılığı geliştirir, ancak genellikle kaba seviyeler içermez ve bu nedenle birçok alt etki alanında bozulma gösterir. Etki alanı ayrıştırma yöntemlerine genel bir referans içinSmith, Bjørstad ve Gropp (1996)veyaToselli ve Widlund'un (2005)kitaplarına bakınız.Ö(L2h'H)h'H/h

Optimal veya yarı optimal yakınsama hızları için birden fazla seviye gereklidir. Çoğu DD yöntemi iki düzeyli yöntem olarak ortaya çıkar ve bazılarının daha fazla düzeye genişletilmesi çok zordur. DD yöntemleri örtüşen veya örtüşmeyen olarak sınıflandırılabilir.

Çakışan

Bu Schwarz yöntemleri örtüşmeyi kullanır ve genellikle Dirichlet problemlerini çözmeye dayanır. Üst üste binme arttırılarak yöntemlerin gücü arttırılabilir. Bu yöntem sınıfı genellikle sağlamdır, yerel kısıtlamalarla (katı mekaniklerin mühendisliğinde yaygın olarak) karşılaşılan sorunlar için yerel boş alan tanımlaması veya teknik değişiklikler gerektirmez, ancak örtüşme nedeniyle ekstra çalışma (özellikle 3D'de) içerir. Ek olarak, sıkıştırılamaz gibi kısıtlı problemler için, üst üste binen şeridin inf-sup sabiti genellikle görünür ve bu da en düşük yakınsama oranlarına yol açar. BDDC / FETI-DP'ye (aşağıda tartışılmıştır) benzer kaba alanlar kullanan modern örtüşen yöntemler Dorhmann, Klawonn ve Widlund (2008) ve Dohrmann ve Widlund (2010) tarafından geliştirilmiştir .

Sigara örtüşen

Bu yöntemler genellikle bir çeşit Neumann problemini çözer, bu da Dirichlet yöntemlerinden farklı olarak, küresel olarak monte edilmiş bir matrisle çalışamayacakları ve bunun yerine monte edilmemiş veya kısmen monte edilmiş matrisler gerektirecekleri anlamına gelir. En popüler Neumann yöntemleri, her yinelemede dengeleme yaparak alt alanlar arasında sürekliliği veya yalnızca yakınsamaya ulaşıldığında sürekliliği zorlayacak Lagrange çarpanları ile zorlar. Bu türün ilk yöntemleri (Dengeleme Neumann-Neumann ve FETI), hem kaba seviyeyi inşa etmek hem de alt alan problemlerini tekil hale getirmek için her bir alt alanın sıfır boşluğunun kesin karakterizasyonunu gerektirir. Daha sonraki yöntemler (BDDC ve FETI-DP), alt alan köşelerini ve / veya kenar / yüz momentlerini kaba düzeyde serbestlik derecesi olarak seçer. Bkz. Klawonn ve Rheinbach (2007)3D esnekliği için kaba alan seçiminin derinlemesine tartışılması için. Mandel, Dohrmann ve Tazaur (2005) , BDDC ve FETI-DP'nin olası 0 ve 1 haricinde aynı özdeğerlere sahip olduğunu göstermiştir.

İkiden fazla seviye

Çoğu DD yöntemi yalnızca iki düzeyli yöntemler olarak sunulur ve bazıları, ikiden fazla düzeyle kullanım için uygun olmayan kaba alanlar seçer. Ne yazık ki, özellikle 3B'de, kaba seviye problemleri çabucak bir darboğaz haline gelir ve çözülebilecek problem boyutlarını sınırlar. Ayrıca, özellikle Neumann problemlerine dayanan DD yöntemleri için önkoşullu operatörlerin durum numaraları,

κ(PDD-1bir)=C(1+lÖg'Hh)2(L-1)

LL41012


9

Bu mükemmel bir yazı ama bence (çok seviyeli) DD ve MG'nin çok ortak noktası olduğunu söylemek doğru değil ya da en azından kullanışlı değil. Yöntemler çok farklı ve birindeki uzmanlığın diğerinde çok yararlı olduğunu düşünmüyorum.

İlk olarak, iki topluluk farklı karmaşıklık tanımları kullanır: DD, önkoşullu sistemlerin koşul sayısını optimize eder ve MG, çalışma / bellek karmaşıklığını optimize eder. Bu büyük bir temel farktır - "iyimserlik" bu iki bağlamda tamamen farklı bir anlama sahiptir. Paralel karmaşıklık eklediğinizde işler değişmez (MG'ye bir günlük terimi ekleseniz de). İki topluluk neredeyse farklı dilleri konuşuyor.

İkincisi, MG'nin içinde çok düzeyli ve çok düzeyli DD yöntemlerinin tümü iki düzeyli teori ve uygulamalarla geliştirilmiştir. Bu, MG'de kullanabileceğiniz kaba ızgara alanlarının alanını sınırlar - yinelemeli olmalıdır. Örneğin, MG çerçevesinde FETI uygulayamazsınız. İnsanlar Jed'in belirttiği gibi çok seviyeli bazı DD yöntemleri uygularlar, ancak mevcut popüler DD yöntemlerinin en azından bir kısmı tekrar tekrar uygulanamaz gibi görünmektedir.

Üçüncüsü, algoritmaların pratikte görüldüğü gibi çok farklı olduğunu görüyorum. Niteliksel olarak söyleyebilirim ki DD yöntemleri alan sınırlarına yansır ve bu arayüz problemini çözer. MG doğrudan doğal denklemlerle çalışır. Bu projeksiyondan kaçınmak, MG'nin doğrusal olmayan ve simetrik olmayan problemlere kolayca uygulanmasını sağlar. Teori, doğrusal olmayan ve simetrik olmayan problemler için ortadan kalkmasına rağmen, birçok insan için çalıştılar. MG ayrıca sorunu açık bir şekilde iki parçaya ayırır: ölçekleme için kaba ızgara alanı ve fiziği çözmek için yinelemeli bir çözücü (daha pürüzsüz). Bu, MG'yi anlamak ve çalışmak için kritik öneme sahiptir ve benim için çekici bir özelliktir.

Teorik olarak düzleştiriciler ve kaba ızgara boşlukları sıkıca bağlanmış olsa da, pratikte genellikle farklı bir pürüzsüzlüğü bir optimizasyon parametresi olarak içeri ve dışarı değiştirebilirsiniz. Jed'in bahsettiği nokta veya tepe düzleştiricileri popüler ve genellikle daha hızlı olduğundan, zor problemler için daha ağır düzleştiriciler yararlı olabilir. Bu çizim benim tezimden çözme süresini Jacobi, blok Jacobi ve "katkı Schwarz" (örtüşen) için Poisson oranının bir fonksiyonu olarak gösteriyor. Okumak biraz zor ama en yüksek Poisson oranında (0.499) çakışan Schwarz (tepe noktası) Jocobi'den yaklaşık 2 kat daha hızlı, yaya Poisson oranlarında yaklaşık 3 kat daha yavaş.

Nokta, blok ve üst üste binen düzleştiriciler için zaman ve Poisson oranını çözme


4

Jed'in cevabına göre, MG ılımlı kabalaştırma yaparken DD hızlı kabalaştırma kullanır. Bence bunlar paralelleştirildiklerinde bir fark yaratıyor. MG'nin, DD'nin tek bir kabalaşmasına eşdeğer birçok kaba seviyeden geçmesi için birçok iletişim ve senkronizasyon olacaktır. Jed'in cevabından bir başka nokta da MG'nin daha ucuz ve DD'nin daha düzgün kullanması. İki noktaya bakıldığında, kaba seviyelerde MG'nin kötü iletişim / hesaplama oranlarına sahip olacağı bildirilmiştir. Amdahl yasasına göre , paralel hızlanma iyi değil. Bunun bir çözümü, BPX ön koşullandırıcı gibi paralel kaba ızgaraların düzeltilmesidir.. Ayrıca, MG DD'yi Adams'ın işaret ettiği gibi daha düzgün kullanabilir ve MG DD'nin alt alanlarında da kullanılabilir. Barker'ın işaret ettiği düşüncelere dayanarak, DD içinde MG'yi kullanmak daha iyidir, bu da hem DD'nin paralelliğini hem de MG'nin en uygun karmaşıklığını kullanır.


1

Jed'in mükemmel cevabına küçük bir katkı yapmak istiyorum, yani iki yaklaşımın arkasındaki motivasyonlar farklı (veya en azından) farklıydı.

Etki alanı ayrıştırma, paralel hesaplama tekniği olarak motive edilir. Özellikle tek seviyeli yöntemler için DD, paralel bir makineye uygulanması çok doğaldır - etki alanını parçalara böler ve her parçayı farklı bir işlemciye verirsiniz. Bir anlamda DD'nin arkasındaki motivasyon aritmetik işlemleri işlemciler arasında bölmektir.

İyi paralel çoklu-ızgara uygulamaları mevcuttur, ancak paralel olarak yapılması genellikle daha az doğaldır. Bunun yerine, multigrid'in arkasındaki motivasyon ilk etapta daha az aritmetik işlemler yapmaktır.


2
Bu iyi bir nokta, ancak DD'nin ayrıca DD'nin ilk görüşmelerini görme deneyimimden mevcut doğrudan çözücüleri (çoğu mühendislik durumunda) yeniden kullanma arzusuyla motive olduğunu da ekleyeceğim. Asla çok düzeyli bir DD yöntemi uygulamamıştım ama bana daha "doğal" gelmiyor. Bir matris-vektör ürününün paralelleştirilmesi - çoklu ızgara için gerçekleştirmeniz gereken basit vektör işlemleri dışında tek şey - doğal değilse, çok iyi anlaşılmamıştır.
Adams

1

'HhÖ(1'Hh)

h'H


2
Bilginize, bu muhtemelen ayrı bir cevaptan ziyade Jed'in cevabı hakkında bir yorum olmalıdır.
Jack Poulson

Evet, denedim ama Jed'in cevabının altına yorum eklemek için bir yol bulamıyorum.
Hui Zhang

h'H

@JedBrown Ön koşullandırıcı olmadan doğrudur OSM ön koşullu BDDC / FETI-DP olarak logaritmayı başaramaz. Ancak Dirichlet / Neumann ön koşullandırıcının pahalı olabileceğini ve topak ön koşullandırıcının ekstra bir faktörü olacağını unutmayın.'Hh
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.