Sierra Toolkit  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stk_classic::mesh::fixtures::HexFixture Class Reference

#include <HexFixture.hpp>

Collaboration diagram for stk_classic::mesh::fixtures::HexFixture:

Public Types

typedef double Scalar
 
typedef Field< Scalar, CartesianCoordFieldType
 
typedef Field< Scalar
*, ElementNode
CoordGatherFieldType
 

Public Member Functions

 HexFixture (stk_classic::ParallelMachine pm, unsigned nx, unsigned ny, unsigned nz)
 
EntityId node_id (unsigned x, unsigned y, unsigned z) const
 
EntityId elem_id (unsigned x, unsigned y, unsigned z) const
 
Entitynode (unsigned x, unsigned y, unsigned z) const
 
Entityelem (unsigned x, unsigned y, unsigned z) const
 
void node_x_y_z (EntityId entity_id, unsigned &x, unsigned &y, unsigned &z) const
 
void elem_x_y_z (EntityId entity_id, unsigned &x, unsigned &y, unsigned &z) const
 
void generate_mesh ()
 
void generate_mesh (std::vector< EntityId > &element_ids_on_this_processor)
 

Public Attributes

const int m_spatial_dimension
 
const unsigned m_nx
 
const unsigned m_ny
 
const unsigned m_nz
 
fem::FEMMetaData m_fem_meta
 
BulkData m_bulk_data
 
Partm_hex_part
 
Partm_node_part
 
CoordFieldTypem_coord_field
 
CoordGatherFieldTypem_coord_gather_field
 

Detailed Description

A 3-dimensional X*Y*Z hex fixture.

A coordinate field will be added to all nodes, a coordinate-gather field will be added to all elements.

Definition at line 36 of file HexFixture.hpp.

Constructor & Destructor Documentation

stk_classic::mesh::fixtures::HexFixture::HexFixture ( stk_classic::ParallelMachine  pm,
unsigned  nx,
unsigned  ny,
unsigned  nz 
)

Set up meta data to support this fixture. Meta data is left uncommitted to allow additional modifications by the client.

Definition at line 28 of file HexFixture.cpp.

Member Function Documentation

EntityId stk_classic::mesh::fixtures::HexFixture::node_id ( unsigned  x,
unsigned  y,
unsigned  z 
) const
inline

Thinking in terms of a 3D grid of nodes, get the id of the node in the (x, y, z) position.

Definition at line 64 of file HexFixture.hpp.

EntityId stk_classic::mesh::fixtures::HexFixture::elem_id ( unsigned  x,
unsigned  y,
unsigned  z 
) const
inline

Thinking in terms of a 3D grid of elements, get the id of the element in the (x, y, z) position.

Definition at line 72 of file HexFixture.hpp.

Entity* stk_classic::mesh::fixtures::HexFixture::node ( unsigned  x,
unsigned  y,
unsigned  z 
) const
inline

Thinking in terms of a 3D grid of nodes, get the node in the (x, y, z) position. Return NULL if this process doesn't know about this node.

Definition at line 80 of file HexFixture.hpp.

Entity* stk_classic::mesh::fixtures::HexFixture::elem ( unsigned  x,
unsigned  y,
unsigned  z 
) const
inline

Thinking in terms of a 3D grid of elements, get the elements in the (x, y, z) position. Return NULL if this process doesn't know about this element.

Definition at line 89 of file HexFixture.hpp.

void stk_classic::mesh::fixtures::HexFixture::node_x_y_z ( EntityId  entity_id,
unsigned &  x,
unsigned &  y,
unsigned &  z 
) const

Thinking in terms of a 3D grid of nodes, compute the (x, y, z) position of a node given it's id.

Definition at line 82 of file HexFixture.cpp.

void stk_classic::mesh::fixtures::HexFixture::elem_x_y_z ( EntityId  entity_id,
unsigned &  x,
unsigned &  y,
unsigned &  z 
) const

Thinking in terms of a 3D grid of elements, compute the (x, y, z) position of an element given it's id.

Definition at line 95 of file HexFixture.cpp.

void stk_classic::mesh::fixtures::HexFixture::generate_mesh ( )

Create the mesh (into m_bulk_data).

Definition at line 64 of file HexFixture.cpp.


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