sfepy.discrete.fem.utils module¶

sfepy.discrete.fem.utils.
compute_nodal_edge_dirs
(nodes, region, field, return_imap=False)[source]¶ Nodal edge directions are computed by simple averaging of direction vectors of edges a node is contained in. Edges are assumed to be straight and a node must be on a single edge (a border node) or shared by exactly two edges.

sfepy.discrete.fem.utils.
compute_nodal_normals
(nodes, region, field, return_imap=False)[source]¶ Nodal normals are computed by simple averaging of element normals of elements every node is contained in.

sfepy.discrete.fem.utils.
extend_cell_data
(data, domain, rname, val=None, is_surface=False, average_surface=True)[source]¶ Extend cell data defined in a region to the whole domain.
Parameters:  data : array
The data defined in the region.
 domain : FEDomain instance
The FE domain.
 rname : str
The region name.
 val : float, optional
The value for filling cells not covered by the region. If not given, the smallest value in data is used.
 is_surface : bool
If True, the data are defined on a surface region. In that case the values are averaged or summed into the cells containing the region surface faces (a cell can have several faces of the surface), see average_surface.
 average_surface : bool
If True, the data defined on a surface region are averaged, otherwise the data are summed.
Returns:  edata : array
The data extended to all domain elements.

sfepy.discrete.fem.utils.
get_edge_paths
(graph, mask)[source]¶ Get all edge paths in a graph with nonmasked vertices. The mask is updated.

sfepy.discrete.fem.utils.
get_min_value
(dofs)[source]¶ Get a reasonable minimal value of DOFs suitable for extending over a whole domain.

sfepy.discrete.fem.utils.
invert_remap
(remap)[source]¶ Return the inverse of remap, i.e. a mapping from a subrange indices to a full range, see
prepare_remap()
.

sfepy.discrete.fem.utils.
prepare_remap
(indices, n_full)[source]¶ Prepare vector for remapping range [0, n_full] to its subset given by indices.

sfepy.discrete.fem.utils.
prepare_translate
(old_indices, new_indices)[source]¶ Prepare vector for translating old_indices to new_indices.
Returns:  translate : array
The translation vector. Then new_ar = translate[old_ar].

sfepy.discrete.fem.utils.
refine_mesh
(filename, level)[source]¶ Uniformly refine leveltimes a mesh given by filename.
The refined mesh is saved to a file with name constructed from base name of filename and leveltimes appended ‘_r’ suffix.
Parameters:  filename : str
The mesh file name.
 level : int
The refinement level.