Amesos Package Browser (Single Doxygen Collection) Development
Loading...
Searching...
No Matches
Amesos_Control.h
Go to the documentation of this file.
1#ifndef AMESOS_CONTROL_H
2#define AMESOS_CONTROL_H
3
4#include "Teuchos_ParameterList.hpp"
5using namespace Teuchos;
17{
18public:
21 {
22 AddToDiag_ = 0.0;
23 AddZeroToDiag_ = false;
24 rcond_threshold_ = 1e-12;
25 refactorize_ = false;
26 MaxProcesses_ = -1;
27 ScaleMethod_ = 0;
28 Reindex_ = 0;
29 }
30
33
34 void SetControlParameters( const Teuchos::ParameterList &ParameterList ) ;
35
37 double AddToDiag_;
38
39
40 bool refactorize_; // if true, and if the Symbolic and Numeric
41 // objects have already been created, then
42 // attempt to "refactorize" (factor the matrix
43 // with no changes to the pivot order since the
44 // last call the klu_btf_factor).
45
48 double rcond_threshold_; // if we refactorize, the factorization may suffer
49 // in numeric quality. We compute rcond =
50 // min (abs (diag (U))) / max (abs (diag (U))).
51 // If this ratio is <= rcond_threshold_, then
52 // the "refactorization" is scrapped, and we factor
53 // with full partial pivoting instead.
54
55 int ScaleMethod_; // most methods (KLU, UMFPACK, Mumps, ...) can scale
56 // the input matrix prior to factorization. This can
57 // improve pivoting, reduce fill-in, and lead to a
58 // better quality factorization. The options are:
59 // 0: no scaling
60 // 1: use the default method for the specific package
61 // 2: use the method's 1st alternative (if it has one)
62 // 3: use the method's 2nd alternative, and so on.
63 //
64 // Amesos_Klu is, at present, the only code which implements this
65
68
70
77
78 int MaxProcesses_; // default is -1 ; If positive, distribute
79 // problem over MaxProcesses
82 bool Reindex_ ;
83
84
85};
86
87#endif
Amesos_Control: Container for some control variables.
~Amesos_Control()
Default destructor.
void SetControlParameters(const Teuchos::ParameterList &ParameterList)
Amesos_Control()
Default constructor.
double rcond_threshold_
If error is greater than this value, perform symbolic and numeric factorization with full partial piv...
bool Reindex_
If true, the Amesos class should reindex the matrix to standard indexing (i.e.
bool AddZeroToDiag_
Adds zero to diagonal of redistributed matrix (some solvers choke on a matrix with a partly empty dia...
double AddToDiag_
Add this value to the diagonal.
int MatrixProperty_
Set the matrix property.