19 if(layout==Teuchos::null) {
23 "panzer::FieldLayoutLibrary::lookupBasis: cannot find field with name \"" + fieldName +
"\"!\n"+ss.str());
34 std::map<std::string,Teuchos::RCP<const panzer::PureBasis> >::const_iterator itr;
36 bases.push_back(itr->second);
48 typedef std::map<std::string,Teuchos::RCP<panzer::BasisIRLayout> > Map;
58 typedef std::map<std::string,Teuchos::RCP<panzer::BasisIRLayout> > Map;
61 std::string fieldName = itr->first;
64 os <<
"\"" << fieldName <<
"\"" <<
" {" << basis->name()
65 <<
"(dim=" << basis->dimension()
66 <<
",cells=" << basis->numCells()
67 <<
",points=" << basis->numPoints() <<
")} ";
73 typedef std::map<std::string,Teuchos::RCP<panzer::BasisIRLayout> > Map;
77 std::string fieldName = itr->first;
80 bases.push_back(std::make_pair(fieldName,basis));
88 typedef std::map<std::string,Teuchos::RCP<panzer::PureBasis> > Map;
101 std::map<std::string,Teuchos::RCP<const panzer::PureBasis> >::const_iterator itr;
103 bases.push_back(itr->second);
115 typedef std::map<std::string,Teuchos::RCP<panzer::PureBasis> > Map;
122 layoutLibrary->addFieldAndLayout(itr->first,layout);
125 return layoutLibrary;
130 typedef std::map<std::string,Teuchos::RCP<panzer::PureBasis> > Map;
133 std::string fieldName = itr->first;
136 os <<
"\"" << fieldName <<
"\"" <<
" {" << basis->name()
137 <<
"(dim=" << basis->dimension()
138 <<
",cells=" << basis->numCells() <<
") ";
145 typedef std::map<std::string,Teuchos::RCP<panzer::PureBasis> > Map;
149 std::string fieldName = itr->first;
152 bases.push_back(std::make_pair(fieldName,basis.
getConst()));
std::string name() const
A unique key that is the combination of the basis type and basis order.
Teuchos::RCP< panzer::BasisIRLayout > lookupLayout(const std::string &fieldName) const
Get the basis associated with a particular field.
RCP< const T > getConst() const
virtual void basisPairs(std::vector< std::pair< std::string, Teuchos::RCP< const panzer::PureBasis > > > &bases) const
Get vector of unique bases contained in this field library.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Teuchos::RCP< const PureBasis > getBasis() const
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
void uniqueBases(std::vector< Teuchos::RCP< const panzer::PureBasis > > &bases) const
Get vector of unique bases contained in this field library.
void uniqueBases(std::vector< Teuchos::RCP< const panzer::PureBasis > > &bases) const
Get vector of unique bases contained in this field library.
virtual void print(std::ostream &os) const
std::map< std::string, Teuchos::RCP< panzer::PureBasis > > fieldToBasis_
Basic mapped storage.
Teuchos::RCP< const FieldLayoutLibrary > buildFieldLayoutLibrary(panzer::PointRule &ir) const
virtual Teuchos::RCP< const panzer::PureBasis > lookupBasis(const std::string &fieldName) const
Get the basis associated with a particular field.
void addFieldAndLayout(const std::string &fieldName, const Teuchos::RCP< panzer::BasisIRLayout > &basis)
std::map< std::string, Teuchos::RCP< const panzer::PureBasis > > basisNameToPointer_
std::map< std::string, Teuchos::RCP< panzer::BasisIRLayout > > fieldToLayout_
Basic mapped storage.
virtual Teuchos::RCP< const panzer::PureBasis > lookupBasis(const std::string &fieldName) const
Get the basis associated with a particular field.
std::map< std::string, Teuchos::RCP< const panzer::PureBasis > > basisNameToPointer_
void addFieldAndBasis(const std::string &fieldName, const Teuchos::RCP< panzer::PureBasis > &basis)
virtual void basisPairs(std::vector< std::pair< std::string, Teuchos::RCP< const panzer::PureBasis > > > &bases) const
Get vector of unique bases contained in this field library.
virtual void print(std::ostream &os) const