PPL Logo

FEM_Partition Class Reference
[ParFUM Unstructured Mesh Framework]

Describes all the data needed for partitioning a mesh. More...

#include <fem_impl.h>

Inheritance diagram for FEM_Partition:

Inheritance graph
[legend]
Collaboration diagram for FEM_Partition:

Collaboration graph
[legend]

Public Member Functions

 FEM_Partition ()
 ~FEM_Partition ()
void setPartition (const int *elem2chunk, int nElem, int idxBase)
const intgetPartition (FEM_Mesh *src, int nChunks) const
FEM_Ghost_LayeraddLayer (void)
FEM_Ghost_LayercurLayer (void)
void addGhostStencil (FEM_Ghost_Stencil *s)
void markGhostStencilLayer (void)
int getRegions (void) const
const FEM_Ghost_RegiongetRegion (int regNo) const
void setSymmetries (int nNodes_, int *new_can, const int *sym_src)
void addLinearPeriodic (int nFaces_, int nPer, const int *facesA, const int *facesB, int idxBase, int nNodes_, const CkVector3d *nodeLocs)
const intgetCanon (void) const
const FEM_Symmetries_tgetSymmetries (void) const
const FEM_Sym_ListgetSymList (void) const
 FEM_Partition ()
 ~FEM_Partition ()
void setPartition (const int *elem2chunk, int nElem, int idxBase)
const intgetPartition (FEM_Mesh *src, int nChunks) const
FEM_Ghost_LayeraddLayer (void)
FEM_Ghost_LayercurLayer (void)
void addGhostStencil (FEM_Ghost_Stencil *s)
void markGhostStencilLayer (void)
int getRegions (void) const
const FEM_Ghost_RegiongetRegion (int regNo) const
void setSymmetries (int nNodes_, int *new_can, const int *sym_src)
void addLinearPeriodic (int nFaces_, int nPer, const int *facesA, const int *facesB, int idxBase, int nNodes_, const CkVector3d *nodeLocs)
const intgetCanon (void) const
const FEM_Symmetries_tgetSymmetries (void) const
const FEM_Sym_ListgetSymList (void) const

Private Attributes

intelem2chunk
 Maps element number to (0-based) chunk number, allocated with new[].
CkVec< FEM_Ghost_Regionregions
 Describes the different regions of ghost elements:.
FEM_Ghost_LayerlastLayer
FEM_Initial_Symmetriessym
 Describes the problem domain's spatial symmetries.
intelem2chunk
 Maps element number to (0-based) chunk number, allocated with new[].
CkVec< FEM_Ghost_Regionregions
 Describes the different regions of ghost elements:.
FEM_Ghost_LayerlastLayer
FEM_Initial_Symmetriessym
 Describes the problem domain's spatial symmetries.

Detailed Description

Describes all the data needed for partitioning a mesh.

Definition at line 372 of file fem_impl.h.


Constructor & Destructor Documentation

FEM_Partition::FEM_Partition (  ) 

Definition at line 175 of file fem.C.

References elem2chunk, lastLayer, and sym.

FEM_Partition::~FEM_Partition (  ) 

Definition at line 181 of file fem.C.

References elem2chunk, getRegions(), and regions.

FEM_Partition::FEM_Partition (  ) 

FEM_Partition::~FEM_Partition (  ) 


Member Function Documentation

void FEM_Partition::setPartition ( const int elem2chunk,
int  nElem,
int  idxBase 
)

Definition at line 189 of file fem.C.

References CkCopyArray(), and elem2chunk.

const int * FEM_Partition::getPartition ( FEM_Mesh src,
int  nChunks 
) const

Definition at line 193 of file fem.C.

References elem2chunk, FEM_Mesh_partition(), and FEM_Mesh::nElems().

Referenced by FEM_Mesh_split().

FEM_Ghost_Layer* FEM_Partition::addLayer ( void   )  [inline]

Definition at line 391 of file fem_impl.h.

References lastLayer, CkVec< T >::push_back(), and regions.

Referenced by FEM_Add_ghost_layer().

FEM_Ghost_Layer* FEM_Partition::curLayer ( void   )  [inline]

Definition at line 396 of file fem_impl.h.

References lastLayer.

Referenced by add_ghost_elem().

void FEM_Partition::addGhostStencil ( FEM_Ghost_Stencil s  )  [inline]

Definition at line 402 of file fem_impl.h.

References lastLayer, CkVec< T >::push_back(), and regions.

Referenced by FEM_Add_ghost_stencil_type(), and FTN_NAME().

