|
| WorksetDescriptor (const std::string &elementBlock, const int worksetSize=WorksetSizeType::CLASSIC_MODE, const bool requiresPartitioning=false, const bool applyOrientations=true) |
|
| WorksetDescriptor (const std::string &elementBlock, const std::string &sideset, const bool sideAssembly) |
|
| WorksetDescriptor (const std::string &elementBlock, const std::string &sideset, const int worksetSize=WorksetSizeType::CLASSIC_MODE, const bool requiresPartitioning=false, const bool applyOrientations=true) |
|
| WorksetDescriptor (const std::string &elementBlock_0, const std::string &elementBlock_1, const std::string &sideset_0, const std::string &sideset_1, const int worksetSize=WorksetSizeType::CLASSIC_MODE, const bool requiresPartitioning=false, const bool applyOrientations=true) |
|
| WorksetDescriptor (const WorksetDescriptor &src)=default |
| Copy constructor.
|
|
const std::string & | getElementBlock (const int block=0) const |
| Get element block name.
|
|
const std::string & | getSideset (const int block=0) const |
| Get sideset name.
|
|
bool | sideAssembly () const |
| Expects side set assembly on volume.
|
|
bool | connectsElementBlocks () const |
| Identifies this workset as an interface between two element blocks.
|
|
bool | requiresPartitioning () const |
| Do we need to partition the local mesh prior to generating worksets.
|
|
bool | useSideset () const |
| This descriptor is for a side set.
|
|
int | getWorksetSize () const |
| Get the requested workset size (default -2 (workset size is set elsewhere), -1 (largest possible workset size), >0 (workset size))
|
|
bool | applyOrientations () const |
|
Class provides a simple description of the types of worksets that need to be constructed and used. This is a generalization of using strings and pairs of string to represent the element blocks and sidesets. It is primarily used in specifying the "domain" of the assembly algorithm, that is which elements will be used in the assembly process.
There are currently two construction paths supported, a CLASSIC path that is the legacy code that constructs worksets out of locally owned elements. The new path uses the PARTITIONED approach. The PARTITIONED approach supports creating worksets that might require ghosted and/or virtual cells commonly used in DG methods. For the CLASSIC mode, the workset size is determined by the deprecated CellData object in the WorksetNeeds. This is the current default for backwards compatibility. NOTE: For CLASSIC, this means that the worksetSize in this object is ignored! For PARTITIONED, used by DG codes, the worksetSize in the WorksetDescriptor is always used.
Definition at line 82 of file Panzer_WorksetDescriptor.hpp.
panzer::WorksetDescriptor::WorksetDescriptor |
( |
const std::string & | elementBlock, |
|
|
const std::string & | sideset, |
|
|
const int | worksetSize = WorksetSizeType::CLASSIC_MODE, |
|
|
const bool | requiresPartitioning = false, |
|
|
const bool | applyOrientations = true ) |
|
inline |
Constructor that defines a side set. Note that the specified sideset must be a non-empty string.
Options for workset_size: EMPTY, FULL, SPECIAL, >0 EMPTY -> workset size is set by cellData in WorksetNeeds FULL -> workset size is set to largest possible value SPECIAL -> Special case >0 -> workset size is set to this value (overwrites WorksetNeeds)
- Parameters
-
[in] | element_block | Element block that includes the side |
[in] | sideset | Side set that is being used |
[in] | worksetSize | Requested workset size. This is an integer > 0 for a user specified size or can be of type WorksetSizeType for special cases |
[in] | requiresPartitioning | If set to true, uses the new path for building worksets with partitioning |
[in] | applyOrientations | If set to true, computes and applies orientations to relevant bases |
Definition at line 146 of file Panzer_WorksetDescriptor.hpp.
panzer::WorksetDescriptor::WorksetDescriptor |
( |
const std::string & | elementBlock_0, |
|
|
const std::string & | elementBlock_1, |
|
|
const std::string & | sideset_0, |
|
|
const std::string & | sideset_1, |
|
|
const int | worksetSize = WorksetSizeType::CLASSIC_MODE, |
|
|
const bool | requiresPartitioning = false, |
|
|
const bool | applyOrientations = true ) |
|
inline |
Constructor that defines a side set. Note that the specified sideset must be a non-empty string.
Options for workset_size: -2, -1, 0, >0 -2 -> workset size is set by cellData in WorksetNeeds -1 -> workset size is set to largest possible value 0 -> Special case >0 -> workset size is set to this value (overwrites WorksetNeeds)
- Parameters
-
[in] | element_block_0 | Element block on one side of sideset_0 |
[in] | element_block_1 | Element block on other side of sideset_1 |
[in] | sideset_0 | Sideset of interest attached to element_block_0 |
[in] | sideset_1 | Sideset of interest attached to element_block_1 |
[in] | worksetSize | Requested workset size. This is an integer > 0 for a user specified size or can be of type WorksetSizeType for special cases |
[in] | requiresPartitioning | If set to true, uses the new path for building worksets with partitioning |
[in] | applyOrientations | If set to true, computes and applies orientations to relevant bases |
Definition at line 182 of file Panzer_WorksetDescriptor.hpp.