!SOLVER¶
د حلګر کنټرول
اړین کنټرول ډاټا.
پارامترونه¶
METHOD = د حل میتود (CG، BiCGSTAB، GMRES، GPBiCG، CR، DIRECT، DIRECTmkl، MUMPS)
DIRECT : د تماس تحلیل پرته مستقیم میتود (یوازې سریال پروسس) (اوس مهال د کار وړ نه دی)
DIRECTmkl : د Intel MKL مستقیم میتود
MUMPS : د MUMPS مستقیم میتود
کله چې مستقیم میتود وټاکل شي، د ډاټا کرښې له پامه غورځول کېږي.
د 3 آزادۍ درجو تکراري میتودونه د OpenMP ترد موازي اجرا ملاتړ کوي
PRECOND = د تکراري میتود مخکینیشرطاېښوونکی (1،2،3،5،10،11،12،22)
1, 2 : (Block) SSOR (یوازې د 3 آزادۍ درجو لپاره، له څو-رنګه ترتیب سره)
3 : (Block) قطري سکېلېنګ
5 : AMG د ML څو-شبکه مخکینيشرط بسته په وسیله
10 : Block ILU(0)
11 : Block ILU(1)
12 : Block ILU(2)
22 : AMG د HEC-MW په دننه کې د جوړ شوي SA-AMG (Smoothed Aggregation AMG) په وسیله
10،11،12 یوازې د 3 آزادۍ درجو مسئلو لپاره کارول کېدای شي
22 یوازې په هغه جوړښت کې کارول کېدای شي چې LAPACK پکې فعال وي
د OpenMP ترد موازي اجرا لپاره SSOR، قطري سکېلېنګ، ML یا SA-AMG سپارښتنه کېږي
ITERLOG = د تکراري حلګر د همګرایۍ تاریخ وتۍ فعالول (YES/NO)(ډیفالټ: NO)
TIMELOG = د حلګر د محاسبې وخت وتۍ فعالول (YES/NO/VERBOSE)(ډیفالټ: NO)
LOGLEVEL = د مخکینيشرطکوونکي د تشخیصي معلوماتو د وتۍ کچه (صحیح عدد) (ډیفالټ: وتۍ نشته)
له ITERLOG او TIMELOG څخه په خپلواک ډول ټاکل کېږي
1 یا تر دې لوړ ارزښت د AMG مخکینيشرطکوونکو (PRECOND=5،22) د کچو جوړښت او ورته معلومات باسي
2 یا تر دې لوړ ارزښت نور تفصیلي معلومات (لکه د حافظې کارونه) باسي
USEJAD = د ویکتوري ماشین لپاره ترتیب فعالول (YES/NO)(ډیفالټ: NO)
یوازې د 3 آزادۍ درجو مسئلې او تکراري میتود پر مهال اغېزمن دی
SCALING = سکېلینګ چې د ماتریس قطري اجزا 1 کړي (YES/NO)(ډیفالټ: NO)
یوازې د 3 آزادۍ درجو مسئلې او تکراري میتود پر مهال اغېزمن دی
DUMPTYPE = د ماتریس ډمپ بڼه (NONE، MM، CSR، BSR) (اصلاً د ډیبګ لپاره)
NONE : ډمپ نه کوي (ډیفالټ)
MM : Matrix Market بڼه
CSR : Compressed Sparse Row (CSR) بڼه
BSR : Blocked CSR بڼه
DUMPEXIT = له ماتریس ډمپ سمدستي وروسته د پروګرام پای (YES/NO)(ډیفالټ: NO)
MPCMETHOD = د څو-ټکي قید شرطونو د پروسس میتود (1،3)
1: پینالټي میتود (د مستقیم میتود ډیفالټ)
3: صریح د آزادۍ درجې حذف میتود (د تکراري میتود ډیفالټ)
د MPC-CG (2) میتود لرې شوی دی؛ که 2 وټاکل شي، خبرداری ورکول کېږي او اصلي میتود کارول کېږي.
ESTCOND = د شرط شمېر د اټکل فریکونسۍ (ازمایښتي)
په ټاکلو تکرارونو او د تکرار په پای کې د شرط شمېر اټکل کېږي
که 0 وي اټکل نه کېږي
RECOMPUTE_RESIDUAL = د پاتېشوني ویکتور د بیا محاسبې فریکونسۍ
یوازې هغه مهال اغېزمن دی چې په METHOD کې CG، BiCGSTAB، GPBiCG یا PipeCG ټاکل شوی وي
دا میتودونه د پاتېشوني ویکتور د بازګشتي فورمول له مخې نوي کوي، نو د ګردولو تېروتنې راټولېږي
د هر ټاکلي شمېر تکرارونو وروسته، د پاتېشوني ویکتور له {b}-[A]{x} څخه بیا محاسبه کېږي
که 0 وټاکل شي، د هر میتود اصلي ارزښت کارول کېږي (CG: 50، BiCGSTAB: 100، GPBiCG: 20، PipeCG: 50)
که منفي ارزښت وټاکل شي، دورهيي بیا محاسبه نه ترسره کېږي
د همګرايۍ د تایید لپاره بیا محاسبه د دې پارامتر له ارزښت پرته تل ترسره کېږي
که دوره ډېره لنډه شي، نه یوازې د ماتریس-ویکتور حاصلضربونه زیاتېږي، بلکې
همګرايي پخپله هم خرابېدای شي، تر دې چې حل نور همګرا نه شي
که دا له اصلي ارزښت څخه بدل شي، د همګرايۍ تاریخ او وروستی نسبي پاتېشونی وګورئ
METHOD2 = دوهم حل میتود (BiCGSTAB، GMRES، GPBiCG) (ازمایښتي)
یوازې هغه مهال اغېزمن دی چې METHOD کې CG ټاکل شوی وي
که CG میتود له همګرایۍ ووځي، په اتومات ډول دې میتود ته اوړي او حل ترسره کوي
نور پارامترونه او د ډاټا کرښې هماغه معلومات کاروي
CONTACT_ELIM = په تماس تحلیل کې د آزادۍ درجې حذف ټاکنه (0,1)
0: یوازې د تکراري میتود پر مهال د آزادۍ درجې حذف کوي (ډیفالټ)
1: تل د آزادۍ درجې حذف کوي (د مستقیم میتود پر مهال هم)
** دوهمه او ورپسې کرښې **
| د متغیر نوم | ډول | منځپانګه |
|---|---|---|
| NITER | I | د تکرارونو شمېر (ډیفالټ: 100) |
| iterPREmax | I | د Additive Schwarz مخکینیشرطکوونکی د تکرارونو شمېر (ډیفالټ: 1) (سپارښتل شوی ارزښت 1 دی؛ په موازي محاسبه کې 2 کله ناکله اغېزمن وي) |
| NREST | I | د Krylov فرعي فضا اندازه (ډیفالټ: 10) (یوازې کله اغېزمن دی چې GMRES د حل میتود وي) |
| NCOLOR_IN | I | په څو-رنګه ترتیب کې هدف د رنګونو شمېر (ډیفالټ: 10) (یوازې کله اغېزمن دی چې د OpenMP ترد شمېر 2 یا ډېر وي) |
| RECYCLEPRE | I | د مخکینیشرطکوونکی تنظیم معلوماتو د بیاکارونې شمېر (ډیفالټ: 3) (یوازې په غیرخطي تحلیل کې اغېزمن دی) |
| د متغیر نوم | ډول | منځپانګه |
|---|---|---|
| RESID | R | د قطع کولو تېروتنه (ډیفالټ: 1.0e-8) |
| SIGMA_DIAG | R | د مخکینیشرطکوونکی ماتریس د محاسبې پر مهال پر قطري اجزاوو ضربېدونکی ضریب (ډیفالټ: 1.0) (که د ILU مخکینیشرطکوونکی سره پر صفر وېش رامنځته شي یا حل له همګرایۍ ووځي، له 1.0 څخه لوی ارزښت کله ناکله مسئله حل کوي) |
| SIGMA | R | نه کارول کېږي (ډیفالټ: 0.0) |
کله چې PRECOND=5 وي (اختیاري)¶
که PRECOND ته له 5 او 22 پرته بل ارزښت ورکړل شي، څلورمه کرښه له پامه غورځول کېږي.
(څلورمه کرښه) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
| د متغیر نوم | ډول | منځپانګه |
|---|---|---|
| ML_CoarseSolver | I | د ML د درشت جال حلګر (1: همواروونکی د حلګر په توګه، 2: KLU (سریال مستقیم)، 3: MUMPS (موازي مستقیم)) (ډیفالټ: 1) (سپارښتنه: د سختو مسئلو لپاره 3 یا 2، د عادي مسئلو لپاره 1) |
| ML_Smoother | I | د ML همواروونکی (1: Chebyshev، 2: SymBlockGaussSeidel، 3: Jacobi) (ډیفالټ: 1) (سپارښتل شوی ارزښت 1) |
| ML_MGCycle | I | د ML څو-شبکه دوره (1: V-cycle، 2: W-cycle، 3: Full-V-cycle) (ډیفالټ: 1) (سپارښتنه: د سختو مسئلو لپاره 2، د عادي مسئلو لپاره 1) |
| ML_MaxLevels | I | د ML اعظمي کچه شمېر (ډیفالټ: 10) (سپارښتنه: د ډېر سختو مسئلو لپاره خشن حلګر مستقیم وټاکئ او 2 وکاروئ (که حافظه کمه وي 3)، د عادي مسئلو لپاره 10) |
| ML_CoarseningScheme | I | د ML درشتول طریقه (1: UncoupledMIS، 2: METIS، 4: Zoltan، 5: DD) (ډیفالټ: 1) (سپارښتل شوی ارزښت 1 یا 5) |
| ML_NumSweep | I | د ML همواروونکی د سویپ شمېر (د Chebyshev لپاره د پولینومي درجه) (ډیفالټ: 2) (سپارښتنه: Chebyshev لپاره 2، SymBlockGaussSeidel لپاره 1) |
کله چې PRECOND=22 وي (اختیاري)¶
که PRECOND ته له 22 پرته بل ارزښت ورکړل شي، پنځمه کرښه له پامه غورځول کېږي. څلورمه او پنځمه کرښه دواړه په بشپړ ډول پرېښودل کېدای شي، او یوازې د کرښې وروستي توکي هم پرېښودل کېدای شي. د 0 ارزښت لرونکو توکو لپاره ډیفالټ ارزښت کارول کېږي.
د څلورمې کرښې له لومړي تر اووم توکي پورې ترتیب د PRECOND=5 (ML) د اختیارونو له کرښې سره یو شان دی، نو د ML د اختیارونو کرښه هماغسې بیا کارول کېدای شي. له اتم تر لسم توکي پورې د SA-AMG ځانګړي توکي دي.
(څلورمه کرښه) SA_CoarseSolver, SA_Smoother, SA_MGCycle, SA_MaxLevels, (نه کارول کېږي), SA_ChebyDegree, SA_CoarseSize, SA_MaxAggSize, SA_GalerkinLowMem, (نه کارول کېږي)
| د متغیر نوم | ډول | منځپانګه |
|---|---|---|
| SA_CoarseSolver | I | د درشت جال حلګر (0: اتومات، 1: همواروونکی د بدیل په توګه، 2: د کثیف ماتریس مستقیم میتود، 3: MUMPS (موازي مستقیم میتود)) (ډیفالټ: 0) (په اتومات حالت کې، که MUMPS په جوړښت کې فعال وي MUMPS کارول کېږي؛ که نه، د کثیف ماتریس مستقیم میتود کارول کېږي) |
| SA_Smoother | I | همواروونکی (0، 1: Chebyshev) (ډیفالټ: 0) (یوازې Chebyshev ملاتړ کېږي. د بل ارزښت پر ټاکلو خبرداری ورکول کېږي او Chebyshev کارول کېږي) |
| SA_MGCycle | I | څو-شبکه دوره (0: ډیفالټ (W-cycle)، 1: V-cycle، 2: W-cycle) (ډیفالټ: 0) (Full-V-cycle نه ملاتړ کېږي) |
| SA_MaxLevels | I | د کچو اعظمي شمېر (ډیفالټ: 20) |
| (نه کارول کېږي) | I | هغه ځای چې د ML د درشتولو له طریقې سره برابر دی. SA-AMG تل بېجوړه تجمیع کاروي؛ که له 0 پرته بل ارزښت ورکړل شي، خبرداری ورکول کېږي او ارزښت له پامه غورځول کېږي |
| SA_ChebyDegree | I | د Chebyshev همواروونکي د پولینوم درجه (ډیفالټ: 2) |
| SA_CoarseSize | I | د درشت جال د پرېکون اندازه (ډیفالټ: که MUMPS د درشت جال حلګر وي 50000، که نه 100) |
| SA_MaxAggSize | I | د اګریګېټ اعظمي اندازه (ډیفالټ: 96) |
| SA_GalerkinLowMem | I | د درشت جال ماتریس د محاسبې طریقه (0: عادي (سرعت ته لومړیتوب)، مثبت ارزښت: د حافظې سپما) (ډیفالټ: 0) (که د تنظیم پر مهال حافظه کمه وي مثبت ارزښت وټاکئ) |
| (نه کارول کېږي) | I | د راتلونکې پراختیا لپاره ځانګړی شوی |
پنځمه کرښه یوازې د SA-AMG لپاره ده او ML یې نه لولي.
(پنځمه کرښه) SA_Theta, SA_ChebyAlpha, SA_Safety, SA_TaperK, SA_AggOrder, SA_MinAggSize, SA_Verify, SA_DumpVTK
| د متغیر نوم | ډول | منځپانګه |
|---|---|---|
| SA_Theta | R | د قوي پیوستون د پېژندنې حد (ډیفالټ: 0.0) (په 0.0 کې د ماتریس ناصفري جوړښت هماغسې د ګراف په توګه کارول کېږي) |
| SA_ChebyAlpha | R | هغه نسبت چې د Chebyshev همواروونکي د ځانګړیزو ارزښتونو د واټن ټیټ حد ټاکي (ډیفالټ: 20.0) |
| SA_Safety | R | د اعظمي ځانګړیز ارزښت پر اټکل ضربېدونکی خوندیتوب ضریب (ډیفالټ: 1.1) |
| SA_TaperK | R | د درشتولو د ټېپر ضریب K (ډیفالټ: 100) (له دوهمې کچې وروسته درشتول نرموي څو لږ تر لږه نږدې K اګریګېټونه پاتې شي؛ منفي ارزښت ټېپر غیرفعالوي) |
| SA_AggOrder | R | د اګریګېشن د پلټنې ترتیب (0: ډیفالټ (BFS ترتیب)، 1: BFS ترتیب، 2: د نوډ شمېر د هش ترتیب (ازمایښتي)، 3: له ټیټې درجې لوړې ته (ازمایښتي)، 4: له لوړې درجې ټیټې ته (ازمایښتي)، منفي ارزښت: د نوډ شمېر ترتیب) (ډیفالټ: 0) |
| SA_MinAggSize | R | د اګریګېټ لږترلږه اندازه (ډیفالټ: 3) |
| SA_Verify | R | د تنظیم پر مهال ځان-ازموینه (0: نه ترسره کېږي، مثبت ارزښت: ترسره کېږي) (ډیفالټ: 0) (اصلاً د ډیبګ لپاره) |
| SA_DumpVTK | R | د تر ټولو لوړې کچې اګریګېشن VTK وتۍ (0: وتۍ نشته، مثبت ارزښت: وتۍ شته) (ډیفالټ: 0) (اصلاً د ډیبګ لپاره) |
د کارونې بېلګې¶
د SSOR مخکینیشرطکوونکی سره CG وکاروئ، اعظمي تکرار 10000 او د قطع کولو تېروتنه 1.0e-8 وټاکئ
د SSOR مخکینیشرطکوونکی سره GMRES وکاروئ، د Krylov فرعي فضا 40 او د څو-رنګه ترتیب هدف رنګونه 100 وټاکئ
د ILU(0) مخکینیشرطکوونکی سره CG وکاروئ او د مخکینیشرطکوونکی ماتریس د قطري ضریب ارزښت 1.1 وټاکئ
د CG مخکینیشرطکوونکی د ML په وسیله AMG وټاکئ
د CG مخکینیشرطکوونکی د ML په وسیله AMG او د درشت جال حلګر MUMPS وټاکئ (د سختو مسئلو لپاره)
د CG مخکینیشرطکوونکی د ML په وسیله AMG او څو-شبکه دوره د W-cycle په توګه وټاکئ (د سختو مسئلو لپاره)
د CG مخکینیشرطکوونکی د ML په وسیله AMG، درشت جال حلګر MUMPS او اعظمي کچه شمېر 2 وټاکئ (د ډېر سختو مسئلو لپاره)
د CG مخکینیشرطکوونکی د HEC-MW په دننه کې جوړ شوی SA-AMG وټاکئ
د CG مخکینیشرطکوونکی SA-AMG او د درشت جال حلګر MUMPS وټاکئ
د اصطکاکي تماس په تحلیل کې د BiCGSTAB مخکینیشرطکوونکی SA-AMG وټاکئ او د AMG مخکینيشرطکوونکي د کچو جوړښت وباسئ