void FEM_Partition::markGhostStencilLayer ( void   )  [inline]

Definition at line 406 of file fem_impl.h.

References CkVec< T >::push_back(), and regions.

Referenced by FEM_Add_ghost_stencil().

int FEM_Partition::getRegions ( void   )  const [inline]

Definition at line 411 of file fem_impl.h.

References regions, and CkVec< T >::size().

Referenced by splitter::addGhosts(), gatherGhosts(), and ~FEM_Partition().

const FEM_Ghost_Region& FEM_Partition::getRegion ( int  regNo  )  const [inline]

Definition at line 412 of file fem_impl.h.

References regions.

Referenced by splitter::addGhosts(), and gatherGhosts().

void FEM_Partition::setSymmetries ( int  nNodes_,
int new_can,
const int sym_src 
)

void FEM_Partition::addLinearPeriodic ( int  nFaces_,
int  nPer,
const int facesA,
const int facesB,
int  idxBase,
int  nNodes_,
const CkVector3d nodeLocs 
)

const int * FEM_Partition::getCanon ( void   )  const

const FEM_Symmetries_t * FEM_Partition::getSymmetries ( void   )  const

Definition at line 332 of file symmetries.C.

References FEM_Initial_Symmetries::nodeSymmetries, and sym.

Referenced by splitter::addGhosts().

const FEM_Sym_List & FEM_Partition::getSymList ( void   )  const

Definition at line 336 of file symmetries.C.

References sym, and FEM_Initial_Symmetries::symList.

Referenced by FEM_Mesh_split().

void FEM_Partition::setPartition ( const int elem2chunk,
int  nElem,
int  idxBase 
)

const int* FEM_Partition::getPartition ( FEM_Mesh src,
int  nChunks 
) const

FEM_Ghost_Layer* FEM_Partition::addLayer ( void   )  [inline]

Definition at line 1911 of file ParFUM_internals.h.

FEM_Ghost_Layer* FEM_Partition::curLayer ( void   )  [inline]

Definition at line 1916 of file ParFUM_internals.h.

void FEM_Partition::addGhostStencil ( FEM_Ghost_Stencil s  )  [inline]

Definition at line 1922 of file ParFUM_internals.h.

void FEM_Partition::markGhostStencilLayer ( void   )  [inline]

Definition at line 1926 of file ParFUM_internals.h.

int FEM_Partition::getRegions ( void   )  const [inline]

Definition at line 1931 of file ParFUM_internals.h.

const FEM_Ghost_Region& FEM_Partition::getRegion ( int  regNo  )  const [inline]

Definition at line 1932 of file ParFUM_internals.h.

void FEM_Partition::setSymmetries ( int  nNodes_,
int new_can,
const int sym_src 
)

void FEM_Partition::addLinearPeriodic ( int  nFaces_,
int  nPer,
const int facesA,
const int facesB,
int  idxBase,
int  nNodes_,
const CkVector3d nodeLocs 
)

const int* FEM_Partition::getCanon ( void   )  const

const FEM_Symmetries_t* FEM_Partition::getSymmetries ( void   )  const

const FEM_Sym_List& FEM_Partition::getSymList ( void   )  const


Field Documentation

Maps element number to (0-based) chunk number, allocated with new[].

Definition at line 374 of file fem_impl.h.

Referenced by FEM_Mesh_broadcast(), FEM_Partition(), getPartition(), setPartition(), and ~FEM_Partition().

Describes the different regions of ghost elements:.

Definition at line 377 of file fem_impl.h.

Referenced by addGhostStencil(), addLayer(), getRegion(), getRegions(), markGhostStencilLayer(), and ~FEM_Partition().

Definition at line 378 of file fem_impl.h.

Referenced by addGhostStencil(), addLayer(), curLayer(), and FEM_Partition().

Describes the problem domain's spatial symmetries.

Definition at line 381 of file fem_impl.h.

Referenced by addLinearPeriodic(), FEM_Partition(), getCanon(), getSymList(), getSymmetries(), and setSymmetries().

Maps element number to (0-based) chunk number, allocated with new[].

Definition at line 1894 of file ParFUM_internals.h.

Describes the different regions of ghost elements:.

Definition at line 1897 of file ParFUM_internals.h.

Definition at line 1898 of file ParFUM_internals.h.

Describes the problem domain's spatial symmetries.

Definition at line 1901 of file ParFUM_internals.h.


The documentation for this class was generated from the following files:

Generated on Fri May 25 08:03:20 2012 for Charm++ by  doxygen 1.5.5