11 #ifndef PANZER_POINT_RULE_HPP
12 #define PANZER_POINT_RULE_HPP
14 #include "Teuchos_ArrayRCP.hpp"
16 #include "Phalanx_DataLayout.hpp"
18 #include "Shards_CellTopology.hpp"
50 PointRule(
const std::string & point_rule_name,
52 const int num_points_per_cell,
54 const int num_points_per_face,
73 const std::string &
getName()
const;
100 virtual void print(std::ostream & os);
129 void setup(
const std::string & point_rule_name,
131 const int num_points_per_cell,
133 const int num_points_per_face,
int side
Defaults to -1 if this is volume and not sideset.
void setup(const std::string &ptName, int np, const panzer::CellData &cell_data)
Teuchos::RCP< PHX::DataLayout > dl_tensor
Data layout for rank-2 tensor fields.
Teuchos::RCP< PHX::DataLayout > getCellDataLayout() const
const std::string & getName() const
virtual void print(std::ostream &os)
print information about the integration rule
Data for determining cell topology and dimensionality.
Teuchos::RCP< PHX::DataLayout > getFacePointDataLayout() const
Teuchos::RCP< PHX::DataLayout > dl_scalar
Data layout for scalar fields.
Teuchos::RCP< PHX::DataLayout > getFaceDataLayout() const
Teuchos::RCP< const shards::CellTopology > topology
virtual ~PointRule()
Destructor (Satisfying the compiler)
Teuchos::RCP< PHX::DataLayout > dl_vector
Data layout for vector fields.
static Teuchos::RCP< shards::CellTopology > getSideTopology(const CellData &cell_data)
Teuchos::RCP< PHX::DataLayout > dl_tensor3x3
Data layout for vector fields - full ((xx,xy,xz),(yx,yy,yz),(zx,zy,zz)) (or transpose?)
Teuchos::RCP< shards::CellTopology > side_topology
Teuchos::RCP< PHX::DataLayout > dl_vector3
Data layout for vector fields - full (x,y,z)
Teuchos::RCP< PHX::DataLayout > getCellPointDataLayout() const