![]() |
SheafSystem
0.0.0.0
|
A field refiner that introduces a new vertex in the center of a segment. More...
#include <zone_centered_segment_refiner.h>
ZONE_CENTERED_SEGMENT_REFINER FACET | |
| scoped_index | _new_point_id |
| The index of the point added by the current base space refinement. More... | |
| scoped_index | _new_seg_0_id |
| The index of the first segment added by the current base space refinement. More... | |
| scoped_index | _new_seg_1_id |
| The index of the second segment added by the current base space refinement. More... | |
| zone_centered_segment_refiner (const field_refinement_policy &xpolicy) | |
| Creates an instance for refining base space xbase_space using policy xpolicy. More... | |
| zone_centered_segment_refiner (const zone_centered_segment_refiner &xother) | |
| Copy constructor. More... | |
| zone_centered_segment_refiner () | |
| Default constructor; disabled. More... | |
| virtual void | refine_base_space (field_refinement_buffer &xbuffer) |
| Refines the base space or the target. More... | |
| void | modify_crg (field_refinement_buffer &xbuffer) |
| Modifies the cover relation graph of the base space. More... | |
| void | modify_subposets (field_refinement_buffer &xbuffer) |
| Modifies subposets in the base space. More... | |
| virtual void | refine_coordinates (field_refinement_buffer &xbuffer) |
| Refines the coordinates of the target. More... | |
LOCAL_FIELD_REFINER FACET | |
| virtual int | db () const |
| The base dimension; the dimension of the local coordinates (independent variable). More... | |
| virtual const std::string & | zone_type_name () const |
| The name of the type of zone this creates during refinement. More... | |
| virtual size_type | refined_zone_ct () const |
| The number of refined zones created by this. More... | |
| const chart_point_coord_type * | local_coordinates_map (size_type xi) const |
| The map from the local coordinates of refined zone xi the the local coordinates of the parent zone. More... | |
ANY FACET | |
| virtual zone_centered_segment_refiner * | clone () const |
| Virtual constructor, creates a new instance of the same type as this. More... | |
| virtual zone_centered_segment_refiner & | operator= (const local_field_refiner &xother) |
| Assignment operator. More... | |
| zone_centered_segment_refiner & | operator= (const zone_centered_segment_refiner &xother) |
| Assignment operator. More... | |
| virtual | ~zone_centered_segment_refiner () |
| Destructor. More... | |
| virtual bool | invariant () const |
| Class invariant. More... | |
| virtual bool | is_ancestor_of (const any *xother) const |
| Conformance test; true if other conforms to this. More... | |
Additional Inherited Members | |
Public Member Functions inherited from fields::local_field_refiner | |
| virtual | ~local_field_refiner () |
| Destructor. More... | |
| virtual const std::string & | vertex_type_name () const |
| The name of the type of vertex this creates during refinement. More... | |
| const field_refinement_policy & | policy () const |
| The refinement policy for this refiner. More... | |
| void | refine (field_refinement_buffer &xbuffer) |
| Refines the zone specified by xbuffer.zone_id one level and evaluates the coordinates section on the refined zone. More... | |
| const block< scoped_index > & | refined_zone_ids () const |
| The member ids of the zones created by the most recent execution of refine(). More... | |
Public Member Functions inherited from sheaf::any | |
| bool | is_same_type (const any *other) const |
| True if other is the same type as this. More... | |
| virtual | ~any () |
| Destructor. More... | |
| bool | invariant_check () const |
| True if invariant checking is enabled. More... | |
| void | enable_invariant_check () const |
| Enable invariant checking. More... | |
| void | disable_invariant_check () const |
| Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing invariant checking during multi-phase initialization. More... | |
| int | disable_invariance_check_request_depth () const |
| Number of times disable_invariant_check has been called without matching call to enable_invariant_check. More... | |
Protected Member Functions inherited from fields::local_field_refiner | |
| local_field_refiner () | |
| Default constructor; disabled. More... | |
| local_field_refiner (const local_field_refiner &xother) | |
| Copy constructor. More... | |
| local_field_refiner (const field_refinement_policy &xpolicy) | |
| Creates an instance for refining xtarget using xsource as the reference field. More... | |
| void | initialize_buffers () |
| Initializes the dof tuple and refined zone buffers. More... | |
| pod_index_type | create_vertex (base_space_poset &xbase, int xdepth) |
| Creates a new vertex at depth xdepth. More... | |
| pod_index_type | create_zone (base_space_poset &xbase, int xdepth) |
| Creates a new quadrangle in base space xbase, with refinement depth xdepth. More... | |
Protected Member Functions inherited from sheaf::any | |
| any () | |
| default constructor More... | |
Protected Attributes inherited from fields::local_field_refiner | |
| const field_refinement_policy & | _policy |
| The refinement policy. More... | |
| block< scoped_index > | _point_dof_tuple_ids |
| The dof tuple index for point cells at various depths. More... | |
| block< scoped_index > | _zone_dof_tuple_ids |
| The dof tuple index for quadrangle cells at various depths. More... | |
| block< scoped_index > | _refined_zone_ids |
| The member ids of the zones created by the most recent execution of refine(). More... | |
A field refiner that introduces a new vertex in the center of a segment.
Definition at line 38 of file zone_centered_segment_refiner.h.
| fields::zone_centered_segment_refiner::zone_centered_segment_refiner | ( | const field_refinement_policy & | xpolicy | ) |
Creates an instance for refining base space xbase_space using policy xpolicy.
Definition at line 42 of file zone_centered_segment_refiner.cc.
References invariant(), fields::local_field_refiner::policy(), and zone_centered_segment_refiner().
| fields::zone_centered_segment_refiner::zone_centered_segment_refiner | ( | const zone_centered_segment_refiner & | xother | ) |
Copy constructor.
Not Implemented.
Definition at line 59 of file zone_centered_segment_refiner.cc.
References invariant(), and zone_centered_segment_refiner().
|
protected |
Default constructor; disabled.
Not Implemented.
Definition at line 78 of file zone_centered_segment_refiner.cc.
References invariant(), and refine_base_space().
Referenced by clone(), and zone_centered_segment_refiner().
|
virtual |
Destructor.
Definition at line 491 of file zone_centered_segment_refiner.cc.
References invariant().
Referenced by operator=().
|
virtual |
Virtual constructor, creates a new instance of the same type as this.
Implements fields::local_field_refiner.
Definition at line 428 of file zone_centered_segment_refiner.cc.
References invariant(), sheaf::any::is_same_type(), operator=(), and zone_centered_segment_refiner().
Referenced by local_coordinates_map().
|
virtual |
The base dimension; the dimension of the local coordinates (independent variable).
Implements fields::local_field_refiner.
Definition at line 315 of file zone_centered_segment_refiner.cc.
References zone_type_name().
Referenced by refine_coordinates().
|
virtual |
Class invariant.
Reimplemented from fields::local_field_refiner.
Definition at line 507 of file zone_centered_segment_refiner.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), fields::local_field_refiner::invariant(), sheaf::any::invariant_check(), and is_ancestor_of().
Referenced by clone(), operator=(), zone_centered_segment_refiner(), and ~zone_centered_segment_refiner().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from fields::local_field_refiner.
Definition at line 537 of file zone_centered_segment_refiner.cc.
Referenced by invariant(), and operator=().
|
virtual |
The map from the local coordinates of refined zone xi the the local coordinates of the parent zone.
Implements fields::local_field_refiner.
Definition at line 380 of file zone_centered_segment_refiner.cc.
References clone(), and refined_zone_ct().
Referenced by refined_zone_ct().
|
protected |
Modifies the cover relation graph of the base space.
Definition at line 127 of file zone_centered_segment_refiner.cc.
References _new_point_id, _new_seg_0_id, _new_seg_1_id, fields::field_refinement_buffer::base_space, fields::local_field_refiner::create_vertex(), fields::local_field_refiner::create_zone(), sheaf::poset_state_handle::in_jim_edit_mode(), sheaf::LOWER, modify_subposets(), sheaf::scoped_index::pod(), sheaf::scoped_index::same_scope(), and fields::field_refinement_buffer::zone_id.
Referenced by refine_base_space().
|
protected |
Modifies subposets in the base space.
Definition at line 192 of file zone_centered_segment_refiner.cc.
References _new_point_id, _new_seg_0_id, _new_seg_1_id, fields::field_refinement_buffer::base_space, fields::field_refinement_buffer::coord_disc_seq_id_space, fiber_bundle::base_space_poset::elements(), fields::field_refinement_buffer::elements_id_space, sheaf::scattered_insertion_index_space_handle::insert(), sheaf::subposet::insert_member(), sheaf::explicit_index_space_handle::pod(), sheaf::gathered_insertion_index_space_handle::push_back(), refine_coordinates(), sheaf::gathered_insertion_index_space_handle::remove(), sheaf::subposet::remove_member(), fiber_bundle::base_space_poset::vertices(), fields::field_refinement_buffer::vertices_id_space, and fields::field_refinement_buffer::zone_id.
Referenced by modify_crg(), and refine_base_space().
|
virtual |
Assignment operator.
Reimplemented from fields::local_field_refiner.
Definition at line 450 of file zone_centered_segment_refiner.cc.
References invariant(), and is_ancestor_of().
Referenced by clone().
| fields::zone_centered_segment_refiner & fields::zone_centered_segment_refiner::operator= | ( | const zone_centered_segment_refiner & | xother | ) |
Assignment operator.
Definition at line 470 of file zone_centered_segment_refiner.cc.
References invariant(), is_ancestor_of(), and ~zone_centered_segment_refiner().
|
protectedvirtual |
Refines the base space or the target.
Implements fields::local_field_refiner.
Definition at line 95 of file zone_centered_segment_refiner.cc.
References _new_seg_0_id, _new_seg_1_id, fields::local_field_refiner::_refined_zone_ids, fields::field_refinement_buffer::base_space, sheaf::poset_state_handle::in_jim_edit_mode(), modify_crg(), modify_subposets(), sheaf::auto_block< T, S >::push_back(), and sheaf::auto_block< T, S >::set_ct().
Referenced by zone_centered_segment_refiner().
|
protectedvirtual |
Refines the coordinates of the target.
Implements fields::local_field_refiner.
Definition at line 262 of file zone_centered_segment_refiner.cc.
References _new_point_id, sheaf::auto_block< T, S >::base(), fiber_bundle::section_evaluator::center(), fields::field_refinement_buffer::coord_dofs, fields::field_refinement_buffer::coord_evaluator, fields::field_refinement_buffer::coord_value, fields::field_vd::coordinates(), sheaf::auto_block< T, S >::ct(), db(), fields::field_refinement_buffer::local_coords, fiber_bundle::sec_vd::put_fiber(), fields::field_refinement_buffer::reserve_coord_fiber(), fields::field_refinement_buffer::target, fiber_bundle::section_evaluator::value_at_coord(), and fields::field_refinement_buffer::zone_id.
Referenced by modify_subposets().
|
virtual |
The number of refined zones created by this.
Implements fields::local_field_refiner.
Definition at line 358 of file zone_centered_segment_refiner.cc.
References local_coordinates_map().
Referenced by local_coordinates_map(), and zone_type_name().
|
virtual |
The name of the type of zone this creates during refinement.
Implements fields::local_field_refiner.
Definition at line 338 of file zone_centered_segment_refiner.cc.
References refined_zone_ct().
Referenced by db().
|
protected |
The index of the point added by the current base space refinement.
Definition at line 69 of file zone_centered_segment_refiner.h.
Referenced by modify_crg(), modify_subposets(), and refine_coordinates().
|
protected |
The index of the first segment added by the current base space refinement.
Definition at line 74 of file zone_centered_segment_refiner.h.
Referenced by modify_crg(), modify_subposets(), and refine_base_space().
|
protected |
The index of the second segment added by the current base space refinement.
Definition at line 79 of file zone_centered_segment_refiner.h.
Referenced by modify_crg(), modify_subposets(), and refine_base_space().