Amesos Package Browser (Single Doxygen Collection)
Development
Toggle main menu visibility
Loading...
Searching...
No Matches
src
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"
5
using namespace
Teuchos
;
15
16
class
Amesos_Control
17
{
18
public
:
20
Amesos_Control
()
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
32
~Amesos_Control
() {};
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
67
bool
AddZeroToDiag_
;
68
70
76
int
MatrixProperty_
;
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::ScaleMethod_
int ScaleMethod_
Definition
Amesos_Control.h:55
Amesos_Control::~Amesos_Control
~Amesos_Control()
Default destructor.
Definition
Amesos_Control.h:32
Amesos_Control::SetControlParameters
void SetControlParameters(const Teuchos::ParameterList &ParameterList)
Definition
Amesos_Control.cpp:30
Amesos_Control::MaxProcesses_
int MaxProcesses_
Definition
Amesos_Control.h:78
Amesos_Control::Amesos_Control
Amesos_Control()
Default constructor.
Definition
Amesos_Control.h:20
Amesos_Control::rcond_threshold_
double rcond_threshold_
Definition
Amesos_Control.h:48
Amesos_Control::Reindex_
bool Reindex_
Definition
Amesos_Control.h:82
Amesos_Control::AddZeroToDiag_
bool AddZeroToDiag_
Adds zero to diagonal of redistributed matrix (some solvers choke on a matrix with a partly empty dia...
Definition
Amesos_Control.h:67
Amesos_Control::refactorize_
bool refactorize_
Definition
Amesos_Control.h:40
Amesos_Control::AddToDiag_
double AddToDiag_
Add this value to the diagonal.
Definition
Amesos_Control.h:37
Amesos_Control::MatrixProperty_
int MatrixProperty_
Set the matrix property.
Definition
Amesos_Control.h:76
Teuchos
Definition
stratimikos_example.cpp:41
Generated by
1.17.0