Amesos Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Amesos_Control.h
Go to the documentation of this file.
1 #ifndef AMESOS_CONTROL_H
2 #define AMESOS_CONTROL_H
3 
5 using namespace Teuchos;
17 {
18 public:
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.
double rcond_threshold_
If error is greater than this value, perform symbolic and numeric factorization with full partial piv...
bool AddZeroToDiag_
Adds zero to diagonal of redistributed matrix (some solvers choke on a matrix with a partly empty dia...
int MatrixProperty_
Set the matrix property.
Amesos_Control()
Default constructor.
bool Reindex_
If true, the Amesos class should reindex the matrix to standard indexing (i.e.
~Amesos_Control()
Default destructor.
double AddToDiag_
Add this value to the diagonal.