22 #include "SheafSystem/property_disc_iterator_1_1.h" 24 #include "SheafSystem/assert_contract.h" 25 #include "SheafSystem/base_space_member.h" 26 #include "SheafSystem/binary_section_space_schema_member.h" 27 #include "SheafSystem/eval_family.h" 28 #include "SheafSystem/sec_rep_descriptor.h" 29 #include "SheafSystem/section_evaluator.h" 30 #include "SheafSystem/section_space_schema_member.h" 31 #include "SheafSystem/sec_ed_invertible.h" 32 #include "SheafSystem/sec_vd.h" 33 #include "SheafSystem/std_limits.h" 34 #include "SheafSystem/structured_block_1d.h" 35 #include "SheafSystem/structured_block_2d.h" 36 #include "SheafSystem/structured_block_3d.h" 37 #include "SheafSystem/subposet_member_iterator.h" 38 #include "SheafSystem/uniform_eval_family.h" 39 #include "SheafSystem/field_vd.h" 52 fields::property_disc_iterator_1_1::
53 property_disc_iterator_1_1(
const field_vd& xfield)
80 ensure(unexecutable(!
is_done() implies
this is
first member));
86 fields::property_disc_iterator_1_1::
87 property_disc_iterator_1_1(
117 ensure(unexecutable(!
is_done() implies
this is
first member));
152 xsec.
get_fiber(ldisc_mbr.disc_id, ldisc_mbr.values,
180 bool ltruncate = xtruncate;
276 invariance(
order() == POSTORDER);
section_iteration_state _prop_state
Descriptor for property section iteration.
virtual bool is_ancestor_of(const any *xother) const
True if other conforms to this.
A context for discretization members. Intended for implementing various iterators, especially concurrent iterations over multiple sections.
virtual property_disc_iterator_1_1 * clone() const
Make a new instance of the same type as this.
int version(bool xunalias=true) const
The (possibly aliased) version of this component. The version of the host used when evaluating proper...
virtual bool is_initialized() const
True if this has been initialized for iteration with respect to a specific anchor.
action_type action() const
The type of action the client should take when the iterator returns control to the client...
Namespace for fields component of sheaf system.
bool conforms_to(const schema_poset_member &xother) const
True if the dofs defined by this agree in type and in order with the dofs defined by xother...
bool state_is_read_accessible() const
True if this is attached and if the state is accessible for read or access control is disabled...
void get_fiber(pod_index_type xdisc_id, vd_lite &xfiber) const
Sets xfiber to the fiber referred to by discretization id xdisc_id.
const section_space_schema_member & property_schema() const
The property field schema member which is being iterated over.
virtual bool contains_member(pod_index_type xmbr_hub_id) const
True if this poset contains poset member with hub id xmbr_hub_id.
bool is_same_state(const poset_state_handle *xhost, pod_index_type xhub_id) const
True is this is attached to state with hub id xhub_id in host xhost.
void initialize_iteration(const field_vd &xfield, order_type xorder)
Initializes this for iteration of type xorder over the schema of xfield.
Abstract base class with useful features for all objects.
order_type order() const
The order of the iteration. Determines which actions are exported to the client.
block< discretization_context > discretization_members
The discretization members in the downset of the current evaluation member.
bool descending() const
True if iterating over down set of anchor.
A vd-valued property as a function of global coordinates.
sec_vd & property() const
The dependent variable of this field.
bool le(pod_index_type xother_index) const
True if this is less than or equal to the member with index xother_index.
bool invariant() const
The class invariant.
void next()
Makes this the next member of the subset.
void disable_invariant_check() const
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing inv...
base_space_member & base_space() const
The base space of this field.
const scoped_index & greater_index() const
The index of the greater member of the current link.
A section of a fiber bundle with a d-dimensional vector space fiber.
void gather_discretization_member(const scoped_index &xindex, const scoped_index &xgreater_index)
Puts xindex into the discretization gather buffer and, if enabled, corrects discretization order...
bool is_done() const
True if iteration finished.
static const poset_path & standard_schema_path()
The path of the schema required by this class.
void first()
Moves this to the first member of the iteration.
bool invariant_check() const
True if invariant checking is enabled.
total_poset_member & base_space()
The base space component of this (mutable version).
virtual section_space_schema_member & schema()
The restricted schema for this (mutable version).
sec_vd_dof_type dof_type
The type of degree of freedom.
A client handle for a poset member which has been prepared for use as a schema for a section space...
virtual void get_prop_disc_values(const sec_vd &xsec)
The gets the values of xsec at the property discretization points.
sec_ed_invertible & coordinates() const
The independent variable of this field.
bool state_is_read_accessible() const
True if this is attached and if the coordinates and property are accessible for read or access contro...
const section_space_schema_member & coordinates_schema() const
The coordinates field schema member which is being iterated over.
int df() const
The dimension of the fiber space component.
A property discretization iterator for a property section with the same discretization as the coordin...
bool invariant() const
The class invariant.
sec_rep_descriptor & rep()
The representation for section spaces on this schema (mutable version).
virtual schema_poset_member & schema()
The schema for this member (mutable version).
bool is_same_type(const any *other) const
True if other is the same type as this.
subposet disc_sp
The discretization subposet associated with schema.
void enable_invariant_check() const
Enable invariant checking.
bool strict() const
True if iterating over xstrict up/down set of anchor.
Abstract iterator over the discretization of the property section of a field_vd. Concurrently travers...
scoped_index _index
The index of the lesser end of the current link; the current item in the iteration.
~property_disc_iterator_1_1()
Destructor.