ESScript  Revision_4488
Classes | Namespaces | Typedefs | Functions
finley/src/Mesh.h File Reference
#include "Finley.h"
#include "NodeFile.h"
#include "ElementFile.h"
#include "Util.h"
#include "paso/SystemMatrixPattern.h"
#include <map>
#include <string>

Go to the source code of this file.

Classes

struct  Finley_Mesh
 this struct holds a mesh: More...
struct  Finley_Mesh_findMatchingFaces_center

Namespaces

namespace  escript
namespace  finley

Typedefs

typedef std::map< std::string,
int > 
finley::TagMap
typedef struct Finley_Mesh Finley_Mesh
typedef struct
Finley_Mesh_findMatchingFaces_center 
Finley_Mesh_findMatchingFaces_center

Functions

Finley_MeshFinley_Mesh_alloc (char *name, int numDim, Esys_MPIInfo *mpi_info)
Finley_MeshFinley_Mesh_reference (Finley_Mesh *)
int Finley_Mesh_getDim (Finley_Mesh *)
void Finley_Mesh_free (Finley_Mesh *)
void Finley_Mesh_addTagMap (Finley_Mesh *mesh_p, const char *name, int tag_key)
int Finley_Mesh_getTag (Finley_Mesh *mesh_p, const char *name)
bool Finley_Mesh_isValidTagName (Finley_Mesh *mesh_p, const char *name)
void Finley_Mesh_distributeByRankOfDOF (Finley_Mesh *in, int *distribution)
Paso_SystemMatrixPatternFinley_getPattern (Finley_Mesh *mesh, bool_t reduce_row_order, bool_t reduce_col_order)
 returns a reference to the matrix pattern
Paso_SystemMatrixPatternFinley_makePattern (Finley_Mesh *mesh, bool_t reduce_row_order, bool_t reduce_col_order)
void Finley_Mesh_write (Finley_Mesh *, const char *)
void Finley_Mesh_dump (Finley_Mesh *in, char *fname)
void Finley_PrintMesh_Info (Finley_Mesh *, bool_t)
Finley_MeshFinley_Mesh_load (char *fname)
Finley_MeshFinley_Mesh_read (char *, int, int, bool_t)
Finley_MeshFinley_Mesh_readGmsh (char *, int, int, int, bool_t, bool_t)
void Finley_Mesh_setOrders (Finley_Mesh *in)
void Finley_Mesh_setCoordinates (Finley_Mesh *, const escript::Data &newX)
void Finley_Mesh_setElements (Finley_Mesh *self, ElementFile *elements)
void Finley_Mesh_setFaceElements (Finley_Mesh *self, ElementFile *elements)
void Finley_Mesh_setContactElements (Finley_Mesh *self, ElementFile *elements)
void Finley_Mesh_setPoints (Finley_Mesh *self, ElementFile *elements)
void Finley_Mesh_optimizeDOFDistribution (Finley_Mesh *in, int *distribution)
void Finley_Mesh_prepare (Finley_Mesh *in, bool_t optimize)
void Finley_Mesh_createColoring (Finley_Mesh *in, int *node_localDOF_map)
void Finley_Mesh_optimizeElementOrdering (Finley_Mesh *in)
void Finley_Mesh_resolveNodeIds (Finley_Mesh *)
void Finley_Mesh_createMappings (Finley_Mesh *in, int *dof_distribution, int *node_distribution)
void Finley_Mesh_createNodeFileMappings (Finley_Mesh *in, int numReducedNodes, int *indexReducedNodes, int *dof_first_component, int *nodes_first_component)
void Finley_Mesh_markDOFsConnectedToRange (int *mask, int offset, int marker, int firstDOF, int lastDOF, Finley_Mesh *in, bool_t useLinear)
void Finley_Mesh_optimizeDOFLabeling (Finley_Mesh *, int *)
Finley_MeshFinley_Mesh_merge (int, Finley_Mesh **)
void Finley_Mesh_relableElementNodes (int *, int, Finley_Mesh *)
void Finley_Mesh_markNodes (int *, int, Finley_Mesh *, int)
void Finley_Mesh_glueFaces (Finley_Mesh *self, double safety_factor, double tolerance, bool_t)
void Finley_Mesh_joinFaces (Finley_Mesh *self, double safety_factor, double tolerance, bool_t)
int Finley_Mesh_findMatchingFaces_compar (const void *, const void *)
void Finley_Mesh_findMatchingFaces (finley::NodeFile *, ElementFile *, double, double, int *, int *, int *, int *)
void Finley_Mesh_print (Finley_Mesh *in)
void Finley_Mesh_optimizeNodeLabeling (Finley_Mesh *mesh_p)
int Finley_Mesh_FindMinDegreeNode (Paso_SystemMatrixPattern *pattern_p, int *available, int indicator)
int Finley_Mesh_getDegree (Paso_SystemMatrixPattern *pattern_p, int *label)
void Finley_Mesh_setTagsInUse (Finley_Mesh *in)
int Finley_Mesh_getStatus (Finley_Mesh *in)
void Finley_Mesh_addPoints (Finley_Mesh *mesh, const int numPoints, const double *points_ptr, const int *tags_ptr)

