1 #include "refinement_selectors/candidates.h"
7 namespace RefinementSelectors
23 throw Hermes::Exceptions::Exception(
"Invalid adapt type %d.", cand_list);
41 default:
throw Hermes::Exceptions::Exception(
"Invalid adapt type %d.", cand_list);
return false;
58 default:
throw Hermes::Exceptions::Exception(
"Invalid adapt type %d.", cand_list);
return false;
75 default:
throw Hermes::Exceptions::Exception(
"Invalid adapt type %d.", cand_list);
return false;
80 : dofs(-1), split(split), score(0) {
81 p[0] = order_elems[0];
82 p[1] = order_elems[1];
83 p[2] = order_elems[2];
84 p[3] = order_elems[3];
87 Cand::Cand(
const RefinementType split,
const unsigned short order_elem0,
const unsigned short order_elem1,
const unsigned short order_elem2,
const unsigned short order_elem3)
88 : dofs(-1), split(split), score(0) {
103 throw Hermes::Exceptions::Exception(
"Invalid refinement type %d.",
split);
RefinementType split
A refinement, see the enum RefinementType.
HERMES_API bool is_p_aniso(const CandList cand_list)
Returns true if a predefined candidate list may contain candidates with an anisotropic change of orde...
Cand(const RefinementType split, const unsigned short order_elems[H2D_MAX_ELEMENT_SONS])
Constructor.
P-candidates only. Hermes::Orders are modified non-uniformly.
H-candidates only. Hermes::Orders are not modified.
HERMES_API const char * get_cand_list_str(const CandList cand_list)
Returns a string representation of a predefined candidate list.
RefinementType
Possible refinements of an element.
HERMES_API bool is_hp(const CandList cand_list)
Returns true if a predefined candidate list may contain candidates that are HP.
H-, ANISO- and P-candidates. Hermes::Orders are modified non-uniformly.
H- and ANISO-candidates only. Hermes::Orders are not modified.
CandList
Predefined list of candidates.
ANISO-refienement. The element is split along the vertical axis. Quadrilaterals only.
H- and P-candidates only. Hermes::Orders are modified non-uniformly.
H- and P-candidates only. Hermes::Orders are modified uniformly.
No adaptivity. (Used only in modules.)
HERMES_API bool is_p(const CandList cand_list)
Returns true if a predefined candidate list may contain candidates that increase P.
unsigned short p[H2D_MAX_ELEMENT_SONS]
Encoded orders of sons, see ::H2D_MAKE_QUAD_ORDER. In a case of a triangle, the vertical order is equ...
ANISO-refienement. The element is split along the horizontal axis. Quadrilaterals only...
#define H2D_MAX_ELEMENT_SONS
Macros.
H-, ANISO- and P-candidates. Hermes::Orders are modified uniformly.
unsigned char get_num_elems() const
Returns a number of elements of a candidate.
P-candidates only. Hermes::Orders are modified uniformly.