Teko
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Teko_ProbingPreconditionerFactory.hpp
1
// @HEADER
2
// *****************************************************************************
3
// Teko: A package for block and physics based preconditioning
4
//
5
// Copyright 2010 NTESS and the Teko contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef __Teko_ProbingPreconditionerFactory_hpp__
11
#define __Teko_ProbingPreconditionerFactory_hpp__
12
13
#include "Teko_Config.h"
14
15
#ifdef Teko_ENABLE_Isorropia
16
17
// Teko includes
18
#include "Teko_PreconditionerState.hpp"
19
#include "Teko_PreconditionerFactory.hpp"
20
21
// Isorropia includes
22
#include "Isorropia_EpetraProber.hpp"
23
24
namespace
Teko {
25
31
class
ProbingPreconditionerFactory :
public
virtual
Teko::PreconditionerFactory {
32
public
:
34
35
38
ProbingPreconditionerFactory();
39
41
44
LinearOp buildPreconditionerOperator(LinearOp& lo, PreconditionerState& state)
const
;
45
47
virtual
void
initializeFromParameterList(
const
Teuchos::ParameterList& pl);
48
49
void
setGraphOperator(
const
Teko::LinearOp& graphOp);
50
void
setGraph(
const
Teuchos::RCP<const Epetra_CrsGraph>& graph);
51
52
void
setProberList(
const
Teuchos::ParameterList& list);
53
54
void
setInverseFactory(
const
Teuchos::RCP<Teko::InverseFactory>& invFactory) {
55
invFactory_ = invFactory;
56
}
57
58
protected
:
60
Teuchos::RCP<Isorropia::Epetra::Prober> prober;
61
Teuchos::RCP<Teko::InverseFactory> invFactory_;
62
};
63
64
}
// end namespace Teko
65
66
#endif
67
#endif
Generated by
1.17.0