22 #ifndef GEOMETRY_CONNECTION_HPP
23 #define GEOMETRY_CONNECTION_HPP
24 #include <LbmLib/include/Direction.hpp>
25 #include <LbmLib/include/Field.hpp>
33 #include <unordered_set>
40 class LagrangianPoint;
58 std::shared_ptr<nodes::GeometryNode>
const p1,
59 std::shared_ptr<nodes::GeometryNode>
const p2,
60 const std::map<std::string,
61 std::vector<std::string> > connectionType,
62 unsigned int domainId);
80 const std::vector<std::vector<nodes::PhysicalNode*> >& physicalNode,
81 std::unordered_set<nodes::BoundaryNode*>& boundaryNodes);
87 std::pair<std::shared_ptr<nodes::GeometryNode>
const,
129 void insertBoundaryNode(
133 std::unordered_set<nodes::BoundaryNode*>& boundaryNodes);
145 const std::pair<std::shared_ptr<nodes::GeometryNode>
const,
146 std::shared_ptr<nodes::GeometryNode>
const> points_;
150 const std::map<std::string, std::vector<std::string> > connectionType_;
154 unsigned int domainIdentifier_;
158 #endif // GEOMETRY_CONNECTION_HPP
void setDomainIdentifier(const unsigned int domainIdentifier)
Setter for the domainIdentifier_.
void writeConnection(std::ofstream *const stream)
writes the connection ot the stream
All PhysicalNodes on the left of the connection are defined as inside.
const std::map< std::string, std::vector< std::string > > getBoundaryConditionDescriptor() const
Getter for the boundary condition descriptor.
unsigned int getDomainIdentifier() const
Getter for the domainID on the left side of this connection.
void perturbConnection()
perturbConnection makes sure that the connection has a slope not near to 0 or infinitive ...
class representing a physical node
~Connection()
~Connection non-virutal Destructor
double getLength() const
Compute the length of the connection.
Connection(std::shared_ptr< nodes::GeometryNode > const p1, std::shared_ptr< nodes::GeometryNode > const p2, const std::map< std::string, std::vector< std::string > > connectionType, unsigned int domainId)
Connection A simple connection connecting two geometry nodes.
std::pair< std::shared_ptr< nodes::GeometryNode > const, std::shared_ptr< nodes::GeometryNode > const > getGeometryNodes() const
getGeometryNodes Getter method for the geometry nodes defining this connection
class representing a boundary node
void generateBoundaryNodes(const std::vector< std::vector< nodes::PhysicalNode * > > &physicalNode, std::unordered_set< nodes::BoundaryNode * > &boundaryNodes)
generateBoundaryNodes Calculates all possible boundary points defined by this connection, generates and connects them accordingly