Panzer
Version of the Day
|
#include <Panzer_Workset.hpp>
Public Member Functions | |
Workset () | |
Default constructor, identifier is a useless 0 by default. More... | |
Workset (std::size_t identifier) | |
Constructor that that requires a unique identifier. More... | |
void | setIdentifier (std::size_t identifier) |
Set the unique identifier for this workset, this is not an index! More... | |
std::size_t | getIdentifier () const |
Get the unique identifier for this workset, this is not an index! More... | |
WorksetDetails & | operator() (const int i) |
op(0) return *this; op(1) returns *other. More... | |
const WorksetDetails & | operator() (const int i) const |
const accessor. More... | |
WorksetDetails & | details (const int i) |
Convenience wrapper to operator() for pointer access. More... | |
const WorksetDetails & | details (const int i) const |
size_t | numDetails () const |
Return the number of WorksetDetails this Workset holds. More... | |
Public Member Functions inherited from panzer::WorksetDetails | |
WorksetDetails () | |
Default constructor. More... | |
void | setup (const panzer::LocalMeshPartition< int, panzer::Ordinal64 > &partition, const panzer::WorksetNeeds &needs) |
Constructs the workset details from a given chunk of the mesh. More... | |
void | setupNeeds (Teuchos::RCP< const shards::CellTopology > cell_topology, const Kokkos::View< double ***, PHX::Device > &cell_vertices, const panzer::WorksetNeeds &needs) |
const panzer::SubcellConnectivity & | getFaceConnectivity () const |
Grab the face connectivity for this workset. More... | |
const panzer::IntegrationValues2 < double > & | getIntegrationValues (const panzer::IntegrationDescriptor &description) const |
Grab the integration values for a given integration description (throws error if integration doesn't exist) More... | |
const panzer::IntegrationRule & | getIntegrationRule (const panzer::IntegrationDescriptor &description) const |
Grab the integration rule (contains data layouts) for a given integration description (throws error if integration doesn't exist) More... | |
panzer::BasisValues2< double > & | getBasisValues (const panzer::BasisDescriptor &basis_description, const panzer::IntegrationDescriptor &integration_description) |
Grab the basis values for a given basis description and integration description (throws error if it doesn't exist) More... | |
const panzer::BasisValues2 < double > & | getBasisValues (const panzer::BasisDescriptor &basis_description, const panzer::IntegrationDescriptor &integration_description) const |
Grab the basis values for a given basis description and integration description (throws error if it doesn't exist) More... | |
const panzer::BasisValues2 < double > & | getBasisValues (const panzer::BasisDescriptor &basis_description, const panzer::PointDescriptor &point_description) const |
Grab the basis values for a given basis description and integration description (throws error if it doesn't exist) More... | |
const panzer::PointValues2 < double > & | getPointValues (const panzer::PointDescriptor &point_description) const |
Grab the basis values for a given basis description and integration description (throws error if it doesn't exist) More... | |
const panzer::PureBasis & | getBasis (const panzer::BasisDescriptor &description) const |
Grab the pure basis (contains data layouts) for a given basis description (throws error if integration doesn't exist) More... | |
int | numOwnedCells () const |
Number of cells owned by this workset. More... | |
int | numGhostCells () const |
Number of cells owned by a different workset. More... | |
int | numVirtualCells () const |
Number of cells not owned by any workset - these are used for boundary conditions. More... | |
void | setNumberOfCells (int o_cells, int g_cells, int v_cells) |
Provides access to set numbers of cells (required for backwards compatibility) More... | |
Public Attributes | |
index_t | num_cells |
int | subcell_dim |
double | alpha |
If workset corresponds to a sub cell, what is the dimension? More... | |
double | beta |
double | time |
double | step_size |
double | stage_number |
std::vector< double > | gather_seeds |
bool | evaluate_transient_terms |
Teuchos::RCP< WorksetDetails > | other |
Public Attributes inherited from panzer::WorksetDetails | |
Kokkos::View< const int *, PHX::Device > | cell_local_ids_k |
std::vector< GO > | cell_local_ids |
CellCoordArray | cell_vertex_coordinates |
std::string | block_id |
int | subcell_index |
Teuchos::RCP< std::vector< int > > | ir_degrees |
If workset corresponds to a sub cell, what is the index? More... | |
std::vector< Teuchos::RCP < panzer::IntegrationValues2 < double > > > | int_rules |
Teuchos::RCP< std::vector < std::string > > | basis_names |
Value corresponds to basis type. Use the offest for indexing. More... | |
std::vector< Teuchos::RCP < panzer::BasisValues2< double > > > | bases |
Static basis function data, key is basis name, value is index in the static_bases vector. More... | |
Private Attributes | |
std::size_t | identifier_ |
Additional Inherited Members | |
Public Types inherited from panzer::WorksetDetails | |
typedef PHX::MDField< double, Cell, NODE, Dim > | CellCoordArray |
typedef std::size_t | GO |
typedef int | LO |
Protected Attributes inherited from panzer::WorksetDetails | |
int | _num_owned_cells |
int | _num_ghost_cells |
int | _num_virtual_cells |
std::map< size_t, Teuchos::RCP < const panzer::IntegrationRule > > | _integration_rule_map |
std::map< size_t, Teuchos::RCP < const panzer::IntegrationValues2 < double > > > | _integrator_map |
std::map< size_t, Teuchos::RCP < const panzer::PureBasis > > | _pure_basis_map |
std::map< size_t, std::map < size_t, Teuchos::RCP < panzer::BasisValues2< double > > > > | _basis_map |
std::map< size_t, Teuchos::RCP < const panzer::PointRule > > | _point_rule_map |
std::map< size_t, Teuchos::RCP < const panzer::PointValues2 < double > > > | _point_map |
Teuchos::RCP < panzer::SubcellConnectivity > | _face_connectivity |
This is the main workset object. Not that it inherits from WorksetDetails, this is to maintain backwards compatibility in the use of the workset object. The addition of a details vector supports things like DG based assembly.
Definition at line 186 of file Panzer_Workset.hpp.
|
inline |
Default constructor, identifier is a useless 0 by default.
Definition at line 189 of file Panzer_Workset.hpp.
|
inline |
Constructor that that requires a unique identifier.
Definition at line 192 of file Panzer_Workset.hpp.
|
inline |
Set the unique identifier for this workset, this is not an index!
Definition at line 195 of file Panzer_Workset.hpp.
|
inline |
Get the unique identifier for this workset, this is not an index!
Definition at line 198 of file Panzer_Workset.hpp.
|
inline |
op(0) return *this; op(1) returns *other.
Definition at line 217 of file Panzer_Workset.hpp.
|
inline |
const accessor.
Definition at line 222 of file Panzer_Workset.hpp.
|
inline |
Convenience wrapper to operator() for pointer access.
Definition at line 227 of file Panzer_Workset.hpp.
|
inline |
Definition at line 228 of file Panzer_Workset.hpp.
|
inline |
Return the number of WorksetDetails this Workset holds.
Definition at line 230 of file Panzer_Workset.hpp.
index_t panzer::Workset::num_cells |
Definition at line 200 of file Panzer_Workset.hpp.
int panzer::Workset::subcell_dim |
Definition at line 201 of file Panzer_Workset.hpp.
double panzer::Workset::alpha |
If workset corresponds to a sub cell, what is the dimension?
Definition at line 203 of file Panzer_Workset.hpp.
double panzer::Workset::beta |
Definition at line 204 of file Panzer_Workset.hpp.
double panzer::Workset::time |
Definition at line 205 of file Panzer_Workset.hpp.
double panzer::Workset::step_size |
Definition at line 206 of file Panzer_Workset.hpp.
double panzer::Workset::stage_number |
Definition at line 207 of file Panzer_Workset.hpp.
std::vector<double> panzer::Workset::gather_seeds |
Definition at line 208 of file Panzer_Workset.hpp.
bool panzer::Workset::evaluate_transient_terms |
Definition at line 209 of file Panzer_Workset.hpp.
Teuchos::RCP<WorksetDetails> panzer::Workset::other |
other contains details about the side-sharing elements on the other side of the interface. If Teuchos::nonnull(other), then Workset contains two WorksetDetails: itself, and other.
Definition at line 214 of file Panzer_Workset.hpp.
|
private |
Definition at line 233 of file Panzer_Workset.hpp.