Gå til innhold

!SOLVER

Løserkontroll

Påkrevde kontrolldata.

Parametere

METHOD =    Løsningsmetode (CG, BiCGSTAB, GMRES, GPBiCG, CR, DIRECT, DIRECTmkl, MUMPS)
            DIRECT     : Direkte metode unntatt for kontaktanalyse (bare seriell prosessering) (for øyeblikket utilgjengelig)
            DIRECTmkl  : Direkte metode med Intel MKL
            MUMPS      : Direkte metode med MUMPS
            Når en direkte metode velges, ignoreres datalinjene.
            Iterative metoder for problemer med 3 frihetsgrader støtter trådparallell kjøring med OpenMP

PRECOND =   Forkondisjoneringsmetode for iterative løsere (1, 2, 3, 5, 10, 11, 12)
            1, 2       : (Blokk-)SSOR (med flerfargeordning bare for problemer med 3 frihetsgrader)
            3          : (Blokk-)diagonalskalering
            5          : AMG med flergrid-forkondisjoneringspakken ML
            10         : Blokk-ILU(0)
            11         : Blokk-ILU(1)
            12         : Blokk-ILU(2)
            10, 11 og 12 er bare tilgjengelige for problemer med 3 frihetsgrader
            For OpenMP-trådparallell kjøring anbefales SSOR, diagonalskalering eller ML

ITERLOG =   Om konvergenshistorikk for den iterative løseren skal skrives ut          (YES/NO)(standard: NO)

TIMELOG =   Om løserens beregningstid skal skrives ut                       (YES/NO/VERBOSE)(standard: NO)

USEJAD =    Om ordning for vektorprosessorer skal brukes                    (YES/NO)(standard: NO)
            Gyldig bare når en iterativ metode brukes for et problem med 3 frihetsgrader

SCALING =   Om matrisen skal skaleres slik at diagonalelementene blir 1       (YES/NO)(standard: NO)
            Gyldig bare når en iterativ metode brukes for et problem med 3 frihetsgrader

DUMPTYPE =  Format for matrisedump (NONE, MM, CSR, BSR) (hovedsakelig for feilsøking)
            NONE : Ikke dump (standard)
            MM   : Matrix Market-format
            CSR  : Compressed Sparse Row (CSR)-format
            BSR  : Blokkert CSR-format

DUMPEXIT =  Avslutt programmet umiddelbart etter matrisedump           (YES/NO)(standard: NO)

MPCMETHOD = Metode for håndtering av flerpunktbetingelser (1, 2, 3)
            1: Straffemetode (standard ved bruk av direkte metode)
            2: MPC-CG-metode (foreldet)
            3: Eksplisitt eliminering av frihetsgrader (standard ved bruk av iterativ metode)

ESTCOND =   Frekvens for estimering av kondisjonstall (eksperimentell)
            Estimer kondisjonstallet ved hvert angitte iterasjonsintervall og ved slutten av iterasjonene
            Ingen estimering utføres når 0 er angitt

METHOD2 =   Sekundær løsningsmetode (BiCGSTAB, GMRES, GPBiCG) (eksperimentell)
            Gyldig bare når CG er angitt for METHOD
            Hvis CG divergerer, bytt automatisk til den sekundære metoden og fortsett løsningen
            De samme verdiene brukes for de øvrige parameterne og datalinjene

CONTACT_ELIM = Angir om eliminering av frihetsgrader utføres i kontaktanalyse (0,1)
               0: Utfør eliminering av frihetsgrader bare ved bruk av iterativ metode (standard)
               1: Utfør alltid eliminering av frihetsgrader (også ved bruk av direkte metode)

** 2. linje og senere **

