28 #include "libmesh/boundary_info.h" 33 _if_evaluate_on_all_elems(false) {
90 libmesh_assert(!
_bids.size());
96 const std::set<const libMesh::Elem*>&
104 const std::set<libMesh::subdomain_id_type>&
112 const std::set<libMesh::boundary_id_type>&
156 const unsigned int s)
const {
158 std::vector<libMesh::boundary_id_type> bc_ids;
161 std::vector<libMesh::boundary_id_type>::const_iterator
162 bc_it = bc_ids.begin(),
163 bc_end = bc_ids.end();
165 for ( ; bc_it != bc_end; bc_it++)
166 if (
_bids.count(*bc_it))
const std::set< libMesh::subdomain_id_type > & get_participating_subdomains()
void set_participating_subdomains(const std::set< libMesh::subdomain_id_type > &sids)
The output function can be a boundary integrated quantity, volume integrated quantity or a combinatio...
std::set< libMesh::subdomain_id_type > _sub_domain_ids
set of subdomain ids for which data will be processed.
virtual bool if_evaluate_for_element(const MAST::GeomElem &elem) const
checks to see if the object has been told about the subset of elements and if the specified element i...
void set_participating_elements(const std::set< const libMesh::Elem * > &elems)
sets the elements for which this object will evaluate and store the output data.
std::set< libMesh::boundary_id_type > _bids
set of bids for which data will be processed
const std::set< libMesh::boundary_id_type > & get_participating_boundaries()
virtual ~OutputAssemblyElemOperations()
virtual destructor
virtual const libMesh::Elem & get_reference_elem() const
OutputAssemblyElemOperations()
virtual bool if_evaluate_for_boundary(const MAST::GeomElem &elem, const unsigned int s) const
checks to see if the specified side of the element needs evaluation of the output contribution...
virtual void get_boundary_ids_on_quadrature_elem_side(unsigned int s, std::vector< libMesh::boundary_id_type > &bc_ids) const
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
bool _if_evaluate_on_all_elems
if true, evaluates on all elements.
const std::set< const libMesh::Elem * > & get_participating_elements() const
void set_participating_elements_to_all()
This will allow volume contribution from all elements.
void set_participating_boundaries(const std::set< libMesh::boundary_id_type > &bids)
The assembly will integration over boudnaries with ids specified in bids.
std::set< const libMesh::Elem * > _elem_subset
set of elements for which the data will be stored.