Element¶
The element module defines reference elements such as the QuadElement and TriangularElement, but also more exotic objects like the TrimmedElement. A set of (interconnected) elements together form a nutils.topology. Elements have edges and children (for refinement), which are in turn elements and map onto self by an affine transformation. They also have a well defined reference coordinate system, and provide pointsets for purposes of integration and sampling.
- class nutils.element.TrimmedIScheme(levelset, ischeme, maxrefine, finestscheme='uniform1', degree=3, retain=None)[source]¶
integration scheme for truncated elements
- class nutils.element.SliceTransformation(fromdim, start=None, stop=None, step=None)[source]¶
take slice
- class nutils.element.Element(ndims, vertices, index=None, parent=None, context=None, interface=None)[source]¶
Element base class.
Represents the topological shape.
- class nutils.element.ProductElement(elem1, elem2)[source]¶
element product
- orientation[source]¶
Neighborhood of elem1 and elem2 and transformations to get mutual overlap in right location. Returns 3-element tuple: * neighborhood, as given by Element.neighbor(), * transf1, required rotation of elem1 map: {0:0, 1:pi/2, 2:pi, 3:3*pi/2}, * transf2, required rotation of elem2 map (is indep of transf1 in UnstructuredTopology.
- class nutils.element.TrimmedElement(elem, levelset, maxrefine, lscheme, finestscheme, evalrefine, parent, vertices)[source]¶
trimmed element
- class nutils.element.QuadElement(ndims, vertices, index=None, parent=None, context=None, interface=None)[source]¶
quadrilateral element
- class nutils.element.TriangularElement(vertices, index=None, parent=None, context=None)[source]¶
Triangular element. Conventions: * reference elem: unit simplex {(x,y) | x>0, y>0, x+y<1} * vertex numbering: {(1,0):0, (0,1):1, (0,0):2} * edge numbering: {bottom:0, slanted:1, left:2} * edge local coords run counter-clockwise.
- class nutils.element.TetrahedronElement(vertices, index=None, parent=None, context=None)[source]¶
tetrahedron element
- class nutils.element.PolyLine(poly)[source]¶
polynomial on a line
- class nutils.element.PolyTriangle[source]¶
poly triangle (linear for now) conventions: dof numbering as vertices, see TriangularElement docstring.