A 6-noded 2-dimensional triangle element with straight sides and second-order shape functions.
More...
|
| Triangle6 (const Triangle6 &el) |
|
Element * | Copy () |
| Create a copy of the element and return a pointer to it.
|
|
void | Initialise (const NodeList &nlist) |
| Element initialisation. More...
|
|
BYTE | Type () const |
| Returns an element type identifier. More...
|
|
unsigned long | GetCaps () const |
| Returns element capability flags. More...
|
|
int | nNode () const |
| Returns the number of nodes associated with the element. More...
|
|
int | nSide () const |
| Returns the number of element sides. More...
|
|
int | nSideNode (int) const |
| Returns the number of vertices associated with a side. More...
|
|
int | SideNode (int side, int node) const |
| Returns relative node index for a side vertex. More...
|
|
Point | Local (const NodeList &nlist, const Point &glob) const |
| Maps a point from global to local element coordinates. More...
|
|
Point | NodeLocal (int node) const |
| Returns the local coordinates of an element node. More...
|
|
RVector | DirectionCosine (int side, RDenseMatrix &jacin) |
| Returns the direction cosines of a side normal. More...
|
|
const RVector & | LNormal (int side) const |
| Returns a side normal in local coordinates. More...
|
|
bool | LContains (const Point &loc, bool pad=true) const |
| Checks if a local point coordinate is inside the element. More...
|
|
bool | GContains (const Point &glob, const NodeList &nlist) const |
| Checks if a global point coordinate is inside the element. More...
|
|
RVector | LocalShapeF (const Point &loc) const |
| Returns the values of the shape functions at a local point. More...
|
|
RDenseMatrix | LocalShapeD (const Point &loc) const |
| Returns the values of the shape function derivatives at a local point. More...
|
|
RVector | GlobalShapeF (const NodeList &nlist, const Point &glob) const |
| Returns the values of the shape functions at a global point. More...
|
|
RDenseMatrix | GlobalShapeD (const NodeList &nlist, const Point &glob) const |
| Returns the values of the shape function derivatives at a global point. More...
|
|
double | IntF (int i) const |
| Integral of a shape function over the element. More...
|
|
RSymMatrix | IntFF () const |
| Integrals of all products of two shape functions over the element. More...
|
|
double | IntFF (int i, int j) const |
| Integral of a product of two shape functions over the element. More...
|
|
double | IntFFF (int i, int j, int k) const |
| Integral of a product of three shape functions over the element. More...
|
|
RSymMatrix | IntPFF (const RVector &P) const |
| Integrals of all products of two shape functions and a nodal function over the element. More...
|
|
double | IntPFF (int i, int j, const RVector &P) const |
| Integral of a product of two shape functions and a nodal function over the element. More...
|
|
RVector | IntFD (int i, int j) const |
| Integral of a product of a shape function and a shape function derivative over the element. More...
|
|
double | IntFDD (int i, int j, int k) const |
| Integral of a product of a shape function and two shape function derivatives over the element. More...
|
|
RSymMatrix | IntPDD (const RVector &P) const |
| All integrals of products of a nodal function and two shape function derivatives over the element. More...
|
|
double | IntPDD (int i, int j, const RVector &P) const |
| Integrals of a product of a nodal function and two shape function derivatives over the element. More...
|
|
double | BndIntFSide (int i, int sd) |
| Surface integral of a shape function over one of the sides of the element. More...
|
|
double | BndIntFFSide (int i, int j, int sd) |
| Surface integral of a product of two shape functions over one of the sides of the element. More...
|
|
RSymMatrix | BndIntPFF (const RVector &P) const |
| Surface integrals of all products of a nodal function and two shape functions over all boundary sides of the element. More...
|
|
double | BndIntPFF (int i, int j, const RVector &P) const |
| Surface integrals of a product of a nodal function and two shape functions over all boundary sides of the element. More...
|
|
double | IntFd (int i, int j, int k) const |
| Integral of the product of a shape function and a partial shape function derivative over the element. More...
|
|
double | IntPd (const RVector &P, int j, int k) const |
| Integral of the product of a nodal function and a partial shape function derivative over the element. More...
|
|
RSymMatrix | Intdd () const |
| Integral of the product of two partial shape function derivatives over the element. More...
|
|
RVector | BndIntFCos (int side, const Surface *surf, const RVector &cntcos, double sigma, double sup, const NodeList &nlist) const |
|
RVector | BndIntFCos (int side, const RVector &cntcos, double a, const NodeList &nlist) const |
|
RVector | BndIntFDelta (int side, const Surface *surf, const RVector &pos, const NodeList &nlist) const |
|
int | GetLocalSubsampleAbsc (const Point *&absc) const |
|
int | GlobalIntersection (const NodeList &nlist, const Point &p1, const Point &p2, Point **list) |
|
int | Intersection (const Point &p1, const Point &p2, Point **pi) |
|
| Element_Unstructured_2D (const Element_Unstructured_2D &el) |
|
virtual int | Dimension (void) const |
| Returns the spatial dimension of the element. More...
|
|
| Element_Unstructured (const Element_Unstructured &el) |
|
virtual void | PostInitialisation (const NodeList &nlist) |
| Element setup after mesh initialisation. More...
|
|
double | Size () const |
| Returns the element size. More...
|
|
void | operator= (const Element_Unstructured &el) |
|
RSymMatrix | IntDD () const |
| Integrals of all products of two shape function derivatives over the element. More...
|
|
double | IntDD (int i, int j) const |
| Integral of a product of two shape function derivatives over the element. More...
|
|
RSymMatrix | BndIntFF () const |
| Boundary integral of all products of two shape functions over all boundary sides of the element. More...
|
|
double | BndIntFF (int i, int j) |
| Boundary integral of a product of two shape functions over all boundary sides of the element. More...
|
|
| Element () |
| Creates a new element with no nodes.
|
|
| Element (const Element &el) |
| Creates a new element as a copy of 'el'.
|
|
virtual | ~Element () |
| Destroys the element.
|
|
void | operator= (const Element &el) |
| Element assignment. More...
|
|
virtual BYTE | VtkType () const |
| Returns the VTK element type identifier, or 0 if the element doesn't have a VTK representation.
|
|
virtual bool | IsNode (int node) |
| Checks if a node is part of the element. More...
|
|
int | IsSide (int nn, int *nd) |
| Checks if a face defined by vertex nodes is part of the element. More...
|
|
virtual bool | IsSideNode (int side, int node) |
| Checks if a node is associated with a specific side. More...
|
|
bool | IsBoundarySide (int side) |
| Checks if a side is on the mesh surface. More...
|
|
bool | HasBoundarySide () |
| Checks if the element contains any surface sides. More...
|
|
bool | HasInterfaceSide () |
| Checks if the element contains any internal interface sides. More...
|
|
virtual Point | SurfToLocal (int side, const Point &p) const |
| Maps a point from surface coordinates to local element coordinates. More...
|
|
virtual void | MapToSide (int side, Point &loc) const |
| Translates a point to an element surface. More...
|
|
virtual Point | SideCentre (int side) const |
| Returns the centre point of a side. More...
|
|
Element * | SideNeighbour (int side) const |
| returns a pointer to the element connected at 'side', or NULL if this is a boundary side. More...
|
|
int | SideNeighbourIndex (int side) const |
| Returns the list index of the element connected at 'side', or -1 if this is a boundary side. More...
|
|
Point | Global (const NodeList &nlist, const Point &loc) const |
| Maps a point from local element coordinates to global coordinates. More...
|
|
virtual RDenseMatrix | Elgeom (const NodeList &nlist) const |
| Returns the element's global node coordinates. More...
|
|
virtual double | SideSize (int side, const NodeList &nlist) const |
| Returns the size of an element side. More...
|
|
virtual double | DetJ (const Point &loc, const NodeList *nlist=0) const |
| Returns determinant of Jacobian at a given point inside the element in the local frame. More...
|
|
virtual int | BndSideList (const NodeList &nlist, int *list) |
| Returns a list of boundary sides. More...
|
|
void | InitNeighbourSupport () |
|
void | InitSubdivisionSupport () |
|
int | SubdivisionLevel () const |
| Returns the element's subdivison level. More...
|
|
virtual void | Subdivide (Mesh *mesh) |
|
virtual int | QuadRule (int order, const double **wght, const Point **absc) const |
| Returns the weights and abscissae of quadrature rules over the element. More...
|
|
virtual RVector | BndIntF () const |
| Boundary integral of all shape functions over all boundary sides of the element. More...
|
|
virtual double | Intd (int i, int k) const |
| Integral of partial shape function derivative over the element. More...
|
|
virtual double | IntFdd (int i, int j, int k, int l, int m) const |
| Integral of the product of a shape function and two partial shape function derivatives over the element. More...
|
|
virtual double | IntPdd (const RVector &p, int j, int k, int l, int m) const |
|
virtual double | IntFfd (int i, int j, int k, int l) const |
|
virtual double | IntPfd (const RVector &p, int j, int k, int l) const |
|
virtual double | IntUnitSphereP (const NodeList &nlist, const RVector &P) const |
|
virtual double | IntUnitSphereFF (const NodeList &nlist, const int i, const int j) const |
|
virtual double | IntUnitSpherePFF (const NodeList &nlist, const int i, const int j, const RVector &P) const |
|
virtual RVector | BndIntFX (int side, double(*func)(const Point &), const NodeList &nlist) const |
|
int | GetSubsampleFD (int &n, double *&wght, Point *&absc, RVector *&F, RDenseMatrix *&D, const NodeList &nlist) const |
|
int | GetBndSubsampleFD (int side, int &n, double *&wght, Point *&absc, RVector *&F, RDenseMatrix *&D, const NodeList &nlist) const |
|
virtual int | GetBndSubsampleAbsc (int side, const Point *&absc) const |
|
virtual RDenseMatrix | StrainDisplacementMatrix (const Point &glob) const |
|
virtual RDenseMatrix | ElasticityStiffnessMatrix (const RDenseMatrix &D) const |
|
virtual RDenseMatrix | ElasticityStiffnessMatrix (double E, double nu) const |
|
RDenseMatrix | ElasticStrainDisplacement (const RVector &loc, const RDenseMatrix &gder) const |
|
virtual RDenseMatrix | IsotropicElasticityMatrix (double E, double nu) const |
|
virtual RVector | InitialStrainVector (double E, double nu, const RVector &e0) |
|
virtual RVector | ThermalExpansionVector (double E, double nu, double alpha, double dT) |
|
virtual RVector | DThermalExpansionVector (double E, double nu) |
|
virtual RDenseMatrix | LocaltoGlobalMat () const |
|
virtual RDenseMatrix | GlobaltoLocalMat () const |
|
virtual RDenseMatrix | FTAMat () const |
|
int | Region () const |
|
void | SetRegion (int nr) |
|
virtual void | SplitSide (Mesh *mesh, int side, int newnode, Element *nbr1, Element *nbr2, Element *el1, Element *el2) |
|
virtual void | Bisect (Mesh *mesh, int side, int newnode, Element *nbr1, Element *nbr2, Element *el1, Element *el2) |
|
virtual void | MergeAndResplit (Mesh *mesh, int side, int newnode, Element *nbr1, Element *nbr2, Element *el1, Element *el2) |
|
A 6-noded 2-dimensional triangle element with straight sides and second-order shape functions.
The node arrangement is given by
N2 The local element has node coordinates
+ N0 = (0,0)
|\ N1 = (1,0)
| \ N2 = (0,1)
| \ N3 = (0.5,0)
N5+ +N4 N4 = (0.5,0.5)
| \ N5 = (0,0.5)
| \
| \ Sides: side 0 contains N0,N1,N3 (y=0)
N0+---+---+N1 side 1 contains N1,N2,N4 (x+y=1)
N3 side 2 contains N2,N0,N5 (x=0)