|
Hermes2D
2.0
|
A parent of all refinement selectors. Abstract class. More...
#include <selector.h>
Inheritance diagram for Hermes::Hermes2D::RefinementSelectors::Selector< Scalar >:Protected Member Functions | |
| Selector (int max_order=H2DRS_DEFAULT_ORDER) | |
| Constructor. More... | |
| virtual Selector< Scalar > * | clone ()=0 |
| Cloning for paralelism. | |
| virtual bool | select_refinement (Element *element, int quad_order, Solution< Scalar > *rsln, ElementToRefine &refinement)=0 |
| Selects a refinement. More... | |
| virtual void | generate_shared_mesh_orders (const Element *element, const int orig_quad_order, const int refinement, int tgt_quad_orders[H2D_MAX_ELEMENT_SONS], const int *suggested_quad_orders)=0 |
| Generates orders of elements which will be created due to a proposed refinement in another component that shares the same a mesh. More... | |
Protected Attributes | |
| const int | max_order |
| bool | isAClone |
| Internal. | |
Friends | |
| template<typename T > | |
| class | Adapt |
| template<typename T > | |
| class | KellyTypeAdapt |
A parent of all refinement selectors. Abstract class.
All refinement selectors have to derive from this class or its children. The interface of the class provides methods for:
Definition at line 30 of file function.h.
|
inlineprotected |
Constructor.
| [in] | max_order | A maximum order used by this selector. If it is H2DRS_DEFAULT_ORDER, a maximum supported order is used. |
Definition at line 83 of file selector.h.
|
protectedpure virtual |
Generates orders of elements which will be created due to a proposed refinement in another component that shares the same a mesh.
| [in] | element | An element which is about the be refined. |
| [in] | orig_quad_order | An encoded order of the element. |
| [in] | refinement | A refinement of the element in the mesh. Possible values are defined by the enum RefinementType. |
| [out] | tgt_quad_orders | Generated encoded orders. |
| [in] | suggested_quad_orders | Suggested encoded orders. If not NULL, the method should copy them to the output. If NULL, the method have to calculate orders. |
Implemented in Hermes::Hermes2D::RefinementSelectors::OptimumSelector< Scalar >, Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >, and Hermes::Hermes2D::RefinementSelectors::HOnlySelector< Scalar >.
Referenced by Hermes::Hermes2D::Adapt< Scalar >::fix_shared_mesh_refinements().
|
protectedpure virtual |
Selects a refinement.
This methods has to be implemented.
| [in] | element | An element which is being refined. |
| [in] | quad_order | An encoded order of the element. |
| [in] | rsln | A reference solution which is used to select a refinement. |
| [out] | refinement | A selected refinement. It contains a valid contents if and only if the method returns true. |
Implemented in Hermes::Hermes2D::RefinementSelectors::OptimumSelector< Scalar >, Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >, and Hermes::Hermes2D::RefinementSelectors::HOnlySelector< Scalar >.
Referenced by Hermes::Hermes2D::Adapt< Scalar >::adapt().
|
protected |
A maximum allowed order.
Definition at line 78 of file selector.h.