libMesh
Loading...
Searching...
No Matches
Namespaces | Functions
mesh_modification.h File Reference

Go to the source code of this file.

Namespaces

namespace  libMesh
 The libMesh namespace provides an interface to certain functionality in the library.
 
namespace  libMesh::MeshTools
 Utility functions for operations on a Mesh object.
 
namespace  libMesh::MeshTools::Modification
 Tools for Mesh modification.
 

Functions

void libMesh::MeshTools::Modification::distort (MeshBase &mesh, const Real factor, const bool perturb_boundary=false)
 Randomly perturb the nodal locations.
 
void libMesh::MeshTools::Modification::permute_elements (MeshBase &mesh)
 Randomly permute the nodal ordering of each element (without twisting the element mapping).
 
void libMesh::MeshTools::Modification::orient_elements (MeshBase &mesh)
 Redo the nodal ordering of each element as necessary to give the element Jacobian a positive orientation.
 
void libMesh::MeshTools::Modification::redistribute (MeshBase &mesh, const FunctionBase< Real > &mapfunc)
 Deterministically perturb the nodal locations.
 
void libMesh::MeshTools::Modification::translate (MeshBase &mesh, const Real xt=0., const Real yt=0., const Real zt=0.)
 Translates the mesh.
 
RealTensorValue libMesh::MeshTools::Modification::rotate (MeshBase &mesh, const Real phi, const Real theta=0., const Real psi=0.)
 Rotates the mesh in 3D space.
 
void libMesh::MeshTools::Modification::scale (MeshBase &mesh, const Real xs, const Real ys=0., const Real zs=0.)
 Scales the mesh.
 
void libMesh::MeshTools::Modification::all_tri (MeshBase &mesh)
 Subdivides any non-simplex elements in a Mesh to produce simplex (triangular in 2D, tetrahedral in 3D) elements.
 
void libMesh::MeshTools::Modification::all_rbb (MeshBase &mesh)
 Converts all element geometric mappings from the default Lagrange to the more flexible Rational-Bezier-Bernstein.
 
void libMesh::MeshTools::Modification::smooth (MeshBase &, unsigned int, Real)
 Smooth the mesh with a simple Laplace smoothing algorithm.
 
void libMesh::MeshTools::Modification::interpolate_surface (MeshBase &mesh, const Surface &surface, std::set< std::size_t > ids={}, bool use_boundary_nodes=true)
 Move nodes in mesh to their closest points on the specified surface.
 
void libMesh::MeshTools::Modification::flatten (MeshBase &mesh)
 Removes all the refinement tree structure of Mesh, leaving only the highest-level (most-refined) elements.
 
void libMesh::MeshTools::Modification::change_boundary_id (MeshBase &mesh, const boundary_id_type old_id, const boundary_id_type new_id)
 Finds any boundary ids that are currently old_id, changes them to new_id.
 
void libMesh::MeshTools::Modification::change_subdomain_id (MeshBase &mesh, const subdomain_id_type old_id, const subdomain_id_type new_id)
 Finds any subdomain ids that are currently old_id, changes them to new_id.