Reference documentation for deal.II version GIT relicensing-384-g4769914377 2024-04-13 09:00:02+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_epetra_communication_pattern.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2016 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15#ifndef dealii_trilinos_epetra_communication_pattern_h
16#define dealii_trilinos_epetra_communication_pattern_h
17
18
19#include <deal.II/base/config.h>
20
21#ifdef DEAL_II_WITH_TRILINOS
22
24
25# include <Epetra_Import.h>
26
27# include <memory>
28
30
31namespace LinearAlgebra
32{
33 namespace EpetraWrappers
34 {
41 {
42 public:
56 CommunicationPattern(const IndexSet &locally_owned_indices,
57 const IndexSet &ghost_indices,
58 const MPI_Comm communicator);
59
73 virtual void
74 reinit(const IndexSet &locally_owned_indices,
75 const IndexSet &ghost_indices,
76 const MPI_Comm communicator) override;
77
81 virtual MPI_Comm
82 get_mpi_communicator() const override;
83
87 const Epetra_Import &
88 get_epetra_import() const;
89
90 private:
94 std::shared_ptr<const MPI_Comm> comm;
95
99 std::unique_ptr<Epetra_Import> importer;
100 };
101 } // end of namespace EpetraWrappers
102} // end of namespace LinearAlgebra
103
105
106#endif
107
108#endif
virtual void reinit(const IndexSet &locally_owned_indices, const IndexSet &ghost_indices, const MPI_Comm communicator) override
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:502
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:503