You are here:
Concepts
>
Concepts Web
>
Class documentation
Class documentation of Concepts
Loading...
Searching...
No Matches
operator
pardiso.hh
Go to the documentation of this file.
1
6
#ifndef PARDISO_HH
7
#define PARDISO_HH
8
9
#include <cstdlib>
10
#include "
basics/typedefs.hh
"
11
#include "
basics/fortranException.hh
"
12
#include "
compositions.hh
"
13
14
namespace
concepts
{
15
16
// forwards
17
template
<
typename
F>
18
class
SparseMatrix;
19
20
// *************************************************************** Pardiso **
21
43
class
Pardiso
:
public
Operator
<Real> {
44
public
:
46
enum
MATRIX_TYPE
{STRUCT_SYMM = 1, SPD = 2, SYMM_INDEF = -2, UNSYMM = 11};
60
Pardiso
(
const
SparseMatrix<Real>
& matrix,
enum
MATRIX_TYPE
type
);
61
virtual
~Pardiso
();
62
virtual
void
operator()
(
const
Function<Real>
&
fncY
,
Function<Real>
&
fncX
);
63
void
operator()
(
const
Vector<Real>
&
fncY
,
Vector<Real>
&
fncX
);
64
virtual
const
Space<Real>
& spaceX()
const
{
return
spcX_; }
65
virtual
const
Space<Real>
& spaceY()
const
{
return
spcY_; }
66
protected
:
67
virtual
std::ostream&
info
(std::ostream&
os
)
const
;
68
private
:
70
const
uint
n_;
72
const
Space<Real>
& spcX_;
74
const
Space<Real>
& spcY_;
76
bool
symmetric_;
78
bool
factored_;
79
81
uint
nnz_;
83
void
* A_;
85
Array<Real>
a_;
87
Array<uint>
ia_, ja_;
89
Array<size_t>
handle;
91
Array<int>
iparam;
93
int
max_factorizations, matrix_number, matrix_type, msglvl, error,
94
nb, max_threads;
95
97
int
solver_pardiso_factor_();
99
int
solver_pardiso_solve_(
double
*,
double
*);
101
void
errorcheck_(
int
error)
const
;
102
};
103
104
}
// namespace concepts
105
106
#endif
// PARDISO_HH
concepts::Array
Definition
array.hh:46
concepts::Function
Definition
basis.hh:21
concepts::Operator
Definition
compositions.hh:42
concepts::Operator< Real >::type
Real type
Type of data, e.g. matrix entries.
Definition
compositions.hh:45
concepts::Operator< Real >::operator()
virtual void operator()()
concepts::Pardiso
Definition
pardiso.hh:43
concepts::Pardiso::Pardiso
Pardiso(const SparseMatrix< Real > &matrix, enum MATRIX_TYPE type)
concepts::Pardiso::MATRIX_TYPE
MATRIX_TYPE
Type of matrix to solve.
Definition
pardiso.hh:46
concepts::Pardiso::info
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
concepts::Space
Definition
space.hh:44
concepts::SparseMatrix
Definition
sparseMatrix.hh:65
concepts::Vector
Definition
vector.hh:39
fortranException.hh
concepts
Definition
pml_formula.h:16
concepts::makeSet
Set< F > makeSet(uint n, const F &first,...)
Definition
set.hh:320
compositions.hh
typedefs.hh
Generated on Wed Sep 13 2023 21:06:23 for Concepts by
1.9.8