Иди на текст

!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)
            1, 2       : (Блок) SSOR (са вишебојним уређивањем само за проблеме са 3 степена слободе)
            3          : (Блок) дијагонално скалирање
            5          : AMG који користи пакет ML за вишемрежно претходно условљавање
            10         : Блок ILU(0)
            11         : Блок ILU(1)
            12         : Блок ILU(2)
            10, 11 и 12 доступни су само за проблеме са 3 степена слободе
            За OpenMP паралелно извршавање нити препоручују се SSOR, дијагонално скалирање или ML

ITERLOG =   Да ли се изводи историја конвергенције итеративног решавача          (YES/NO)(подразумевано: NO)

TIMELOG =   Да ли се изводи време прорачуна решавача                            (YES/NO/VERBOSE)(подразумевано: NO)

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, 2, 3)
            1: Казнени метод (подразумевано када се користи директни метод)
            2: MPC-CG метод (застарело)
            3: Експлицитна елиминација степена слободе (подразумевано када се користи итеративни метод)

ESTCOND =   Учесталост процене кондиционог броја (експериментално)
            Процењује кондициони број у сваком наведеном интервалу итерација и на крају итерација
            Када је наведено 0, процена се не врши

METHOD2 =   Секундарни метод решавања (BiCGSTAB, GMRES, GPBiCG) (експериментално)
            Важеће само када је за METHOD наведен CG
            Ако CG дивергира, аутоматски пређи на секундарни метод и настави решавање
            За остале параметре и редове података користе се исте вредности

CONTACT_ELIM = Одређује да ли се у контактној анализи врши елиминација степена слободе (0,1)
               0: Врши елиминацију степена слободе само када се користи итеративни метод (подразумевано)
               1: Увек врши елиминацију степена слободе (укључујући и директни метод)

** 2. и наредни редови **

(2. ред) NITER, iterPREmax, NREST, NCOLOR_IN, RECYCLEPRE
Променљива Атрибут Опис
NITER I Број итерација (подразумевано: 100)
iterPREmax I Број итерација Additive Schwarz претходног условљавања (подразумевано: 1)
(Препоручена вредност: 1; 2 може бити ефикасно у неким паралелним прорачунима)
NREST I Број Криловљевих потпростора (подразумевано: 10)
(Важи само када је GMRES изабран као метод решавања)
NCOLOR_IN I Циљни број боја за вишебојно уређивање (подразумевано: 10)
(Важи само када је број OpenMP нити 2 или већи)
RECYCLEPRE I Број поновних употреба информација за постављање претходног условљавања (подразумевано: 3)
(Важи само у нелинеарној анализи)
(3. ред) RESID, SIGMA_DIAG, SIGMA
Променљива Атрибут Опис
RESID R Грешка одсецања (подразумевано: 1.0e-8)
SIGMA_DIAG R Фактор скалирања који се примењује на дијагоналне елементе при израчунавању матрице претходног условљавања (подразумевано: 1.0)
(Ако при ILU претходном условљавању дође до дељења нулом или дивергенције, проблем може конвергирати када се зада вредност већа од 1.0)
SIGMA R Не користи се (подразумевано: 0.0)

Када је PRECOND=5 (опционо)

Ако је за PRECOND наведена било која друга вредност, 4. ред се занемарује.

(4. ред) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
Променљива Атрибут Опис
ML_CoarseSolver I Решавач грубе мреже за ML (1: користи smoother, 2: KLU (секвенцијални директни метод), 3: MUMPS (паралелни директни метод)) (подразумевано: 1)
(Препоручено: 3 или 2 за тешке проблеме, 1 за уобичајене проблеме)
ML_Smoother I ML smoother (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 пролаза smoother-а (степен полинома за Chebyshev) (подразумевано: 2)
(Препоручено: 2 за Chebyshev, 1 за SymBlockGaussSeidel)

Примери

Користите CG са SSOR претходним условљавањем и поставите максималан број итерација на 10000, а грешку одсецања на 1.0e-8

!SOLVER, METHOD=CG, PRECOND=1, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0

Користите GMRES са SSOR претходним условљавањем и поставите број Криловљевих потпростора на 40, а циљни број боја за вишебојно уређивање на 100

!SOLVER, METHOD=GMRES, PRECOND=1, ITERLOG=YES, TIMELOG=YES
  10000, 1, 40, 100
  1.0e-8, 1.0, 0.0

Користите CG са ILU(0) претходним условљавањем и поставите фактор скалирања који се примењује на дијагоналне елементе при израчунавању матрице претходног условљавања на 1.1

!SOLVER, METHOD=CG, PRECOND=10, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.1, 0.0

Користите AMG путем ML-а као претходно условљавање за CG

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0

Користите AMG путем ML-а као претходно условљавање за CG и MUMPS као решавач грубе мреже (за тешке проблеме)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  3

Користите AMG путем ML-а као претходно условљавање за CG и W-cycle као вишемрежни циклус (за тешке проблеме)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  1, 1, 2

Користите AMG путем ML-а као претходно условљавање за CG, MUMPS као решавач грубе мреже и поставите максималан број нивоа на 2 (за веома тешке проблеме)

!SOLVER, METHOD=CG, PRECOND=5, ITERLOG=YES, TIMELOG=YES
  10000, 1
  1.0e-8, 1.0, 0.0
  3, 1, 1, 2
AI-assisted translation May contain errors Official docs Status