37 #include "InstructionQueue.hpp"
39 #include "MeshSet.hpp"
40 #include "MsqTimer.hpp"
41 #include "MsqDebug.hpp"
54 : inverseMeanRatio(0),
TerminationCriterion * termInner
void set_averaging_method(AveragingMethod method, MsqError &err)
void set_gradient_type(GRADIENT_TYPE grad)
Set gradType to either NUMERICAL_GRADIENT or ANALYTICAL_GRADIENT.
void add_culling_method(enum PatchData::culling_method cm)
Sets on the culling method passed as argument.
virtual void set_patch_type(PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0)
Sets the Patch Type.
Calculates the L_p objective function raised to the pth power. That is, sums the p_th powers of (the ...
Used to hold the error state and return it to the application.
Computes the inverse mean ratio of given element.
The TerminationCriterion class contains functionality to terminate the VertexMover's optimization...
virtual void run_instructions(MeshSet &ms, MsqError &err)
run_instructions runs the wrapper on the given MeshSet.
every differentiable function should have an analytical gradient implemented.
TerminationCriterion * termOuter
virtual double loop_over_mesh(MeshSet &ms, MsqError &err)
Does one sweep over the mesh and assess the quality with the metrics previously added.
void set_hessian_type(HESSIAN_TYPE ht)
Sets hessianType for this metric.
virtual double loop_over_mesh(MeshSet &ms, MsqError &err)
Improves the quality of the MeshSet, calling some methods specified in a class derived from VertexMov...
A QualityAssessor instance can be inserted into an InstructionQueue to calculate and summarize regist...
FeasibleNewton * feasNewt
virtual ~ShapeImprovementWrapper()
Destructor must delete the objects inserted in the queue.
Terminates when the number of iterations exceeds a given integer.
ShapeQualityMetric * inverseMeanRatio
void set_gradient_type(GRADIENT_TYPE grad)
Sets gradType for this metric.
High Performance implementation of the Feasible Newton algorythm.
void set_outer_termination_criterion(TerminationCriterion *crit)
Sets in the termination criterion for the outer loop over patches.
ShapeImprovementWrapper(MsqError &err, double cpu_time=0.0, double grad_norm=1.e-6)
void add_criterion_type_with_int(TCType tc_type, int bound, MsqError &err)
Sets the criterion by specifing the TCType and the integer value.
#define MSQ_ERRRTN(err)
If passed error is true, return from a void function.
void set_inner_termination_criterion(TerminationCriterion *crit)
Sets in the termination criterion for the concrete solver's optimization.
void disable_printing_results()
Do not print results of assessment.
The MeshSet class stores one or more Mesquite::Mesh pointers and manages access to the mesh informati...