Go to the documentation of this file.
46 unsigned int add2DElements(std::vector<std::vector<unsigned int>> & quads);
57 std::vector<unsigned int> edgeid,
58 std::vector<double> position);
60 unsigned int FragFaceID,
61 std::vector<unsigned int> FragFaceEdgeID,
62 std::vector<double> position);
77 void error(
const std::string & error_string);
void connectFragments(bool mergeUncutVirtualEdges)
void updatePhysicalLinksAndFragments()
unsigned int add2DElements(std::vector< std::vector< unsigned int >> &quads)
void error(const std::string &error_string)
void initCrackTipTopology()
const std::vector< EFANode * > & getNewNodes()
void clearPotentialIsolatedNodes()
EFAElement * add3DElement(std::vector< unsigned int > quad, unsigned int id)
std::vector< EFANode * > _deleted_nodes
std::vector< EFAElement * > _child_elements
void addFragFaceIntersection(unsigned int ElemID, unsigned int FragFaceID, std::vector< unsigned int > FragFaceEdgeID, std::vector< double > position)
void updateTopology(bool mergeUncutVirtualEdges=true)
void addElemFaceIntersection(unsigned int elemid, unsigned int faceid, std::vector< unsigned int > edgeid, std::vector< double > position)
std::map< unsigned int, EFAElement * > _elements
std::map< unsigned int, EFANode * > _temp_nodes
bool addFragEdgeIntersection(unsigned int elemid, unsigned int frag_edge_id, double position)
std::map< unsigned int, EFANode * > _permanent_nodes
const std::vector< EFAElement * > & getParentElements()
void updateEdgeNeighbors()
void createChildElements()
const std::vector< EFAElement * > & getChildElements()
const std::map< unsigned int, EFANode * > & getEmbeddedNodes()
std::map< EFANode *, std::set< EFAElement * > > _inverse_connectivity
EFAElement * add2DElement(std::vector< unsigned int > quad, unsigned int id)
~ElementFragmentAlgorithm()
std::map< unsigned int, EFANode * > _embedded_nodes
std::map< unsigned int, EFANode * > _embedded_permanent_nodes
std::set< EFAElement * > _crack_tip_elements
void restoreFragmentInfo(EFAElement *const elem, const EFAElement *const from_elem)
EFAElement * getElemByID(unsigned int id)
const std::set< EFAElement * > & getCrackTipElements()
unsigned int getElemIdByNodes(unsigned int *node_id)
std::vector< EFAElement * > _parent_elements
ElementFragmentAlgorithm(std::ostream &os)
Constructor.
void updateCrackTipElements()
void addElemEdgeIntersection(unsigned int elemid, unsigned int edgeid, double position)
std::vector< EFANode * > _new_nodes
void addElemNodeIntersection(unsigned int elemid, unsigned int nodeid)
const std::map< unsigned int, EFANode * > & getTempNodes()
const std::map< unsigned int, EFANode * > & getPermanentNodes()