SheafSystem
0.0.0.0
|
A map from one base space to another generated by coordinate sections. More...
#include <base_space_map.h>
BASE_SPACE_MAP FACET | |
base_space_map (const base_space_map &xother) | |
Copy constructor. More... | |
base_space_map (const sec_ed &xdomain_coord, const sec_ed &xrange_coord, bool xauto_access) | |
Creates the map induced by xdomain_coord and xrange_coord. More... | |
virtual | ~base_space_map () |
Destructor. More... | |
const base_space_poset & | domain () const |
The domain of the push-forward map. More... | |
const geometry::sec_ed_invertible & | domain_coords () const |
The coordinates section for the domain. More... | |
const base_space_poset & | range () const |
The range of the push-forward map. More... | |
const sec_ed & | range_coords () const |
The coordinates section for the range. More... | |
void | push (const sec_vd &xinput, sec_vd &xoutput, bool xauto_access) |
Pushes section xinput on domain() to xoutput on range(). More... | |
void | push (const block< sec_vd *> &xinputs, block< sec_vd *> &xoutputs, bool xauto_access) |
Pushes each section in xinput on domain() to the corresponding section in xoutput on range(). More... | |
bool | same_base (const sec_vd &xsec1, const sec_vd &xsec2, bool xauto_access) const |
True if and only if xsec1 and xsec2 have the same base space. More... | |
bool | same_rep (const sec_vd &xsec1, const sec_vd &xsec2, bool xauto_access) const |
True if and only if xsec1 and xsec2 have the same rep. More... | |
bool | same_fiber (const sec_vd &xsec1, const sec_vd &xsec2, bool xauto_access) const |
True if and only if xsec1 and xsec2 have the same fiber type and dimension. More... | |
base_space_map_push_action & | overlap_action () const |
Computes value of destination dofs where dst overlaps src. More... | |
base_space_map_push_action & | default_overlap_action () const |
Overlap action if none specified by clinet. More... | |
base_space_map_push_action & | extension_action () const |
Computes value of destination dofs where dst does not overlap src. More... | |
base_space_map_push_action & | default_extension_action () const |
Extension action if none specified by clinet. More... | |
void | put_overlap_action (base_space_map_push_action &xoverlap_action) |
Sets the overlap action to xoverlap_action. More... | |
void | put_extension_action (base_space_map_push_action &xextension_action) |
Sets the extension action to xextension_action. More... | |
base_space_map () | |
Default constructor; protected to prevent default construction. More... | |
ANY FACET | |
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 map from one base space to another generated by coordinate sections.
Definition at line 75 of file base_space_map.h.
fields::base_space_map::base_space_map | ( | const base_space_map & | xother | ) |
Copy constructor.
Not Implemented.
Definition at line 148 of file base_space_map.cc.
References invariant(), and ~base_space_map().
fields::base_space_map::base_space_map | ( | const sec_ed & | xdomain_coord, |
const sec_ed & | xrange_coord, | ||
bool | xauto_access | ||
) |
Creates the map induced by xdomain_coord and xrange_coord.
Definition at line 90 of file base_space_map.cc.
References sheaf::read_write_monitor_handle::access_request_depth(), sheaf::abstract_poset_member::attach_to_state(), fiber_bundle::section_space_schema_poset::base_space(), base_space_map(), domain(), sheaf::poset_component::get_read_access(), fiber_bundle::section_space_schema_member::host(), invariant(), range(), sheaf::poset_component::release_access(), same_fiber(), fiber_bundle::sec_rep_space_member::schema(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
|
virtual |
Destructor.
Definition at line 164 of file base_space_map.cc.
References fiber_bundle::sec_tuple::detach_from_state(), domain(), and sheaf::index_space_handle::release_id_space().
Referenced by base_space_map().
|
protected |
Default constructor; protected to prevent default construction.
Not Implemented.
Definition at line 587 of file base_space_map.cc.
References geometry::sec_ed_invertible::all_points_at_value_ua(), sheaf::abstract_poset_member::attach_to_state(), fiber_bundle::section_space_schema_member::base_space(), fiber_bundle::section_space_schema_member::base_space_id(), geometry::sec_ed_invertible::branch_points_at_value_ua(), sheaf::any::clone(), sheaf::auto_block< T, un_block_initialization_policy< T > >::ct(), sheaf::auto_block< T, S >::ct(), fiber_bundle::sec_tuple::detach_from_state(), fields::pullback_map_entry::disc_id, fiber_bundle::discretization_context::disc_id, domain(), domain_coords(), fields::pullback_map_entry::domain_pt, sheaf::DOWN, fiber_bundle::section_space_schema_member::evaluation(), fiber_bundle::eval_iterator::evaluator(), fields::base_space_map_push_action::finalize(), fiber_bundle::eval_iterator::force_is_done(), sheaf::depth_first_iterator::force_is_done(), fiber_bundle::eval_iterator::gather_dofs(), fiber_bundle::sec_rep_space_member::get_branch_id_space(), fields::property_disc_iterator::get_prop_disc_values(), fiber_bundle::sec_vd::host(), sheaf::index_space_handle::hub_pod(), sheaf::poset_component::index(), sheaf::depth_first_iterator::index(), fields::base_space_map_push_action::initialize(), geometry::sec_ed_invertible::initialize_point_locator(), sheaf::invalid_pod_index(), fiber_bundle::chart_point::invalidate(), sheaf::scoped_index::invalidate(), invariant(), sheaf::depth_first_iterator::is_done(), geometry::sec_ed_invertible::is_invertible(), sheaf::abstract_poset_member::is_jim(), fiber_bundle::sec_rep_space_member::is_multisection(), fiber_bundle::base_space_poset::max_db(), sheaf::poset_state_handle::member_index_ub(), fields::property_disc_iterator::new_property_disc_iterator(), sheaf::depth_first_iterator::next(), sheaf::NOT_STRICT, sheaf::index_space_handle::pod(), sheaf::scoped_index::pod(), geometry::sec_ed_invertible::point_at_value_ua(), fields::property_disc_iterator::property_discretization_members(), sheaf::auto_block< T, S >::push_back(), range_coords(), sheaf::index_space_handle::release_id_space(), sheaf::auto_block< T, S >::reserve(), fiber_bundle::sec_rep_space_member::schema(), sheaf::auto_block< T, S >::set_ct(), sheaf::read_write_monitor_handle::state_is_read_accessible(), sheaf::depth_first_iterator::truncate(), fiber_bundle::section_evaluator::value_at_coord(), and fiber_bundle::discretization_context::values.
Referenced by base_space_map(), and put_extension_action().
fields::base_space_map_push_action & fields::base_space_map::default_extension_action | ( | ) | const |
Extension action if none specified by clinet.
Definition at line 537 of file base_space_map.cc.
References put_overlap_action().
Referenced by extension_action().
fields::base_space_map_push_action & fields::base_space_map::default_overlap_action | ( | ) | const |
Overlap action if none specified by clinet.
Definition at line 523 of file base_space_map.cc.
References extension_action().
Referenced by overlap_action().
const fiber_bundle::base_space_poset & fields::base_space_map::domain | ( | ) | const |
The domain of the push-forward map.
Definition at line 197 of file base_space_map.cc.
References domain_coords().
Referenced by base_space_map(), push(), and ~base_space_map().
const geometry::sec_ed_invertible & fields::base_space_map::domain_coords | ( | ) | const |
The coordinates section for the domain.
Definition at line 214 of file base_space_map.cc.
References range().
Referenced by base_space_map(), domain(), and push().
fields::base_space_map_push_action & fields::base_space_map::extension_action | ( | ) | const |
Computes value of destination dofs where dst does not overlap src.
Definition at line 530 of file base_space_map.cc.
References default_extension_action().
Referenced by default_overlap_action(), and put_extension_action().
|
virtual |
Class invariant.
Reimplemented from sheaf::any.
Definition at line 1605 of file base_space_map.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::any::invariant(), and sheaf::any::invariant_check().
Referenced by base_space_map().
fields::base_space_map_push_action & fields::base_space_map::overlap_action | ( | ) | const |
Computes value of destination dofs where dst overlaps src.
Definition at line 516 of file base_space_map.cc.
References default_overlap_action().
Referenced by put_overlap_action(), and same_fiber().
Pushes section xinput on domain() to xoutput on range().
Definition at line 265 of file base_space_map.cc.
References sheaf::auto_block< T, un_block_initialization_policy< T > >::push_back().
Referenced by range_coords().
void fields::base_space_map::push | ( | const block< sec_vd *> & | xinputs, |
block< sec_vd *> & | xoutputs, | ||
bool | xauto_access | ||
) |
Pushes each section in xinput on domain() to the corresponding section in xoutput on range().
Definition at line 295 of file base_space_map.cc.
References sheaf::poset_state_handle::contains_member(), sheaf::auto_block< T, un_block_initialization_policy< T > >::ct(), domain(), domain_coords(), sheaf::poset_component::get_read_access(), range(), range_coords(), sheaf::poset_component::release_access(), same_base(), same_rep(), and fiber_bundle::sec_rep_space_member::schema().
void fields::base_space_map::put_extension_action | ( | base_space_map_push_action & | xextension_action | ) |
Sets the extension action to xextension_action.
Definition at line 565 of file base_space_map.cc.
References base_space_map(), and extension_action().
Referenced by put_overlap_action().
void fields::base_space_map::put_overlap_action | ( | base_space_map_push_action & | xoverlap_action | ) |
Sets the overlap action to xoverlap_action.
Definition at line 545 of file base_space_map.cc.
References overlap_action(), and put_extension_action().
Referenced by default_extension_action().
const fiber_bundle::base_space_poset & fields::base_space_map::range | ( | ) | const |
The range of the push-forward map.
Definition at line 231 of file base_space_map.cc.
References range_coords().
Referenced by base_space_map(), domain_coords(), and push().
const fiber_bundle::sec_ed & fields::base_space_map::range_coords | ( | ) | const |
The coordinates section for the range.
Definition at line 248 of file base_space_map.cc.
References push().
Referenced by base_space_map(), push(), and range().
bool fields::base_space_map::same_base | ( | const sec_vd & | xsec1, |
const sec_vd & | xsec2, | ||
bool | xauto_access | ||
) | const |
True if and only if xsec1 and xsec2 have the same base space.
Definition at line 411 of file base_space_map.cc.
References fiber_bundle::section_space_schema_member::base_space(), sheaf::poset_component::get_read_access(), sheaf::poset_component::is_same_state(), sheaf::poset_component::release_access(), same_rep(), fiber_bundle::sec_rep_space_member::schema(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
Referenced by push().
bool fields::base_space_map::same_fiber | ( | const sec_vd & | xsec1, |
const sec_vd & | xsec2, | ||
bool | xauto_access | ||
) | const |
True if and only if xsec1 and xsec2 have the same fiber type and dimension.
Definition at line 480 of file base_space_map.cc.
References fiber_bundle::section_space_schema_member::df(), fiber_bundle::section_space_schema_member::fiber_schema(), sheaf::poset_component::get_read_access(), sheaf::poset_component::is_same_state(), overlap_action(), sheaf::poset_component::release_access(), fiber_bundle::sec_rep_space_member::schema(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
Referenced by base_space_map(), and same_rep().
bool fields::base_space_map::same_rep | ( | const sec_vd & | xsec1, |
const sec_vd & | xsec2, | ||
bool | xauto_access | ||
) | const |
True if and only if xsec1 and xsec2 have the same rep.
Definition at line 446 of file base_space_map.cc.
References sheaf::poset_component::get_read_access(), sheaf::poset_component::is_same_state(), sheaf::poset_component::release_access(), fiber_bundle::section_space_schema_member::rep(), same_fiber(), fiber_bundle::sec_rep_space_member::schema(), and sheaf::read_write_monitor_handle::state_is_read_accessible().
Referenced by push(), and same_base().