Ga naar inhoud

!SOLVER

Solverbesturing

Vereiste besturingsgegevens.

Parameters

METHOD =    Oplossingsmethode (CG, BiCGSTAB, GMRES, GPBiCG, CR, DIRECT, DIRECTmkl, MUMPS)
            DIRECT     : Directe methode behalve voor contactanalyse (alleen seriële verwerking) (momenteel niet beschikbaar)
            DIRECTmkl  : Directe methode met Intel MKL
            MUMPS      : Directe methode met MUMPS
            Wanneer een directe methode is geselecteerd, worden de gegevensregels genegeerd.
            Iteratieve methoden voor problemen met 3 vrijheidsgraden ondersteunen thread-parallelle uitvoering met OpenMP

PRECOND =   Preconditioneringsmethode voor iteratieve solvers (1, 2, 3, 5, 10, 11, 12)
            1, 2       : (Blok-)SSOR (alleen met multikleurordening voor problemen met 3 vrijheidsgraden)
            3          : (Blok-)diagonale schaling
            5          : AMG met het multigrid-preconditioneringspakket ML
            10         : Blok-ILU(0)
            11         : Blok-ILU(1)
            12         : Blok-ILU(2)
            10, 11 en 12 zijn alleen beschikbaar voor problemen met 3 vrijheidsgraden
            Voor thread-parallelle uitvoering met OpenMP wordt SSOR, diagonale schaling of ML aanbevolen

ITERLOG =   Of de convergentiegeschiedenis van de iteratieve solver wordt uitgevoerd          (YES/NO)(standaard: NO)

TIMELOG =   Of de rekentijd van de solver wordt uitgevoerd                       (YES/NO/VERBOSE)(standaard: NO)

USEJAD =    Of ordening voor vectorprocessoren wordt gebruikt                    (YES/NO)(standaard: NO)
            Alleen geldig wanneer een iteratieve methode wordt gebruikt voor een probleem met 3 vrijheidsgraden

SCALING =   Of de matrix wordt geschaald zodat de diagonaalelementen 1 zijn       (YES/NO)(standaard: NO)
            Alleen geldig wanneer een iteratieve methode wordt gebruikt voor een probleem met 3 vrijheidsgraden

DUMPTYPE =  Indeling van de matrixdump (NONE, MM, CSR, BSR) (hoofdzakelijk voor foutopsporing)
            NONE : Geen dump uitvoeren (standaard)
            MM   : Matrix Market-indeling
            CSR  : Compressed Sparse Row (CSR)-indeling
            BSR  : Geblokkeerde CSR-indeling

DUMPEXIT =  Het programma onmiddellijk beëindigen na het dumpen van de matrix           (YES/NO)(standaard: NO)

MPCMETHOD = Methode voor het behandelen van meerpuntsbeperkingen (1, 2, 3)
            1: Penaltymethode (standaard bij gebruik van een directe methode)
            2: MPC-CG-methode (verouderd)
            3: Expliciete eliminatie van vrijheidsgraden (standaard bij gebruik van een iteratieve methode)

ESTCOND =   Frequentie van schatting van het conditiegetal (experimenteel)
            Schat het conditiegetal bij elk opgegeven iteratie-interval en aan het einde van de iteraties
            Er wordt geen schatting uitgevoerd wanneer 0 is opgegeven

METHOD2 =   Secundaire oplossingsmethode (BiCGSTAB, GMRES, GPBiCG) (experimenteel)
            Alleen geldig wanneer CG is opgegeven voor METHOD
            Als CG divergeert, wordt automatisch naar de secundaire methode geschakeld en wordt de oplossing voortgezet
            Voor de overige parameters en gegevensregels worden dezelfde waarden gebruikt

CONTACT_ELIM = Specificeert of eliminatie van vrijheidsgraden wordt uitgevoerd bij contactanalyse (0,1)
               0: Eliminatie van vrijheidsgraden alleen uitvoeren bij gebruik van een iteratieve methode (standaard)
               1: Eliminatie van vrijheidsgraden altijd uitvoeren (ook bij gebruik van een directe methode)

