PLaSK library

Loading...
Searching...
No Matches
Public Types | Public Attributes | List of all members
plask::IterativeMatrixParams Struct Reference

`#include <plask/common/fem/iterative_matrix.hpp>`

## Public Types
enum | Accelelator { ACCEL_CG , ACCEL_SI , ACCEL_SOR , ACCEL_SRCG , ACCEL_SRSI , ACCEL_BASIC , ACCEL_ME , ACCEL_CGNR , ACCEL_LSQR , ACCEL_ODIR , ACCEL_OMIN , ACCEL_ORES , ACCEL_IOM , ACCEL_GMRES , ACCEL_USYMLQ , ACCEL_USYMQR , ACCEL_LANDIR , ACCEL_LANMIN , ACCEL_LANRES , ACCEL_CGCR , ACCEL_BCGS }
| NSPCG acceleration method. More...
enum | Preconditioner { PRECOND_RICH , PRECOND_JAC , PRECOND_LJAC , PRECOND_LJACX , PRECOND_SOR , PRECOND_SSOR , PRECOND_IC , PRECOND_MIC , PRECOND_LSP , PRECOND_NEU , PRECOND_LSOR , PRECOND_LSSOR , PRECOND_LLSP , PRECOND_LNEU , PRECOND_BIC , PRECOND_BICX , PRECOND_MBIC , PRECOND_MBICX }
| NSPCG preconditioner. More...
enum | NoConvergenceBehavior { NO_CONVERGENCE_ERROR , NO_CONVERGENCE_WARNING , NO_CONVERGENCE_CONTINUE }

## Public Attributes
Accelelator | accelerator = ACCEL_CG
| NSPCG acceleration method.
Preconditioner | preconditioner = PRECOND_IC
| NSPCG preconditioner.
int | maxit = 1000
| Maximum number of iterations.
double | maxerr = 1e-6
| Maximum allowed residual error of iteration.
int | nfact = 10
| Frequency of partial factorization.
int | ns1 = 5
| Number of old vectors to be saved for truncated acceleration methods.
int | ns2 = 100000
| Frequency of restarting restarted accelerations methods.
int | lvfill = 0
| Level of fill-in for incomplete Cholesky factorization.
int | ltrunc = 0
| Level of truncation for Cholesky factorization.
int | ndeg = 1
| Degree of the polynomial preconditioner.
double | omega = 1.0
| Relaxation parameter.
NoConvergenceBehavior | no_convergence_behavior = NO_CONVERGENCE_WARNING
| What to do if the solution does not converge.
bool | converged = true
| True if the solution converged.
int | iters = 0
| Number of iterations.
double | err = 0
| Residual error of the solution.

## Detailed Description

Definition at line 25 of file iterative_matrix.hpp.

## Member Enumeration Documentation

## ◆ Accelelator

enum plask::IterativeMatrixParams::Accelelator

NSPCG acceleration method.

Enumerator
ACCEL_CG |
ACCEL_SI |
ACCEL_SOR |
ACCEL_SRCG |
ACCEL_SRSI |
ACCEL_BASIC |
ACCEL_ME |
ACCEL_CGNR |
ACCEL_LSQR |
ACCEL_ODIR |
ACCEL_OMIN |
ACCEL_ORES |
ACCEL_IOM |
ACCEL_GMRES |
ACCEL_USYMLQ |
ACCEL_USYMQR |
ACCEL_LANDIR |
ACCEL_LANMIN |
ACCEL_LANRES |
ACCEL_CGCR |
ACCEL_BCGS |

Definition at line 27 of file iterative_matrix.hpp.

## ◆ NoConvergenceBehavior

enum plask::IterativeMatrixParams::NoConvergenceBehavior

Enumerator
NO_CONVERGENCE_ERROR |
NO_CONVERGENCE_WARNING |
NO_CONVERGENCE_CONTINUE |

Definition at line 86 of file iterative_matrix.hpp.

## ◆ Preconditioner

enum plask::IterativeMatrixParams::Preconditioner

NSPCG preconditioner.

Enumerator
PRECOND_RICH |
PRECOND_JAC |
PRECOND_LJAC |
PRECOND_LJACX |
PRECOND_SOR |
PRECOND_SSOR |
PRECOND_IC |
PRECOND_MIC |
PRECOND_LSP |
PRECOND_NEU |
PRECOND_LSOR |
PRECOND_LSSOR |
PRECOND_LLSP |
PRECOND_LNEU |
PRECOND_BIC |
PRECOND_BICX |
PRECOND_MBIC |
PRECOND_MBICX |

Definition at line 53 of file iterative_matrix.hpp.

## Member Data Documentation

## ◆ accelerator

Accelelator plask::IterativeMatrixParams::accelerator = ACCEL_CG

NSPCG acceleration method.

Definition at line 50 of file iterative_matrix.hpp.

## ◆ converged

bool plask::IterativeMatrixParams::converged = true

True if the solution converged.

Definition at line 91 of file iterative_matrix.hpp.

## ◆ err

double plask::IterativeMatrixParams::err = 0

Residual error of the solution.

Definition at line 93 of file iterative_matrix.hpp.

## ◆ iters

int plask::IterativeMatrixParams::iters = 0

Number of iterations.

Definition at line 92 of file iterative_matrix.hpp.

## ◆ ltrunc

int plask::IterativeMatrixParams::ltrunc = 0

Level of truncation for Cholesky factorization.

Definition at line 82 of file iterative_matrix.hpp.

## ◆ lvfill

int plask::IterativeMatrixParams::lvfill = 0

Level of fill-in for incomplete Cholesky factorization.

Definition at line 81 of file iterative_matrix.hpp.

## ◆ maxerr

double plask::IterativeMatrixParams::maxerr = 1e-6

Maximum allowed residual error of iteration.

Definition at line 76 of file iterative_matrix.hpp.

## ◆ maxit

int plask::IterativeMatrixParams::maxit = 1000

Maximum number of iterations.

Definition at line 75 of file iterative_matrix.hpp.

## ◆ ndeg

int plask::IterativeMatrixParams::ndeg = 1

Degree of the polynomial preconditioner.

Definition at line 83 of file iterative_matrix.hpp.

## ◆ nfact

int plask::IterativeMatrixParams::nfact = 10

Frequency of partial factorization.

Definition at line 77 of file iterative_matrix.hpp.

## ◆ no_convergence_behavior

NoConvergenceBehavior plask::IterativeMatrixParams::no_convergence_behavior = NO_CONVERGENCE_WARNING

What to do if the solution does not converge.

Definition at line 87 of file iterative_matrix.hpp.

## ◆ ns1

int plask::IterativeMatrixParams::ns1 = 5

Number of old vectors to be saved for truncated acceleration methods.

Definition at line 79 of file iterative_matrix.hpp.

## ◆ ns2

int plask::IterativeMatrixParams::ns2 = 100000

Frequency of restarting restarted accelerations methods.

Definition at line 80 of file iterative_matrix.hpp.

## ◆ omega

double plask::IterativeMatrixParams::omega = 1.0

Relaxation parameter.

Definition at line 84 of file iterative_matrix.hpp.

## ◆ preconditioner

Preconditioner plask::IterativeMatrixParams::preconditioner = PRECOND_IC

NSPCG preconditioner.

Definition at line 73 of file iterative_matrix.hpp.

The documentation for this struct was generated from the following file:

- plask/common/fem/iterative_matrix.hpp