!SOLVER¶
Risinātāja vadība
Obligāti vadības dati.
Parametri¶
METHOD = Risināšanas metode (CG, BiCGSTAB, GMRES, GPBiCG, CR, DIRECT, DIRECTmkl, MUMPS)
DIRECT : Tiešā metode, izņemot kontakta analīzi (tikai secīga apstrāde) (pašlaik nav pieejama)
DIRECTmkl : Tiešā metode, izmantojot Intel MKL
MUMPS : Tiešā metode, izmantojot MUMPS
Izvēloties tiešo metodi, datu rindas tiek ignorētas.
Iteratīvajām metodēm 3 brīvības pakāpju uzdevumos ir pieejama pavedienu paralelizācija ar OpenMP
PRECOND = Iteratīvās metodes priekšnosacīšanas metode (1, 2, 3, 5, 10, 11, 12)
1, 2 : (Block) SSOR (ar daudzkrāsu kārtošanu tikai 3 brīvības pakāpju uzdevumiem)
3 : (Block) Diagonal Scaling
5 : AMG, izmantojot daudzrežģu priekšnosacīšanas pakotni ML
10 : Block ILU(0)
11 : Block ILU(1)
12 : Block ILU(2)
10, 11, 12 ir pieejami tikai 3 brīvības pakāpju uzdevumiem
OpenMP pavedienu paralēlajai izpildei ieteicams SSOR, Diagonal Scaling vai ML
ITERLOG = Vai izvadīt iteratīvā risinātāja konverģences vēsturi (YES/NO)(noklusējums: NO)
TIMELOG = Vai izvadīt risinātāja aprēķina laiku (YES/NO/VERBOSE)(noklusējums: NO)
USEJAD = Vai izmantot kārtošanu vektoru datoriem (YES/NO)(noklusējums: NO)
Derīgs tikai tad, ja 3 brīvības pakāpju uzdevumā tiek izmantota iteratīvā metode
SCALING = Vai mērogot matricu tā, lai diagonāles elementi būtu 1 (YES/NO)(noklusējums: NO)
Derīgs tikai tad, ja 3 brīvības pakāpju uzdevumā tiek izmantota iteratīvā metode
DUMPTYPE = Matricas izmetes formāts (NONE, MM, CSR, BSR) (galvenokārt atkļūdošanai)
NONE : Neveikt izmeti (noklusējums)
MM : Matrix Market formāts
CSR : Compressed Sparse Row (CSR) formāts
BSR : Blocked CSR formāts
DUMPEXIT = Pabeigt programmu uzreiz pēc matricas izmetes (YES/NO)(noklusējums: NO)
MPCMETHOD = Daudzpunktu ierobežojumu apstrādes metode (1, 2, 3)
1: Soda metode (noklusējums, izmantojot tiešo metodi)
2: MPC-CG metode (nav ieteicama)
3: Tieša brīvības pakāpju eliminēšana (noklusējums, izmantojot iteratīvo metodi)
ESTCOND = Nosacījuma skaitļa novērtēšanas biežums (eksperimentāls)
Nosacījuma skaitlis tiek novērtēts ik pēc norādītā iterāciju skaita un iterāciju beigās
Ja norādīts 0, novērtēšana netiek veikta
METHOD2 = Otrā risināšanas metode (BiCGSTAB, GMRES, GPBiCG) (eksperimentāls)
Derīgs tikai tad, ja METHOD norādīts CG
Ja CG diverģē, automātiski pārslēdzas uz otro metodi un turpina risināšanu
Pārējiem parametriem un datu rindām izmanto tās pašas vērtības
CONTACT_ELIM = Norāda, vai kontakta analīzē veikt brīvības pakāpju eliminēšanu (0,1)
0: Veikt brīvības pakāpju eliminēšanu tikai ar iteratīvo metodi (noklusējums)
1: Vienmēr veikt brīvības pakāpju eliminēšanu (arī izmantojot tiešo metodi)
** 2. rinda un turpmākās **
| Mainīgā nosaukums | Atribūts | Saturs |
|---|---|---|
| NITER | I | Iterāciju skaits (noklusējums: 100) |
| iterPREmax | I | Additive Schwarz priekšnosacīšanas atkārtojumu skaits (noklusējums: 1) (ieteicamā vērtība ir 1; paralēlajos aprēķinos dažkārt efektīva ir 2) |
| NREST | I | Krilova apakštelpas izmērs (noklusējums: 10) (derīgs tikai tad, ja par risināšanas metodi izvēlēts GMRES) |
| NCOLOR_IN | I | Mērķa krāsu skaits daudzkrāsu kārtošanā (noklusējums: 10) (derīgs tikai tad, ja OpenMP pavedienu skaits ir vismaz 2) |
| RECYCLEPRE | I | Priekšnosacītāja iestatīšanas informācijas atkārtotas izmantošanas reižu skaits (noklusējums: 3) (derīgs tikai nelineārā analīzē) |
| Mainīgā nosaukums | Atribūts | Saturs |
|---|---|---|
| RESID | R | Pārtraukšanas kļūda (noklusējuma vērtība: 1.0e-8) |
| SIGMA_DIAG | R | Reizinātājs, ko piemēro diagonāles elementiem, aprēķinot priekšnosacīšanas matricu (noklusējuma vērtība: 1.0) (ja ar ILU priekšnosacīšanu rodas dalīšana ar nulli vai diverģence, uzdevumu dažkārt var atrisināt, norādot vērtību, kas lielāka par 1.0) |
| SIGMA | R | Netiek izmantots (noklusējuma vērtība: 0.0) |
Ja PRECOND=5 (neobligāti)¶
Ja PRECOND norādīta cita vērtība, 4. rinda tiek ignorēta.
| Mainīgā nosaukums | Atribūts | Saturs |
|---|---|---|
| ML_CoarseSolver | I | ML rupjā režģa risinātājs (1: aizstāt ar izlīdzinātāju, 2: KLU (secīga tiešā metode), 3: MUMPS (paralēla tiešā metode)) (noklusējuma vērtība: 1) (ieteicams: 3 vai 2 grūti risināmiem uzdevumiem, 1 parastiem uzdevumiem) |
| ML_Smoother | I | ML izlīdzinātājs (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (noklusējuma vērtība: 1) (ieteicamā vērtība ir 1) |
| ML_MGCycle | I | ML daudzrežģu cikls (1: V-cycle, 2: W-cycle, 3: Full-V-cycle) (noklusējuma vērtība: 1) (ieteicams: 2 grūti risināmiem uzdevumiem, 1 parastiem uzdevumiem) |
| ML_MaxLevels | I | ML maksimālais līmeņu skaits (noklusējuma vērtība: 10) (īpaši grūti risināmiem uzdevumiem ieteicams izmantot tiešo metodi kā rupjā režģa risinātāju un 2 (vai 3, ja nepietiek atmiņas); parastiem uzdevumiem 10) |
| ML_CoarseningScheme | I | ML rupjināšanas shēma (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (noklusējuma vērtība: 1) (ieteicamā vērtība ir 1 vai 5) |
| ML_NumSweep | I | ML izlīdzinātāja pārgājienu skaits (Chebyshev gadījumā polinoma pakāpe) (noklusējuma vērtība: 2) (ieteicams: 2 Chebyshev gadījumā, 1 SymBlockGaussSeidel gadījumā) |
Lietošanas piemērs¶
Izmantot CG metodi ar SSOR priekšnosacīšanu, iestatot maksimālo iterāciju skaitu 10000 un pārtraukšanas kļūdu 1.0e-8
Izmantot GMRES metodi ar SSOR priekšnosacīšanu, iestatot Krilova apakštelpas izmēru 40 un daudzkrāsu kārtošanas mērķa krāsu skaitu 100
Izmantot CG metodi ar ILU(0) priekšnosacīšanu un iestatīt reizinātāju, ko priekšnosacīšanas matricas aprēķinā piemēro diagonāles elementiem, uz 1.1
CG metodes priekšnosacīšanai izmantot AMG metodi ar ML
CG metodes priekšnosacīšanai izmantot AMG metodi ar ML un par rupjā režģa risinātāju izmantot MUMPS (grūti risināmiem uzdevumiem)
CG metodes priekšnosacīšanai izmantot AMG metodi ar ML un daudzrežģu ciklam izmantot W-cycle (grūti risināmiem uzdevumiem)
CG metodes priekšnosacīšanai izmantot AMG metodi ar ML, par rupjā režģa risinātāju izmantot MUMPS un maksimālo līmeņu skaitu iestatīt uz 2 (ļoti grūti risināmiem uzdevumiem)