45 #include <Epetra_Map.h> 46 #include <Epetra_Export.h> 47 #include <Epetra_Import.h> 48 #include <Epetra_Comm.h> 51 #include <EpetraExt_HDF5.h> 54 #include <lifev/core/LifeV.hpp> 55 #include <lifev/core/array/EnumMapEpetra.hpp> 56 #include <lifev/core/array/MapEpetraData.hpp> 57 #include <lifev/core/array/MapVector.hpp> 114 Int* myGlobalElements,
168 MapEpetra (
const Epetra_BlockMap& blockMap,
244 void showMe ( std::ostream& output = std::cout )
const;
249 return map (Unique)->NumGlobalElements();
255 return ( M_uniqueMapEpetra->LID (
static_cast<
int> (globalId) ) > -1 );
315 Int* myGlobalElements,
340 void bubbleSort ( Epetra_IntSerialDenseVector& elements );
bool mapsAreSimilar(MapEpetra const &epetraMap) const
This method return true if both the unique map and the repeated map are identical.
MapEpetra(const MapEpetra &epetraMap)
Copy constructor.
MapEpetra(const map_Type map)
Constructor from raw Epetra_Map.
mapPtr_Type M_repeatedMapEpetra
MapEpetra & operator+=(const MapEpetra &epetraMap)
Addition operator.
MapEpetra(mapData_Type const &mapData, commPtr_Type const &commPtr)
Constructor.
MapEpetra()
Empty Constructor.
MapVector< MapEpetra > operator|(const MapEpetra &map1, const MapEpetra &map2)
Juxtaposition operator.
mapPtr_Type const & getUniqueMap() const
Getter for the unique map.
int32_type Int
Generic integer data.
MapEpetra & operator+=(Int const size)
Addition operator.
comm_Type const & comm() const
Return the communicator.
void bubbleSort(Epetra_IntSerialDenseVector &elements)
Sort the element given using a bubble sort algorithm.
void updateInverseJacobian(const UInt &iQuadPt)
void createMap(Int numGlobalElements, Int numMyElements, Int *myGlobalElements, const comm_Type &comm)
Create a map.
MapEpetra(Int numGlobalElements, Int numMyElements, Int *myGlobalElements, const commPtr_Type &commPtr)
Constructor.
void setMap(mapPtr_Type map, MapEpetraType mapType)
set the internal Epetra_Maps
UInt mapSize() const
Getter for the global number of entries.
MapEpetra(const Int numGlobalElements, const Int notUsed, const commPtr_Type &commPtr)
Constructor.
MapEpetra(const Epetra_BlockMap &blockMap, const Int offset, const Int maxId)
Constructor.
MapEpetra(const Int size, const commPtr_Type &commPtr)
Constructor.
mapPtr_Type M_uniqueMapEpetra
void createImportExport()
Reset and rebuild the importer and exporter for the map.
Epetra_Import const & importer()
Getter for the Epetra_Import.
exporterPtr_Type M_exporter
importerPtr_Type M_importer
MapVector< MapEpetra > MapEpetraVector
MapEpetra operator+(const MapEpetra &map1, const MapEpetra &map2)
Addition operator.
std::shared_ptr< map_Type > mapPtr_Type
std::shared_ptr< MapEpetra > createRootMap(Int const root) const
This method creates a pointer to a MapEpetra that has points only on processor root.
void uniqueMap()
Reset the internal unique map and recompute it using the repeated map.
This class is used to store maps that will be used for block defined problems.
MapEpetraData mapData_Type
void showMe(std::ostream &output=std::cout) const
Show informations about the map.
MapEpetra & operator=(const MapEpetra &epetraMap)
Assignment operator.
MapEpetra operator+(const MapEpetra &map, Int size)
Addition operator.
void setComm(commPtr_Type const &commPtr)
Set the communicator.
bool isOwned(const UInt globalId) const
check if a global id is owned by the current partition
std::shared_ptr< comm_Type > commPtr_Type
mapPtr_Type const & map(MapEpetraType mapType) const
Return a shared pointer on the internal Epetra_Map.
commPtr_Type const & commPtr() const
Return a shared pointer on the communicator.
uint32_type UInt
generic unsigned integer (used mainly for addressing)
mapPtr_Type const & getRepeatedMap() const
Getter for the repeated map.