!SOLVER¶
Yechuvchini boshqarish
Majburiy boshqaruv ma’lumoti.
Parametrlar¶
METHOD = Yechish usuli (CG, BiCGSTAB, GMRES, GPBiCG, CR, DIRECT, DIRECTmkl, MUMPS)
DIRECT : Kontakt tahlilidan tashqari to‘g‘ridan-to‘g‘ri usul (faqat ketma-ket ishlov berish) (hozirda mavjud emas)
DIRECTmkl : Intel MKL dan foydalanadigan to‘g‘ridan-to‘g‘ri usul
MUMPS : MUMPS dan foydalanadigan to‘g‘ridan-to‘g‘ri usul
To‘g‘ridan-to‘g‘ri usul tanlanganda ma’lumot qatorlari e’tiborga olinmaydi.
3-DOF masalalar uchun iterativ usullar OpenMP bilan oqimlar bo‘yicha parallel bajarilishni qo‘llab-quvvatlaydi
PRECOND = Iterativ yechuvchilar uchun oldindan shartlash usuli (1, 2, 3, 5, 10, 11, 12, 22)
1, 2 : (Blok) SSOR (faqat 3-DOF masalalarda ko‘p rangli tartiblash bilan)
3 : (Blok) diagonal masshtablash
5 : ML ko‘p to‘rli oldindan shartlash paketi yordamidagi AMG
10 : Blok ILU(0)
11 : Blok ILU(1)
12 : Blok ILU(2)
22 : HEC-MW ichiga o‘rnatilgan SA-AMG (silliqlangan agregatsiyali AMG) yordamidagi AMG
10, 11 va 12 faqat 3-DOF masalalarda mavjud
22 faqat LAPACK yoqilgan yig‘ilmalarda mavjud
OpenMP oqimlari bo‘yicha parallel bajarilish uchun SSOR, diagonal masshtablash, ML yoki SA-AMG tavsiya etiladi
ITERLOG = Iterativ yechuvchi yaqinlashish tarixini chiqarish yoki chiqarmaslik (YES/NO)(standart: NO)
TIMELOG = Yechuvchi hisoblash vaqtini chiqarish yoki chiqarmaslik (YES/NO/VERBOSE)(standart: NO)
LOGLEVEL = Oldindan shartlagich diagnostika ma’lumotlarini chiqarish darajasi (butun son)(standart: chiqarilmaydi)
ITERLOG va TIMELOG dan mustaqil ravishda ko‘rsatiladi
1 yoki undan katta qiymatda AMG turidagi oldindan shartlagichlar (PRECOND=5,22) iyerarxiyasini qurish va boshqa ma’lumotlar chiqariladi
2 yoki undan katta qiymatda batafsilroq ma’lumotlar (masalan, xotiradan foydalanish) chiqariladi
USEJAD = Vektor protsessorlari uchun tartiblashdan foydalanish yoki foydalanmaslik (YES/NO)(standart: NO)
Faqat 3-DOF masalada iterativ usul ishlatilganda amal qiladi
SCALING = Diagonal elementlari 1 bo‘lishi uchun matritsani masshtablash yoki masshtablamaslik (YES/NO)(standart: NO)
Faqat 3-DOF masalada iterativ usul ishlatilganda amal qiladi
DUMPTYPE = Matritsani dump qilish formati (NONE, MM, CSR, BSR) (asosan nosozliklarni aniqlash uchun)
NONE : Dump qilmaslik (standart)
MM : Matrix Market formati
CSR : Siqilgan siyrak qator (CSR) formati
BSR : Bloklangan CSR formati
DUMPEXIT = Matritsa dump qilingandan so‘ng dasturni darhol tugatish (YES/NO)(standart: NO)
MPCMETHOD = Ko‘p nuqtali cheklovlarni qayta ishlash usuli (1, 3)
1: Jarima usuli (to‘g‘ridan-to‘g‘ri usul ishlatilganda standart)
3: DOF ni oshkor yo‘qotish (iterativ usul ishlatilganda standart)
Ilgari tanlash mumkin bo‘lgan MPC-CG usuli olib tashlangan; 2 ko‘rsatilsa, ogohlantirish chiqariladi va tegishli standart usul qo‘llanadi.
ESTCOND = Shartlanganlik sonini baholash chastotasi (tajribaviy)
Har bir ko‘rsatilgan iteratsiya oralig‘ida va iteratsiyalar oxirida shartlanganlik sonini baholaydi
0 ko‘rsatilganda baholash bajarilmaydi
RECOMPUTE_RESIDUAL = Qoldiq vektorini qayta hisoblash chastotasi
Faqat METHOD uchun CG, BiCGSTAB, GPBiCG yoki PipeCG ko‘rsatilganda amal qiladi
Iterativ usul qoldiq vektorini rekurrent munosabat bilan yangilagani uchun yaxlitlash xatolari to‘planadi
Belgilangan har bir iteratsiyada qoldiq vektori {b}-[A]{x} dan qayta hisoblanadi
0 bo‘lsa, har bir yechish usulining standart qiymati (CG: 50, BiCGSTAB: 100, GPBiCG: 20, PipeCG: 50) ishlatiladi
Manfiy qiymat berilsa, davriy qayta hisoblash bajarilmaydi
Yaqinlashuv mezoni bajarilganda tekshirish uchun qayta hisoblash bu sozlamadan qat’i nazar har doim bajariladi
Davr juda qisqa qilinsa, matritsa-vektor ko‘paytmalari soni ortishi bilan birga
yaqinlashuvning o‘zi yomonlashishi yoki umuman yaqinlashmaslik holati yuz berishi mumkin
Standart qiymatdan o‘zgartirilsa, yaqinlashuv tarixini va yakuniy nisbiy qoldiqni tekshiring
METHOD2 = 2-yechish usuli (BiCGSTAB, GMRES, GPBiCG) (tajribaviy)
Faqat METHOD uchun CG ko‘rsatilganda amal qiladi
CG uzoqlashsa, avtomatik ravishda ikkinchi usulga o‘tadi va yechishni davom ettiradi
Boshqa parametrlar va ma’lumot qatorlari uchun ayni qiymatlar ishlatiladi
CONTACT_ELIM = Kontakt tahlilida DOF yo‘qotilishi bajarilishini belgilaydi (0,1)
0: DOF yo‘qotilishini faqat iterativ usul ishlatilganda bajarish (standart)
1: DOF yo‘qotilishini har doim bajarish (to‘g‘ridan-to‘g‘ri usulda ham)
** 2-qator va undan keyingi qatorlar **
| O‘zgaruvchi nomi | Atribut | Tavsif |
|---|---|---|
| NITER | I | Iteratsiyalar soni (standart: 100) |
| iterPREmax | I | Additive Schwarz oldindan shartlash iteratsiyalari soni (standart: 1) (Tavsiya etilgan qiymat: 1; ayrim parallel hisoblashlarda 2 samarali bo‘lishi mumkin) |
| NREST | I | Krylov quyi fazolari soni (standart: 10) (Faqat yechish usuli sifatida GMRES tanlanganda amal qiladi) |
| NCOLOR_IN | I | Ko‘p rangli tartiblash uchun maqsadli ranglar soni (standart: 10) (Faqat OpenMP oqimlari soni 2 yoki undan katta bo‘lganda amal qiladi) |
| RECYCLEPRE | I | Oldindan shartlagichni sozlash ma’lumotidan qayta foydalanish soni (standart: 3) (Faqat nochiziqli tahlilda amal qiladi) |
| O‘zgaruvchi nomi | Atribut | Tavsif |
|---|---|---|
| RESID | R | Kesish xatoligi (standart: 1.0e-8) |
| SIGMA_DIAG | R | Oldindan shartlash matritsasini hisoblashda diagonal elementlarga qo‘llanadigan masshtab koeffitsiyenti (standart: 1.0) (ILU oldindan shartlashda nolga bo‘lish yoki uzoqlashish yuz bersa, 1.0 dan katta qiymat berilganda masala yaqinlashishi mumkin) |
| SIGMA | R | Ishlatilmaydi (standart: 0.0) |
PRECOND=5 bo‘lganda (ixtiyoriy)¶
PRECOND uchun 5 yoki 22 dan boshqa qiymat ko‘rsatilsa, 4-qator e’tiborga olinmaydi.
| O‘zgaruvchi nomi | Atribut | Tavsif |
|---|---|---|
| ML_CoarseSolver | I | ML uchun qo‘pol to‘r yechuvchisi (1: silliqlagichdan foydalanish, 2: KLU (ketma-ket to‘g‘ridan-to‘g‘ri usul), 3: MUMPS (parallel to‘g‘ridan-to‘g‘ri usul)) (standart: 1) (Tavsiya: qiyin masalalar uchun 3 yoki 2, oddiy masalalar uchun 1) |
| ML_Smoother | I | ML silliqlagichi (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (standart: 1) (Tavsiya: 1) |
| ML_MGCycle | I | ML ko‘p to‘r sikli (1: V-sikl, 2: W-sikl, 3: Full-V-sikl) (standart: 1) (Tavsiya: qiyin masalalar uchun 2, oddiy masalalar uchun 1) |
| ML_MaxLevels | I | ML sathlarining maksimal soni (standart: 10) (Ayniqsa qiyin masalalar uchun to‘g‘ridan-to‘g‘ri qo‘pol yechuvchidan va 2 sathdan (xotira yetarli bo‘lmasa 3) foydalaning; oddiy masalalar uchun 10 tavsiya etiladi) |
| ML_CoarseningScheme | I | ML qo‘pollashtirish sxemasi (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (standart: 1) (Tavsiya: 1 yoki 5) |
| ML_NumSweep | I | ML silliqlagich o‘tishlari soni (Chebyshev uchun polinom darajasi) (standart: 2) (Tavsiya: Chebyshev uchun 2, SymBlockGaussSeidel uchun 1) |
PRECOND=22 bo‘lganda (ixtiyoriy)¶
PRECOND uchun 22 dan boshqa qiymat ko‘rsatilsa, 5-qator e’tiborga olinmaydi. 4-qator va 5-qatorning har birini to‘liq tashlab ketish mumkin, shuningdek har bir qatorning oxiridagi elementlarni ham tashlab ketish mumkin. 0 qiymati ko‘rsatilgan element uchun standart qiymat ishlatiladi.
4-qatordagi 1 dan 7 gacha elementlar PRECOND=5 (ML) parametrlar qatori bilan bir xil tartibda joylashgan, shuning uchun ML parametrlar qatorini o‘zgartirmasdan qayta ishlatish mumkin. 8 dan 10 gacha elementlar SA-AMG ga xos.
(4-qator) SA_CoarseSolver, SA_Smoother, SA_MGCycle, SA_MaxLevels, (ishlatilmaydi), SA_ChebyDegree, SA_CoarseSize, SA_MaxAggSize, SA_GalerkinLowMem, (ishlatilmaydi)
| O‘zgaruvchi nomi | Atribut | Tavsif |
|---|---|---|
| SA_CoarseSolver | I | Qo‘pol to‘r yechuvchisi (0: avtomatik, 1: silliqlagichdan foydalanish, 2: zich matritsali to‘g‘ridan-to‘g‘ri usul, 3: MUMPS (parallel to‘g‘ridan-to‘g‘ri usul)) (standart: 0) (Avtomatik rejimda MUMPS yoqilgan yig‘ilmalarda MUMPS, aks holda zich matritsali to‘g‘ridan-to‘g‘ri usul ishlatiladi) |
| SA_Smoother | I | Silliqlagich (0, 1: Chebyshev) (standart: 0) (Faqat Chebyshev qo‘llab-quvvatlanadi. Boshqa qiymat ko‘rsatilsa, ogohlantirish chiqariladi va Chebyshev ishlatiladi) |
| SA_MGCycle | I | Ko‘p to‘r sikli (0: standart (W-sikl), 1: V-sikl, 2: W-sikl) (standart: 0) (Full-V-sikl qo‘llab-quvvatlanmaydi) |
| SA_MaxLevels | I | Sathlarning maksimal soni (standart: 20) |
| (ishlatilmaydi) | I | ML qo‘pollashtirish sxemasiga mos keluvchi o‘rin. SA-AMG har doim bog‘lanmagan agregatsiyadan foydalangani uchun 0 dan farqli qiymat ogohlantirish chiqaradi va e’tiborga olinmaydi |
| SA_ChebyDegree | I | Chebyshev silliqlagichining polinom darajasi (standart: 2) |
| SA_CoarseSize | I | Qo‘pol to‘rning to‘xtatish o‘lchami (standart: qo‘pol to‘r yechuvchisi sifatida MUMPS ishlatilsa 50000, aks holda 100) |
| SA_MaxAggSize | I | Agregatning maksimal o‘lchami (standart: 96) |
| SA_GalerkinLowMem | I | Qo‘pol to‘r matritsasini hisoblash usuli (0: odatiy (tezlikka ustunlik beradi), musbat qiymat: xotirani tejash) (standart: 0) (Sozlash vaqtida xotira yetarli bo‘lmasa, musbat qiymat ko‘rsating) |
| (ishlatilmaydi) | I | Kelajakdagi kengaytmalar uchun ajratilgan |
5-qator faqat SA-AMG uchun mo‘ljallangan va ML tomonidan o‘qilmaydi.
(5-qator) SA_Theta, SA_ChebyAlpha, SA_Safety, SA_TaperK, SA_AggOrder, SA_MinAggSize, SA_Verify, SA_DumpVTK
| O‘zgaruvchi nomi | Atribut | Tavsif |
|---|---|---|
| SA_Theta | R | Kuchli bog‘lanishlarni aniqlash chegarasi (standart: 0.0) (0.0 qiymatida matritsaning noldan farqli tuzilishi to‘g‘ridan-to‘g‘ri graf sifatida ishlatiladi) |
| SA_ChebyAlpha | R | Chebyshev silliqlagichi mo‘ljallagan xos qiymatlar oralig‘ining quyi chegarasini belgilovchi nisbat (standart: 20.0) |
| SA_Safety | R | Maksimal xos qiymat bahosiga qo‘llanadigan xavfsizlik koeffitsiyenti (standart: 1.1) |
| SA_TaperK | R | Qo‘pollashtirishni yumshatish koeffitsiyenti K (standart: 100) (2-sathdan boshlab kamida taxminan K agregat qolishi uchun qo‘pollashtirish sekinroq bajariladi. Manfiy qiymat yumshatishni o‘chiradi) |
| SA_AggOrder | R | Agregatsiyani ko‘rib chiqish tartibi (0: standart (BFS tartibi), 1: BFS tartibi, 2: tugun raqamlarining hash tartibi (tajribaviy), 3: daraja bo‘yicha o‘sish tartibi (tajribaviy), 4: daraja bo‘yicha kamayish tartibi (tajribaviy), manfiy qiymat: tugun raqamlari tartibi) (standart: 0) |
| SA_MinAggSize | R | Agregatning minimal o‘lchami (standart: 3) |
| SA_Verify | R | Sozlash vaqtida o‘z-o‘zini tekshirishni bajarish yoki bajarmaslik (0: yo‘q, musbat qiymat: ha) (standart: 0) (asosan nosozliklarni aniqlash uchun) |
| SA_DumpVTK | R | Eng yuqori sathdagi agregatsiyani VTK formatida chiqarish yoki chiqarmaslik (0: chiqarilmaydi, musbat qiymat: chiqariladi) (standart: 0) (asosan nosozliklarni aniqlash uchun) |
Foydalanish misollari¶
SSOR oldindan shartlash bilan CG dan foydalanish, maksimal iteratsiyalar sonini 10000 va kesish xatoligini 1.0e-8 ga belgilash
SSOR oldindan shartlash bilan GMRES dan foydalanish, Krylov quyi fazolari sonini 40 va ko‘p rangli tartiblash uchun maqsadli ranglar sonini 100 ga belgilash
ILU(0) oldindan shartlash bilan CG dan foydalanish va oldindan shartlash matritsasini hisoblashda diagonal elementlarga qo‘llanadigan masshtab koeffitsiyentini 1.1 ga belgilash
CG uchun oldindan shartlagich sifatida ML orqali AMG dan foydalanish
CG uchun oldindan shartlagich sifatida ML orqali AMG dan va qo‘pol to‘r yechuvchisi sifatida MUMPS dan foydalanish (qiyin masalalar uchun)
CG uchun oldindan shartlagich sifatida ML orqali AMG dan foydalanish va ko‘p to‘r sikli sifatida W-sikldan foydalanish (qiyin masalalar uchun)
CG uchun oldindan shartlagich sifatida ML orqali AMG dan foydalanish, qo‘pol to‘r yechuvchisi sifatida MUMPS dan foydalanish va maksimal sathlar sonini 2 ga belgilash (juda qiyin masalalar uchun)
CG uchun oldindan shartlagich sifatida HEC-MW ichiga o‘rnatilgan SA-AMG dan foydalanish
CG uchun oldindan shartlagich sifatida SA-AMG dan va qo‘pol to‘r yechuvchisi sifatida MUMPS dan foydalanish
Ishqalanishli kontakt tahlilida SA-AMG oldindan shartlashli BiCGSTAB dan foydalanish va AMG oldindan shartlagichi iyerarxiyasini chiqarish