Çözücü ve Önkoşullandırma¶
FrontISTR doğrusal çözücüleri, doğrudan veya yinelemeli yöntem seçilerek yapılandırılır; yinelemeli yöntemlerde doğrusal denklemleri çözmek için bir önkoşullandırıcı kullanılır. MPC işleme yöntemi ve temas serbestlik derecesi eliminasyonu, çok noktalı veya temas kısıtlarını içeren doğrusal sistemin hangi biçimde ele alınacağını belirleyen yardımcı seçimlerdir.
İşlevlerin Genel Görünümü¶
Çözücü ve önkoşullandırma ayarları aşağıdaki seçeneklerden oluşur. Önce doğrusal çözücü olarak yinelemeli veya doğrudan yöntem seçilir. Önkoşullandırıcı yalnızca yinelemeli yöntem seçildiğinde kullanılır.
| Kategori | Başlıca Seçenekler | Rol |
|---|---|---|
| Yinelemeli yöntemler | CG, BiCGSTAB, GMRES, GPBiCG, GMRESR, GMRESREN |
Büyük seyrek matrisleri bellek açısından verimli biçimde çözer. |
| Yinelemeli yöntem önkoşullandırıcıları | SSOR, köşegen ölçekleme, BILU, AMG, SAINV, RIF | Yinelemeli yöntemlerin yakınsamasını iyileştirir. Doğrudan yöntemlerde kullanılmaz. |
| Doğrudan yöntemler | MUMPS, MKL |
Matris ayrıştırmasıyla doğrusal denklemleri sağlam biçimde çözer. |
| MPC işleme yöntemleri | Ceza yöntemi, MPC-CG yöntemi, açık serbestlik derecesi eliminasyonu | Çok noktalı kısıtları doğrusal sisteme yansıtır. |
| Temas serbestlik derecesi eliminasyonu | Otomatik, her zaman etkin | SLAGRANGE temasında eklenen temas serbestlik derecelerinin ele alınışını değiştirir. |
| Yardımcı işlevler | Koşul sayısı tahmini, matris dökümü, günlük çıktısı | Hata ayıklama, yakınsama değerlendirmesi ve performans ölçümünü destekler. |
Paralel çalıştırmada, bölge ayrıştırmasına dayalı MPI paralelliği OpenMP iş parçacığı paralelliğiyle birleştirilebilir. Yinelemeli yöntemler büyük ölçekli paralel analizler için standart seçenektir; doğrudan yöntemler ise gerekli kütüphanelerin bağlandığı ortamlarda daha sağlam bir çözüm gerektiğinde kullanılır.
Çözücü ve Önkoşullandırıcı Seçimi¶
Önce yinelemeli veya doğrudan yöntemden hangisinin kullanılacağına karar verilir; yinelemeli yöntem seçilirse ardından önkoşullandırıcı seçilir.
| Karar Ölçütü | Önerilen Yaklaşım |
|---|---|
| Problem boyutu | Küçük ve orta ölçekli problemlerde doğrudan yöntemler kararlı ve kullanımı kolaydır. Büyük problemlerde yinelemeli yöntemler bellek açısından daha verimlidir. |
| Matris simetrisi | Simetrik pozitif tanımlı problemlerde CG düşünülebilir. Simetrik olmayan problemlerde BiCGSTAB, GMRES, GPBiCG gibi yöntemler düşünülebilir. |
| Paralel ortam | MPI paralelliğinde yinelemeli yöntem ile bölge ayrıştırmasını birleştirin. OpenMP paralelliğindeki önkoşullandırmada çok renkli SSOR düşünülebilir. |
| Önkoşullandırıcı (yinelemeli yöntem kullanıldığında) | Önce varsayılan SSOR denenir, ardından AMG değerlendirilir. Yakınsama iyiyse SSOR hesaplama açısından hafiftir; karmaşık ve büyük ölçekli problemler için AMG uygundur. |
| Temas ve MPC | Temas veya çok noktalı kısıt içeren analizlerde MPC işleme yöntemi ve temas serbestlik derecesi eliminasyonu yakınsamayı ve sağlamlığı etkiler. |
| Harici kütüphaneler | MUMPS, MKL ve AMG, ilgili kütüphanelerle bağlanmış derlemelerde kullanılabilir. |
Standart analizlerde yakınsama toleransı, azami yineleme sayısı ve önkoşullandırıcının köşegen düzeltme katsayısı için varsayılan değerler genellikle yeterlidir. Yalnızca yakınsama yavaş olduğunda veya çözüm ıraksadığında sırasıyla yinelemeli yöntem, önkoşullandırıcı, MPC işleme yöntemi ve temas serbestlik derecesi eliminasyonu gözden geçirilmelidir. Parametre değerleri ve sözdizimi için !SOLVER anahtar sözcük referansına bakın.
Yinelemeli Yöntemler¶
Yinelemeli yöntemler, büyük seyrek sistemlerde matris-vektör çarpımı ve önkoşullandırmayı tekrarlayarak çözümü günceller. FrontISTR aşağıdaki yinelemeli yöntemleri sağlar.
| Yinelemeli Yöntem | Tipik Uygulama | Notlar |
|---|---|---|
CG |
Simetrik pozitif tanımlı problemler | Yapısal analiz ve ısı iletimi analizleri için standart bir adaydır. |
BiCGSTAB |
Simetrik olmayan problemler | Temas veya bağlı etkiler güçlü simetrisizlik oluşturduğunda bir adaydır. |
GMRES |
Simetrik olmayan problemler | Belirtilen Krylov alt uzay boyutuyla kullanılır. |
GPBiCG |
Simetrik olmayan problemler | BiCGSTAB ailesinin geliştirilmiş bir yöntemi olarak kullanılır. |
GMRESR |
Simetrik olmayan problemler, ileri uygulamalar | GMRES yöntemini iç içe kullanan bir seçenektir. |
GMRESREN |
Simetrik olmayan problemler, ileri uygulamalar | GMRESR ailesinin özyinelemeli bir çeşididir. |
CG, matrisin simetrik pozitif tanımlı olduğunu varsayar. Sürtünmeli temas, simetrik olmayan kısıt işleme veya bağlı etkiler nedeniyle güçlü simetrisizlik varsa BiCGSTAB, GMRES, GPBiCG gibi yöntemler düşünülebilir. GMRES için Krylov alt uzayı büyütüldüğünde yakınsama iyileşebilir, ancak bellek kullanımı da artar.
METHOD2 belirtildiğinde, CG ıraksar veya çökerse alternatif bir yinelemeli yönteme geçilebilir. Bu işlev, CG ana çözücü olduğunda kullanılan bir geri dönüş mekanizmasıdır; diğer ayarlar ve veri satırları ana çözücüyle aynıdır.
Önkoşullandırma¶
Önkoşullandırma, yinelemeli yöntemin yakınsamasını iyileştirmek için katsayı matrisini dönüştürür ve yalnızca yinelemeli yöntem seçildiğinde uygulanır. Doğrudan yöntemlerde önkoşullandırma kullanılmaz. Aynı yinelemeli yöntemde bile önkoşullandırıcı seçimi, yakınsama için gereken yineleme sayısını ve hesaplama süresini önemli ölçüde değiştirebilir.
| Önkoşullandırıcı | Özellikler | Tipik Uygulama |
|---|---|---|
| SSOR | Standart önkoşullandırıcı; çok renkli sıralamayı destekler. | İlk denenecek aday; yapısal analizde yaygın olarak kullanılır. |
| Köşegen ölçekleme | Köşegen elemanları kullanan hafif önkoşullandırıcı. | Düşük hesaplama maliyeti istendiğinde. |
| BILU | Blok eksik LU ayrıştırması. | SSOR ile yakınsaması zor problemlerde adaydır. |
| AMG | Trilinos-ML kullanan cebirsel çoklu ızgara. | Büyük ölçekli veya hiyerarşik hata bileşenlerinin baskın olduğu problemler için adaydır. |
| SAINV | Sparse Approximate Inverse. | Temas problemleri veya dağıtık bellek ortamları için özel bir önkoşullandırma seçeneğidir. |
| RIF | Robust Incomplete Factorization. | Eksik ayrıştırma ailesinde başka bir seçenektir. |
SSOR standart seçenektir ve OpenMP paralelliğinde çok renkli sıralama sürümü kullanılır. Köşegen ölçekleme hafiftir, ancak yakınsama iyileştirmesi probleme bağlıdır. BILU, blok eksik LU ayrıştırması olarak uygulanır ve genel serbestlik derecesi sayısına sahip matrisleri de destekler. BILU ailesinde yinelemeli yöntem ıraksadığında köşegen düzeltme katsayısı SIGMA_DIAG otomatik olarak artırılıp yeniden denenebilir; değerin nasıl belirtileceği için anahtar sözcük referansına bakın.
AMG, Trilinos-ML kullandığından derleme sırasında ML etkin olmalıdır. Yumuşatıcı, çoklu ızgara çevrimi, kabalaştırma yöntemi ve diğer ayarlar belirtilebilir; ayrıntılı değerler için anahtar sözcük referansına bakın. SAINV, temas veya MPC kısıtları içeren paralel analizde kullanıldığında bölge ayrıştırmasındaki örtüşme derinliği yakınsamayı etkileyebilir.
Doğrudan Yöntemler¶
Doğrudan yöntemler katsayı matrisini ayrıştırarak doğrusal denklemleri çözer. Yineleme sayısına bağlı olmadıkları için sağlamdır ve temas veya kısıt koşulları içeren analizlerde kararlı bir seçenek olabilir. Ancak problem boyutu büyüdükçe bellek kullanımı artar.
| Doğrudan Yöntem | Paralel Ortam | Uygulama |
|---|---|---|
MUMPS |
MPI paralel | Dağıtık bellek ortamında seyrek matrisleri doğrudan yöntemle çözer. |
MKL |
Intel MKL / OpenMP | Intel MKL tabanlı doğrudan çözücüdür. İçeride Intel PARDISO kullanılır. Birden çok MPI sürecinde Cluster MKL yolu kullanılır. DIRECTmkl, MKL için bir takma addır. |
Doğrudan yöntemler hem simetrik hem simetrik olmayan matrislerde kullanılabilir. MUMPS ve MKL, ilgili kütüphanelerin derleme sırasında bağlanmasını gerektirir. Bu kütüphaneler bulunmayan ortamlarda kullanılamaz; gerekli bağımlılıklar ve CMake seçenekleri için derleme kılavuzuna bakın.
FrontISTR ayrıca harici kütüphane kullanmayan yerleşik bir doğrudan çözücü yolu içerir; ancak sıradan analizlerde doğrudan yöntem gerektiğinde normalde önce MUMPS veya MKL değerlendirilmelidir.
Doğrudan yöntemlere önkoşullandırma uygulanmaz. !SOLVER içinde önkoşullandırıcı belirtilmiş olsa bile doğrudan çözücü yolunda kullanılmaz.
MPC İşleme Yöntemleri¶
MPC işleme yöntemi, çok noktalı kısıtlarla bağlı serbestlik derecelerinin doğrusal denklemlere nasıl yansıtılacağını belirler. Girişteki kısıt denklemleri aynı olsa bile işleme yöntemi katsayı matrisinin özelliklerini ve yakınsamasını değiştirir.
| MPC İşleme Yöntemi | Konumlandırma | Varsayılan Kullanım |
|---|---|---|
| Ceza yöntemi | Kısıt denklemlerine büyük rijitlik terimleri ekleyerek kısıtları yaklaşık olarak sağlar. | Doğrudan yöntemler için varsayılan. |
| MPC-CG yöntemi | Kısıt içeren matris-vektör çarpımlarını yinelemeli çözücü içinde ele alan eski yöntem. | Kullanımdan kaldırılmıştır. |
| Açık serbestlik derecesi eliminasyonu | Kısıtlı serbestlik derecelerini elimine eder ve indirgenmiş doğrusal sistemi çözer. | Yinelemeli yöntemler için varsayılan. |
Ceza yöntemi doğrudan yöntemlerde, açık serbestlik derecesi eliminasyonu ise yinelemeli yöntemlerde varsayılandır. MPC-CG yöntemi uyumluluk için tutulan eski bir seçenektir ve yeni analizlerde önerilmez; normalde açık serbestlik derecesi eliminasyonu veya seçilen doğrudan yöntemin varsayılan işleme biçimi kullanılmalıdır.
MPC işleme yöntemi !SOLVER içindeki MPCMETHOD ile açıkça belirtilebilir. Her değerin anlamı ve sözdizimi için anahtar sözcük referansına bakın.
Temas Serbestlik Derecesi Eliminasyonu¶
Temas serbestlik derecesi eliminasyonu, SLAGRANGE temasının eklediği temas serbestlik derecelerini doğrusal çözücüye aktarmadan önce indirger. Bu serbestlik derecelerinin elimine edilmesi, yinelemeli yöntemin ele aldığı doğrusal sistemin özelliklerini iyileştirebilir.
Varsayılan otomatik modda temas serbestlik derecesi eliminasyonu yinelemeli yöntemlerde etkin, doğrudan yöntemlerde devre dışıdır. Doğrudan yöntemlerde temas serbestlik derecelerini içeren genişletilmiş sistemi doğrudan çözen bir yol sağlanır.
CONTACT_ELIM açıkça belirtildiğinde, doğrudan yöntem kullanılırken de temas serbestlik derecesi eliminasyonu yapılabilir. Giriş tarafındaki temas tipi, temas çifti ve temas algoritması seçimleri için Temas ve Gömme sayfasına bakın.
Yardımcı İşlevler¶
Çözücü yakınsamasını ve performansını incelemek için koşul sayısı tahmini, matris dökümü ve günlük çıktısı kullanılabilir. Bunlar normal analizlerde gerekli değildir; esas olarak hata ayıklama veya performans değerlendirmesi için etkinleştirilir.
| İşlev | Amaç | Notlar |
|---|---|---|
| Koşul sayısı tahmini | CG ve GMRES için koşul sayısının bir göstergesini çıktılar. |
LAPACK etkin derlemelerde kullanılabilir. |
| Matris dökümü | Çözücüye aktarılan matrisi ve sağ tarafı dosyaya kaydeder. | Matrix Market, CSR ve BSR biçimlerini destekler. |
DUMPEXIT |
Matris dökümünden sonra analizi sonlandırır. | Yalnızca matrisin dışarıda doğrulanması gerektiğinde kullanılır. |
ITERLOG |
Yinelemeli yöntemin yakınsama geçmişini çıktılar. | Artık eğilimini incelemek için kullanılır. |
TIMELOG |
Çözücü hesaplama süresini çıktılar. | VERBOSE daha ayrıntılı döküm verir. |
STEPLOG |
Adım bilgilerini çıktılar. | Analiz prosedürünü incelemek için kullanılır. |
Matris dökümü, analizde monte edilen katsayı matrisinin harici araçlarla incelenmesini sağlar. DUMPEXIT etkinse matris ve sağ taraf kaydedildikten sonra analiz sonlanır. Koşul sayısı tahmini, CG ve GMRES ile kullanılabilen deneysel bir işlevdir ve yakınsama davranışını teşhis etmek için kullanılabilir.
İlgili Konular¶
- Doğrusal Çözücü (Teori) — Yinelemeli yöntemlerin ve önkoşullandırmanın matematiksel ilkeleri.
- Doğrusal Olmayan Yineleme ve Zaman İntegrasyonu — Doğrusal çözücüyü çağıran Newton yinelemeleri, temas yinelemeleri ve zaman integrasyonu çerçevesi.
- Bölge Ayrıştırması — MPI paralel analizi ve örtüşme derinliği ayarları.
- Temas ve Gömme — Temas tipleri ve temas algoritmalarının seçimi.
- !SOLVER — Çözücü ve önkoşullandırıcı parametrelerinin değerleri ve sözdizimi.
- Gerekli ve İsteğe Bağlı Bağımlılık Kütüphaneleri —
MUMPS,MKL(Intel PARDISO), Trilinos-ML, LAPACK vb. bağımlılıklar.