95 TEUCHOS_ASSERT(
mesh_ != Teuchos::null);
103 for(
auto & workset : *worksets){
107 workset.getIntegrationValues(
id);
111 workset.getPointValues(pd);
114 for(
const auto & bd : needs.
getBases()){
118 workset.getBasisValues(bd,
id);
122 workset.getBasisValues(bd,pd);
139 std::vector<stk::mesh::Entity> elements;
141 worksetSize = elements.size();
153 TEUCHOS_ASSERT(
false);
Data for determining cell topology and dimensionality.
Teuchos::RCP< const shards::CellTopology > getCellTopology() const
Get CellTopology for the base cell.
const std::string & getElementBlock(const int block=0) const
Get element block name.
bool sideAssembly() const
Expects side set assembly on volume.
const std::string & getSideset(const int block=0) const
Get sideset name.
int getWorksetSize() const
Get the requested workset size (default -2 (workset size is set elsewhere), -1 (largest possible work...
bool connectsElementBlocks() const
Identifies this workset as an interface between two element blocks.
bool useSideset() const
This descriptor is for a side set.
bool requiresPartitioning() const
Do we need to partition the local mesh prior to generating worksets.
Teuchos::RCP< const OrientationsInterface > getOrientationsInterface() const
Get the orientations associated with the worksets.
virtual void setMesh(const Teuchos::RCP< const panzer_stk::STK_Interface > &mesh)
virtual Teuchos::RCP< std::map< unsigned, panzer::Workset > > getSideWorksets(const panzer::WorksetDescriptor &desc, const panzer::WorksetNeeds &needs) const
virtual Teuchos::RCP< std::vector< panzer::Workset > > getWorksets(const panzer::WorksetDescriptor &worksetDesc, const panzer::WorksetNeeds &needs) const
Teuchos::RCP< const STK_Interface > mesh_
Mesh.
Teuchos::RCP< const panzer::LocalMeshInfo > mesh_info_
Alternative form of mesh.
Teuchos::RCP< std::map< unsigned, panzer::Workset > > buildBCWorksets(const panzer_stk::STK_Interface &mesh, const panzer::WorksetNeeds &needs_a, const std::string &blockid_a, const panzer::WorksetNeeds &needs_b, const std::string &blockid_b, const std::string &sideset)
Teuchos::RCP< std::vector< panzer::Workset > > buildWorksets(const panzer_stk::STK_Interface &mesh, const std::string &eBlock, const panzer::WorksetNeeds &needs)
Teuchos::RCP< panzer::LocalMeshInfo > generateLocalMeshInfo(const panzer_stk::STK_Interface &mesh)
Create a structure containing information about the local portion of a given element block.
@ ALL_ELEMENTS
Workset size is set to the total number of local elements in the MPI process.
@ CLASSIC_MODE
Backwards compatibility mode that ignores the worksetSize in the WorksetDescriptor.
Teuchos::RCP< std::vector< panzer::Workset > > buildPartitionedWorksets(const panzer::LocalMeshInfo &mesh_info, const panzer::WorksetDescriptor &description, const Teuchos::RCP< const OrientationsInterface > &orientations)
const std::vector< panzer::IntegrationDescriptor > & getIntegrators() const
Get a list of integrators being requested.
const std::vector< panzer::PointDescriptor > & getPoints() const
Get a list of points being requested.
const std::vector< panzer::BasisDescriptor > & getBases() const
Get a list of bases being requested.