Panzer
Version of the Day
|
#include <Panzer_IntegrationRule.hpp>
Public Member Functions | |
IntegrationRule (int cubature_degree, const panzer::CellData &cell_data) | |
if side = -1 then we use the cell volume integration rule. More... | |
IntegrationRule (const panzer::CellData &cell_data, const std::string &cv_type) | |
IntegrationRule (const panzer::IntegrationDescriptor &description, const Teuchos::RCP< const shards::CellTopology > &cell_topology, const int num_cells, const int num_faces=-1) | |
void | setup (int cubature_degree, const panzer::CellData &cell_data) |
void | setup_cv (const panzer::CellData &cell_data, std::string cv_type) |
int | order () const |
Returns the order of integration (cubature degree in intrepid lingo) More... | |
virtual void | print (std::ostream &os) |
print information about the integration rule More... | |
void | referenceCoordinates (Kokkos::DynRankView< double, PHX::Device > &container) |
Construct an array containing the reference coordinates. More... | |
int | getPointOffset (const int subcell_index) const |
Returns the integration point offset for a given subcell_index (i.e. local face index) More... | |
Public Member Functions inherited from panzer::PointRule | |
PointRule (const std::string &ptName, int np, const panzer::CellData &cell_data) | |
PointRule (const std::string &point_rule_name, const int num_cells, const int num_points_per_cell, const int num_faces, const int num_points_per_face, const Teuchos::RCP< const shards::CellTopology > &cell_topology) | |
PointRule (const panzer::PointDescriptor &description, const Teuchos::RCP< const shards::CellTopology > &cell_topology, const int num_cells) | |
virtual | ~PointRule () |
Destructor (Satisfying the compiler) More... | |
void | setup (const std::string &ptName, int np, const panzer::CellData &cell_data) |
bool | isSide () const |
const std::string & | getName () const |
Teuchos::RCP< PHX::DataLayout > | getCellDataLayout () const |
Teuchos::RCP< PHX::DataLayout > | getCellDataLayout (const int dim0) const |
Teuchos::RCP< PHX::DataLayout > | getCellDataLayout (const int dim0, const int dim1) const |
Teuchos::RCP< PHX::DataLayout > | getCellPointDataLayout () const |
Teuchos::RCP< PHX::DataLayout > | getCellPointDataLayout (const int dim0) const |
Teuchos::RCP< PHX::DataLayout > | getCellPointDataLayout (const int dim0, const int dim1) const |
Teuchos::RCP< PHX::DataLayout > | getFaceDataLayout () const |
Teuchos::RCP< PHX::DataLayout > | getFaceDataLayout (const int dim0) const |
Teuchos::RCP< PHX::DataLayout > | getFaceDataLayout (const int dim0, const int dim1) const |
Teuchos::RCP< PHX::DataLayout > | getFacePointDataLayout () const |
Teuchos::RCP< PHX::DataLayout > | getFacePointDataLayout (const int dim0) const |
Teuchos::RCP< PHX::DataLayout > | getFacePointDataLayout (const int dim0, const int dim1) const |
Public Member Functions inherited from panzer::IntegrationDescriptor | |
IntegrationDescriptor () | |
Constructor for empty integrator. More... | |
virtual | ~IntegrationDescriptor ()=default |
Destructor. More... | |
IntegrationDescriptor (const int cubature_order, const int integration_type, const int side=-1) | |
Constructor for integrator description. More... | |
const int & | getType () const |
Get type of integrator. More... | |
const int & | getOrder () const |
Get order of integrator. More... | |
const int & | getSide () const |
Get side associated with integration - this is for backward compatibility. More... | |
std::size_t | getKey () const |
Get unique key associated with integrator of this order and type The key is used to sort through a map of IntegrationDescriptors. More... | |
Public Attributes | |
int | cubature_degree |
std::string | cv_type |
Public Attributes inherited from panzer::PointRule | |
Teuchos::RCP< const shards::CellTopology > | topology |
Teuchos::RCP < shards::CellTopology > | side_topology |
Teuchos::RCP< PHX::DataLayout > | dl_scalar |
Data layout for scalar fields. More... | |
Teuchos::RCP< PHX::DataLayout > | dl_vector |
Data layout for vector fields. More... | |
Teuchos::RCP< PHX::DataLayout > | dl_tensor |
Data layout for rank-2 tensor fields. More... | |
Teuchos::RCP< PHX::DataLayout > | dl_vector3 |
Data layout for vector fields - full (x,y,z) More... | |
Teuchos::RCP< PHX::DataLayout > | dl_tensor3x3 |
Data layout for vector fields - full ((xx,xy,xz),(yx,yy,yz),(zx,zy,zz)) (or transpose?) More... | |
int | spatial_dimension |
int | workset_size |
int | num_points |
int | side |
Defaults to -1 if this is volume and not sideset. More... | |
Protected Member Functions | |
void | setup_surface (const Teuchos::RCP< const shards::CellTopology > &cell_topology, const int num_cells, const int num_faces) |
Setup a surface integration. More... | |
Protected Member Functions inherited from panzer::PointRule | |
PointRule () | |
void | setup (const std::string &point_rule_name, const int num_cells, const int num_points_per_cell, const int num_faces, const int num_points_per_face, const Teuchos::RCP< const shards::CellTopology > &cell_topology) |
Protected Member Functions inherited from panzer::IntegrationDescriptor | |
void | setup (const int cubature_order, const int integration_type, const int side=-1) |
Setup function. More... | |
Protected Attributes | |
std::vector< int > | _point_offsets |
Protected Attributes inherited from panzer::PointRule | |
int | _num_faces |
int | _num_points_per_face |
Protected Attributes inherited from panzer::IntegrationDescriptor | |
int | _integration_type |
Type of integration. More... | |
int | _cubature_order |
Order of integration (Order of polynomial this integrator is designed for) More... | |
int | _side |
Side associated with integration - this is for backward compatibility. More... | |
std::size_t | _key |
Unique key associated with integrator. More... | |
Additional Inherited Members | |
Public Types inherited from panzer::IntegrationDescriptor | |
enum | { NONE, VOLUME, SURFACE, SIDE, CV_VOLUME, CV_SIDE, CV_BOUNDARY } |
Possible integration types. More... | |
Static Protected Member Functions inherited from panzer::PointRule | |
static Teuchos::RCP < shards::CellTopology > | getSideTopology (const CellData &cell_data) |
Derived class for building a point rule based on a finite element integration rule.
[in] | cubature_degree | Order of the cubature integration. |
[in] | cell_data | Description of the cell. |
Definition at line 40 of file Panzer_IntegrationRule.hpp.
panzer::IntegrationRule::IntegrationRule | ( | int | cubature_degree, |
const panzer::CellData & | cell_data | ||
) |
if side = -1 then we use the cell volume integration rule.
Definition at line 25 of file Panzer_IntegrationRule.cpp.
panzer::IntegrationRule::IntegrationRule | ( | const panzer::CellData & | cell_data, |
const std::string & | cv_type | ||
) |
Definition at line 37 of file Panzer_IntegrationRule.cpp.
panzer::IntegrationRule::IntegrationRule | ( | const panzer::IntegrationDescriptor & | description, |
const Teuchos::RCP< const shards::CellTopology > & | cell_topology, | ||
const int | num_cells, | ||
const int | num_faces = -1 |
||
) |
Definition at line 59 of file Panzer_IntegrationRule.cpp.
void panzer::IntegrationRule::setup | ( | int | cubature_degree, |
const panzer::CellData & | cell_data | ||
) |
Definition at line 97 of file Panzer_IntegrationRule.cpp.
void panzer::IntegrationRule::setup_cv | ( | const panzer::CellData & | cell_data, |
std::string | cv_type | ||
) |
Definition at line 188 of file Panzer_IntegrationRule.cpp.
int panzer::IntegrationRule::order | ( | ) | const |
Returns the order of integration (cubature degree in intrepid lingo)
Definition at line 232 of file Panzer_IntegrationRule.cpp.
|
virtual |
print information about the integration rule
Reimplemented from panzer::PointRule.
Definition at line 244 of file Panzer_IntegrationRule.cpp.
void panzer::IntegrationRule::referenceCoordinates | ( | Kokkos::DynRankView< double, PHX::Device > & | container | ) |
Construct an array containing the reference coordinates.
Definition at line 256 of file Panzer_IntegrationRule.cpp.
int panzer::IntegrationRule::getPointOffset | ( | const int | subcell_index | ) | const |
Returns the integration point offset for a given subcell_index (i.e. local face index)
Definition at line 236 of file Panzer_IntegrationRule.cpp.
|
protected |
Setup a surface integration.
Definition at line 135 of file Panzer_IntegrationRule.cpp.
int panzer::IntegrationRule::cubature_degree |
Definition at line 68 of file Panzer_IntegrationRule.hpp.
std::string panzer::IntegrationRule::cv_type |
Definition at line 72 of file Panzer_IntegrationRule.hpp.
|
protected |
Definition at line 90 of file Panzer_IntegrationRule.hpp.