!SOLVER¶
Kawalan penyelesai
Data kawalan wajib.
Parameter¶
METHOD = Kaedah penyelesaian (CG、BiCGSTAB、GMRES、GPBiCG、CR、DIRECT、DIRECTmkl、MUMPS)
DIRECT : Kaedah langsung selain analisis sentuhan (pemprosesan bersiri sahaja) (kini tidak tersedia)
DIRECTmkl : Kaedah langsung menggunakan Intel MKL
MUMPS : Kaedah langsung menggunakan MUMPS
Apabila kaedah langsung dipilih, baris data diabaikan.
Kaedah lelaran untuk masalah 3 darjah kebebasan menyokong keselarian benang dengan OpenMP
PRECOND = Kaedah prapengondisian untuk penyelesai lelaran (1、2、3、5、10、11、12)
1, 2 : SSOR (blok) (dengan penyusunan berbilang warna hanya untuk masalah 3 darjah kebebasan)
3 : Penskalaan pepenjuru (blok)
5 : AMG menggunakan pakej prapengondisian multigrid ML
10 : ILU(0) blok
11 : ILU(1) blok
12 : ILU(2) blok
10、11、12 hanya tersedia untuk masalah 3 darjah kebebasan
Untuk keselarian benang OpenMP, SSOR, penskalaan pepenjuru atau ML disyorkan
ITERLOG = Sama ada mengeluarkan sejarah penumpuan penyelesai lelaran (YES/NO)(lalai: NO)
TIMELOG = Sama ada mengeluarkan masa pengiraan penyelesai (YES/NO/VERBOSE)(lalai: NO)
USEJAD = Sama ada menggunakan penyusunan untuk pemproses vektor (YES/NO)(lalai: NO)
Sah hanya apabila kaedah lelaran digunakan untuk masalah 3 darjah kebebasan
SCALING = Sama ada menskalakan matriks supaya unsur pepenjuru menjadi 1 (YES/NO)(lalai: NO)
Sah hanya apabila kaedah lelaran digunakan untuk masalah 3 darjah kebebasan
DUMPTYPE = Format dump matriks (NONE、MM、CSR、BSR) (terutamanya untuk penyahpepijatan)
NONE : Jangan dump (lalai)
MM : Format Matrix Market
CSR : Format Compressed Sparse Row(CSR)
BSR : Format Blocked CSR
DUMPEXIT = Tamatkan program sejurus selepas dump matriks (YES/NO)(lalai: NO)
MPCMETHOD = Kaedah pemprosesan kekangan berbilang titik (1、2、3)
1: Kaedah penalti (lalai apabila menggunakan kaedah langsung)
2: Kaedah MPC-CG (tidak disyorkan)
3: Penghapusan darjah kebebasan eksplisit (lalai apabila menggunakan kaedah lelaran)
ESTCOND = Kekerapan anggaran nombor keadaan (eksperimen)
Anggarkan nombor keadaan pada setiap sela lelaran yang ditentukan dan pada akhir lelaran
Jika 0 ditentukan, anggaran tidak dilakukan
METHOD2 = Kaedah penyelesaian kedua (BiCGSTAB、GMRES、GPBiCG) (eksperimen)
Sah hanya apabila CG ditentukan untuk METHOD
Jika kaedah CG mencapah, beralih secara automatik dan meneruskan penyelesaian
Nilai yang sama digunakan untuk parameter lain dan baris data
CONTACT_ELIM = Menentukan sama ada penghapusan darjah kebebasan dilakukan dalam analisis sentuhan (0,1)
0: Lakukan penghapusan darjah kebebasan hanya apabila menggunakan kaedah lelaran (lalai)
1: Sentiasa lakukan penghapusan darjah kebebasan (termasuk apabila menggunakan kaedah langsung)
** Baris kedua dan seterusnya **
| Pemboleh ubah | Atribut | Keterangan |
|---|---|---|
| NITER | I | Bilangan lelaran (lalai: 100) |
| iterPREmax | I | Bilangan lelaran prapengondisian Additive Schwarz (lalai: 1) (nilai disyorkan ialah 1; 2 mungkin berkesan dalam pengiraan selari) |
| NREST | I | Bilangan subruang Krylov (lalai: 10) (sah hanya apabila GMRES dipilih sebagai kaedah penyelesaian) |
| NCOLOR_IN | I | Bilangan warna sasaran bagi penyusunan berbilang warna (lalai: 10) (sah hanya apabila bilangan benang OpenMP ialah 2 atau lebih) |
| RECYCLEPRE | I | Bilangan kali maklumat persediaan prapengondisi digunakan semula (lalai: 3) (sah hanya dalam analisis tak linear) |
| Pemboleh ubah | Atribut | Keterangan |
|---|---|---|
| RESID | R | Ralat pemotongan (lalai: 1.0e-8) |
| SIGMA_DIAG | R | Faktor yang dikenakan pada unsur pepenjuru semasa mengira matriks prapengondisian (lalai: 1.0) (jika pembahagian dengan sifar atau pencapahan berlaku dengan prapengondisian ILU, nilai lebih besar daripada 1.0 mungkin membolehkan masalah diselesaikan) |
| SIGMA | R | Tidak digunakan (lalai: 0.0) |
Apabila PRECOND=5 (pilihan)¶
Jika nilai lain ditentukan untuk PRECOND, baris keempat diabaikan.
(Baris keempat) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
| Pemboleh ubah | Atribut | Keterangan |
|---|---|---|
| ML_CoarseSolver | I | Penyelesai grid kasar ML (1: gunakan pelicin, 2: KLU (kaedah langsung bersiri), 3: MUMPS (kaedah langsung selari)) (lalai: 1) (disyorkan: 3 atau 2 untuk masalah sukar, 1 untuk masalah biasa) |
| ML_Smoother | I | Pelicin ML (1: Chebyshev、2: SymBlockGaussSeidel、3: Jacobi) (lalai: 1) (disyorkan: 1) |
| ML_MGCycle | I | Kitaran multigrid ML (1: V-cycle、2: W-cycle、3: Full-V-cycle) (lalai: 1) (disyorkan: 2 untuk masalah sukar, 1 untuk masalah biasa) |
| ML_MaxLevels | I | Bilangan aras maksimum ML (lalai: 10) (untuk masalah yang sangat sukar, gunakan penyelesai grid kasar langsung dan 2 aras (3 jika memori tidak mencukupi); untuk masalah biasa, 10) |
| ML_CoarseningScheme | I | Skema pengasaran ML (1: UncoupledMIS、2: METIS、4: Zoltan、5: DD) (lalai: 1) (disyorkan: 1 atau 5) |
| ML_NumSweep | I | Bilangan sweep pelicin ML (darjah polinomial bagi Chebyshev) (lalai: 2) (disyorkan: 2 untuk Chebyshev, 1 untuk SymBlockGaussSeidel) |
Contoh penggunaan¶
Gunakan CG dengan prapengondisian SSOR dan tetapkan bilangan lelaran maksimum kepada 10000 serta ralat pemotongan kepada 1.0e-8
Gunakan GMRES dengan prapengondisian SSOR dan tetapkan bilangan subruang Krylov kepada 40 serta bilangan warna sasaran penyusunan berbilang warna kepada 100
Gunakan CG dengan prapengondisian ILU(0) dan tetapkan faktor pada unsur pepenjuru semasa pengiraan matriks prapengondisian kepada 1.1
Gunakan AMG oleh ML sebagai prapengondisi CG
Gunakan AMG oleh ML sebagai prapengondisi CG dan MUMPS sebagai penyelesai grid kasar (untuk masalah sukar)
Gunakan AMG oleh ML sebagai prapengondisi CG dan W-cycle sebagai kitaran multigrid (untuk masalah sukar)
Gunakan AMG oleh ML sebagai prapengondisi CG, MUMPS sebagai penyelesai grid kasar dan tetapkan bilangan aras maksimum kepada 2 (untuk masalah yang sangat sukar)