OGS
|
Base class for BHENetwork. This class will get Python bindings and is intended to be to be derived in Python.
Definition at line 18 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
#include <BHEInflowPythonBoundaryConditionPythonSideInterface.h>
Public Member Functions | |
virtual std::tuple< double, std::vector< double >, std::vector< double >, std::vector< int >, std::vector< double > > | initializeDataContainer () const |
virtual std::tuple< bool, bool, std::vector< double >, std::vector< double > > | tespySolver (double, std::vector< double > const &, std::vector< double > const &) const |
virtual std::tuple< std::vector< double >, std::vector< double > > | serverCommunicationPreTimestep (double, double, std::vector< double > const &, std::vector< double > const &, std::vector< double > const &) const |
virtual void | serverCommunicationPostTimestep (double, double, std::vector< double > const &, std::vector< double > const &, std::vector< double > const &) const |
bool | isOverriddenEssential () const |
bool | isOverriddenTespy () const |
bool | isOverriddenServerCommunicationPreTimestep () const |
bool | isOverriddenServerCommunicationPostTimestep () const |
virtual | ~BHEInflowPythonBoundaryConditionPythonSideInterface ()=default |
Public Attributes | |
std::tuple< double, std::vector< double >, std::vector< double >, std::vector< int >, std::vector< double > > | dataframe_network |
Private Attributes | |
bool | _overridden_essential = true |
bool | _overridden_tespy = true |
bool | _overridden_server_communication_pre = true |
bool | _overridden_server_communication_post = true |
|
virtualdefault |
|
inlinevirtual |
Initialize network dataframe return a tuple (time, BHE inflow temperature, BHE outflow temperature, BHE outflow bc node id, BHE flowrate) set at that position and the parameters of the BHE network.
Reimplemented in ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterfaceTrampoline.
Definition at line 32 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_essential.
|
inline |
Tells if initializeDataContainer() has been overridden in the derived class in Python.
Definition at line 101 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_essential.
|
inline |
Definition at line 118 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_server_communication_post.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postTimestepConcreteProcess().
|
inline |
Tells if serverCommunication() has been overridden in the derived class in Python.
Definition at line 113 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_server_communication_pre.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::preTimestepConcreteProcess().
|
inline |
Tells if tespySolver() has been overridden in the derived class in Python.
Definition at line 107 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_tespy.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postIterationConcreteProcess().
|
inlinevirtual |
Reimplemented in ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterfaceTrampoline.
Definition at line 87 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_server_communication_post.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postTimestepConcreteProcess().
|
inlinevirtual |
Transfer BHE network dataframe to python script where function serverCommunication takes t, dt, Tin_val, Tout_val, BHE_flowrate as arguments and returns updated Tin_val and flowrate which will be used as (python) boundary conditions for the next time step. The communication happens in preTimestep so that the updated values are used in the current time step. Specific use case: Interface between OGS and SimulationX via TCP/IP where OGS is connected as one client
Reimplemented in ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterfaceTrampoline.
Definition at line 77 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_server_communication_pre.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::preTimestepConcreteProcess().
|
inlinevirtual |
transfer BHE network dataframe to TESPy and get Tin and flow rate from TESPy
Reimplemented in ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterfaceTrampoline.
Definition at line 54 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
References _overridden_tespy.
Referenced by ProcessLib::bheInflowpythonBindBoundaryCondition(), and ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postIterationConcreteProcess().
|
mutableprivate |
Tells if initializeDataContainer() has been overridden in the derived class in Python.
Definition at line 136 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
Referenced by initializeDataContainer(), and isOverriddenEssential().
|
mutableprivate |
Definition at line 144 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
Referenced by isOverriddenServerCommunicationPostTimestep(), and serverCommunicationPostTimestep().
|
mutableprivate |
Tells if serverCommunication() has been overridden in the derived class in Python.
Definition at line 142 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
Referenced by isOverriddenServerCommunicationPreTimestep(), and serverCommunicationPreTimestep().
|
mutableprivate |
Tells if tespySolver() has been overridden in the derived class in Python.
Definition at line 139 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
Referenced by isOverriddenTespy(), and tespySolver().
std::tuple<double, std::vector<double>, std::vector<double>, std::vector<int>, std::vector<double> > ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterface::dataframe_network |
Definition at line 129 of file BHEInflowPythonBoundaryConditionPythonSideInterface.h.
Referenced by ProcessLib::BHEInflowPythonBoundaryCondition< BHEType >::BHEInflowPythonBoundaryCondition(), ProcessLib::BHEInflowPythonBoundaryCondition< BHEType >::getEssentialBCValues(), ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postIterationConcreteProcess(), ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::postTimestepConcreteProcess(), and ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::preTimestepConcreteProcess().