6#include <pybind11/stl.h>
20 BHEInflowPythonBoundaryConditionPythonSideInterface;
22 std::tuple<double, std::vector<double>, std::vector<double>,
23 std::vector<int>, std::vector<double>>
26 using Ret = std::tuple<double, std::vector<double>, std::vector<double>,
27 std::vector<int>, std::vector<double>>;
28 PYBIND11_OVERLOAD(Ret,
33 std::tuple<bool, bool, std::vector<double>, std::vector<double>>
35 std::vector<double>
const& Tin_val,
36 std::vector<double>
const& Tout_val)
const override
39 std::tuple<bool, bool, std::vector<double>, std::vector<double>>;
40 PYBIND11_OVERLOAD(Ret,
45 std::tuple<std::vector<double>, std::vector<double>>
47 double const t,
double const dt, std::vector<double>
const& Tin_val,
48 std::vector<double>
const& Tout_val,
49 std::vector<double>
const& flowrate)
const override
51 using Ret = std::tuple<std::vector<double>, std::vector<double>>;
58 double const t,
double const dt, std::vector<double>
const& Tin_val,
59 std::vector<double>
const& Tout_val,
60 std::vector<double>
const& flowrate)
const override
62 PYBIND11_OVERLOAD(
void,
71 namespace py = pybind11;
75 pybc(m,
"BHENetwork");
79 pybc.def(
"initializeDataContainer",
81 initializeDataContainer);
82 pybc.def(
"tespySolver",
85 pybc.def(
"serverCommunicationPreTimestep",
87 serverCommunicationPreTimestep);
89 pybc.def(
"serverCommunicationPostTimestep",
91 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.