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
HexBeam Class Reference

#include <HexBeam.hpp>

Inheritance diagram for HexBeam:
Inheritance graph
[legend]

Public Types

enum  { OneD = 0, TwoD = 1, ThreeD = 2 }
 

Public Member Functions

 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 getElemConnectivity (int elemID, int *nodeIDs)
 
virtual int getElemStiffnessMatrix (int elemID, double *elemMat)
 
virtual int getElemLoadVector (int elemID, double *elemVec)
 
virtual int getNumBCNodes ()
 
virtual int getBCNodes (int numNodes, int *nodeIDs)
 
virtual int getBCValues (int numBCNodes, int *offsetsIntoField, double *vals)
 
virtual int getNumSharedNodes ()
 
virtual int getSharedNodes (int numSharedNodes, int *&sharedNodes, int *&numSharingProcsPerNode, int **&sharingProcs)
 
virtual int getNumCRs ()
 
virtual int getNumNodesPerCR ()
 
virtual int getCRNodes (int **nodeIDs)
 

Public Attributes

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

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

The slices that are separated by processor boundaries share common nodes, which are "shared nodes" in the global mesh.

Definition at line 24 of file HexBeam.hpp.

Member Enumeration Documentation

anonymous enum
Enumerator
OneD 
TwoD 
ThreeD 

Definition at line 26 of file HexBeam.hpp.

Constructor & Destructor Documentation

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

Definition at line 72 of file HexBeam.cpp.

Member Function Documentation

virtual bool HexBeam::inErrorState ( )
inlinevirtual

Definition at line 32 of file HexBeam.hpp.

References inErrorState_.

virtual int HexBeam::numNodesPerElem ( )
inlinevirtual
virtual int HexBeam::numDofPerNode ( )
inlinevirtual
virtual int HexBeam::numLocalElems ( )
inlinevirtual
virtual int HexBeam::numLocalNodes ( )
inlinevirtual

Definition at line 40 of file HexBeam.hpp.

References localNumNodes_.

Referenced by time_raggedtable_insert().

virtual int HexBeam::firstLocalElem ( )
inlinevirtual
int HexBeam::getElemConnectivity ( int  elemID,
int *  nodeIDs 
)
virtual
int HexBeam::getElemStiffnessMatrix ( int  elemID,
double *  elemMat 
)
virtual

Reimplemented in HexBeamCR.

Definition at line 102 of file HexBeam.cpp.

References dofPerNode_, firstLocalElem_, localNumElems_, and nodesPerElem_.

Referenced by HexBeam_Functions::load_elem_data().

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

Reimplemented in HexBeamCR.

Definition at line 148 of file HexBeam.cpp.

References dofPerNode_, firstLocalElem_, localNumElems_, and nodesPerElem_.

Referenced by HexBeam_Functions::load_elem_data().

int HexBeam::getNumBCNodes ( )
virtual

Reimplemented in HexBeamCR.

Definition at line 162 of file HexBeam.cpp.

References numLocalSlices_, and W_.

Referenced by getBCNodes(), getBCValues(), and HexBeam_Functions::load_BC_data().

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

Reimplemented in HexBeamCR.

Definition at line 168 of file HexBeam.cpp.

References firstLocalNode_, getNumBCNodes(), and W_.

Referenced by HexBeam_Functions::load_BC_data().

int HexBeam::getBCValues ( int  numBCNodes,
int *  offsetsIntoField,
double *  vals 
)
virtual

Definition at line 183 of file HexBeam.cpp.

References getNumBCNodes().

Referenced by HexBeam_Functions::load_BC_data().

int HexBeam::getNumSharedNodes ( )
virtual

Reimplemented in HexBeamCR.

Definition at line 197 of file HexBeam.cpp.

References localProc_, numNodesPerSlice_, and numProcs_.

Referenced by getSharedNodes(), and HexBeam_Functions::init_shared_nodes().

int HexBeam::getSharedNodes ( int  numSharedNodes,
int *&  sharedNodes,
int *&  numSharingProcsPerNode,
int **&  sharingProcs 
)
virtual
virtual int HexBeam::getNumCRs ( )
inlinevirtual
virtual int HexBeam::getNumNodesPerCR ( )
inlinevirtual
virtual int HexBeam::getCRNodes ( int **  nodeIDs)
inlinevirtual

Member Data Documentation

int HexBeam::W_
int HexBeam::D_

Definition at line 70 of file HexBeam.hpp.

int HexBeam::decomp_

Definition at line 71 of file HexBeam.hpp.

int HexBeam::numProcs_
int HexBeam::localProc_
int HexBeam::totalNumElems_

Definition at line 75 of file HexBeam.hpp.

Referenced by beam_main(), beam_oldfei_main(), HexBeam(), HexBeamCR::HexBeamCR(), and main().

int HexBeam::totalNumNodes_

Definition at line 76 of file HexBeam.hpp.

Referenced by HexBeam(), and HexBeamCR::HexBeamCR().

int HexBeam::localNumElems_
int HexBeam::localNumNodes_

Definition at line 78 of file HexBeam.hpp.

Referenced by HexBeamCR::getCRNodes(), HexBeam(), HexBeamCR::HexBeamCR(), and numLocalNodes().

int HexBeam::firstLocalElem_
int HexBeam::firstLocalNode_
int HexBeam::numElemsPerSlice_
int HexBeam::numNodesPerSlice_
int HexBeam::numLocalSlices_
bool HexBeam::inErrorState_

Definition at line 86 of file HexBeam.hpp.

Referenced by HexBeamCR::HexBeamCR(), and inErrorState().

int HexBeam::nodesPerElem_
int HexBeam::dofPerNode_
int HexBeam::numLocalDOF_

Definition at line 91 of file HexBeam.hpp.

Referenced by beam_main(), beam_oldfei_main(), HexBeam(), HexBeamCR::HexBeamCR(), and main().

int HexBeam::numGlobalDOF_

Definition at line 92 of file HexBeam.hpp.

Referenced by beam_main(), beam_oldfei_main(), HexBeam(), HexBeamCR::HexBeamCR(), and main().


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