FEI Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
HexBeamCR Class Reference

#include <HexBeamCR.hpp>

Inheritance diagram for HexBeamCR:
Inheritance graph
[legend]

Public Types

enum  { OneD = 0, TwoD = 1, ThreeD = 2 }
 
- Public Types inherited from HexBeam
enum  { OneD = 0, TwoD = 1, ThreeD = 2 }
 

Public Member Functions

 HexBeamCR (int W, int D, int DofPerNode, int decomp, int numProcs, int localProc)
 
virtual ~HexBeamCR ()
 
int getElemConnectivity (int elemID, int *nodeIDs)
 
int getElemStiffnessMatrix (int elemID, double *elemMat)
 
int getElemLoadVector (int elemID, double *elemVec)
 
int getNumBCNodes ()
 
int getBCNodes (int numNodes, int *nodeIDs)
 
int getBCGammaValues (int numBCDofs, double *gamma)
 
int getNumSharedNodes ()
 
int getSharedNodes (int numSharedNodes, int *&sharedNodes, int *&numSharingProcsPerNode, int **&sharingProcs)
 
int getNumCRs ()
 
int getNumNodesPerCR ()
 
int getCRNodes (int **nodeIDs)
 
- Public Member Functions inherited from HexBeam
 HexBeam (int W, int D, int DofPerNode, int decomp, int numProcs, int localProc)
 
virtual ~HexBeam ()
 
virtual bool inErrorState ()
 
virtual int numNodesPerElem ()
 
virtual int numDofPerNode ()
 
virtual int numLocalElems ()
 
virtual int numLocalNodes ()
 
virtual int firstLocalElem ()
 
virtual int getBCValues (int numBCNodes, int *offsetsIntoField, double *vals)
 

Public Attributes

int numLocalCRs_
 
int numNodesPerCR_
 
int firstLocalSlice_
 
int localCRslice_
 
- Public Attributes inherited from HexBeam
int W_
 
int D_
 
int decomp_
 
int numProcs_
 
int localProc_
 
int totalNumElems_
 
int totalNumNodes_
 
int localNumElems_
 
int localNumNodes_
 
int firstLocalElem_
 
int firstLocalNode_
 
int numElemsPerSlice_
 
int numNodesPerSlice_
 
int numLocalSlices_
 
bool inErrorState_
 
int nodesPerElem_
 
int dofPerNode_
 
int numLocalDOF_
 
int numGlobalDOF_
 

Detailed Description

HexBeamCR is a data generator used for testing the FEI. It generates data that represents a beam of hex elements. More precisely, it's a cube that can be elongated in one dimension, forming an arbitrarily long 3D beam. The dimensions of the beam are WxWxD. In parallel runs, the beam is divided such that each processor has roughly D/numprocs "slices" each with WxW elements.

HexBeamCR is the same as HexBeam, except that when slices are made to form a parallel decomposition, the slices are bound together using constraint-relations. i.e., the slices that are separated by processor boundaries do not share common nodes as they do in the case of HexBeam. Instead the opposing faces have distinct (non-shared) nodes which are tied together by the constraints. In addition, HexBeamCR has a constraint-bound slice in the middle of each processor's partition so that there are constraints even in the case of a serial run on a single processor.

Definition at line 33 of file HexBeamCR.hpp.

Member Enumeration Documentation

anonymous enum
Enumerator
OneD 
TwoD 
ThreeD 

Definition at line 35 of file HexBeamCR.hpp.

Constructor & Destructor Documentation

HexBeamCR::HexBeamCR ( int  W,
int  D,
int  DofPerNode,
int  decomp,
int  numProcs,
int  localProc 
)
HexBeamCR::~HexBeamCR ( )
virtual

Definition at line 73 of file HexBeamCR.cpp.

Member Function Documentation

int HexBeamCR::getElemConnectivity ( int  elemID,
int *  nodeIDs 
)
virtual
int HexBeamCR::getElemStiffnessMatrix ( int  elemID,
double *  elemMat 
)
virtual

Reimplemented from HexBeam.

Definition at line 128 of file HexBeamCR.cpp.

References HexBeam::dofPerNode_, HexBeam::firstLocalElem_, HexBeam::localNumElems_, and HexBeam::nodesPerElem_.

int HexBeamCR::getElemLoadVector ( int  elemID,
double *  elemVec 
)
virtual

Reimplemented from HexBeam.

Definition at line 174 of file HexBeamCR.cpp.

References HexBeam::dofPerNode_, HexBeam::firstLocalElem_, HexBeam::localNumElems_, and HexBeam::nodesPerElem_.

int HexBeamCR::getNumBCNodes ( )
virtual

Reimplemented from HexBeam.

Definition at line 188 of file HexBeamCR.cpp.

References HexBeam::numLocalSlices_, and HexBeam::W_.

Referenced by getBCGammaValues(), and getBCNodes().

int HexBeamCR::getBCNodes ( int  numNodes,
int *  nodeIDs 
)
virtual

Reimplemented from HexBeam.

Definition at line 194 of file HexBeamCR.cpp.

References HexBeam::firstLocalNode_, getNumBCNodes(), and HexBeam::W_.

int HexBeamCR::getBCGammaValues ( int  numBCDofs,
double *  gamma 
)

Definition at line 209 of file HexBeamCR.cpp.

References HexBeam::dofPerNode_, and getNumBCNodes().

int HexBeamCR::getNumSharedNodes ( )
virtual

Reimplemented from HexBeam.

Definition at line 222 of file HexBeamCR.cpp.

References HexBeam::localProc_, HexBeam::numNodesPerSlice_, and HexBeam::numProcs_.

Referenced by getSharedNodes().

int HexBeamCR::getSharedNodes ( int  numSharedNodes,
int *&  sharedNodes,
int *&  numSharingProcsPerNode,
int **&  sharingProcs 
)
virtual
int HexBeamCR::getNumCRs ( )
inlinevirtual

Reimplemented from HexBeam.

Definition at line 60 of file HexBeamCR.hpp.

References numLocalCRs_.

int HexBeamCR::getNumNodesPerCR ( )
inlinevirtual

Reimplemented from HexBeam.

Definition at line 62 of file HexBeamCR.hpp.

References numNodesPerCR_.

int HexBeamCR::getCRNodes ( int **  nodeIDs)
virtual

Member Data Documentation

int HexBeamCR::numLocalCRs_

Definition at line 66 of file HexBeamCR.hpp.

Referenced by getNumCRs(), and HexBeamCR().

int HexBeamCR::numNodesPerCR_

Definition at line 67 of file HexBeamCR.hpp.

Referenced by getNumNodesPerCR(), and HexBeamCR().

int HexBeamCR::firstLocalSlice_

Definition at line 69 of file HexBeamCR.hpp.

Referenced by HexBeamCR().

int HexBeamCR::localCRslice_

Definition at line 70 of file HexBeamCR.hpp.

Referenced by getCRNodes(), getElemConnectivity(), and HexBeamCR().


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