13#include <pybind11/stl.h>
27 BHEInflowPythonBoundaryConditionPythonSideInterface;
29 std::tuple<double, std::vector<double>, std::vector<double>,
30 std::vector<int>, std::vector<double>>
33 using Ret = std::tuple<double, std::vector<double>, std::vector<double>,
34 std::vector<int>, std::vector<double>>;
35 PYBIND11_OVERLOAD(Ret,
40 std::tuple<bool, bool, std::vector<double>, std::vector<double>>
42 std::vector<double>
const& Tin_val,
43 std::vector<double>
const& Tout_val)
const override
46 std::tuple<bool, bool, std::vector<double>, std::vector<double>>;
47 PYBIND11_OVERLOAD(Ret,
52 std::tuple<std::vector<double>, std::vector<double>>
54 double const t,
double const dt, std::vector<double>
const& Tin_val,
55 std::vector<double>
const& Tout_val,
56 std::vector<double>
const& flowrate)
const override
58 using Ret = std::tuple<std::vector<double>, std::vector<double>>;
65 double const t,
double const dt, std::vector<double>
const& Tin_val,
66 std::vector<double>
const& Tout_val,
67 std::vector<double>
const& flowrate)
const override
69 PYBIND11_OVERLOAD(
void,
78 namespace py = pybind11;
82 pybc(m,
"BHENetwork");
86 pybc.def(
"initializeDataContainer",
88 initializeDataContainer);
89 pybc.def(
"tespySolver",
92 pybc.def(
"serverCommunicationPreTimestep",
94 serverCommunicationPreTimestep);
96 pybc.def(
"serverCommunicationPostTimestep",
98 serverCommunicationPostTimestep);
std::tuple< double, std::vector< double >, std::vector< double >, std::vector< int >, std::vector< double > > initializeDataContainer() const override
std::tuple< bool, bool, std::vector< double >, std::vector< double > > tespySolver(double t, std::vector< double > const &Tin_val, std::vector< double > const &Tout_val) const override
void serverCommunicationPostTimestep(double const t, double const dt, std::vector< double > const &Tin_val, std::vector< double > const &Tout_val, std::vector< double > const &flowrate) const override
std::tuple< std::vector< double >, std::vector< double > > serverCommunicationPreTimestep(double const t, double const dt, std::vector< double > const &Tin_val, std::vector< double > const &Tout_val, std::vector< double > const &flowrate) const override
virtual std::tuple< bool, bool, std::vector< double >, std::vector< double > > tespySolver(double, std::vector< double > const &, std::vector< double > const &) const
void bheInflowpythonBindBoundaryCondition(pybind11::module &m)
Creates BHE Inflow Python bindings for the Python BC class.