37 #include "InstructionQueue.hpp"
38 #include "ShapeImprovementWrapper.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.
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...
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.
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.