MOAB: Mesh Oriented datABase
(version 5.4.1)
|
Utility class for handling variable patch types. More...
#include <PatchSetUser.hpp>
Public Member Functions | |
PatchSetUser (bool defaultGlobal) | |
PatchSetUser (PatchSet *my_patch_set) | |
virtual | ~PatchSetUser () |
void | use_global_patch () |
Use a single patch representing the entire mesh. | |
bool | using_global_patch () const |
Using a single patch representing the entire mesh. | |
void | use_element_on_vertex_patch (unsigned num_layers=1) |
Construct a patch for each free vertex in the mesh. | |
bool | using_element_on_vertex_patch () const |
True if a patch will be constructed for each free vertex. | |
unsigned | num_element_on_vertex_layers () const |
Get the number of layers of elements that will be included in an element-on-vertex patch. | |
virtual PatchSet * | get_patch_set () |
void | use_patch_set (PatchSet *patch_set) |
Private Attributes | |
VertexPatches | myVertexPatches |
GlobalPatch | myGlobalPatch |
PatchSet * | activePatchSet |
Utility class for handling variable patch types.
Common implementation for classes supporting variable patch types.
Definition at line 41 of file PatchSetUser.hpp.
MBMesquite::PatchSetUser::PatchSetUser | ( | bool | defaultGlobal | ) | [inline] |
Definition at line 44 of file PatchSetUser.hpp.
References activePatchSet, myGlobalPatch, and myVertexPatches.
: myVertexPatches( 1, true ) { if( defaultGlobal ) activePatchSet = &myGlobalPatch; else activePatchSet = &myVertexPatches; }
MBMesquite::PatchSetUser::PatchSetUser | ( | PatchSet * | my_patch_set | ) | [inline] |
Definition at line 52 of file PatchSetUser.hpp.
: myVertexPatches( 1, true ), activePatchSet( my_patch_set ) {}
MBMesquite::PatchSetUser::~PatchSetUser | ( | ) | [virtual] |
Definition at line 37 of file PatchSetUser.cpp.
{}
virtual PatchSet* MBMesquite::PatchSetUser::get_patch_set | ( | ) | [inline, virtual] |
Reimplemented in MBMesquite::FeasibleNewton, MBMesquite::NonGradient, MBMesquite::SteepestDescent, MBMesquite::ConjugateGradient, MBMesquite::QuasiNewton, and MBMesquite::TrustRegion.
Definition at line 92 of file PatchSetUser.hpp.
References activePatchSet.
{ return activePatchSet; }
unsigned MBMesquite::PatchSetUser::num_element_on_vertex_layers | ( | ) | const [inline] |
Get the number of layers of elements that will be included in an element-on-vertex patch.
Definition at line 87 of file PatchSetUser.hpp.
References MBMesquite::VertexPatches::get_num_layers(), and myVertexPatches.
{ return myVertexPatches.get_num_layers(); }
void MBMesquite::PatchSetUser::use_element_on_vertex_patch | ( | unsigned | num_layers = 1 | ) | [inline] |
Construct a patch for each free vertex in the mesh.
num_layers | Number of layers of adjacent elements to include in the patch. If unsure, use 1. |
Definition at line 72 of file PatchSetUser.hpp.
References activePatchSet, myVertexPatches, and MBMesquite::VertexPatches::set_num_layers().
Referenced by BCDTest::compare_bcd(), main(), run_global_smoother(), run_quality_optimizer(), run_smoother(), run_test(), MBMesquite::UntangleWrapper::run_wrapper(), MBMesquite::DeformingDomainWrapper::run_wrapper(), smooth_mixed_mesh(), PlanarGeometryTest::test_plane_quad_tangled(), and PlanarGeometryTest::test_plane_tri_tangled().
{ activePatchSet = &myVertexPatches; myVertexPatches.set_num_layers( num_layers ); }
void MBMesquite::PatchSetUser::use_global_patch | ( | ) | [inline] |
Use a single patch representing the entire mesh.
Definition at line 57 of file PatchSetUser.hpp.
References activePatchSet, and myGlobalPatch.
Referenced by BCDTest::compare_bcd(), create_instruction_queue(), do_smoother(), main(), run_global_smoother(), run_smoother(), run_solution_mesh_optimizer(), run_test(), MBMesquite::ShapeImprover::run_wrapper(), MBMesquite::ShapeImprovementWrapper::run_wrapper(), ParShapeImprover::ParShapeImprovementWrapper::run_wrapper(), smooth_mesh(), smooth_mixed_mesh(), SphericalGeometryTest::test_cg_mesh_cond_sphere(), PlanarGeometryTest::test_plane_quad_tangled(), PlanarGeometryTest::test_plane_tri_tangled(), and PlanarGeometryTest::test_plane_tri_xz().
{ activePatchSet = &myGlobalPatch; }
void MBMesquite::PatchSetUser::use_patch_set | ( | PatchSet * | patch_set | ) | [inline] |
Definition at line 97 of file PatchSetUser.hpp.
References activePatchSet.
{ activePatchSet = patch_set; }
bool MBMesquite::PatchSetUser::using_element_on_vertex_patch | ( | ) | const [inline] |
True if a patch will be constructed for each free vertex.
Definition at line 79 of file PatchSetUser.hpp.
References activePatchSet, and myVertexPatches.
{ return activePatchSet == &myVertexPatches; }
bool MBMesquite::PatchSetUser::using_global_patch | ( | ) | const [inline] |
Using a single patch representing the entire mesh.
Definition at line 63 of file PatchSetUser.hpp.
References activePatchSet, and myGlobalPatch.
{ return activePatchSet == &myGlobalPatch; }
PatchSet* MBMesquite::PatchSetUser::activePatchSet [private] |
Definition at line 105 of file PatchSetUser.hpp.
Referenced by get_patch_set(), PatchSetUser(), use_element_on_vertex_patch(), use_global_patch(), use_patch_set(), using_element_on_vertex_patch(), and using_global_patch().
Definition at line 104 of file PatchSetUser.hpp.
Referenced by PatchSetUser(), use_global_patch(), and using_global_patch().
Definition at line 103 of file PatchSetUser.hpp.
Referenced by num_element_on_vertex_layers(), PatchSetUser(), use_element_on_vertex_patch(), and using_element_on_vertex_patch().