Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Mesh.H File Reference

Mesh Stuff. More...

#include <set>
#include <limits>
#include <cstring>
#include "GeoPrimitives.H"
#include "primitive_utilities.H"
Include dependency graph for Mesh.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Mesh::TestFace
 
class  Mesh::NodalCoordinates
 
class  Mesh::NeighborHood
 
class  Mesh::Connectivity
 General connectivity object. More...
 
class  Mesh::GeometricEntity
 Connects continuous to discrete. More...
 
struct  Mesh::UnstructuredMesh
 
class  Mesh::MeshUtilityObject
 
class  Mesh::GenericCell_2
 
class  Mesh::GenericElement
 
class  Mesh::SolnMetaData
 

Namespaces

 Mesh
 Everything mesh.
 

Functions

template<typename OuterCont , typename OutCont , typename InnerCont , typename MapType >
void MapElements (OuterCont &src, OutCont &trg, MapType &m)
 
template<typename ListContainerType , typename ListType >
IndexType MaxNodeId (const ListContainerType &fc)
 Return the maximum of all elements of a multicontainer. More...
 
template<typename OuterCont , typename InnerCont , typename OutCont >
void Flatten (OuterCont &con, OutCont &ocon)
 Populate OutCont with a flat list of entries from a multicontainer. More...
 
template<typename OuterContType >
IndexType GetTotalSize (OuterContType &con)
 Return the total number of entries in a multicontainer. More...
 
template<typename OuterContType , typename InnerContType , typename RetCont , typename idxtype >
void Container2CSR (RetCont &xadj, RetCont &adj, OuterContType &source)
 
template<typename ListContainerType , typename ListType >
void CreateAdjacentNodeList (std::vector< std::list< IndexType > > &anodelist, ListContainerType &fc, IndexType nnodes=0)
 Given an array of adjacent node lists (like an array of face connectivities), this function will loop thru and create a list of unique adjacent nodes for each node with the nodes that are actually adjacent in the lists More...
 
template<typename ListContainerType , typename ListType >
void AdjEList (std::vector< std::list< IndexType > > &aelist, ListContainerType &dual_con, unsigned long nel=0)
 Given an array of adjacent node lists (like an array of face connectivities), this function will loop thru and create a list of unique adjacent nodes for each node Note that this is a little different from the AdjNodeList because in this version every node in each list is considered adjacent. More...
 
template<typename ConType , typename IConType >
IndexType NumberOfEdges (ConType &con)
 
template<typename ContainerType , typename Icont >
void FormGraph (const ContainerType &adjlist)
 
int ReadMesh (const std::string &path, Mesh::UnstructuredMesh &mesh)
 
int GetMeshCentroids (Mesh::NodalCoordinates &nc, Mesh::Connectivity &conn, std::vector< double > &centroids)
 
int CollideCellsWithBox (Mesh::NodalCoordinates &nc, Mesh::Connectivity &conn, GeoPrim::CBox &box, std::vector< Mesh::IndexType > &candidates, std::vector< Mesh::IndexType > &cells)
 
int CollideMeshWithBox (Mesh::NodalCoordinates &nc, Mesh::Connectivity &conn, GeoPrim::CBox &box, std::vector< Mesh::IndexType > &cells)
 
bool NewtonRaphson (GeoPrim::CVector &natc, IndexType elnum, const GenericElement &el, const Connectivity &ec, const NodalCoordinates &nc, const GeoPrim::CPoint &point)
 Newton-Raphson method, customized for using the GeoPrimitives and computational mesh constructs. More...
 
bool NewtonRaphson_2 (GeoPrim::CVector &natc, IndexType elnum, const GenericCell_2 &el, const Connectivity &ec, const NodalCoordinates &nc, const GeoPrim::CPoint &point)
 Newton-Raphson method, customized for using the GeoPrimitives and computational mesh constructs. More...
 
bool LUDcmp (GeoPrim::CVector a[], int indx[])
 
void LUBksb (GeoPrim::CVector a[], int indx[], GeoPrim::CVector &b)
 
void GetCoordinateBounds (NodalCoordinates &nc, std::vector< double > &)
 
void GetMeshBoxes (const NodalCoordinates &nc, const Connectivity &ec, GeoPrim::CBox &mesh_box, GeoPrim::CBox &small_box, GeoPrim::CBox &large_box)
 Bounding boxes for a mesh. More...
 
void FindElementsInBox (const GeoPrim::CBox &box, const NodalCoordinates &nc, const Connectivity &dc,std::list< IndexType > &elements)
 Get elements in box. More...
 
Mesh::IndexType FindPointInCells (const GeoPrim::CPoint &p,const NodalCoordinates &nc,const Connectivity &ec,const std::vector< Mesh::IndexType > &elements,GeoPrim::CVector &natc)
 Locate element containing given physical point. More...
 
Mesh::IndexType GlobalFindPointInMesh (const GeoPrim::CPoint &p, const NodalCoordinates &nc, const Connectivity &ec, const Connectivity &dc, const GeoPrim::CBox &box, GeoPrim::CVector &natc)
 
Mesh::IndexType FindPointInMesh_2 (const GeoPrim::CPoint &p,const NodalCoordinates &nc,const Connectivity &ec,const Connectivity &dc,const GeoPrim::CBox &box,GeoPrim::CVector &natc)
 Locate element containing given physical point. More...
 
Mesh::IndexType FindPointInMesh (const GeoPrim::CPoint &p,const NodalCoordinates &nc,const Connectivity &ec,const Connectivity &dc,const GeoPrim::CBox &box,GeoPrim::CVector &natc)
 Locate element containing given physical point. More...
 

Detailed Description

Mesh Stuff.

All mesh data structures (MDS) will follow the CGNS conventions:

Triangle Edges: 12 23 31    (counterclockwise)
Square Edges:   12 23 34 41 (ccw)
Tet Faces:      132 241 342 143
Pyr Faces:      1432 251 352 453 154
Prism Faces:    2541 3652 1463 132 456
Hex Faces:      1432 2651 3762 4873 1584 5678
elements.jpg
Element Types

Definition in file Mesh.H.