Classes | Public Types | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
ABAQUSCore Class Reference

Core routines used when reading/writing ABAQUS files. More...

Inheritance diagram for ABAQUSCore:
Inheritance graph
[legend]

Classes

struct  readHelper
 

Public Types

enum  shapeType : uint8_t {
  abaqusUnknownShape = 0, abaqusTria = 0x03, abaqusQuad = 0x04, abaqusTet = 0x84,
  abaqusPyr = 0x85, abaqusPrism = 0x86, abaqusHex = 0x88
}
 

Static Public Member Functions

static shapeType getElementType (const std::string &elemTypeName)
 
static int nPoints (shapeType tag)
 
static bool isValidType (shapeType tag)
 
static bool isShellType (shapeType tag)
 
static bool isSolidType (shapeType tag)
 
static bool isEncodedSolidId (const label combinedId)
 
static label encodeSolidId (const label id, const label side)
 
static label decodeSolidElementId (const label combinedId)
 
static label decodeSolidSideNum (const label combinedId)
 
static void writePoints (Ostream &os, const UList< point > &points, const scalar scaleFactor=1.0)
 
static label faceDecomposition (const UList< point > &points, const UList< face > &faces, labelList &decompOffsets, DynamicList< face > &decompFaces)
 

Protected Member Functions

 ABAQUSCore ()=default
 

Static Protected Member Functions

static void renumber0_elemId (label &elemId)
 
static const Map< labelList > & abaqusToFoamFaceAddr ()
 

Detailed Description

Core routines used when reading/writing ABAQUS files.

Face mappings for abaqus deduced from libmesh internals

Tet4 cells

Face OpenFOAM libmesh abaqus starcd
(1 2 3) 0 2 2 5
(0 3 2) 1 3 3 4
(0 1 3) 2 1 1 2
(0 2 1) 3 0 0 0

Pyr5 cells

Face OpenFOAM libmesh abaqus starcd
(0 3 2 1) 0 4 n/a 0
(0 4 3) 1 3 n/a 4
(3 4 2) 2 2 n/a 3
(1 2 4) 3 1 n/a 5
(0 1 4) 4 0 n/a 2

Prism6 cells

Face OpenFOAM libmesh abaqus starcd
(0 2 1) 0 0 0 0
(3 4 5) 1 4 1 1
(0 3 5 2) 2 3 4 4
(1 2 5 4) 3 2 3 5
(0 1 4 3) 4 1 2 2

Hex8 cells

Face OpenFOAM libmesh abaqus starcd
(0 4 7 3) 0 4 5 4
(1 2 6 5) 1 2 3 5
(0 1 5 4) 2 1 2 2
(3 7 6 2) 3 3 4 3
(0 3 2 1) 4 0 0 0
(4 5 6 7) 5 5 1 1
Source files

Definition at line 239 of file ABAQUSCore.H.

Member Enumeration Documentation

◆ shapeType

enum shapeType : uint8_t
Enumerator
abaqusUnknownShape 
abaqusTria 
abaqusQuad 
abaqusTet 
abaqusPyr 
abaqusPrism 
abaqusHex 

Definition at line 246 of file ABAQUSCore.H.

Constructor & Destructor Documentation

◆ ABAQUSCore()

ABAQUSCore ( )
protecteddefault

Member Function Documentation

◆ getElementType()

Foam::fileFormats::ABAQUSCore::shapeType getElementType ( const std::string &  elemTypeName)
static

Definition at line 197 of file ABAQUSCore.C.

References checkElemType.

◆ nPoints()

static int nPoints ( shapeType  tag)
inlinestatic

Definition at line 266 of file ABAQUSCore.H.

Referenced by ABAQUSCore::readHelper::read(), and ABAQUSCore::readHelper::readElements().

Here is the caller graph for this function:

◆ isValidType()

static bool isValidType ( shapeType  tag)
inlinestatic

Definition at line 272 of file ABAQUSCore.H.

◆ isShellType()

static bool isShellType ( shapeType  tag)
inlinestatic

Definition at line 278 of file ABAQUSCore.H.

◆ isSolidType()

static bool isSolidType ( shapeType  tag)
inlinestatic

Definition at line 284 of file ABAQUSCore.H.

◆ isEncodedSolidId()

static bool isEncodedSolidId ( const label  combinedId)
inlinestatic

Definition at line 290 of file ABAQUSCore.H.

Referenced by ABAQUSCore::decodeSolidElementId(), ABAQUSCore::decodeSolidSideNum(), and ABAQUSCore::renumber0_elemId().

Here is the caller graph for this function:

◆ encodeSolidId()

static label encodeSolidId ( const label  id,
const label  side 
)
inlinestatic

Definition at line 296 of file ABAQUSCore.H.

Referenced by ABAQUSCore::readHelper::readSurfaceElements().

Here is the caller graph for this function:

◆ decodeSolidElementId()

static label decodeSolidElementId ( const label  combinedId)
inlinestatic

Definition at line 302 of file ABAQUSCore.H.

References ABAQUSCore::isEncodedSolidId().

Here is the call graph for this function:

◆ decodeSolidSideNum()

static label decodeSolidSideNum ( const label  combinedId)
inlinestatic

Definition at line 314 of file ABAQUSCore.H.

References ABAQUSCore::isEncodedSolidId().

Here is the call graph for this function:

◆ renumber0_elemId()

static void renumber0_elemId ( label &  elemId)
inlinestaticprotected

Definition at line 330 of file ABAQUSCore.H.

References ABAQUSCore::isEncodedSolidId().

Here is the call graph for this function:

◆ abaqusToFoamFaceAddr()

const Foam::Map< Foam::labelList > & abaqusToFoamFaceAddr ( )
staticprotected

◆ writePoints()

void writePoints ( Ostream os,
const UList< point > &  points,
const scalar  scaleFactor = 1.0 
)
static

Definition at line 781 of file ABAQUSCore.C.

References Foam::nl, os(), p, and points.

Here is the call graph for this function:

◆ faceDecomposition()

Foam::label faceDecomposition ( const UList< point > &  points,
const UList< face > &  faces,
labelList decompOffsets,
DynamicList< face > &  decompFaces 
)
static

Definition at line 816 of file ABAQUSCore.C.

References DynamicList::clear(), f(), n, points, List::resize(), and UList::size().

Here is the call graph for this function:

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