Typedef Documentation

typedef struct Finley_Mesh Finley_Mesh

Function Documentation

Paso_SystemMatrixPattern* Finley_getPattern ( Finley_Mesh mesh,
bool_t  reduce_row_order,
bool_t  reduce_col_order 
)
Paso_SystemMatrixPattern* Finley_makePattern ( Finley_Mesh mesh,
bool_t  reduce_row_order,
bool_t  reduce_col_order 
)
void Finley_Mesh_addPoints ( Finley_Mesh mesh,
const int  numPoints,
const double *  points_ptr,
const int *  tags_ptr 
)
void Finley_Mesh_addTagMap ( Finley_Mesh mesh_p,
const char *  name,
int  tag_key 
)
Finley_Mesh* Finley_Mesh_alloc ( char *  name,
int  numDim,
Esys_MPIInfo mpi_info 
)
void Finley_Mesh_createColoring ( Finley_Mesh in,
int *  node_localDOF_map 
)
void Finley_Mesh_createMappings ( Finley_Mesh in,
int *  dof_distribution,
int *  node_distribution 
)
void Finley_Mesh_createNodeFileMappings ( Finley_Mesh in,
int  numReducedNodes,
int *  indexReducedNodes,
int *  dof_first_component,
int *  nodes_first_component 
)
void Finley_Mesh_distributeByRankOfDOF ( Finley_Mesh in,
int *  distribution 
)
void Finley_Mesh_dump ( Finley_Mesh in,
char *  fname 
)
void Finley_Mesh_findMatchingFaces ( finley::NodeFile ,
ElementFile ,
double  ,
double  ,
int *  ,
int *  ,
int *  ,
int *   
)
int Finley_Mesh_findMatchingFaces_compar ( const void *  ,
const void *   
)
int Finley_Mesh_FindMinDegreeNode ( Paso_SystemMatrixPattern pattern_p,
int *  available,
int  indicator 
)
void Finley_Mesh_free ( Finley_Mesh )
int Finley_Mesh_getDegree ( Paso_SystemMatrixPattern pattern_p,
int *  label 
)
int Finley_Mesh_getDim ( Finley_Mesh )
int Finley_Mesh_getStatus ( Finley_Mesh in)
int Finley_Mesh_getTag ( Finley_Mesh mesh_p,
const char *  name 
)
void Finley_Mesh_glueFaces ( Finley_Mesh self,
double  safety_factor,
double  tolerance,
bool_t   
)
bool Finley_Mesh_isValidTagName ( Finley_Mesh mesh_p,
const char *  name 
)
void Finley_Mesh_joinFaces ( Finley_Mesh self,
double  safety_factor,
double  tolerance,
bool_t   
)
Finley_Mesh* Finley_Mesh_load ( char *  fname)
void Finley_Mesh_markDOFsConnectedToRange ( int *  mask,
int  offset,
int  marker,
int  firstDOF,
int  lastDOF,
Finley_Mesh in,
bool_t  useLinear 
)
void Finley_Mesh_markNodes ( int *  ,
int  ,
Finley_Mesh ,
int   
)
Finley_Mesh* Finley_Mesh_merge ( int  ,
Finley_Mesh **   
)
void Finley_Mesh_optimizeDOFDistribution ( Finley_Mesh in,
int *  distribution 
)
void Finley_Mesh_optimizeDOFLabeling ( Finley_Mesh ,
int *   
)
void Finley_Mesh_optimizeElementOrdering ( Finley_Mesh in)
void Finley_Mesh_optimizeNodeLabeling ( Finley_Mesh mesh_p)
void Finley_Mesh_prepare ( Finley_Mesh in,
bool_t  optimize 
)
void Finley_Mesh_print ( Finley_Mesh in)
Finley_Mesh* Finley_Mesh_read ( char *  ,
int  ,
int  ,
bool_t   
)
Finley_Mesh* Finley_Mesh_readGmsh ( char *  ,
int  ,
int  ,
int  ,
bool_t  ,
bool_t   
)
Finley_Mesh* Finley_Mesh_reference ( Finley_Mesh )
void Finley_Mesh_relableElementNodes ( int *  ,
int  ,
Finley_Mesh  
)
void Finley_Mesh_resolveNodeIds ( Finley_Mesh )
void Finley_Mesh_setContactElements ( Finley_Mesh self,
ElementFile elements 
)
void Finley_Mesh_setCoordinates ( Finley_Mesh ,
const escript::Data newX 
)
void Finley_Mesh_setElements ( Finley_Mesh self,
ElementFile elements 
)
void Finley_Mesh_setFaceElements ( Finley_Mesh self,
ElementFile elements 
)
void Finley_Mesh_setOrders ( Finley_Mesh in)
void Finley_Mesh_setPoints ( Finley_Mesh self,
ElementFile elements 
)
void Finley_Mesh_setTagsInUse ( Finley_Mesh in)
void Finley_Mesh_write ( Finley_Mesh ,
const char *   
)
void Finley_PrintMesh_Info ( Finley_Mesh ,
bool_t   
)