Hermes2D  2.0
Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar > Class Template Reference

A selector that increases order (i.e., it selects P-refinements only). More...

#include <selector.h>

+ Inheritance diagram for Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >:

Public Member Functions

 POnlySelector (int max_order, int order_h_inc, int order_v_inc)
 Constructor. More...
 
virtual Selector< Scalar > * clone ()
 Cloning for paralelism.
 

Protected Member Functions

virtual bool select_refinement (Element *element, int quad_order, Solution< Scalar > *rsln, ElementToRefine &refinement)
 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)
 Generates orders of elements which will be created due to a proposed refinement in another component that shares the same a mesh. More...
 
- Protected Member Functions inherited from Hermes::Hermes2D::RefinementSelectors::Selector< Scalar >
 Selector (int max_order=H2DRS_DEFAULT_ORDER)
 Constructor. More...
 

Friends

template<typename T >
class Adapt
 
template<typename T >
class KellyTypeAdapt
 

Additional Inherited Members

- Protected Attributes inherited from Hermes::Hermes2D::RefinementSelectors::Selector< Scalar >
const int max_order
 
bool isAClone
 Internal.
 

Detailed Description

template<typename Scalar>
class Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >

A selector that increases order (i.e., it selects P-refinements only).

Definition at line 32 of file function.h.

Constructor & Destructor Documentation

template<typename Scalar >
Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >::POnlySelector ( int  max_order,
int  order_h_inc,
int  order_v_inc 
)

Constructor.

Parameters
[in]max_orderA maximum order used by this selector. If it is H2DRS_DEFAULT_ORDER, a maximum supported order is used.
[in]order_h_incAn increase of the horizontal order in a quadrilateral and an order in a triangle. The increase has to be greater or equal to 0.
[in]order_v_incAn increase of the vertical order in a quadrilateral. The increase has to be greater or equal to 0.

Definition at line 44 of file selector.cpp.

Member Function Documentation

template<typename Scalar >
void Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >::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 
)
protectedvirtual

Generates orders of elements which will be created due to a proposed refinement in another component that shares the same a mesh.

If a parameter suggested_quad_orders is NULL, the method uses an encoded order in orig_quad_order. For details, see Selector::generate_shared_mesh_orders.

Implements Hermes::Hermes2D::RefinementSelectors::Selector< Scalar >.

Definition at line 80 of file selector.cpp.

template<typename Scalar >
bool Hermes::Hermes2D::RefinementSelectors::POnlySelector< Scalar >::select_refinement ( Element element,
int  quad_order,
Solution< Scalar > *  rsln,
ElementToRefine refinement 
)
protectedvirtual

Selects a refinement.

Increases an order ising POnlySelector::order_h_inc and POnlySelector::order_v_inc. Fails if the order cannot be increased due to the maximum order. For details, see Selector::select_refinement.

Implements Hermes::Hermes2D::RefinementSelectors::Selector< Scalar >.

Definition at line 54 of file selector.cpp.


The documentation for this class was generated from the following files: