ug4
|
Adjusts RM_FULL-selected quadrilaterals that cannot be fully refined. More...
#include <shadow_copy_adjuster.h>
Public Member Functions | |
virtual void | ref_marks_changed (IRefiner &ref, const std::vector< Vertex * > &vrts, const std::vector< Edge * > &edges, const std::vector< Face * > &faces, const std::vector< Volume * > &vols) |
virtual | ~ShadowCopyAdjuster () |
Public Member Functions inherited from ug::IRefMarkAdjuster | |
virtual void | coarsen_marks_changed (IRefiner &ref, const std::vector< Vertex * > &vrts, const std::vector< Edge * > &edges, const std::vector< Face * > &faces, const std::vector< Volume * > &vols) |
virtual void | enable (bool enable) |
virtual bool | enabled () const |
IRefMarkAdjuster () | |
virtual | ~IRefMarkAdjuster () |
void | enable_node_dependency_order_1 (bool bEnable) |
enables or disables node-dependency-order-1. More... | |
bool | node_dependency_order_1_enabled () |
enables or disables node-dependency-order-1. More... | |
Adjusts RM_FULL-selected quadrilaterals that cannot be fully refined.
In a multigrid with SHADOW-COPY elements (created, e.g., by anisotropic adaptive refinement), it can happen that a surface quadrilateral with a SHADOW_COPY side is marked for full refinement. But that cannot take place because the SHADOW-COPY side is already copy-refined. This can be solved if the element is marked RM_CLOSURE instead and its SHADOW_COPY edge as well.
|
virtual |
|
virtual |
Reimplemented from ug::IRefMarkAdjuster.
References ug::Grid::associated_elements(), ug::IRefiner::get_mark(), ug::IRefiner::grid(), ug::IRefiner::mark(), ug::IRefiner::marked_full(), ug::RM_CLOSURE, ug::RM_FULL, and ug::PointerConstArray< TPtr >::size().