Amesos Package Browser (Single Doxygen Collection)
Development
Toggle main menu visibility
Loading...
Searching...
No Matches
src
src-repository
SpoolesOO.h
Go to the documentation of this file.
1
// @HEADER
2
// ***********************************************************************
3
//
4
// Amesos: Direct Sparse Solver Package
5
// Copyright (2004) Sandia Corporation
6
//
7
// Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
8
// license for use of this work by or on behalf of the U.S. Government.
9
//
10
// This library is free software; you can redistribute it and/or modify
11
// it under the terms of the GNU Lesser General Public License as
12
// published by the Free Software Foundation; either version 2.1 of the
13
// License, or (at your option) any later version.
14
//
15
// This library is distributed in the hope that it will be useful, but
16
// WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18
// Lesser General Public License for more details.
19
//
20
// You should have received a copy of the GNU Lesser General Public
21
// License along with this library; if not, write to the Free Software
22
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
23
// USA
24
// Questions? Contact Michael A. Heroux (maherou@sandia.gov)
25
//
26
// ***********************************************************************
27
// @HEADER
28
29
#ifndef _SPOOLESOO_H_
30
#define _SPOOLESOO_H_
31
32
class
Epetra_Comm;
33
class
Epetra_BlockMap;
34
class
Epetra_MultiVector;
35
class
Epetra_RowMatrix;
36
// #include "Epetra_LinearProblem.h"
37
#include "Epetra_Operator.h"
38
#include "Epetra_Object.h"
39
40
42
50
51
class
SpoolesOO
{
52
53
public
:
54
SpoolesOO
(Epetra_RowMatrix * A, Epetra_MultiVector * X, Epetra_MultiVector * B);
55
56
SpoolesOO
();
57
58
virtual
~SpoolesOO
(
void
);
59
60
int
SetUserMatrix
(Epetra_RowMatrix * UserMatrix);
61
62
int
SetLHS
(Epetra_MultiVector * X);
63
64
int
SetRHS
(Epetra_MultiVector * B);
65
66
Epetra_RowMatrix *
GetUserMatrix
()
const
{
return
(
UserMatrix_
);};
67
68
Epetra_MultiVector *
GetLHS
()
const
{
return
(
X_
);};
69
70
Epetra_MultiVector *
GetRHS
()
const
{
return
(
B_
);};
71
72
bool
GetTrans
( )
const
{
return
Transpose_
;} ;
73
74
void
SetTrans
(
bool
trans ) {
Transpose_
= trans ;} ;
75
76
int
SetSpoolesDefaults
();
77
78
int
Solve
() ;
79
80
protected
:
81
82
Epetra_Operator *
UserOperator_
;
83
Epetra_RowMatrix *
UserMatrix_
;
84
Epetra_Operator *
PrecOperator_
;
85
Epetra_RowMatrix *
PrecMatrix_
;
86
Epetra_MultiVector *
X_
;
87
Epetra_MultiVector *
B_
;
88
89
90
bool
Transpose_
;
91
92
int
x_LDA_
;
93
double
*
x_
;
94
int
b_LDA_
;
95
double
*
b_
;
96
bool
inConstructor_
;
97
};
98
99
100
#endif
/* _SPOOLESOO_H_ */
101
SpoolesOO::GetRHS
Epetra_MultiVector * GetRHS() const
Definition
SpoolesOO.h:70
SpoolesOO::SetRHS
int SetRHS(Epetra_MultiVector *B)
Definition
SpoolesOO.cpp:99
SpoolesOO::B_
Epetra_MultiVector * B_
Definition
SpoolesOO.h:87
SpoolesOO::GetTrans
bool GetTrans() const
Definition
SpoolesOO.h:72
SpoolesOO::GetLHS
Epetra_MultiVector * GetLHS() const
Definition
SpoolesOO.h:68
SpoolesOO::~SpoolesOO
virtual ~SpoolesOO(void)
Definition
SpoolesOO.cpp:73
SpoolesOO::PrecMatrix_
Epetra_RowMatrix * PrecMatrix_
Definition
SpoolesOO.h:85
SpoolesOO::Solve
int Solve()
Definition
SpoolesOO.cpp:128
SpoolesOO::UserOperator_
Epetra_Operator * UserOperator_
Definition
SpoolesOO.h:82
SpoolesOO::x_
double * x_
Definition
SpoolesOO.h:93
SpoolesOO::SetLHS
int SetLHS(Epetra_MultiVector *X)
Definition
SpoolesOO.cpp:90
SpoolesOO::b_LDA_
int b_LDA_
Definition
SpoolesOO.h:94
SpoolesOO::SetSpoolesDefaults
int SetSpoolesDefaults()
Definition
SpoolesOO.cpp:108
SpoolesOO::UserMatrix_
Epetra_RowMatrix * UserMatrix_
Definition
SpoolesOO.h:83
SpoolesOO::Transpose_
bool Transpose_
Definition
SpoolesOO.h:90
SpoolesOO::inConstructor_
bool inConstructor_
Definition
SpoolesOO.h:96
SpoolesOO::SpoolesOO
SpoolesOO(Epetra_RowMatrix *A, Epetra_MultiVector *X, Epetra_MultiVector *B)
Definition
SpoolesOO.cpp:52
SpoolesOO::GetUserMatrix
Epetra_RowMatrix * GetUserMatrix() const
Definition
SpoolesOO.h:66
SpoolesOO::SetUserMatrix
int SetUserMatrix(Epetra_RowMatrix *UserMatrix)
Definition
SpoolesOO.cpp:79
SpoolesOO::PrecOperator_
Epetra_Operator * PrecOperator_
Definition
SpoolesOO.h:84
SpoolesOO::b_
double * b_
Definition
SpoolesOO.h:95
SpoolesOO::x_LDA_
int x_LDA_
Definition
SpoolesOO.h:92
SpoolesOO::X_
Epetra_MultiVector * X_
Definition
SpoolesOO.h:86
SpoolesOO::SpoolesOO
SpoolesOO()
Definition
SpoolesOO.cpp:67
SpoolesOO::SetTrans
void SetTrans(bool trans)
Definition
SpoolesOO.h:74
Generated by
1.17.0