ryujin 2.5.0 revision c64172211cf21344cb9b9b0f3a1266aa6400d392
Loading...
Searching...
No Matches
environment.h
Go to the documentation of this file.
1//
2// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
3// Copyright (C) 2020 - 2026 by the ryujin authors
4//
5
6#pragma once
7
8#include <ryujin/base/compile_time_options.h>
9
10#include <deal.II/base/mpi.h>
11
12#include <optional>
13
14namespace ryujin
15{
45 class Environment final
46 {
47 public:
51 Environment(int &argc, char **&argv);
52
53 Environment(const Environment &) = delete;
54 Environment &operator=(const Environment &) = delete;
55
60
64 MPI_Comm mpi_communicator() const
65 {
66 return MPI_COMM_WORLD;
67 }
68
69 private:
70 std::optional<dealii::Utilities::MPI::MPI_InitFinalize> mpi_initialization_;
71 };
72} // namespace ryujin
Environment & operator=(const Environment &)=delete
Environment(const Environment &)=delete
MPI_Comm mpi_communicator() const
Definition environment.h:64
Environment(int &argc, char **&argv)