Hermes2D
3.0
|
Hermes::Order permutator. Generates all permutations of orders from a set defined by a range of orders. More...
#include <order_permutator.h>
Public Member Functions | |
OrderPermutator (unsigned short start_quad_order=0, unsigned short end_quad_order=0, bool iso_p=false, unsigned short *tgt_quad_order=nullptr) | |
Constructor. More... | |
bool | next () |
Moves to the next permutation of orders. More... | |
void | reset () |
Resets permutator to the starting order. | |
unsigned short | get_order_h () const |
Returns the current horizontal order. More... | |
unsigned short | get_order_v () const |
Returns the current vertical order. More... | |
unsigned short | get_quad_order () const |
Returns the current order in an encoded form. More... | |
unsigned short | get_start_quad_order () const |
Returns the starting order in an encoded form. More... | |
unsigned short | get_end_quad_order () const |
Returns the ending order in an encoded form. More... | |
Protected Attributes | |
unsigned short | order_h |
The current horizontal order. | |
unsigned short | order_v |
The current verical order. | |
unsigned short | start_order_h |
The starting horizontal order. | |
unsigned short | start_order_v |
The starting vertical order. | |
unsigned short | end_order_h |
The ending horizontal order. | |
unsigned short | end_order_v |
The ending vertical order. | |
bool | iso_p |
True if orders is incresed in both the horizontal order and the vertical order are increased simultaneously. | |
unsigned short * | tgt_quad_order |
A pointer to which a current order is stored in encoded form. Ignored if nullptr. | |
Hermes::Order permutator. Generates all permutations of orders from a set defined by a range of orders.
Used to generate all possible generation of horizontal and vertical orders bettween the starting order and the ending order. Both the starting order and the ending order are included.
Definition at line 37 of file order_permutator.h.
Hermes::Hermes2D::RefinementSelectors::OrderPermutator::OrderPermutator | ( | unsigned short | start_quad_order = 0 , |
unsigned short | end_quad_order = 0 , |
||
bool | iso_p = false , |
||
unsigned short * | tgt_quad_order = nullptr |
||
) |
Constructor.
[in] | start_quad_order | The starting order in an encoded form. |
[in] | end_quad_order | The ending order in an encoded form. |
[in] | iso_p | True if both orders (i.e. horizontal and vertical) should be increased simultaneously. |
[in] | tgt_quad_order | A point to a location to which a current orders (i.e. horizontal and vertical) are stored in an encoded form. Ignored if nullptr. |
Definition at line 24 of file order_permutator.cpp.
unsigned short Hermes::Hermes2D::RefinementSelectors::OrderPermutator::get_end_quad_order | ( | ) | const |
Returns the ending order in an encoded form.
Definition at line 88 of file order_permutator.cpp.
unsigned short Hermes::Hermes2D::RefinementSelectors::OrderPermutator::get_order_h | ( | ) | const |
Returns the current horizontal order.
Definition at line 68 of file order_permutator.cpp.
Referenced by Hermes::Hermes2D::RefinementSelectors::ProjBasedSelector< Scalar >::calc_error_cand_element().
unsigned short Hermes::Hermes2D::RefinementSelectors::OrderPermutator::get_order_v | ( | ) | const |
Returns the current vertical order.
Definition at line 73 of file order_permutator.cpp.
Referenced by Hermes::Hermes2D::RefinementSelectors::ProjBasedSelector< Scalar >::calc_error_cand_element().
unsigned short Hermes::Hermes2D::RefinementSelectors::OrderPermutator::get_quad_order | ( | ) | const |
Returns the current order in an encoded form.
Definition at line 78 of file order_permutator.cpp.
Referenced by Hermes::Hermes2D::RefinementSelectors::ProjBasedSelector< Scalar >::calc_error_cand_element().
unsigned short Hermes::Hermes2D::RefinementSelectors::OrderPermutator::get_start_quad_order | ( | ) | const |
Returns the starting order in an encoded form.
Definition at line 83 of file order_permutator.cpp.
bool Hermes::Hermes2D::RefinementSelectors::OrderPermutator::next | ( | ) |
Moves to the next permutation of orders.
Definition at line 32 of file order_permutator.cpp.
Referenced by Hermes::Hermes2D::RefinementSelectors::ProjBasedSelector< Scalar >::calc_error_cand_element().