14#include "libmesh/elem_range.h"
30 std::vector<std::vector<std::unique_ptr<Assembly>>> & assembly);
35 virtual void post()
override;
37 virtual void onElement(
const Elem * elem)
override;
41 const Elem * lower_d_elem =
nullptr)
override;
42 virtual void onInternalSide(
const Elem * elem,
unsigned int side)
override;
66 std::vector<std::vector<std::unique_ptr<Assembly>>> &
_assembly;
boundary_id_type BoundaryID
Keeps track of stuff related to assembling.
virtual void onElement(const Elem *elem) override
Assembly of the element (not including surface assembly)
MaterialPropertyStorage & _material_props
std::vector< std::vector< std::unique_ptr< Assembly > > > & _assembly
const bool _has_stateful_props
FEProblemBase & _fe_problem
const MaterialWarehouse & _interface_materials
This is populated using _fe_problem.getResidualInterfaceMaterialsWarehouse because it has the union o...
const bool _has_neighbor_stateful_props
bool _need_internal_side_material
const bool _has_bnd_stateful_props
MaterialPropertyStorage & _neighbor_material_props
virtual void onInternalSide(const Elem *elem, unsigned int side) override
Called when doing internal edge assembling.
const MaterialWarehouse & _materials
This is populated using _fe_problem.getResidualMaterialsWarehouse because it has the union of traditi...
virtual void post() override
Called after the element range loop.
virtual void onBoundary(const Elem *elem, unsigned int side, BoundaryID bnd_id, const Elem *lower_d_elem=nullptr) override
Called when doing boundary assembling.
virtual void subdomainChanged() override
Called every time the current subdomain changes (i.e.
virtual void onInterface(const Elem *elem, unsigned int side, BoundaryID bnd_id) override
Called when doing interface assembling.
void join(const ComputeMaterialsObjectThread &)
const MaterialWarehouse & _discrete_materials
MaterialPropertyStorage & _bnd_material_props
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Proxy for accessing MaterialPropertyStorage.
Stores the stateful material properties computed by materials.
MaterialBase objects are special in that they have additional objects created automatically (see FEPr...
Nonlinear system to be solved.
Base class for assembly-like calculations.