adamantine
ensemble_management.hh
Go to the documentation of this file.
1 /* SPDX-FileCopyrightText: Copyright (c) 2021-2025, the adamantine authors.
2  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
3  */
4 
5 #ifndef ENSEMBLE_MANAGEMENT_HH
6 #define ENSEMBLE_MANAGEMENT_HH
7 
8 #include <HeatSource.hh>
9 
10 #include <deal.II/base/mpi.h>
11 
12 #include <boost/property_tree/ptree.hpp>
13 
14 #include <memory>
15 #include <vector>
16 
17 namespace adamantine
18 {
23 template <int dim>
24 std::vector<std::shared_ptr<HeatSource<dim>>> get_bounding_heat_sources(
25  std::vector<boost::property_tree::ptree> const &property_trees,
26  MPI_Comm global_communicator);
27 
33 std::vector<boost::property_tree::ptree> create_database_ensemble(
34  boost::property_tree::ptree const &database, MPI_Comm local_communicator,
35  unsigned int first_local_member, unsigned int local_ensemble_size,
36  unsigned int global_ensemble_size);
37 } // namespace adamantine
38 
39 #endif
std::vector< boost::property_tree::ptree > create_database_ensemble(boost::property_tree::ptree const &database, MPI_Comm local_communicator, unsigned int first_local_member, unsigned int local_ensemble_size, unsigned int global_ensemble_size)
std::vector< std::shared_ptr< HeatSource< dim > > > get_bounding_heat_sources(std::vector< boost::property_tree::ptree > const &database_ensemble, MPI_Comm global_communicator)