|
linbox
|
Solver traits. More...
#include <methods.h>
Inherits Specifier.
Public Types | |
| enum | SingularState |
| Whether the system is known to be singular or nonsingular. | |
| enum | Preconditioner |
| Which preconditioner to use to ensure generic rank profile. More... | |
| enum | BlackboxShape |
| Other shapes : UNIMOD_UT -- unimodular upper triang. More... | |
| enum | |
| Whether the rank of the system is known (otherwise its value) | |
| enum | |
| Whether the system is known to be symmetric. | |
| enum | |
| Whether the probabilistic computation has to be certified Las-Vegas. | |
| enum | PivotStrategy |
| Linear-time pivoting or not for eliminations. | |
|
typedef InheritEnum < BlackboxShape, Preconditioner > | Shape |
| Shape of a Blackbox Precontioner shapes and other blackbox shape are combined. | |
Public Member Functions | |
| SolverTraits (bool CheckResult=true) | |
| Constructor. | |
| SolverTraits (const Specifier &S) | |
| Constructor from a MethodTraits structure. | |
| Preconditioner | preconditioner () const |
| Accessors. | |
| void | preconditioner (Preconditioner p) |
| Manipulators. | |
Solver traits.
User-specified parameters for solving a linear system.
enum Preconditioner [inherited] |
Which preconditioner to use to ensure generic rank profile.
NO_PRECONDITIONER - Do not use any preconditioner BUTTERFLY - Use a butterfly network, see Butterfly SPARSE - Use a sparse preconditioner, c.f. (Mulders 2000) TOEPLITZ - Use a Toeplitz preconditioner, c.f. (Kaltofen and Saunders 1991) SYMMETRIZE - Use A^T A (Lanczos only) PARTIAL_DIAGONAL - Use AD, where D is a random nonsingular diagonal matrix (Lanczos only) PARTIAL_DIAGONAL_SYMMETRIZE - Use A^T D A, where D is a random nonsingular diagonal matrix (Lanczos only) FULL_DIAGONAL - Use D_1 A^T D_2 A D_1, where D_1 and D_2 are random nonsingular diagonal matrices (Lanczos only) DENSE (Dixon use)
enum BlackboxShape [inherited] |
| SolverTraits | ( | bool | CheckResult = true | ) | [inline] |
Constructor.
| checkResult | True if and only if the solution should be checked for correctness after it is computed (very much recommended for the randomized algorithms Wiedemann and Lanczos); default is true |
| SolverTraits | ( | const Specifier & | S | ) | [inline] |
Constructor from a MethodTraits structure.
| S | MethodTraits structure from which to get defaults |
| Preconditioner preconditioner | ( | ) | const [inline, inherited] |
Accessors.
These functions just return the corresponding parameters from the structure
| void preconditioner | ( | Preconditioner | p | ) | [inline, inherited] |
Manipulators.
These functions allow on-the-fly modification of a SolverTraits structure. Note that it is guaranteed that your SolverTraits structure will not be modified during solve.
1.7.4