GEOSX
|
This class specializes the element region for the case of a well. This class is also in charge of starting the construction of the well data structure in GenerateWell. More...
#include <WellElementRegion.hpp>
Classes | |
struct | groupKeyStruct |
struct to serve as a container for group strings and keys More... | |
struct | viewKeyStruct |
Struct to serve as a container for variable strings and keys. More... | |
Public Member Functions | |
Constructor / Destructor | |
WellElementRegion (string const &name, Group *const parent) | |
Constructor. More... | |
virtual | ~WellElementRegion () override |
Default destructor. | |
WellElementRegion ()=delete | |
Deleted default constructor. | |
Getters / Setters | |
void | SetWellGeneratorName (string const &name) |
Set the name of the InternalWellGenerator object of this well. More... | |
string const & | GetWellGeneratorName () const |
Get the name of the InternalWellGenerator object of this well. More... | |
void | SetWellControlsName (string const &name) |
Set the name of the WellControls object of this well. More... | |
string const & | GetSubRegionName () const |
Get the name of the subRegion. More... | |
Construction of the well connectivity | |
virtual void | GenerateMesh (Group *) override |
Not implemented, this task is performed in GenerateWell. | |
void | GenerateWell (MeshLevel &mesh, InternalWellGenerator const &wellGeometry, globalIndex nodeOffsetGlobal, globalIndex elemOffsetGlobal) |
Build the local well elements and perforations from global well geometry. More... | |
Public Member Functions inherited from geosx::ElementRegionBase | |
ElementRegionBase ()=delete | |
Deleted default constructor. | |
ElementRegionBase (string const &name, Group *const parent) | |
Main constructor. More... | |
ElementRegionBase (const ElementRegionBase &init) | |
Copy constructor. More... | |
virtual | ~ElementRegionBase () override |
Default destructor. | |
subGroupMap & | GetSubRegions () |
Get a collection of the subregions. More... | |
subGroupMap const & | GetSubRegions () const |
Get a collection of the subregions. More... | |
template<typename SUBREGIONTYPE = ElementSubRegionBase> | |
SUBREGIONTYPE const * | GetSubRegion (string const ®ionName) const |
Get a pointer to a subregion by specifying its name. More... | |
template<typename SUBREGIONTYPE = ElementSubRegionBase> | |
SUBREGIONTYPE * | GetSubRegion (string const ®ionName) |
Get a pointer to a subregion by specifying its name. More... | |
template<typename SUBREGIONTYPE = ElementSubRegionBase> | |
SUBREGIONTYPE const * | GetSubRegion (localIndex const &index) const |
Get a pointer to a subregion by specifying its index. More... | |
template<typename SUBREGIONTYPE = ElementSubRegionBase> | |
SUBREGIONTYPE * | GetSubRegion (localIndex const &index) |
Get a pointer to a subregion by specifying its index. More... | |
localIndex | numSubRegions () const |
Get the number of subregions in the region. More... | |
template<typename SUBREGIONTYPE = ElementSubRegionBase, typename ... SUBREGIONTYPES> | |
localIndex | getNumberOfElements () const |
Get the number of elements in the region for specific subregion types provided as template arguments. More... | |
string_array & | getMaterialList () |
Get the material list in the element region. More... | |
string_array const & | getMaterialList () const |
Get the material list in the element region. More... | |
template<typename CONSTITUTIVE_TYPE > | |
string_array | getConstitutiveNames () const |
Get the name of the constiutive in the element region. More... | |
template<typename LAMBDA > | |
void | forElementSubRegions (LAMBDA &&lambda) const |
Apply a lambda to all subregions. More... | |
template<typename LAMBDA > | |
void | forElementSubRegions (LAMBDA &&lambda) |
Apply a lambda to all subregions. More... | |
template<typename SUBREGIONTYPE , typename ... SUBREGIONTYPES, typename LAMBDA > | |
void | forElementSubRegions (LAMBDA &&lambda) const |
Apply LAMBDA to the subregions with the specific subregion types listed in the template. More... | |
template<typename SUBREGIONTYPE , typename ... SUBREGIONTYPES, typename LAMBDA > | |
void | forElementSubRegions (LAMBDA &&lambda) |
Apply a lambda to all subregions. More... | |
template<typename LAMBDA > | |
void | forElementSubRegionsIndex (LAMBDA &&lambda) const |
Apply LAMBDA to the subregions, loop using subregion indices. More... | |
template<typename LAMBDA > | |
void | forElementSubRegionsIndex (LAMBDA &&lambda) |
Apply LAMBDA to the subregions, loop using subregion indices. More... | |
template<typename SUBREGIONTYPE , typename ... SUBREGIONTYPES, typename LAMBDA > | |
void | forElementSubRegionsIndex (LAMBDA &&lambda) const |
Apply LAMBDA to the subregions with the specific subregion types listed in the template, loop using subregion indices. More... | |
template<typename SUBREGIONTYPE , typename ... SUBREGIONTYPES, typename LAMBDA > | |
void | forElementSubRegionsIndex (LAMBDA &&lambda) |
Apply LAMBDA to the subregions, loop using subregion indices. More... | |
Public Member Functions inherited from geosx::ObjectManagerBase | |
ObjectManagerBase (std::string const &name, dataRepository::Group *const parent) | |
Constructor. More... | |
~ObjectManagerBase () override | |
Destructor. | |
virtual localIndex | PackSize (string_array const &wrapperNames, arrayView1d< localIndex const > const &packList, integer const recursive, bool on_device=false) const override |
Get the size required to pack a list of indices within a list of wrappers. More... | |
virtual localIndex | Pack (buffer_unit_type *&buffer, string_array const &wrapperNames, arrayView1d< localIndex const > const &packList, integer const recursive, bool on_device=false) const override |
Pack a list of indices within a list of wrappers. More... | |
virtual localIndex | Unpack (buffer_unit_type const *&buffer, arrayView1d< localIndex > &packList, integer const recursive, bool on_device=false) override |
Unpack a buffer. More... | |
template<bool DOPACK> | |
localIndex | PackSets (buffer_unit_type *&buffer, arrayView1d< localIndex const > const &packList) const |
Packs the elements of each set that actually are in packList . More... | |
localIndex | UnpackSets (buffer_unit_type const *&buffer) |
Unpack the content of buffer into the sets of the instance. More... | |
virtual void | ViewPackingExclusionList (SortedArray< localIndex > &exclusionList) const |
Inserts in exclusionList the data that shall not be packed. More... | |
virtual localIndex | PackGlobalMapsSize (arrayView1d< localIndex const > const &packList, integer const recursive) const |
Computes the pack size of the global maps elements in the @ packList. More... | |
virtual localIndex | PackGlobalMaps (buffer_unit_type *&buffer, arrayView1d< localIndex const > const &packList, integer const recursive) const |
Packs the global maps elements in the @ packList. More... | |
void | SetReceiveLists () |
Clear and redefines the ghosts to receive. | |
virtual localIndex | PackUpDownMapsSize (arrayView1d< localIndex const > const &packList) const |
Computes the pack size of the specific elements in the @ packList. More... | |
virtual localIndex | PackUpDownMaps (buffer_unit_type *&buffer, arrayView1d< localIndex const > const &packList) const |
Packs the specific elements in the @ packList. More... | |
virtual localIndex | UnpackUpDownMaps (buffer_unit_type const *&buffer, array1d< localIndex > &packList, bool const overwriteUpMaps, bool const overwriteDownMaps) |
Unpacks the specific elements in the @ packList. More... | |
virtual localIndex | UnpackGlobalMaps (buffer_unit_type const *&buffer, localIndex_array &packList, integer const recursive) |
Unpacks the global maps from buffer . More... | |
localIndex | PackParentChildMapsSize (arrayView1d< localIndex const > const &packList) const |
Computes the pack size of the parent/child relations in packList . More... | |
localIndex | PackParentChildMaps (buffer_unit_type *&buffer, arrayView1d< localIndex const > const &packList) const |
Packs the parent/child relations in packList . More... | |
localIndex | UnpackParentChildMaps (buffer_unit_type const *&buffer, localIndex_array &packList) |
Unacks the parent/child relations in packList . More... | |
void | moveSets (LvArray::MemorySpace const targetSpace) |
Manually move all sets to a memory space. More... | |
localIndex | resize (localIndex const newSize, const bool) |
Resize the group and all contained wrappers that resize with parent. More... | |
void | CreateSet (const std::string &newSetName) |
Creates a new set. More... | |
void | ConstructSetFromSetAndMap (SortedArrayView< localIndex const > const &inputSet, const array2d< localIndex > &map, const std::string &setName) |
Builds a new set on this instance given another objects set and the map between them. More... | |
void | ConstructSetFromSetAndMap (SortedArrayView< localIndex const > const &inputSet, const array1d< localIndex_array > &map, const std::string &setName) |
Builds a new set on this instance given another objects set and the map between them. More... | |
void | ConstructSetFromSetAndMap (SortedArrayView< localIndex const > const &inputSet, ArrayOfArraysView< localIndex const > const &map, const std::string &setName) |
Builds a new set on this instance given another objects set and the map between them. More... | |
void | ConstructGlobalToLocalMap () |
Constructs the global to local map. | |
void | ConstructLocalListOfBoundaryObjects (localIndex_array &objectList) const |
Computes the (local) index list that are domain boundaries. More... | |
void | ConstructGlobalListOfBoundaryObjects (globalIndex_array &objectList) const |
Computes the (global) index list that are domain boundaries. More... | |
virtual void | ExtractMapFromObjectForAssignGlobalIndexNumbers (ObjectManagerBase const *const obj, std::vector< std::vector< globalIndex > > &map) |
Extract map from object and assign global indices. More... | |
void | SetGhostRankForSenders (int const neighborRank) |
Defines neighborRank ownership for ghost objects. More... | |
localIndex | GetNumberOfGhosts () const |
Get the number of ghost objects. More... | |
localIndex | GetNumberOfLocalIndices () const |
Get the number of locally owned objects. More... | |
integer | SplitObject (localIndex const indexToSplit, int const rank, localIndex &newIndex) |
Split object to deal with topology changes. More... | |
void | inheritGhostRankFromParent (std::set< localIndex > const &indices) |
sets the value of m_ghostRank to the value of the objects parent. More... | |
void | CopyObject (localIndex const source, localIndex const destination) |
Copy object from source to @ destination. More... | |
void | SetMaxGlobalIndex () |
Computes the maximum global index allong all the MPI ranks. | |
virtual void | enforceStateFieldConsistencyPostTopologyChange (std::set< localIndex > const &targetIndices) |
Updates the child and target indices after a topology change. More... | |
template<typename MESH_DATA_TRAIT > | |
dataRepository::Wrapper< typename MESH_DATA_TRAIT::type > & | registerExtrinsicData (string const &nameOfRegisteringObject) |
Register data with this ObjectManagerBase using a dataRepository::Wrapper. More... | |
template<typename MESH_DATA_TRAIT0 , typename MESH_DATA_TRAIT1 , typename ... MESH_DATA_TRAITS> | |
void | registerExtrinsicData (string const &nameOfRegisteringObject) |
Register a collection of data with this ObjectManagerBase using a dataRepository::Wrapper. More... | |
template<typename MESH_DATA_TRAIT > | |
GEOSX_DECLTYPE_AUTO_RETURN | getExtrinsicData () const |
Get a view to the data associated with a trait from this ObjectManagerBase. More... | |
template<typename MESH_DATA_TRAIT > | |
GEOSX_DECLTYPE_AUTO_RETURN | getExtrinsicData () |
Get the data associated with a trait from this ObjectManagerBase. More... | |
template<typename MESH_DATA_TRAIT > | |
bool | hasExtrinsicData () const |
Checks if an extrinsic data has been registered. More... | |
virtual viewKeyStruct & | viewKeys () |
Get the view keys for Group access. More... | |
virtual viewKeyStruct const & | viewKeys () const |
Get the view keys for Group access, const version. More... | |
virtual groupKeyStruct & | groupKeys () |
Get the group keys for Group access. More... | |
virtual groupKeyStruct const & | groupKeys () const |
Get the group keys for Group access, const version. More... | |
Group & | sets () |
Get the group holding the object sets. More... | |
Group const & | sets () const |
Get the group holding the object sets, const version. More... | |
SortedArray< localIndex > & | externalSet () |
Get the external set. More... | |
SortedArrayView< localIndex const > | externalSet () const |
Get the external set, const version. More... | |
void | updateGlobalToLocalMap (localIndex const lid) |
Updates (if needed) the global index for local index lid . More... | |
arrayView1d< globalIndex > | localToGlobalMap () |
Get local to global map. More... | |
arrayView1d< globalIndex const > | localToGlobalMap () const |
Get local to global map, const version. More... | |
unordered_map< globalIndex, localIndex > const & | globalToLocalMap () const |
Get global to local map. More... | |
localIndex | globalToLocalMap (globalIndex const gid) const |
Retrieves the local index for given global index. More... | |
array1d< integer > const & | isExternal () |
Get the locality information of the objects. More... | |
arrayView1d< integer const > | isExternal () const |
Get the locality information of the objects. More... | |
array1d< integer > const & | ghostRank () |
Get the ghost information of each object. More... | |
arrayView1d< integer const > | ghostRank () const |
Get the ghost information of each object, const version. More... | |
NeighborData & | getNeighborData (int const rank) |
Get neighbor data for given rank . More... | |
NeighborData const & | getNeighborData (int const rank) const |
Get neighbor data for given rank , const version. More... | |
void | addNeighbor (int const rank) |
Add a neighbor for rank . More... | |
void | removeNeighbor (int const rank) |
Remove neighbor for rank . More... | |
globalIndex | maxGlobalIndex () const |
Get the maximum global index of all objects across all rank. See. More... | |
arrayView1d< integer > | getDomainBoundaryIndicator () |
Get the domain boundary indicator. More... | |
arrayView1d< integer const > | getDomainBoundaryIndicator () const |
Get the domain boundary indicator. More... | |
Public Member Functions inherited from geosx::dataRepository::Group | |
Group (std::string const &name, Group *const parent) | |
Constructor. More... | |
Group (Group &&source) | |
Move constructor. More... | |
virtual | ~Group () |
Destructor, deletes all Groups and Wrappers owned by this Group. | |
Group ()=delete | |
Deleted default constructor. | |
Group (Group const &)=delete | |
Deleted copy constructor. | |
Group (Group const &&)=delete | |
Deleted move constructor. | |
Group & | operator= (Group const &)=delete |
Deleted copy assignment operator. More... | |
Group & | operator= (Group &&)=delete |
Deleted move assignment operator. More... | |
virtual const std::type_info & | get_typeid () const |
Get typeid for current group. More... | |
bool | CheckTypeID (std::type_info const &typeToCheck) const |
Check a type_info against the type_info of this Group. More... | |
void | PrintDataHierarchy (integer indent=0) |
Prints the data hierarchy recursively. More... | |
string | dumpInputOptions () const |
template<typename T = Group> | |
T * | RegisterGroup (std::string const &name, std::unique_ptr< T > newObject) |
Register a new Group as a sub-group of current Group. More... | |
template<typename T = Group> | |
T * | RegisterGroup (std::string const &name, T *newObject) |
Register a new Group as a sub-group of current Group. More... | |
template<typename T = Group> | |
T * | RegisterGroup (std::string const &name) |
Register a new Group as a sub-group of current Group. More... | |
template<typename T = Group> | |
T * | RegisterGroup (subGroupMap::KeyIndex const &keyIndex) |
Register a new Group as a sub-group of current Group. More... | |
template<typename T = Group, typename TBASE = Group> | |
T * | RegisterGroup (std::string const &name, std::string const &catalogName) |
Register a new Group as a sub-group of current Group. More... | |
void | deregisterGroup (std::string const &name) |
Removes a child group from this group. More... | |
virtual Group * | CreateChild (string const &childKey, string const &childName) |
Creates a new sub-Group using the ObjectCatalog functionality. More... | |
template<typename T = Group> | |
T * | GetGroup (localIndex index) |
Retrieve a sub-group from the current Group using an index. More... | |
template<typename T = Group> | |
T const * | GetGroup (localIndex index) const |
Retrieve a sub-group from the current Group using an index. More... | |
template<typename T = Group> | |
T * | GetGroup (string const &name) |
Retrieve a sub-group from the current Group using a string. More... | |
template<typename T = Group> | |
T const * | GetGroup (string const &name) const |
Retrieve a sub-group from the current Group using a string. More... | |
template<typename T = Group> | |
T & | getGroupReference (string const &key) |
template<typename T = Group> | |
T const & | getGroupReference (string const &key) const |
template<typename T = Group> | |
T & | GetGroupReference (subGroupMap::KeyIndex const &key) |
template<typename T = Group> | |
T const & | GetGroupReference (subGroupMap::KeyIndex const &key) const |
template<typename T = Group> | |
T * | GetGroup (subGroupMap::KeyIndex const &key) |
Retrieve a sub-group from the current Group using a KeyIndexT. More... | |
template<typename T = Group> | |
T const * | GetGroup (subGroupMap::KeyIndex const &key) const |
Retrieve a sub-group from the current Group using a KeyIndexT. More... | |
template<typename T = Group> | |
T * | GetGroupByPath (string const &path) |
Retrieve a group from the hierarchy using a path. More... | |
template<typename T = Group> | |
T const * | GetGroupByPath (string const &path) const |
Retrieve a group from the hierarchy using a path. More... | |
subGroupMap & | GetSubGroups () |
Get the subgroups object. More... | |
subGroupMap const & | GetSubGroups () const |
Get the subgroups object. More... | |
localIndex | numSubGroups () const |
return the number of sub groups in this Group More... | |
bool | hasGroup (std::string const &name) const |
Check whether a sub-group exists. More... | |
template<typename GROUPTYPE = Group, typename ... GROUPTYPES, typename LAMBDA > | |
void | forSubGroups (LAMBDA lambda) |
Apply the given functor to subgroups that can be casted to one of specified types. More... | |
template<typename GROUPTYPE = Group, typename ... GROUPTYPES, typename LAMBDA > | |
void | forSubGroups (LAMBDA lambda) const |
Apply the given functor to subgroups that can be casted to one of specified types. More... | |
template<typename GROUPTYPE = Group, typename ... GROUPTYPES, typename LOOKUP_CONTAINER , typename LAMBDA > | |
void | forSubGroups (LOOKUP_CONTAINER const &subGroupKeys, LAMBDA lambda) |
template<typename GROUPTYPE = Group, typename ... GROUPTYPES, typename LOOKUP_CONTAINER , typename LAMBDA > | |
void | forSubGroups (LOOKUP_CONTAINER const &subGroupKeys, LAMBDA lambda) const |
template<typename LAMBDA > | |
void | forWrappers (LAMBDA lambda) |
Apply the given functor to wrappers. More... | |
template<typename LAMBDA > | |
void | forWrappers (LAMBDA lambda) const |
Apply the given functor to wrappers. More... | |
template<typename TYPE , typename ... TYPES, typename LAMBDA > | |
void | forWrappers (LAMBDA lambda) |
Apply the given functor to wrappers that can be cast to one of specified types. More... | |
template<typename TYPE , typename ... TYPES, typename LAMBDA > | |
void | forWrappers (LAMBDA lambda) const |
Apply the given functor to wrappers that can be cast to one of specified types. More... | |
void | Initialize (Group *const group) |
Run initialization functions on this and all subgroups. More... | |
virtual void | InitializationOrder (string_array &order) |
Sets the initialization order for sub-Groups. More... | |
void | InitializePostInitialConditions (Group *const group) |
Initialization routine to be called after calling ApplyInitialConditions(). More... | |
void | postRestartInitializationRecursive (Group *const domain) |
Initialization routine to be called after calling reading a restart file. More... | |
void | ProcessInputFileRecursive (xmlWrapper::xmlNode &targetNode) |
Recursively read values using ProcessInputFile() from the input file and put them into the wrapped values for this group. More... | |
void | PostProcessInputRecursive () |
Recursively call PostProcessInput() to apply post processing after reading input values. | |
template<typename T , typename TBASE = T> | |
Wrapper< TBASE > * | registerWrapper (std::string const &name, wrapperMap::KeyIndex::index_type *const rkey=nullptr) |
Create and register a Wrapper around a new object. More... | |
template<typename T , typename TBASE = T> | |
Wrapper< TBASE > * | registerWrapper (Group::wrapperMap::KeyIndex const &viewKey) |
template<typename T > | |
Wrapper< T > * | registerWrapper (std::string const &name, std::unique_ptr< T > newObject) |
Register a Wrapper around a given object and take ownership. More... | |
template<typename T > | |
Wrapper< T > * | registerWrapper (std::string const &name, T *newObject) |
Register a Wrapper around an existing object, does not take ownership of the object. More... | |
WrapperBase * | registerWrapper (string const &name, std::unique_ptr< WrapperBase > wrapper) |
Register and take ownership of an existing Wrapper. More... | |
void | deregisterWrapper (string const &name) |
Removes a Wrapper from this group. More... | |
void | GenerateDataStructureSkeleton (integer const level) |
Build a complete datastructure for schema generation. More... | |
virtual void | ExpandObjectCatalogs () |
Expand any catalogs in the data structure. | |
virtual void | SetSchemaDeviations (xmlWrapper::xmlNode schemaRoot, xmlWrapper::xmlNode schemaParent, integer documentationType) |
Inform the schema generator of any deviations between the xml and GEOS data structures. More... | |
virtual void | RegisterDataOnMeshRecursive (Group *const meshBodies) |
Calls RegisterDataOnMesh() recursively. More... | |
virtual void | RegisterDataOnMesh (Group *const meshBodies) |
Register data on mesh entities. More... | |
virtual localIndex | PackSize (string_array const &wrapperNames, integer const recursive, bool on_device=false) const |
Get the size required to pack a list of wrappers. More... | |
virtual localIndex | Pack (buffer_unit_type *&buffer, string_array const &wrapperNames, integer const recursive, bool on_device=false) const |
Pack a list of wrappers to a buffer. More... | |
WrapperBase const * | getWrapperBase (indexType const index) const |
Retrieve a WrapperBase stored in this group. More... | |
WrapperBase * | getWrapperBase (indexType const index) |
Retrieve a WrapperBase stored in this group. More... | |
WrapperBase const * | getWrapperBase (std::string const &name) const |
Retrieve a WrapperBase stored in this group. More... | |
WrapperBase * | getWrapperBase (std::string const &name) |
Retrieve a WrapperBase stored in this group. More... | |
WrapperBase const * | getWrapperBase (wrapperMap::KeyIndex const &keyIndex) const |
Retrieve a WrapperBase stored in this group. More... | |
WrapperBase * | getWrapperBase (wrapperMap::KeyIndex const &keyIndex) |
Retrieve a WrapperBase stored in this group. More... | |
indexType | getWrapperIndex (std::string const &name) const |
wrapperMap const & | wrappers () const |
Get access to the internal wrapper storage. More... | |
wrapperMap & | wrappers () |
Get access to the internal wrapper storage. More... | |
template<typename LOOKUP_TYPE > | |
bool | hasWrapper (LOOKUP_TYPE const &lookup) const |
Check if a wrapper exists. More... | |
template<typename T , typename LOOKUP_TYPE > | |
Wrapper< T > const * | getWrapper (LOOKUP_TYPE const &index) const |
Retrieve a Wrapper stored in this group. More... | |
template<typename T , typename LOOKUP_TYPE > | |
Wrapper< T > * | getWrapper (LOOKUP_TYPE const &index) |
Retrieve a Wrapper stored in this group. More... | |
template<typename T > | |
Wrapper< T > const * | getWrapper (char const *const key) const |
Retrieve a Wrapper stored in this group. More... | |
template<typename T > | |
Wrapper< T > * | getWrapper (char const *const key) |
Retrieve a Wrapper stored in this group. More... | |
template<typename T , typename LOOKUP_TYPE > | |
GEOSX_DECLTYPE_AUTO_RETURN | getReference (LOOKUP_TYPE const &lookup) const |
Look up a wrapper and get reference to wrapped object. More... | |
template<typename T , typename LOOKUP_TYPE > | |
T & | getReference (LOOKUP_TYPE const &lookup) |
Look up a wrapper and get reference to wrapped object. More... | |
template<typename T > | |
GEOSX_DECLTYPE_AUTO_RETURN | getReference (char const *const name) const |
template<typename T > | |
T & | getReference (char const *const name) |
virtual void | resize (localIndex const newSize) |
Resize the group and all contained wrappers that resize with parent. More... | |
virtual void | reserve (indexType const newsize) |
Set the new capacity and reserve it in all wrappers that resize with parent. More... | |
localIndex | capacity () const |
Get the "capacity" of the group, which determines the capacity of resizable wrappers. More... | |
localIndex | size () const |
Get the "size" of the group, which determines the number of elements in resizable wrappers. More... | |
const string | getName () const |
Get group name. More... | |
Group * | getParent () |
Access the group's parent. More... | |
Group const * | getParent () const |
Access the group's parent. More... | |
localIndex | getIndexInParent () const |
Get the group's index withing its parent group. More... | |
integer | sizedFromParent () const |
Check whether this Group is resized when its parent is resized. More... | |
Group * | setSizedFromParent (int val) |
Set whether this wrapper is resized when its parent is resized. More... | |
RestartFlags | getRestartFlags () const |
Get flags that control restart output of this group. More... | |
void | setRestartFlags (RestartFlags flags) |
Set flags that control restart output of this group. More... | |
InputFlags | getInputFlags () const |
Get input flags for schema generation. More... | |
void | setInputFlags (InputFlags flags) |
Set input flags for schema generation. More... | |
conduit::Node & | getConduitNode () |
Get the Conduit node object associated with this group. More... | |
void | prepareToWrite () |
Register the group and its wrappers with Conduit. | |
void | finishWriting () |
Write the group and its wrappers into Conduit. | |
void | loadFromConduit () |
Read the group and its wrappers from Conduit. | |
void | enableLogLevelInput () |
Enable verbosity input for object. | |
integer | getLogLevel () const |
template<typename T > | |
T | group_cast () |
Downcast this Group. More... | |
template<typename T > | |
T | group_cast () const |
Downcast this Group. More... | |
Public Attributes | |
geosx::WellElementRegion::viewKeyStruct | viewKeysWellElementRegion |
ViewKey struct for the WellElementRegion class. | |
geosx::WellElementRegion::groupKeyStruct | groupKeysWellElementRegion |
groupKey struct for the WellElementRegion class | |
Public Attributes inherited from geosx::ObjectManagerBase | |
struct geosx::ObjectManagerBase::viewKeyStruct | m_ObjectManagerBaseViewKeys |
viewKey struct for the ObjectManagerBase class | |
struct geosx::ObjectManagerBase::groupKeyStruct | m_ObjectManagerBaseGroupKeys |
groupKey struct for the ObjectManagerBase class | |
Static Factory Catalog Functions | |
virtual const string | getCatalogName () const override final |
Get the catalog name. More... | |
static const string | CatalogName () |
Get the catalog name. More... | |
Additional Inherited Members | |
Public Types inherited from geosx::ObjectManagerBase | |
using | CatalogInterface = dataRepository::CatalogInterface< ObjectManagerBase, std::string const &, dataRepository::Group *const > |
Nested type for the factory pattern, defining the base class (ObjectManagerBase) and the builder arguments (std::string const &, dataRepository::Group * const) of the derived products. | |
Public Types inherited from geosx::dataRepository::Group | |
using | subGroupMap = MappedVector< Group, Group *, keyType, indexType > |
The template specialization of MappedVector to use for the collection of sub-Group objects. | |
using | wrapperMap = MappedVector< WrapperBase, WrapperBase *, keyType, indexType > |
The template specialization of MappedVector to use for the collection wrappers objects. | |
using | CatalogInterface = dataRepository::CatalogInterface< Group, std::string const &, Group *const > |
Type alias for catalog interface used by this class. See CatalogInterface. | |
Static Public Member Functions inherited from geosx::ObjectManagerBase | |
template<typename TYPE_RELATION > | |
static void | FixUpDownMaps (TYPE_RELATION &relation, map< localIndex, array1d< globalIndex > > &unmappedIndices, bool const clearIfUnmapped) |
Fixing the up/down maps by mapping the unmapped indices. More... | |
template<typename TYPE_RELATION > | |
static void | FixUpDownMaps (TYPE_RELATION &relation, map< localIndex, SortedArray< globalIndex > > &unmappedIndices, bool const clearIfUnmapped) |
Fixing the up/down maps by mapping the unmapped indices. More... | |
static void | FixUpDownMaps (ArrayOfSets< localIndex > &relation, unordered_map< globalIndex, localIndex > const &globalToLocal, map< localIndex, SortedArray< globalIndex > > &unmappedIndices, bool const clearIfUnmapped) |
Fixing the up/down maps by mapping the unmapped indices. More... | |
static void | CleanUpMap (std::set< localIndex > const &targetIndices, array1d< SortedArray< localIndex > > &upmap, arrayView2d< localIndex const > const &downmap) |
Removes from the list of arrays of upmap all the elements for which the "mirror target array" of downmap does not contain the proper target index. More... | |
static void | CleanUpMap (std::set< localIndex > const &targetIndices, ArrayOfSetsView< localIndex > const &upmap, arrayView2d< localIndex const > const &downmap) |
Removes from the list of sets of upmap all the elements for which the "mirror target array" of downmap does not contain the proper target index. More... | |
static void | CleanUpMap (std::set< localIndex > const &targetIndices, array1d< SortedArray< localIndex > > &upmap, arrayView1d< arrayView1d< localIndex const > const > const &downmap) |
Removes from the list of arrays of upmap all the elements for which the "mirror target array" of downmap does not contain the proper target index. More... | |
static void | CleanUpMap (std::set< localIndex > const &targetIndices, ArrayOfSetsView< localIndex > const &upmap, arrayView1d< arrayView1d< localIndex const > const > const &downmap) |
Removes from the list of sets of upmap all the elements for which the "mirror target array" of downmap does not contain the proper target index. More... | |
static void | CleanUpMap (std::set< localIndex > const &targetIndices, ArrayOfSetsView< localIndex > const &upmap, ArrayOfArraysView< localIndex const > const &downmap) |
Removes from the list of sets of upmap all the elements for which the "mirror target array" of downmap does not contain the proper target index. More... | |
static localIndex | GetParentRecusive (arraySlice1d< localIndex const > const &parentIndices, localIndex const lookup) |
Get the upmost parent. More... | |
static CatalogInterface::CatalogType & | GetCatalog () |
Acessing the unique instance of this catalog. More... | |
Static Public Member Functions inherited from geosx::dataRepository::Group | |
template<typename T0 , typename T1 , typename ... CASTTYPES, typename CONTAINERTYPE , typename LAMBDA > | |
static bool | applyLambdaToContainer (CONTAINERTYPE &container, LAMBDA &&lambda) |
Apply a given functor to a container if the container can be cast to one of the specified types. More... | |
static CatalogInterface::CatalogType & | GetCatalog () |
Get the singleton catalog for this class. More... | |
template<typename T > | |
static T | group_cast (Group *group) |
Downcast a Group *. More... | |
template<typename T > | |
static T | group_cast (Group const *group) |
Downcast a Group const *. More... | |
Protected Member Functions inherited from geosx::dataRepository::Group | |
virtual void | PostProcessInput () |
virtual void | InitializePreSubGroups (Group *const group) |
Called by Initialize() prior to initializing sub-Groups. More... | |
virtual void | InitializePostSubGroups (Group *const group) |
Called by Initialize() after to initializing sub-Groups. More... | |
virtual void | InitializePostInitialConditions_PreSubGroups (Group *const group) |
Called by InitializePostInitialConditions() prior to initializing sub-Groups. More... | |
virtual void | InitializePostInitialConditions_PostSubGroups (Group *const group) |
Called by InitializePostInitialConditions() after to initializing sub-Groups. More... | |
virtual void | postRestartInitialization (Group *const domain) |
Performs initialization required after reading from a restart file. More... | |
Protected Attributes inherited from geosx::ObjectManagerBase | |
Group | m_sets |
Group that holds object sets. | |
Group | m_neighborGroup |
Group that holds all the NeighborData objects. | |
array1d< globalIndex > | m_localToGlobalMap |
Contains the global index of each object. | |
unordered_map< globalIndex, localIndex > | m_globalToLocalMap |
Map from object global index to the local index. | |
array1d< integer > | m_isExternal |
Array that holds if an object is external. | |
array1d< integer > | m_domainBoundaryIndicator |
Domain boundary indicator: 1 means the "index" is on the boundary. | |
array1d< integer > | m_ghostRank |
Array that holds the ghost information about each object. More... | |
unordered_map< int, NeighborData > | m_neighborData |
A map from rank to the associated NeighborData object. | |
real64 | m_overAllocationFactor = 1.1 |
Factor by which to overallocate when adding objects. | |
globalIndex | m_maxGlobalIndex = -1 |
The maximum global index of all objects across all rank. | |
globalIndex | m_localMaxGlobalIndex = -1 |
The maximum global index of any object of all objects on this rank. | |
This class specializes the element region for the case of a well. This class is also in charge of starting the construction of the well data structure in GenerateWell.
Definition at line 37 of file WellElementRegion.hpp.
Constructor.
name | name of the object in the data hierarchy. |
parent | pointer to the parent group in the data hierarchy. |
|
inlinestatic |
Get the catalog name.
Definition at line 74 of file WellElementRegion.hpp.
void geosx::WellElementRegion::GenerateWell | ( | MeshLevel & | mesh, |
InternalWellGenerator const & | wellGeometry, | ||
globalIndex | nodeOffsetGlobal, | ||
globalIndex | elemOffsetGlobal | ||
) |
Build the local well elements and perforations from global well geometry.
[in] | mesh | the mesh object (single level only) |
[in] | wellGeometry | the InternalWellGenerator containing the global well topology |
[in] | nodeOffsetGlobal | the offset of the first global well node ( = offset of last global mesh node + 1 ) |
[in] | elemOffsetGlobal | the offset of the first global well element ( = offset of last global mesh elem + 1 ) |
|
inlinefinaloverridevirtual |
Get the catalog name.
Implements geosx::ObjectManagerBase.
Definition at line 80 of file WellElementRegion.hpp.
|
inline |
Get the name of the subRegion.
Definition at line 112 of file WellElementRegion.hpp.
|
inline |
Get the name of the InternalWellGenerator object of this well.
Definition at line 100 of file WellElementRegion.hpp.
|
inline |
Set the name of the WellControls object of this well.
name | the name of the WellControls object |
Definition at line 106 of file WellElementRegion.hpp.
|
inline |
Set the name of the InternalWellGenerator object of this well.
[in] | name | the name of the InternalWellGenerator object |
Definition at line 94 of file WellElementRegion.hpp.