#include <SmartLaplacianSmoother.hpp>
Public Member Functions | |
SmartLaplacianSmoother (ObjectiveFunction *obj_func, MsqError &err) | |
~SmartLaplacianSmoother () | |
SmartLaplacianSmoother (ObjectiveFunction *obj_func, MsqError &err) | |
~SmartLaplacianSmoother () | |
Public Member Functions inherited from VertexMover | |
virtual | ~VertexMover () |
virtual double | loop_over_mesh (MeshSet &ms, MsqError &err) |
Improves the quality of the MeshSet, calling some methods specified in a class derived from VertexMover. More... | |
virtual | ~VertexMover () |
virtual double | loop_over_mesh (MeshSet &ms, MsqError &err) |
This is the "run" function of PatchDataUser. It can do anything really. More... | |
Public Member Functions inherited from QualityImprover | |
virtual | ~QualityImprover () |
void | set_name (msq_std::string name) |
provides a name to the QualityImprover (use it in constructor). More... | |
virtual msq_std::string | get_name () |
retrieves the QualityImprover name. A default name should be set in the constructor. More... | |
virtual AlgorithmType | get_algorithm_type () |
Return the algorithm type (to avoid RTTI use). More... | |
void | set_inner_termination_criterion (TerminationCriterion *crit) |
Sets in the termination criterion for the concrete solver's optimization. More... | |
void | set_outer_termination_criterion (TerminationCriterion *crit) |
Sets in the termination criterion for the outer loop over patches. More... | |
virtual | ~QualityImprover () |
void | set_name (msq_std::string name) |
provides a name to the QualityImprover (use it in constructor). More... | |
virtual msq_std::string | get_name () |
retrieves the QualityImprover name. A default name should be set in the constructor. More... | |
virtual AlgorithmType | get_algorithm_type () |
Return the algorithm type (to avoid RTTI use). More... | |
void | set_inner_termination_criterion (TerminationCriterion *crit) |
Sets in the termination criterion for the concrete solver's optimization. More... | |
void | set_outer_termination_criterion (TerminationCriterion *crit) |
Sets in the termination criterion for the outer loop over patches. More... | |
Public Member Functions inherited from PatchDataUser | |
virtual | ~PatchDataUser () |
virtual void | set_patch_type (PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0) |
Sets the Patch Type. More... | |
PatchData::PatchType | get_patch_type () |
Returns the Patch Type. More... | |
int | get_nb_layers (MsqError &err) |
Returns number of layers (if relevant for partition algorythm). More... | |
void | add_culling_method (enum PatchData::culling_method cm) |
Sets on the culling method passed as argument. More... | |
void | no_culling_method () |
Sets off all culling methods. More... | |
void | remove_culling_method (enum PatchData::culling_method cm) |
Sets off the culling method passed as argument. More... | |
long unsigned int | get_culling_method_bits () |
Returns the bitset containing culling methods flags. More... | |
void | set_all_parameters (PatchDataParameters ¶ms) |
PatchDataParameters & | get_all_parameters () |
Returns the PatchDataParameters object. More... | |
void | set_global_patch (PatchData *pd, MsqError &err) |
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. More... | |
PatchData * | get_global_patch () |
Returns the Global Patch. More... | |
void | no_global_patch () |
Sets the Global Patch pointer to NULL. More... | |
virtual | ~PatchDataUser () |
virtual void | set_patch_type (PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0) |
Sets the Patch Type. More... | |
PatchData::PatchType | get_patch_type () |
Returns the Patch Type. More... | |
int | get_nb_layers (MsqError &err) |
Returns number of layers (if relevant for partition algorythm). More... | |
void | add_culling_method (enum PatchData::culling_method cm) |
Sets on the culling method passed as argument. More... | |
void | no_culling_method () |
Sets off all culling methods. More... | |
void | remove_culling_method (enum PatchData::culling_method cm) |
Sets off the culling method passed as argument. More... | |
long unsigned int | get_culling_method_bits () |
Returns the bitset containing culling methods flags. More... | |
void | set_all_parameters (PatchDataParameters ¶ms) |
PatchDataParameters & | get_all_parameters () |
Returns the PatchDataParameters object. More... | |
void | set_global_patch (PatchData *pd, MsqError &err) |
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. More... | |
PatchData * | get_global_patch () |
Returns the Global Patch. More... | |
void | no_global_patch () |
Sets the Global Patch pointer to NULL. More... | |
Protected Member Functions | |
virtual void | initialize (PatchData &pd, MsqError &err) |
virtual void | optimize_vertex_positions (PatchData &pd, MsqError &err) |
virtual void | initialize_mesh_iteration (PatchData &pd, MsqError &err) |
virtual void | terminate_mesh_iteration (PatchData &pd, MsqError &err) |
virtual void | cleanup () |
virtual void | initialize (PatchData &pd, MsqError &err) |
virtual void | optimize_vertex_positions (PatchData &pd, MsqError &err) |
virtual void | initialize_mesh_iteration (PatchData &pd, MsqError &err) |
virtual void | terminate_mesh_iteration (PatchData &pd, MsqError &err) |
virtual void | cleanup () |
Protected Member Functions inherited from VertexMover | |
VertexMover () | |
size_t | check_feasible (PatchData &pd, MsqError &err) |
CHECK FEASIBLE IS NOT YET IMPLEMENTED. More... | |
VertexMover () | |
size_t | check_feasible (PatchData &pd, MsqError &err) |
CHECK FEASIBLE IS NOT YET IMPLEMENTED. More... | |
Protected Member Functions inherited from QualityImprover | |
QualityImprover () | |
const MeshSet * | get_mesh_set () const |
MeshSet * | get_mesh_set () |
void | set_mesh_set (MeshSet *ms) |
TerminationCriterion * | get_outer_termination_criterion () |
return the outer termination criterion pointer More... | |
TerminationCriterion * | get_inner_termination_criterion () |
return the inner termination criterion pointer More... | |
QualityImprover () | |
const MeshSet * | get_mesh_set () const |
MeshSet * | get_mesh_set () |
void | set_mesh_set (MeshSet *ms) |
TerminationCriterion * | get_outer_termination_criterion () |
return the outer termination criterion pointer More... | |
TerminationCriterion * | get_inner_termination_criterion () |
return the inner termination criterion pointer More... | |
Protected Member Functions inherited from PatchDataUser | |
PatchDataUser () | |
PatchDataUser () | |
Private Attributes | |
QualityMetric * | edgeQM |
ObjectiveFunction * | defaultObjFunc |
Additional Inherited Members | |
Public Types inherited from PatchDataUser | |
enum | AlgorithmType { QUALITY_IMPROVER, QUALITY_ASSESSOR, MESH_TRANSFORM, TARGET_CALCULATOR, QUALITY_IMPROVER, QUALITY_ASSESSOR, MESH_TRANSFORM, TARGET_CALCULATOR } |
enum | AlgorithmType { QUALITY_IMPROVER, QUALITY_ASSESSOR, MESH_TRANSFORM, TARGET_CALCULATOR, QUALITY_IMPROVER, QUALITY_ASSESSOR, MESH_TRANSFORM, TARGET_CALCULATOR } |
Protected Attributes inherited from VertexMover | |
ObjectiveFunction * | objFunc |
Moves free center vertex to the average of the neighboring vertices if that move does not decrease the given objective function value.
Definition at line 55 of file includeLinks/SmartLaplacianSmoother.hpp.
SmartLaplacianSmoother | ( | ObjectiveFunction * | obj_func, |
MsqError & | err | ||
) |
Definition at line 56 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
References SmartLaplacianSmoother::defaultObjFunc, SmartLaplacianSmoother::edgeQM, PatchData::ELEMENTS_ON_VERTEX_PATCH, MSQ_ERRRTN, VertexMover::objFunc, QualityImprover::set_name(), and PatchDataUser::set_patch_type().
Definition at line 75 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
References SmartLaplacianSmoother::defaultObjFunc, and SmartLaplacianSmoother::edgeQM.
SmartLaplacianSmoother | ( | ObjectiveFunction * | obj_func, |
MsqError & | err | ||
) |
|
protectedvirtual |
Implements VertexMover.
Definition at line 151 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
|
protectedvirtual |
Implements VertexMover.
Implements VertexMover.
Definition at line 81 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
Implements VertexMover.
Implements VertexMover.
Implements VertexMover.
Definition at line 86 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
Implements VertexMover.
Definition at line 97 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
References Mesquite::centroid_smooth_mesh(), ObjectiveFunction::evaluate(), PatchData::get_adjacent_vertex_indices(), PatchData::get_vertex_array(), MSQ_ERRRTN, MsqFreeVertexIndexIterator::next(), VertexMover::objFunc, MsqFreeVertexIndexIterator::reset(), PatchData::snap_vertex_to_domain(), and MsqFreeVertexIndexIterator::value().
Implements VertexMover.
Implements VertexMover.
Definition at line 145 of file QualityImprover/VertexMover/LaplacianSmoothers/SmartLaplacianSmoother.cpp.
Implements VertexMover.
|
private |
Definition at line 71 of file includeLinks/SmartLaplacianSmoother.hpp.
Referenced by SmartLaplacianSmoother::SmartLaplacianSmoother(), and SmartLaplacianSmoother::~SmartLaplacianSmoother().
|
private |
Definition at line 69 of file includeLinks/SmartLaplacianSmoother.hpp.
Referenced by SmartLaplacianSmoother::SmartLaplacianSmoother(), and SmartLaplacianSmoother::~SmartLaplacianSmoother().