FEI Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
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

anonymous enum
Enumerator
OneD 
TwoD 
ThreeD 

Definition at line 26 of file HexBeam.hpp.

Constructor & Destructor Documentation

◆ HexBeam()

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

◆ ~HexBeam()

HexBeam::~HexBeam ( )
virtual

Definition at line 72 of file HexBeam.cpp.

Member Function Documentation

◆ inErrorState()

virtual bool HexBeam::inErrorState ( )
inlinevirtual

Definition at line 32 of file HexBeam.hpp.

References inErrorState_.

◆ numNodesPerElem()

virtual int HexBeam::numNodesPerElem ( )
inlinevirtual

◆ numDofPerNode()

virtual int HexBeam::numDofPerNode ( )
inlinevirtual

◆ numLocalElems()

virtual int HexBeam::numLocalElems ( )
inlinevirtual

◆ numLocalNodes()

virtual int HexBeam::numLocalNodes ( )
inlinevirtual

Definition at line 40 of file HexBeam.hpp.

References localNumNodes_.

Referenced by time_raggedtable_insert().

◆ firstLocalElem()

virtual int HexBeam::firstLocalElem ( )
inlinevirtual

◆ getElemConnectivity()

int HexBeam::getElemConnectivity ( int  elemID,
int *  nodeIDs 
)
virtual

◆ getElemStiffnessMatrix()

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().

◆ getElemLoadVector()

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().

◆ getNumBCNodes()

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().

◆ getBCNodes()

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().

◆ getBCValues()

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().

◆ getNumSharedNodes()

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().

◆ getSharedNodes()

int HexBeam::getSharedNodes ( int  numSharedNodes,
int *&  sharedNodes,
int *&  numSharingProcsPerNode,
int **&  sharingProcs 
)
virtual

◆ getNumCRs()

virtual int HexBeam::getNumCRs ( )
inlinevirtual

◆ getNumNodesPerCR()

virtual int HexBeam::getNumNodesPerCR ( )
inlinevirtual

◆ getCRNodes()

virtual int HexBeam::getCRNodes ( int **  nodeIDs)
inlinevirtual

Member Data Documentation

◆ W_

int HexBeam::W_

◆ D_

int HexBeam::D_

Definition at line 70 of file HexBeam.hpp.

◆ decomp_

int HexBeam::decomp_

Definition at line 71 of file HexBeam.hpp.

◆ numProcs_

int HexBeam::numProcs_

◆ localProc_

int HexBeam::localProc_

◆ totalNumElems_

int HexBeam::totalNumElems_

Definition at line 75 of file HexBeam.hpp.

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

◆ totalNumNodes_

int HexBeam::totalNumNodes_

Definition at line 76 of file HexBeam.hpp.

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

◆ localNumElems_

int HexBeam::localNumElems_

◆ localNumNodes_

int HexBeam::localNumNodes_

Definition at line 78 of file HexBeam.hpp.

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

◆ firstLocalElem_

int HexBeam::firstLocalElem_

◆ firstLocalNode_

int HexBeam::firstLocalNode_

◆ numElemsPerSlice_

int HexBeam::numElemsPerSlice_

◆ numNodesPerSlice_

int HexBeam::numNodesPerSlice_

◆ numLocalSlices_

int HexBeam::numLocalSlices_

◆ inErrorState_

bool HexBeam::inErrorState_

Definition at line 86 of file HexBeam.hpp.

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

◆ nodesPerElem_

int HexBeam::nodesPerElem_

◆ dofPerNode_

int HexBeam::dofPerNode_

◆ numLocalDOF_

int HexBeam::numLocalDOF_

Definition at line 91 of file HexBeam.hpp.

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

◆ numGlobalDOF_

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: