![]() |
Xfem
The Xfem Plugin
|
A simple class to represent a natural fracture. More...
#include <xfemFracture.h>

Public Member Functions | |
| XfemFracture (int npoints, int ndim, double *coordinates, const QString &fracType=QString("HydraFrac"), const QString &fracState=QString("Open")) | |
| Constructor for a fracture definition based on a set of points defining its geometry. More... | |
| virtual | ~XfemFracture () |
| Destructor. | |
| XfemFracture (const XfemFracture &other) | |
| int | numPoints () const |
| Returns the number of points in the fracture definition. | |
| int | numCrackPoints () const |
| Returns the number of crack points into the fracture. | |
| int | numCrackPaths () const |
| Return the number of crack paths. | |
| int | numSubCrackPaths () const |
| Return the number of sub-crack paths. | |
| int | numElemCutPos () const |
| Return the number of elemCutPos vector. | |
| int | numSubElemCutPos () const |
| Return the number of subelemCutPos vector. | |
| int | numElemHeadIp () const |
| Return the number of elements in headIp. | |
| int | numElemTailIp () const |
| Return the number of elements in tailIp. | |
| int | numChangedElem () const |
| Return the number of changed elements. | |
| int | numfrontNodeBool () const |
| Return the number of crack front node booleans. | |
| int | numfrontNodeProp () const |
| Return the number of crack front node that will propagate. | |
| int | pointDimension () const |
| Returns the dimension of each fracture point. Equal to the mesh dimension. | |
| void | fixedHead () |
| Set false the activation of head tip. | |
| bool | checkHeadStatus () const |
| Check Head activation status. | |
| void | fixedTail () |
| Set false the activation of tail tip. | |
| bool | checkTailStatus () const |
| Check tail activation status. | |
| void | headProp (bool setHead=true) |
| Set true the propagation of head tip. | |
| bool | checkHeadProp () const |
| Check Head Propagation status. | |
| void | tailProp (bool setTail=true) |
| Set true the propagation of tail tip. | |
| bool | checkTailProp () const |
| Check tail Propagation status. | |
| QString | checkFracType () const |
| Check fracture type status. | |
| QString | checkFracState () const |
| Check fracture state status. More... | |
| void | setIntactCrackDOFset () |
| Crack DOF set must be changed as this fracture intersect other one or coexist in the same element with other one. | |
| void | changeCrackDOFset () |
| bool | checkCrackDOFset () const |
| Check crack DOF set status. | |
| const double * | coordinates (int index) const |
| Returns a vector with the given point coordinates. The vector size is equal to the mesh dimension. Values are given in the same unit as coordinates are stored in the mesh. | |
| void | appendCrackCoordinates (QList< GmVector > B, bool type=true) |
| void | insertCrackCoordinates (GmVector C, int index) |
| void | replaceCrackCoordinates (GmVector B, int index) |
| void | splitCrackCoordinates (int index2, int index, bool type=true) |
| virtual void | getCrackCoodinates (GmVector &S1, int n) const |
| void | appendCrackPath (GmVector Cr, bool type=true) |
| void | splitCrackPath (int path, int node) |
| void | insertSubCrackPath (int path, GmVector A, GmVector B) |
| virtual void | getCrackPath (GmVector &A, int n) const |
| void | appendSubCrackPath (GmVector Cr, bool type=true) |
| virtual void | getSubCrackPath (GmVector &A, int n) const |
| void | appendChangedElem (QList< int > n) |
| virtual void | getChangedElem (QList< int > &data) const |
| void | clearChangedElem () |
| void | appendCrackFrontNodes (QList< QList< int >> n) |
| virtual void | getCrackFrontNodes (QList< QList< int >> &data) const |
| void | replaceCrackFrontNodes (QList< int > n, int index) |
| void | clearCrackFrontNodes () |
| void | appendCrackFrontIp (QList< QList< QPair< int, QList< QList< int >>>>> crackFrontSeglist) |
| virtual void | getCrackFrontIp (QList< QList< QPair< int, QList< QList< int >>>>> &crackFrontSeglist) const |
| void | clearCrackFrontIp () |
| void | appendFrontNodeBool (QPair< int, bool > n) |
| virtual void | getFrontNodeBool (int n, QPair< int, bool > &data) const |
| void | replaceFrontNodeBool (int n, QPair< int, bool > data) |
| void | clearFrontNodeBool () |
| void | appendFrontNodeProp (QPair< int, bool > n) |
| virtual void | getFrontNodeProp (int n, QPair< int, bool > &data) const |
| void | replaceFrontNodeProp (int n, QPair< int, bool > data) |
| void | clearFrontNodeProp () |
| void | setHeadIp (QList< GmVector > B) |
| virtual void | getHeadIp (GmVector &A, int n) const |
| void | clearHeadIp () |
| void | setTailIp (QList< GmVector > B) |
| virtual void | getTailIp (GmVector &A, int n) const |
| void | clearTailIp () |
| void | appendElemCutPos (GmVector cut, bool type=true) |
| void | splitElemCutPos (int path, int edge) |
| virtual void | getElemCutPos (GmVector &S1, int n) const |
| void | appendSubElemCutPos (GmVector cut, bool type=true) |
| virtual void | getSubElemCutPos (GmVector &S1, int n) const |
| void | insertSubElemCutPos (int path, GmVector A, GmVector B) |
Private Attributes | |
| int | _npoints |
| Number of points in the fracture definition. | |
| int | _ndim |
| The dimension of each coordinate. | |
| int | _npointsCrack |
| Number of intersection into the mesh for each fracture. | |
| QList< GmVector > | _headIp |
| Vector with information about head ip index {elem, ipIndex1, ipIndex2,..}. | |
| QList< GmVector > | _tailIp |
| Vector with information about tail ip index {elem, ipIndex1, ipIndex2,..}. | |
| QList< GmVector > | _crackPath |
| Vector with information about crak path {elem, ghostNode1, ghostNode2}. | |
| QList< GmVector > | _subCrackPath |
| Vector with information about crak path {elem, ghostNode1, ghostNode2} for results visualization. | |
| QList< GmVector > | _elemCutPos |
| Vector with information about fracture position {elem, side1, side2}. | |
| QList< GmVector > | _subElemCutPos |
| Vector with information about fracture position {elem, side1, side2} for results visualization. | |
| QList< GmVector > | _crackCoordinates |
| subCrack coordinates vector. Size = _ndim * _npointsCrack. Values stored by point. | |
| QList< int > | _changedElem |
| List with changed elements as fracture propagates. | |
| double * | _coordinates |
| Coordinate vector. Size = _ndim * _npoints. Values stored by point. | |
| bool | _isStrongFrac |
| Strong fracture (TRUE defines as strong fracture) | |
| bool | _head |
| head of the fracture(TRUE defines that it's available to propagate) | |
| bool | _tail |
| tail of the fracture(TRUE defines that it's available to propagate) | |
| bool | _headProp |
| head of the fracture(TRUE defines that it's going to propagate) | |
| bool | _tailProp |
| tail of the fracture(TRUE defines that it's going to propagate) | |
| bool | _changedCrack |
| Crack DOF set must be changed as this fracture intersect other one or coexist in the same element with other one. | |
| QString | _fracType |
| QString | _fracState |
| QList< QList< int > > | _crackFront |
| list with crack front nodes | |
| QList< QList< QPair< int, QList< QList< int > > > > > | _crackFrontSeglist |
| list of IP and Element id for the crack front node to the fracture object | |
| QList< QPair< int, bool > > | _frontNodeBool |
| QList< QPair< int, bool > > | _frontNodeProp |
A simple class to represent a natural fracture.
| XfemFracture::XfemFracture | ( | int | npoints, |
| int | ndim, | ||
| double * | coordinates, | ||
| const QString & | fracType = QString("HydraFrac"), |
||
| const QString & | fracState = QString("Open") |
||
| ) |
Constructor for a fracture definition based on a set of points defining its geometry.
Gets as parameters the number of points in the fracture geometry definition, the point dimension and a vector with the point coordinates. The vector size should be equal to nnodes * ndim and the coordinates should be organized inside per point (ex: x1, y1, x2, y2, ..., xn, yn).
IMPORTANT: The fracture takes ownership of the given data vector and will destroy it on its destructor.
|
inline |
< Number of points in the fracture definition
< The dimension of each coordinate
< Number of intersection into the mesh for each fracture
< Vector with information about head ip index {elem, ipIndex1, ipIndex2,..}
< Vector with information about tail ip index {elem, ipIndex1, ipIndex2,..}
< Vector with information about crak path {elem, ghostNode1, ghostNode2}
< Vector with information about sub-crak path {elem, ghostNode1, ghostNode2}
< Vector with information about fracture position {elem, side1, side2}
< Crack coordinates vector. Size = _ndim * _npointsCrack. Values stored by point.
< List with changed elements as fracture propagates
< Strong fracture (TRUE defines as strong fracture)
< head of the fracture(TRUE defines that it's available to propagate)
< tail of the fracture(TRUE defines that it's available to propagate)
< head of the fracture(TRUE defines that it's going to propagate)
< tail of the fracture(TRUE defines that it's going to propagate)
< Coordinate vector. Size = _ndim * _npoints. Values stored by point.
|
inline |
Check fracture state status.
set false to check again if this element changed its Dof Set
1.8.15