OGS
CreateStaggeredCoupling.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <memory>
7#include <string>
8#include <vector>
9
10namespace BaseLib
11{
12class ConfigTree;
13}
14
15namespace NumLib
16{
18
20
22{
23 std::vector<std::string> process_names;
25};
26
27std::tuple<std::vector<std::unique_ptr<NumLib::ConvergenceCriterion>>,
28 std::vector<LocalCouplingParameters>,
29 int>
31
33template <typename ProcessData>
34std::unique_ptr<StaggeredCoupling> createStaggeredCoupling(
35 BaseLib::ConfigTree const& config,
36 std::vector<std::unique_ptr<ProcessData>> const& per_process_data);
37
38} // namespace NumLib
39
std::unique_ptr< StaggeredCoupling > createStaggeredCoupling(BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ProcessData > > const &per_process_data)
Create a StaggeredCoupling instance from the given configuration.
std::tuple< std::vector< std::unique_ptr< NumLib::ConvergenceCriterion > >, std::vector< LocalCouplingParameters >, int > parseCoupling(BaseLib::ConfigTree const &config)
std::vector< std::string > process_names