43 #ifndef __Panzer_WorksetContainer_hpp__ 44 #define __Panzer_WorksetContainer_hpp__ 56 class UniqueGlobalIndexerBase;
118 const std::map<std::string,WorksetNeeds> & needs);
167 inline std::vector<Workset>::iterator
begin(
const std::string & eBlock)
171 inline std::vector<Workset>::iterator
end(
const std::string & eBlock)
175 inline std::map<unsigned,Workset>::iterator
begin(
const BC & bc)
179 inline std::map<unsigned,Workset>::iterator
end(
const BC & bc)
200 void addBasis(
const std::string & type,
int order,
const std::string & rep_field);
212 void applyOrientations(
const std::string & eBlock,std::vector<Workset> & worksets)
const;
219 typedef std::unordered_map<WorksetDescriptor,Teuchos::RCP<std::vector<Workset> > >
VolumeMap;
223 std::map<std::string,Teuchos::RCP<PhysicsBlock> >
ebToPb_;
244 const std::vector<std::string> & elementBlockNames,
245 std::map<std::string,
Teuchos::RCP<std::vector<Workset> > > & volumeWksts);
257 const std::vector<BC> & bcs,
Teuchos::RCP< std::map< unsigned, Workset > > getSideWorksets(const BC &bc)
Access, and construction of side worksets.
const PhysicsBlock & lookupPhysicsBlock(const std::string &eBlock) const
Look up an input physics block, throws an exception if it can not be found.
Object that contains information on the physics and discretization of a block of elements with the SA...
void setGlobalIndexer(const Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > &ugi)
WorksetContainer()
Default contructor, starts with no workset factory objects.
std::map< unsigned, Workset >::iterator end(const BC &bc)
Iterator access to side worksets.
std::map< unsigned, Workset >::iterator begin(const BC &bc)
Iterator access to side worksets.
Teuchos::RCP< const WorksetFactoryBase > wkstFactory_
void setWorksetSize(std::size_t worksetSize)
set the workset size
Class that provides access to worksets on each element block and side set.
std::unordered_map< WorksetDescriptor, Teuchos::RCP< std::vector< Workset > > > VolumeMap
PHX::MDField< ScalarT > vector
void allocateVolumeWorksets(const std::vector< std::string > &eBlocks)
void applyOrientations(const Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > &ugi)
Teuchos::RCP< std::vector< Workset > > getWorksets(const WorksetDescriptor &wd)
Access to volume worksets.
bool operator()(const SideId &left, const SideId right) const
const WorksetNeeds & lookupNeeds(const std::string &eBlock) const
Look up an input physics block, throws an exception if it can not be found.
Teuchos::RCP< const panzer::UniqueGlobalIndexerBase > globalIndexer_
std::size_t getWorksetSize() const
get the workset size
std::map< std::string, Teuchos::RCP< PhysicsBlock > > ebToPb_
How to construct worksets.
std::vector< Workset >::iterator end(const std::string &eBlock)
Iterator access to volume worksets.
void setFactory(const Teuchos::RCP< const WorksetFactoryBase > &factory)
VolumeMap volWorksets_
Maps element blocks to input physics block objects.
Teuchos::RCP< const WorksetFactoryBase > getFactory() const
Access the workset factory pointer.
void setPhysicsBlockVector(const std::vector< Teuchos::RCP< PhysicsBlock > > &physicsBlocks)
The physics block vector.
void addBasis(const std::string &type, int order, const std::string &rep_field)
void allocateSideWorksets(const std::vector< BC > &bcs)
std::map< SideId, Teuchos::RCP< std::map< unsigned, Workset > >, LessSide > SideMap
void getSideWorksetsFromContainer(WorksetContainer &wc, const std::vector< BC > &bcs, std::map< BC, Teuchos::RCP< std::map< unsigned, Workset > >, LessBC > &sideWksts)
Stores input information for a boundary condition.
std::vector< Workset >::iterator begin(const std::string &eBlock)
Iterator access to volume worksets.
Teuchos::RCP< std::vector< Workset > > getVolumeWorksets(const std::string &eBlock)
Access to volume worksets.
std::map< std::string, WorksetNeeds > ebToNeeds_
Maps element blocks to input physics block objects.
void getVolumeWorksetsFromContainer(WorksetContainer &wc, const std::vector< std::string > &elementBlockNames, std::map< std::string, Teuchos::RCP< std::vector< Workset > > > &volumeWksts)