deal.II version GIT relicensing-6842-g793a97d2aa 2026-10-02 14:00:01+00:00
\(\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
28 template class PreconditionBase<float, MemorySpace::Host>;
30 template class PreconditionIfpackBase<float, MemorySpace::Host>;
31 template class PreconditionIfpack<float, MemorySpace::Host>;
33 template class PreconditionL1Jacobi<float, MemorySpace::Host>;
34 template class PreconditionL1GaussSeidel<float, MemorySpace::Host>;
41 template class PreconditionILU<float, MemorySpace::Host>;
42 template class PreconditionILUT<float, MemorySpace::Host>;
43
44 template class PreconditionBase<float, MemorySpace::Default>;
46 template class PreconditionIfpackBase<float, MemorySpace::Default>;
47 template class PreconditionIfpack<float, MemorySpace::Default>;
49 template class PreconditionL1Jacobi<float, MemorySpace::Default>;
50 template class PreconditionL1GaussSeidel<float, MemorySpace::Default>;
57 template class PreconditionILU<float, MemorySpace::Default>;
58 template class PreconditionILUT<float, MemorySpace::Default>;
59# endif
60
61# ifdef DEAL_II_TRILINOS_WITH_TPETRA_INST_DOUBLE
62 template class PreconditionBase<double, MemorySpace::Host>;
64 template class PreconditionIfpackBase<double, MemorySpace::Host>;
65 template class PreconditionIfpack<double, MemorySpace::Host>;
67 template class PreconditionL1Jacobi<double, MemorySpace::Host>;
68 template class PreconditionL1GaussSeidel<double, MemorySpace::Host>;
75 template class PreconditionILU<double, MemorySpace::Host>;
76 template class PreconditionILUT<double, MemorySpace::Host>;
77
78 template class PreconditionBase<double, MemorySpace::Default>;
80 template class PreconditionIfpackBase<double, MemorySpace::Default>;
81 template class PreconditionIfpack<double, MemorySpace::Default>;
83 template class PreconditionL1Jacobi<double, MemorySpace::Default>;
84 template class PreconditionL1GaussSeidel<double, MemorySpace::Default>;
91 template class PreconditionILU<double, MemorySpace::Default>;
92 template class PreconditionILUT<double, MemorySpace::Default>;
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>;
98 template class PreconditionIfpackBase<std::complex<float>,
100 template class PreconditionIfpack<std::complex<float>, MemorySpace::Host>;
102 template class PreconditionL1Jacobi<std::complex<float>, MemorySpace::Host>;
103 template class PreconditionL1GaussSeidel<std::complex<float>,
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>;
120 template class PreconditionIfpackBase<std::complex<float>,
122 template class PreconditionIfpack<std::complex<float>,
126 template class PreconditionL1Jacobi<std::complex<float>,
128 template class PreconditionL1GaussSeidel<std::complex<float>,
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>;
147 template class PreconditionIfpackBase<std::complex<double>,
149 template class PreconditionIfpack<std::complex<double>, MemorySpace::Host>;
151 template class PreconditionL1Jacobi<std::complex<double>,
153 template class PreconditionL1GaussSeidel<std::complex<double>,
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>;
171 template class PreconditionIfpackBase<std::complex<double>,
173 template class PreconditionIfpack<std::complex<double>,
177 template class PreconditionL1Jacobi<std::complex<double>,
179 template class PreconditionL1GaussSeidel<std::complex<double>,
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
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39