(2. linje) NITER, iterPREmax, NREST, NCOLOR_IN, RECYCLEPRE
Variabel Attributt Beskrivelse
NITER I Antall iterasjoner (standard: 100)
iterPREmax I Antall iterasjoner med Additive Schwarz-forkondisjonering (standard: 1)
(Anbefalt verdi: 1; 2 kan være effektivt i enkelte parallelle beregninger)
NREST I Antall Krylov-underrom (standard: 10)
(Gyldig bare når GMRES er valgt som løsningsmetode)
NCOLOR_IN I Måltall for antall farger i flerfargeordning (standard: 10)
(Gyldig bare når antall OpenMP-tråder er 2 eller mer)
RECYCLEPRE I Antall ganger oppsettsinformasjon for forkondisjonereren gjenbrukes (standard: 3)
(Gyldig bare i ikke-lineær analyse)
(3. linje) RESID, SIGMA_DIAG, SIGMA
Variabel Attributt Beskrivelse
RESID R Avkortingsfeil (standard: 1.0e-8)
SIGMA_DIAG R Skaleringsfaktor som brukes på diagonalelementene ved beregning av forkondisjoneringsmatrisen (standard: 1.0)
(Hvis divisjon med null eller divergens oppstår ved ILU-forkondisjonering, kan problemet konvergere når en verdi større enn 1.0 angis)
SIGMA R Brukes ikke (standard: 0.0)

Når PRECOND=5 (valgfritt)

Hvis en annen verdi angis for PRECOND, ignoreres 4. linje.

(4. linje) ML_CoarseSolver, ML_Smoother, ML_MGCycle, ML_MaxLevels, ML_CoarseningScheme, ML_NumSweep
Variabel Attributt Beskrivelse
ML_CoarseSolver I Grovgitterløser for ML (1: bruk glatter, 2: KLU (seriell direkte metode), 3: MUMPS (parallell direkte metode)) (standard: 1)
(Anbefalt: 3 eller 2 for vanskelige problemer, 1 for vanlige problemer)
ML_Smoother I ML-glatter (1: Chebyshev, 2: SymBlockGaussSeidel, 3: Jacobi) (standard: 1)
(Anbefalt: 1)
ML_MGCycle I ML-flergridsyklus (1: V-syklus, 2: W-syklus, 3: Full-V-syklus) (standard: 1)
(Anbefalt: 2 for vanskelige problemer, 1 for vanlige problemer)
ML_MaxLevels I Maksimalt antall ML-nivåer (standard: 10)
(For spesielt vanskelige problemer brukes en direkte grovløser og 2 nivåer (eller 3 hvis minnet ikke er tilstrekkelig); for vanlige problemer anbefales 10)
ML_CoarseningScheme I ML-grovingsskjema (1: UncoupledMIS, 2: METIS, 4: Zoltan, 5: DD) (standard: 1)
(Anbefalt: 1 eller 5)
ML_NumSweep I Antall ML-glattersveip (polynomgrad for Chebyshev) (standard: 2)
(Anbefalt: 2 for Chebyshev, 1 for SymBlockGaussSeidel)

Eksempler

Bruk CG med SSOR-forkondisjonering, og sett maksimalt antall iterasjoner til 10000 og avkortingsfeilen til 1.0e-8

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

Bruk GMRES med SSOR-forkondisjonering, og sett antall Krylov-underrom til 40 og måltallet for antall farger i flerfargeordningen til 100

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

Bruk CG med ILU(0)-forkondisjonering, og sett skaleringsfaktoren som brukes på diagonalelementene ved beregning av forkondisjoneringsmatrisen til 1.1

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

Bruk AMG med ML som forkondisjoneringsmetode for CG

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

Bruk AMG med ML som forkondisjoneringsmetode for CG og MUMPS som grovgitterløser (for vanskelige problemer)

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

Bruk AMG med ML som forkondisjoneringsmetode for CG og W-syklus som flergridsyklus (for vanskelige problemer)

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

Bruk AMG med ML som forkondisjoneringsmetode for CG, bruk MUMPS som grovgitterløser, og sett maksimalt antall nivåer til 2 (for svært vanskelige problemer)

!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