sfepy.discrete.fem.geometry_element module

GeometryElement describes the geometric entities of a finite element mesh.

Notes

  • geometry_data: surface facets are assumed to be of the same kind for each geometry element - wedges or pyramides are not supported.
  • the orientation is a tuple: (root1, vertices of direction vectors, swap from, swap to, root2, …)
class sfepy.discrete.fem.geometry_element.GeometryElement(name)[source]

The geometric entities of a finite element mesh.

create_surface_facet()[source]

Create a GeometryElement instance corresponding to this instance surface facet.

get_conn_permutations()[source]

Get all possible connectivity permutations corresponding to different spatial orientations of the geometry element.

get_edges_per_face()[source]

Return the indices into self.edges per face.

get_grid(n_nod)[source]

Get a grid of n_nod interpolation points, including the geometry element vertices. The number of points must correspond to a valid number of FE nodes for each geometry.

get_interpolation_name()[source]

Get the name of corresponding linear interpolant.

get_surface_entities()[source]

Return self.vertices in 1D, self.edges in 2D and self.faces in 3D.

sfepy.discrete.fem.geometry_element.create_geometry_elements(names=None)[source]

Utility function to create GeometryElement instances.

Parameters:
names : str, optional

The names of the entity, one of the keys in geometry_data dictionary. If None, all keys of geometry_data are used.

Returns:
gels : dict

The dictionary of geometry elements with names as keys.

sfepy.discrete.fem.geometry_element.setup_orientation(vecs_tuple)[source]