deal.II version 9.8.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
trilinos_tpetra_precondition.cc
Go to the documentation of this file.
1// -----------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception OR LGPL-2.1-or-later
4// Copyright (C) 2024 - 2026 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Detailed license information governing the source code and contributions
9// can be found in LICENSE.md and CONTRIBUTING.md at the top level directory.
10//
11// -----------------------------------------------------------------------------
12
13
14#include <deal.II/lac/trilinos_tpetra_precondition.templates.h>
15
17
18#ifdef DEAL_II_TRILINOS_WITH_TPETRA
19# ifdef DEAL_II_TRILINOS_WITH_IFPACK2
20
21# ifndef DOXYGEN
22// explicit instantiations
23namespace LinearAlgebra
24{
25 namespace TpetraWrappers
26 {
27# ifdef DEAL_II_TRILINOS_WITH_TPETRA_INST_FLOAT
43
59# endif
60
61# ifdef DEAL_II_TRILINOS_WITH_TPETRA_INST_DOUBLE
77
93# endif
94# ifdef DEAL_II_WITH_COMPLEX_VALUES
95# ifdef DEAL_II_TRILINOS_WITH_TPETRA_INST_COMPLEX_FLOAT
96 template class PreconditionBase<std::complex<float>, MemorySpace::Host>;
97 template class PreconditionIdentity<std::complex<float>, MemorySpace::Host>;
99 MemorySpace::Host>;
100 template class PreconditionIfpack<std::complex<float>, MemorySpace::Host>;
101 template class PreconditionJacobi<std::complex<float>, MemorySpace::Host>;
102 template class PreconditionL1Jacobi<std::complex<float>, MemorySpace::Host>;
104 MemorySpace::Host>;
105 template class PreconditionSOR<std::complex<float>, MemorySpace::Host>;
106 template class PreconditionSSOR<std::complex<float>, MemorySpace::Host>;
108 MemorySpace::Host>;
109 template class PreconditionBlockSOR<std::complex<float>, MemorySpace::Host>;
111 MemorySpace::Host>;
113 MemorySpace::Host>;
114 template class PreconditionILU<std::complex<float>, MemorySpace::Host>;
115 template class PreconditionILUT<std::complex<float>, MemorySpace::Host>;
116
117 template class PreconditionBase<std::complex<float>, MemorySpace::Default>;
119 MemorySpace::Default>;
121 MemorySpace::Default>;
123 MemorySpace::Default>;
125 MemorySpace::Default>;
127 MemorySpace::Default>;
129 MemorySpace::Default>;
130 template class PreconditionSOR<std::complex<float>, MemorySpace::Default>;
131 template class PreconditionSSOR<std::complex<float>, MemorySpace::Default>;
133 MemorySpace::Default>;
135 MemorySpace::Default>;
137 MemorySpace::Default>;
139 MemorySpace::Default>;
140 template class PreconditionILU<std::complex<float>, MemorySpace::Default>;
141 template class PreconditionILUT<std::complex<float>, MemorySpace::Default>;
142# endif
143# ifdef DEAL_II_TRILINOS_WITH_TPETRA_INST_COMPLEX_DOUBLE
144 template class PreconditionBase<std::complex<double>, MemorySpace::Host>;
146 MemorySpace::Host>;
148 MemorySpace::Host>;
149 template class PreconditionIfpack<std::complex<double>, MemorySpace::Host>;
150 template class PreconditionJacobi<std::complex<double>, MemorySpace::Host>;
152 MemorySpace::Host>;
154 MemorySpace::Host>;
155 template class PreconditionSOR<std::complex<double>, MemorySpace::Host>;
156 template class PreconditionSSOR<std::complex<double>, MemorySpace::Host>;
158 MemorySpace::Host>;
160 MemorySpace::Host>;
162 MemorySpace::Host>;
164 MemorySpace::Host>;
165 template class PreconditionILU<std::complex<double>, MemorySpace::Host>;
166 template class PreconditionILUT<std::complex<double>, MemorySpace::Host>;
167
168 template class PreconditionBase<std::complex<double>, MemorySpace::Default>;
170 MemorySpace::Default>;
172 MemorySpace::Default>;
174 MemorySpace::Default>;
176 MemorySpace::Default>;
178 MemorySpace::Default>;
180 MemorySpace::Default>;
181 template class PreconditionSOR<std::complex<double>, MemorySpace::Default>;
182 template class PreconditionSSOR<std::complex<double>, MemorySpace::Default>;
184 MemorySpace::Default>;
186 MemorySpace::Default>;
188 MemorySpace::Default>;
190 MemorySpace::Default>;
191 template class PreconditionILU<std::complex<double>, MemorySpace::Default>;
192 template class PreconditionILUT<std::complex<double>, MemorySpace::Default>;
193# endif
194# endif
195
196# endif
197
198 } // namespace TpetraWrappers
199
200} // namespace LinearAlgebra
201
202# endif // DEAL_II_TRILINOS_WITH_IFPACK2
203#endif // DEAL_II_TRILINOS_WITH_TPETRA
The class for the Block SOR preconditioner within Ifpack2.
The class for the Block SSOR preconditioner within Ifpack2.
Wrapper class for the IdentitySolver preconditioner of Ifpack2.
The base class for all Ifpack2 preconditioners which are handled through its Factory.
Wrapper to create custom Ifpack2 preconditioners.
The classical Jacobi preconditioner within Ifpack2.
The class for the SOR preconditioner within Ifpack2.
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39