Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
deal.II
lac
generic_linear_algebra.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2008 - 2019 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE.md at
12
// the top level directory of deal.II.
13
//
14
// ---------------------------------------------------------------------
15
16
#ifndef dealii_generic_linear_algebra_h
17
#define dealii_generic_linear_algebra_h
18
19
#include <deal.II/base/config.h>
20
21
#include <deal.II/lac/block_vector.h>
22
#include <deal.II/lac/precondition.h>
23
#include <deal.II/lac/sparse_matrix.h>
24
#include <deal.II/lac/vector.h>
25
26
27
DEAL_II_NAMESPACE_OPEN
28
29
36
namespace
LinearAlgebraDealII
37
{
41
using
Vector
=
Vector<double>
;
42
46
using
BlockVector
=
BlockVector<double>
;
47
51
using
SparseMatrix
=
SparseMatrix<double>
;
52
56
using
PreconditionSSOR
=
PreconditionSSOR<SparseMatrix>
;
57
}
// namespace LinearAlgebraDealII
58
59
60
DEAL_II_NAMESPACE_CLOSE
61
62
63
#ifdef DEAL_II_WITH_PETSC
64
65
# include <deal.II/lac/block_sparsity_pattern.h>
66
# include <deal.II/lac/petsc_block_sparse_matrix.h>
67
# include <deal.II/lac/petsc_precondition.h>
68
# include <deal.II/lac/petsc_solver.h>
69
# include <deal.II/lac/petsc_sparse_matrix.h>
70
71
DEAL_II_NAMESPACE_OPEN
72
79
namespace
LinearAlgebraPETSc
80
{
84
using
SolverCG
=
PETScWrappers::SolverCG
;
85
89
using
SolverGMRES
=
PETScWrappers::SolverGMRES
;
90
95
namespace
MPI
96
{
100
using
Vector
=
PETScWrappers::MPI::Vector
;
101
106
using
BlockVector
=
PETScWrappers::MPI::BlockVector
;
107
111
using
SparseMatrix
=
PETScWrappers::MPI::SparseMatrix
;
112
117
using
BlockSparseMatrix
=
PETScWrappers::MPI::BlockSparseMatrix
;
118
122
using
BlockCompressedSparsityPattern
=
::BlockDynamicSparsityPattern
;
123
127
using
PreconditionAMG
=
PETScWrappers::PreconditionBoomerAMG
;
128
132
using
PreconditionIC
=
PETScWrappers::PreconditionICC
;
133
137
using
PreconditionILU
=
PETScWrappers::PreconditionILU
;
138
142
using
PreconditionJacobi
=
PETScWrappers::PreconditionJacobi
;
143
147
using
PreconditionSSOR
=
PETScWrappers::PreconditionSSOR
;
148
149
}
// namespace MPI
150
151
}
// namespace LinearAlgebraPETSc
152
DEAL_II_NAMESPACE_CLOSE
153
154
155
#endif // DEAL_II_WITH_PETSC
156
157
#ifdef DEAL_II_WITH_TRILINOS
158
159
# include <deal.II/lac/block_sparsity_pattern.h>
160
# include <deal.II/lac/trilinos_block_sparse_matrix.h>
161
# include <deal.II/lac/trilinos_precondition.h>
162
# include <deal.II/lac/trilinos_solver.h>
163
# include <deal.II/lac/trilinos_sparse_matrix.h>
164
165
DEAL_II_NAMESPACE_OPEN
166
173
namespace
LinearAlgebraTrilinos
174
{
178
using
SolverCG
=
TrilinosWrappers::SolverCG
;
179
183
using
SolverGMRES
=
TrilinosWrappers::SolverGMRES
;
184
189
namespace
MPI
190
{
194
using
Vector
=
TrilinosWrappers::MPI::Vector
;
195
200
using
BlockVector
=
TrilinosWrappers::MPI::BlockVector
;
201
205
using
SparseMatrix
=
TrilinosWrappers::SparseMatrix
;
206
211
using
BlockSparseMatrix
=
TrilinosWrappers::BlockSparseMatrix
;
212
216
using
BlockCompressedSparsityPattern
=
217
TrilinosWrappers::BlockSparsityPattern
;
218
222
using
PreconditionAMG
=
TrilinosWrappers::PreconditionAMG
;
223
227
using
PreconditionIC
=
TrilinosWrappers::PreconditionIC
;
228
232
using
PreconditionILU
=
TrilinosWrappers::PreconditionILU
;
233
237
using
PreconditionJacobi
=
TrilinosWrappers::PreconditionJacobi
;
238
242
using
PreconditionSSOR
=
TrilinosWrappers::PreconditionSSOR
;
243
244
245
}
// namespace MPI
246
247
}
// namespace LinearAlgebraTrilinos
248
249
DEAL_II_NAMESPACE_CLOSE
250
251
252
#endif // DEAL_II_WITH_TRILINOS
253
254
255
256
#endif
PETScWrappers::MPI::BlockVector
Definition:
petsc_block_vector.h:61
TrilinosWrappers::PreconditionSSOR
Definition:
trilinos_precondition.h:354
Vector< double >
TrilinosWrappers::BlockSparsityPattern
Definition:
block_sparsity_pattern.h:626
TrilinosWrappers::MPI::Vector
Definition:
trilinos_vector.h:399
LinearAlgebraPETSc
Definition:
generic_linear_algebra.h:79
PETScWrappers::MPI::SparseMatrix
Definition:
petsc_sparse_matrix.h:368
BlockDynamicSparsityPattern
Definition:
block_sparsity_pattern.h:509
LinearAlgebraDealII
Definition:
generic_linear_algebra.h:36
parallel::distributed::Vector
LinearAlgebra::distributed::Vector< Number > Vector
Definition:
parallel_vector.h:148
PETScWrappers::PreconditionICC
Definition:
petsc_precondition.h:474
PETScWrappers::PreconditionBoomerAMG
Definition:
petsc_precondition.h:681
PETScWrappers::SolverCG
Definition:
petsc_solver.h:380
TrilinosWrappers::PreconditionILU
Definition:
trilinos_precondition.h:979
PETScWrappers::PreconditionJacobi
Definition:
petsc_precondition.h:134
TrilinosWrappers::MPI::BlockVector
Definition:
trilinos_parallel_block_vector.h:71
PreconditionSSOR
Definition:
precondition.h:663
SparseMatrix
Definition:
mpi.h:94
TrilinosWrappers::SparseMatrix
Definition:
trilinos_sparse_matrix.h:515
TrilinosWrappers::PreconditionJacobi
Definition:
trilinos_precondition.h:272
BlockVector
Definition:
block_linear_operator.h:41
PETScWrappers::PreconditionILU
Definition:
petsc_precondition.h:535
TrilinosWrappers::PreconditionAMG
Definition:
trilinos_precondition.h:1358
PETScWrappers::MPI::BlockSparseMatrix
Definition:
petsc_block_sparse_matrix.h:67
LinearAlgebraTrilinos
Definition:
generic_linear_algebra.h:173
TrilinosWrappers::BlockSparseMatrix
Definition:
trilinos_block_sparse_matrix.h:71
parallel::distributed::BlockVector
LinearAlgebra::distributed::BlockVector< Number > BlockVector
Definition:
parallel_block_vector.h:61
TrilinosWrappers::SolverCG
Definition:
trilinos_solver.h:363
PETScWrappers::PreconditionSSOR
Definition:
petsc_precondition.h:348
TrilinosWrappers::SolverGMRES
Definition:
trilinos_solver.h:440
PETScWrappers::MPI::Vector
Definition:
petsc_vector.h:158
PETScWrappers::SolverGMRES
Definition:
petsc_solver.h:482
TrilinosWrappers::PreconditionIC
Definition:
trilinos_precondition.h:874
Generated by
1.8.14