points¶
The points module defines the Points
base class, which bundles point
coordinates, point weights, a local triangulation and a hull triangulation. The
module provides several different implementations such as TensorPoints
and SimplexGaussPoints
that reflect the variety of elements in the
nutils.element
module.
- class nutils.points.Points(npoints, ndims)¶
Bases:
nutils.types.Singleton
Collection of points on an element.
The
Points
base class bundles point coordinates, point weights, a local triangulation and hull triangulation. Of these only the coordinates are mandatory, and should be provided by the derived class in the form of thecoords
attribute. Of the remaining properties onlyhull()
has a functional base implementation that relies on the availability oftri
.- __mul__(self, other)¶
Return
self*other
.
- product(self, other)¶
Return the product with
other
.
- tri¶
Triangulation of interior.
A two-dimensional integer array with
ndims+1
columns, of which every row defines a simplex by mapping vertices into the list of points.
- hull¶
Triangulation of the exterior hull.
A two-dimensional integer array with
ndims
columns, of which every row defines a simplex by mapping vertices into the list of points.
- class nutils.points.CoordsPoints(coords)¶
Bases:
nutils.points.Points
Manually supplied points.
- class nutils.points.CoordsWeightsPoints(coords, weights)¶
Bases:
nutils.points.CoordsPoints
Manually supplied points and weights.
- class nutils.points.CoordsUniformPoints(coords, volume)¶
Bases:
nutils.points.CoordsPoints
Manually supplied points with uniform weights.
- class nutils.points.TensorPoints(points1, points2)¶
Bases:
nutils.points.Points
Tensor product of two Points instances.
- class nutils.points.SimplexGaussPoints(ndims, degree)¶
Bases:
nutils.points.CoordsWeightsPoints
Gauss quadrature points on a simplex.
- class nutils.points.SimplexBezierPoints(ndims, n)¶
Bases:
nutils.points.CoordsUniformPoints
Bezier points on a simplex.
- class nutils.points.TransformPoints(points, trans)¶
Bases:
nutils.points.Points
Affinely transformed Points.
- class nutils.points.ConcatPoints(allpoints, duplicates=frozenset())¶
Bases:
nutils.points.Points
Concatenation of several Points objects.
An optional
duplicates
argument lists all points that are equal, triggering deduplication and resulting in a smaller total point count.
- class nutils.points.ConePoints(edgepoints, edgeref, tip)¶
Bases:
nutils.points.Points
Affinely transformed lower-dimensional points plus tip.
The point count is incremented by one regardless of the nature of the point set; no effort is made to introduce extra points between base plane and tip. Likewise, the simplex count stays equal, with all simplices obtaining an extra vertex in tip.
- nutils.points.gauss1(degree)¶
Gauss quadrature for line.
- nutils.points.gauss2(degree)¶
Gauss quadrature for triangle.
Reference: http://www.cs.rpi.edu/~flaherje/pdf/fea6.pdf
- nutils.points.gauss3(degree)¶
Gauss quadrature for tetrahedron.