Ifpack2 Templated Preconditioning Package
Version 1.0
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Ifpack2_Details_Factory_decl.hpp
1
// @HEADER
2
// *****************************************************************************
3
// Ifpack2: Templated Object-Oriented Algebraic Preconditioner Package
4
//
5
// Copyright 2009 NTESS and the Ifpack2 contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef IFPACK2_DETAILS_FACTORY_DECL_HPP
11
#define IFPACK2_DETAILS_FACTORY_DECL_HPP
12
13
#include "Ifpack2_ConfigDefs.hpp"
14
#include "
Ifpack2_Preconditioner.hpp
"
15
16
namespace
Ifpack2
{
17
namespace
Details {
18
19
template
<
class
SC,
class
LO,
class
GO,
class
NT>
20
class
Factory {
21
public
:
22
typedef
Tpetra::RowMatrix<SC, LO, GO, NT> row_matrix_type;
23
typedef ::Ifpack2::Preconditioner<SC, LO, GO, NT> prec_type;
24
typedef
typename
Teuchos::ScalarTraits<SC>::magnitudeType magnitude_type;
25
typedef
Tpetra::MultiVector<magnitude_type, LO, GO, NT> coord_type;
26
36
Teuchos::RCP<prec_type>
37
create(
const
std::string& precType,
38
const
Teuchos::RCP<const row_matrix_type>& matrix);
39
54
Teuchos::RCP<prec_type>
55
create(
const
std::string& precType,
56
const
Teuchos::RCP<const row_matrix_type>& matrix,
57
const
Teuchos::RCP<const coord_type>& coordinates);
58
74
Teuchos::RCP<prec_type>
75
create(
const
std::string& precType,
76
const
Teuchos::RCP<const row_matrix_type>& matrix,
77
const
int
overlap);
78
79
std::vector<std::string>
80
getSupportedNames()
const
;
81
82
bool
83
isSupported(
const
std::string& precType);
84
};
85
86
}
// namespace Details
87
}
// namespace Ifpack2
88
89
#endif
// IFPACK2_DETAILS_FACTORY_DECL_HPP
Ifpack2_Preconditioner.hpp
Ifpack2
Preconditioners and smoothers for Tpetra sparse matrices.
Definition
Ifpack2_AdditiveSchwarz_decl.hpp:40
Generated by
1.17.0