SheafSystem
0.0.0.0
|
A refining section push-forward operator. Moves sections from one sec_rep_space to another using extension by zero to define the target outside the domain of the source. Refines the base of the target as specfied by a given refinement policy. More...
#include <refining_section_pusher.h>
REFINING_SECTION_PUSHER FACET | |
refining_section_pusher (const poset &xbase_space, const std::string &xrefiner_family_name, const std::string &xrefinement_policy_name, bool xauto_access) | |
Creates an instance for sections over base space xbase_space using the refiner family with name xrefiner_family_name and the policy with name xrefinement_policy_name. More... | |
field_refiner_family & | refiners () |
The family of refiners for the range. More... | |
field_refinement_policy & | policy () const |
The refinement policy of the refiners. More... | |
void | push (const field_vd &xsource, field_vd &xtarget, bool xauto_access) |
Pushes field xsource to field xtarget, pre-allocated. More... | |
bool | same_fiber (const sec_vd &x1, const sec_vd &x2) const |
True if and only if x1 and x2 have the same fiber type and dimension. More... | |
refining_section_pusher () | |
Default constructor; disabled. More... | |
ANY FACET | |
refining_section_pusher (const refining_section_pusher &xother) | |
Copy constructor. More... | |
virtual | ~refining_section_pusher () |
Destructor. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
Additional Inherited Members | |
Public Member Functions inherited from sheaf::any | |
virtual bool | is_ancestor_of (const any *other) const |
True if other conforms to this. More... | |
bool | is_same_type (const any *other) const |
True if other is the same type as this. More... | |
virtual any * | clone () const |
Virtual constructor, makes a new instance of 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 sheaf::any | |
any () | |
default constructor More... | |
A refining section push-forward operator. Moves sections from one sec_rep_space to another using extension by zero to define the target outside the domain of the source. Refines the base of the target as specfied by a given refinement policy.
Definition at line 62 of file refining_section_pusher.h.
fields::refining_section_pusher::refining_section_pusher | ( | const poset & | xbase_space, |
const std::string & | xrefiner_family_name, | ||
const std::string & | xrefinement_policy_name, | ||
bool | xauto_access | ||
) |
Creates an instance for sections over base space xbase_space using the refiner family with name xrefiner_family_name and the policy with name xrefinement_policy_name.
Definition at line 54 of file refining_section_pusher.cc.
References sheaf::poset_state_handle::get_read_access(), refiners(), sheaf::poset_state_handle::release_access(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
|
protected |
Default constructor; disabled.
Not Implemented.
Definition at line 292 of file refining_section_pusher.cc.
Referenced by same_fiber().
fields::refining_section_pusher::refining_section_pusher | ( | const refining_section_pusher & | xother | ) |
Copy constructor.
Not Implemented.
Definition at line 315 of file refining_section_pusher.cc.
References invariant(), and ~refining_section_pusher().
|
virtual |
Destructor.
Definition at line 331 of file refining_section_pusher.cc.
References invariant().
Referenced by refining_section_pusher().
|
virtual |
Class invariant.
Reimplemented from sheaf::any.
Definition at line 344 of file refining_section_pusher.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::any::invariant(), and sheaf::any::invariant_check().
Referenced by refining_section_pusher(), and ~refining_section_pusher().
fields::field_refinement_policy & fields::refining_section_pusher::policy | ( | ) | const |
The refinement policy of the refiners.
Definition at line 109 of file refining_section_pusher.cc.
References push().
Referenced by refiners().
void fields::refining_section_pusher::push | ( | const field_vd & | xsource, |
field_vd & | xtarget, | ||
bool | xauto_access | ||
) |
Pushes field xsource to field xtarget, pre-allocated.
Definition at line 129 of file refining_section_pusher.cc.
References fields::field_vd::access_request_depth(), fields::field_vd::base_space(), sheaf::poset::begin_jim_edit_mode(), fields::field_eval_iterator::coordinate_discretization_members(), fields::field_eval_iterator::coordinate_evaluator(), fields::field_vd::coordinates(), sheaf::poset::end_jim_edit_mode(), sheaf::schema_poset_member::force_cache_update(), fields::field_vd::get_read_access(), fields::field_vd::get_read_write_access(), fiber_bundle::base_space_member::host(), sheaf::depth_first_iterator::index(), geometry::sec_ed_invertible::initialize_point_locator(), sheaf::depth_first_iterator::is_done(), geometry::sec_ed_invertible::is_invertible(), fields::field_eval_iterator::next(), fields::local_field_refiner::policy(), fields::field_vd::property(), fields::field_eval_iterator::property_discretization_members(), fields::field_eval_iterator::property_evaluator(), fields::local_field_refiner::refine(), fields::field_eval_iterator::refinement_depth(), fields::field_vd::release_access(), fields::field_eval_iterator::repeat(), fields::field_vd::same_evaluation(), same_fiber(), fiber_bundle::sec_rep_space_member::schema(), fields::field_refinement_policy::should_refine(), fields::field_vd::state_is_read_accessible(), sheaf::read_write_monitor_handle::state_is_read_write_accessible(), fields::field_vd::state_is_read_write_accessible(), fields::field_eval_iterator::type_id(), and fields::field_refinement_buffer::zone_id.
Referenced by policy().
fields::field_refiner_family & fields::refining_section_pusher::refiners | ( | ) |
The family of refiners for the range.
Definition at line 102 of file refining_section_pusher.cc.
References policy().
Referenced by refining_section_pusher().
True if and only if x1 and x2 have the same fiber type and dimension.
Definition at line 262 of file refining_section_pusher.cc.
References fiber_bundle::section_space_schema_member::df(), fiber_bundle::section_space_schema_member::fiber_schema(), sheaf::poset_component::is_same_state(), refining_section_pusher(), fiber_bundle::sec_rep_space_member::schema(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
Referenced by push().