** 2e regel en verder **

(2e regel) NITER, iterPREmax, NREST, NCOLOR_IN, RECYCLEPRE
Variabele Attribuut Beschrijving
NITER I Aantal iteraties (standaard: 100)
iterPREmax I Aantal iteraties van Additive-Schwarz-preconditionering (standaard: 1)
(Aanbevolen waarde: 1; 2 kan effectief zijn bij sommige parallelle berekeningen)
NREST I Aantal Krylov-deelruimten (standaard: 10)
(Alleen geldig wanneer GMRES als oplossingsmethode is geselecteerd)
NCOLOR_IN I Doelaantal kleuren voor multikleurordening (standaard: 10)
(Alleen geldig wanneer het aantal OpenMP-threads 2 of meer is)
RECYCLEPRE I Aantal keren dat instellingsinformatie van de preconditioner wordt hergebruikt (standaard: 3)
(Alleen geldig bij niet-lineaire analyse)
(3e regel) RESID, SIGMA_DIAG, SIGMA
Variabele Attribuut Beschrijving
RESID R Afbreekfout (standaard: 1.0e-8)
SIGMA_DIAG R Schaalfactor die op diagonaalelementen wordt toegepast bij het berekenen van de preconditioneringsmatrix (standaard: 1.0)
(Als bij ILU-preconditionering deling door nul of divergentie optreedt, kan het probleem convergeren wanneer een waarde groter dan 1.0 wordt opgegeven)
SIGMA R Niet gebruikt (standaard: 0.0)

Wanneer PRECOND=5 (optioneel)

Als een andere waarde voor PRECOND wordt opgegeven, wordt de 4e regel genegeerd.

(4e regel) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
Variabele Attribuut Beschrijving
ML_CoarseSolver I Solver voor het grove ML-rooster (1: smoother gebruiken, 2: KLU (seriële directe methode), 3: MUMPS (parallelle directe methode)) (standaard: 1)
(Aanbevolen: 3 of 2 voor moeilijke problemen, 1 voor gewone problemen)
ML_Smoother I ML-smoother (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (standaard: 1)
(Aanbevolen: 1)
ML_MGCycle I ML-multigridcyclus (1: V-cyclus, 2: W-cyclus, 3: volledige V-cyclus) (standaard: 1)
(Aanbevolen: 2 voor moeilijke problemen, 1 voor gewone problemen)
ML_MaxLevels I Maximumaantal ML-niveaus (standaard: 10)
(Gebruik voor bijzonder moeilijke problemen een directe solver op het grove rooster en 2 niveaus (of 3 als het geheugen onvoldoende is); voor gewone problemen wordt 10 aanbevolen)
ML_CoarseningScheme I ML-schema voor roostervergroving (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (standaard: 1)
(Aanbevolen: 1 of 5)
ML_NumSweep I Aantal ML-smoothingstappen (polynoomgraad voor Chebyshev) (standaard: 2)
(Aanbevolen: 2 voor Chebyshev, 1 voor SymBlockGaussSeidel)

Voorbeelden

Gebruik CG met SSOR-preconditionering en stel het maximale aantal iteraties in op 10000 en de afbreekfout op 1.0e-8

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

Gebruik GMRES met SSOR-preconditionering en stel het aantal Krylov-deelruimten in op 40 en het doelaantal kleuren voor multikleurordening op 100

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

Gebruik CG met ILU(0)-preconditionering en stel de schaalfactor die op diagonaalelementen wordt toegepast bij het berekenen van de preconditioneringsmatrix in op 1.1

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

Gebruik AMG door ML als preconditioner voor CG

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

Gebruik AMG door ML als preconditioner voor CG en gebruik MUMPS als solver voor het grove rooster (voor moeilijke problemen)

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

Gebruik AMG door ML als preconditioner voor CG en gebruik een W-cyclus als multigridcyclus (voor moeilijke problemen)

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

Gebruik AMG door ML als preconditioner voor CG, gebruik MUMPS als solver voor het grove rooster en stel het maximale aantal niveaus in op 2 (voor zeer moeilijke problemen)

!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