MeshKit  1.0
MeshKit Namespace Reference

Namespaces

namespace  Copy
namespace  Extrude

Classes

class  Error
 The Error object returned from or thrown by many MeshKit functions. More...
class  GraphNode
 A parent class for anything that will be a graph node. More...
class  Matrix
 Fixed-size matrix class. More...
class  Matrix< 1, 1 >
class  Vector
 Vector is a 1xL Matrix. More...
class  MeshOp
 An operation that operates on mesh data. More...
class  MeshOpProxy
 Polymorphic behavior for MeshOp classes (as opposed to instances) More...
class  MeshScheme
 A class that generates mesh. More...
class  MKCore
 The core MeshKit instance. More...
class  MKGraph
 Class encapsulating manipulations of the meshing operation graph. More...
class  ModelEnt
 The class used in MeshKit for referring to model entities and mesh associated with them. More...
class  NoOp
 Dummy Operation. More...
class  SizingFunction
 A sizing function used with meshing algorithms. More...
class  SizingFunctionVar
class  VecUtil
 A class of vector utilities. More...
class  MeshOpSet
 Maintain global, singletin list of registered MeshOps. More...
class  LocalSet
class  LocalTag
class  RegisterMeshOp
 Utility class for registering MeshOps with MKCore. More...
class  AssyGen
class  CoreGen
class  IABendNlp
class  IAData
class  IADataBuilder
class  IAIntCosNlp
class  IAIntParabolaNlp
class  IAIntWaveNlp
class  IAMINlp
class  IANlp
class  IARoundingNlp
class  IASolution
class  IASolver
class  IASolverBend
class  IASolverEven
class  IASolverInt
class  IASolverRelaxed
class  IASolverTool
class  IASolverToolInt
struct  c_unique
class  FabsWeightComparer
class  IAWeights
class  IPBend
class  IPBendData
class  IPData
class  IAInterface
 The class used in MeshKit for Interval Assignment. More...
class  IAVariable
 Class defining a variable for interval assignment. These are the data objects shared between Interval Assignment and the rest of MeshKit. More...
class  CESets
class  CopyGeom
class  CopyMesh
 A simple class for meshing copy moving meshes. More...
class  EBMesher
 A meshing geometry as Cartesian structured mesh It makes constructs tree structure with triangles and makes hexes bounding geometry With ray-tracing, find intersections and determine element inside/outside/boundary. Intersection fraction is stored to boundary elements. Element inside/outside/boundary status are stored as tag. More...
class  EdgeMesher
 Generate the mesh for edges. More...
class  ExtrudeMesh
 A simple class for extruding meshes. More...
class  MBGeomOp
class  MBSplitOp
class  MBVolOp
class  MergeMesh
 A simple class for merging meshes. More...
class  MeshOpTemplate
class  ParallelMesher
class  ParExchangeMesh
class  ParRecvSurfMesh
class  ParSendPostSurfMesh
class  ProjectShell
class  SCDMesh
 Generate a structured Cartesian grid over a geometry. More...
class  TriangleMesher
class  VertexMesher
 A simple class for meshing geometric vertices. More...
class  PostBL
class  QslimMesher
 Decimate a set of triangles. More...
class  QslimDecimation
class  QuadMesher
 Triangle to Quad Transformation. More...
class  Deform2D
class  Dijkstra
 build lengths between each pair of vertices More...
struct  Vertex
struct  Edge
struct  Face
class  GreenCoordinates3D
class  HarmonicMapper
class  LPSolveClass
 do the LPSolveClass to solve the linear programming problem More...
class  MeshImprove
class  OneToOneSwept
 Generate the all-hexahedral mesh by sweeping. More...
class  SubMapping
 Generate the structural mesh for linking surface. More...
class  TFIMapping
 Generate the all-Quad mesh by TFI mapping. More...
class  SurfProHarmonicMap
class  TriharmonicRBF
class  CAMALCurveEval
 The curve geometry evaluator class defines the pure virtual interface for CAMAL interaction with curves. More...
class  CAMALSizeEval
 The MeshKit-based size evaluator for CAMAL meshing algorithms. More...
class  CAMALSurfEval
 The MeshKit-based surface evaluator for CAMAL meshing algorithms. More...
class  CAMALPaver
 The MeshKit-based surface evaluator for CAMAL meshing algorithms. More...
class  CAMALTetMesher
 The wrapper for the CAMAL tet mesher. More...
class  CAMALTriAdvance
 The interface to the CAMAL TriAdvance algorithm. More...
class  NGTetMesher
 The wrapper for the Netgen tet mesher. More...
class  FreeSmoothDomain
 Implement Mesquite::MeshDomain subclass for free smooth of mesh on geometry. More...
class  MesquiteOpt
 Base class for creating MeshOps that call Mesquite smoother. More...
class  MsqFBiGeom
 A Mesquite::MeshDomain implemented on top of the ITAPS FBiGeom API. More...

Typedefs

typedef std::vector< ModelEnt * > MEntVector
 Type used to store a vector of ModelEnt*'s.
typedef std::set< ModelEnt * > MEntSet
 Type used to store a set of ModelEnt*'s.
typedef std::map< ModelEnt
*, moab::Range > 
MEntSelection
 Type used to store pairs of ModelEnt* and moab::Range, used to associate partial meshes with the ModelEnt's they resolve.
typedef std::vector< MeshOp * > MOpVector
 Type used to store a set of MeshOp*'s.
typedef std::vector< IPBendIPBendVec

Enumerations

enum  ErrorCode {
  MK_SUCCESS = 0, MK_FAILURE, MK_NOT_FOUND, MK_MULTIPLE_FOUND,
  MK_MESHOP_NOT_FOUND, MK_NOT_IMPLEMENTED, MK_WRONG_DIMENSION, MK_ALREADY_DEFINED,
  MK_BAD_INPUT, MK_BAD_GEOMETRIC_EVALUATION, MK_INCOMPLETE_MESH_SPECIFICATION
}
enum  Firmness {
  DEFAULT, SOFT, HARD, DEFAULT,
  SOFT, HARD
}
enum  MeshedState {
  NO_MESH = 0, BOUNDARY_MESH, PARTIAL_MESH, COMPLETE_MESH,
  REFINED_MESH, POST_MESH
}
enum  Sense { SENSE_FORWARD = 1, SENSE_REVERSE = -1, SENSE_BOTH = 0 }
enum  BooleanType { INTERSECT, UNION }
enum  ErrorStates {
  PINCELLS, INVALIDINPUT, EMAT, EGEOMTYPE,
  EGEOMENGINE, ENEGATIVE, EALIAS, EPIN
}
enum  Firmness {
  DEFAULT, SOFT, HARD, DEFAULT,
  SOFT, HARD
}
enum  PARALLEL_OP_TYPE {
  MESH_VERTEX = 0, MESH_EDGE, MESH_INTER_SURF, MESH_NINTER_SURF,
  EXCHANGE_VERTEX, EXCHANGE_EDGE, POST_RECV, SEND_POST_SURF_MESH,
  RECV_SURF_MESH, MESH_VOLUME
}
enum  VertexTypes { REVERSAL = -2, CORNER = -1, SIDE = 0, END = 1 }
enum  EdgeTypes { POSI_I = 0, NEG_I = 1, POSI_J = 2, NEG_J = 3 }

Functions

void IBERRCHK_ (int err, const char *descr)
void IBERRCHK_ (int err, iMesh &mesh)
void IBERRCHK_ (int err, iGeom &geom)
void IBERRCHK_ (int err, iRel &rel)
void IBERRCHK_ (int err, const char *descr, const char *file, int line)
void IBERRCHK_ (int err, iMesh &mesh, const char *file, int line)
void IBERRCHK_ (int err, iGeom &geom, const char *file, int line)
void IBERRCHK_ (int err, iRel &rel, const char *file, int line)
template<unsigned R1, unsigned C1, unsigned R2, unsigned C2>
void set_region (Matrix< R1, C1 > &d, unsigned r, unsigned c, Matrix< R2, C2 > &s)
 Set a subset of this matrix to some other matrix.
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator* (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator* (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned RC, unsigned C>
double multiply_helper_result_val (unsigned r, unsigned c, const Matrix< R, RC > &A, const Matrix< RC, C > &B)
template<unsigned R, unsigned RC, unsigned C>
Matrix< R, C > operator* (const Matrix< R, RC > &A, const Matrix< RC, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator/ (const Matrix< R, C > &m, double s)
template<unsigned RC>
double cofactor (const Matrix< RC, RC > &m, unsigned r, unsigned c)
template<unsigned RC>
double det (const Matrix< RC, RC > &m)
double det (const Matrix< 2, 2 > &m)
double det (const Matrix< 3, 3 > &m)
Matrix< 2, 2 > adj (const Matrix< 2, 2 > &m)
Matrix< 2, 2 > transpose_adj (const Matrix< 2, 2 > &m)
Matrix< 3, 3 > adj (const Matrix< 3, 3 > &m)
Matrix< 3, 3 > transpose_adj (const Matrix< 3, 3 > &m)
template<unsigned R, unsigned C>
Matrix< R, C > inverse (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > transpose (const Matrix< C, R > &m)
template<unsigned RC>
double trace (const Matrix< RC, RC > &m)
template<unsigned R, unsigned C>
double sqr_Frobenius (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
double Frobenius (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
bool operator== (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
bool operator!= (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
std::ostream & operator<< (std::ostream &str, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
std::istream & operator>> (std::istream &str, Matrix< R, C > &m)
template<unsigned R>
double sqr_length (const Matrix< R, 1 > &v)
template<unsigned C>
double sqr_length (const Matrix< 1, C > &v)
template<unsigned R>
double length (const Matrix< R, 1 > &v)
template<unsigned C>
double length (const Matrix< 1, C > &v)
template<unsigned R, unsigned C>
double inner_product (const Matrix< R, C > &m1, const Matrix< R, C > &m2)
template<unsigned R, unsigned C>
Matrix< R, C > outer (const Matrix< R, 1 > &v1, const Matrix< C, 1 > &v2)
template<unsigned R, unsigned C>
Matrix< R, C > outer (const Matrix< 1, R > &v1, const Matrix< 1, C > &v2)
double vector_product (const Matrix< 2, 1 > &v1, const Matrix< 2, 1 > &v2)
double vector_product (const Matrix< 1, 2 > &v1, const Matrix< 1, 2 > &v2)
Matrix< 3, 1 > vector_product (const Matrix< 3, 1 > &a, const Matrix< 3, 1 > &b)
Matrix< 1, 3 > vector_product (const Matrix< 1, 3 > &a, const Matrix< 1, 3 > &b)
template<unsigned R, unsigned C>
double operator% (const Matrix< R, C > &v1, const Matrix< R, C > &v2)
double operator* (const Matrix< 2, 1 > &v1, const Matrix< 2, 1 > &v2)
double operator* (const Matrix< 1, 2 > &v1, const Matrix< 1, 2 > &v2)
Matrix< 3, 1 > operator* (const Matrix< 3, 1 > &v1, const Matrix< 3, 1 > &v2)
Matrix< 1, 3 > operator* (const Matrix< 1, 3 > &v1, const Matrix< 1, 3 > &v2)
void QR (const Matrix< 3, 3 > &A, Matrix< 3, 3 > &Q, Matrix< 3, 3 > &R)
void QR (const Matrix< 2, 2 > &A, Matrix< 2, 2 > &Q, Matrix< 2, 2 > &R)
int register_algs_mesh_ops ()
 Dummy function to force load from static library.
int register_extern_mesh_ops ()
 Dummy function to force load from static library.
void link_expand_sets (const CESets &ce_sets, iMesh::TagHandle local_tag)
 Set the target sets for expand sets to be themselves.
static void get_copied_ents (iMesh *mesh, iMesh::EntitySetHandle set, iMesh::TagHandle local_tag, std::vector< iMesh::EntityHandle > &ents)
 Get the entities copied from a set.
static void get_dest_set (iMesh *mesh, iMesh::TagHandle local_tag, iMesh::EntitySetHandle src, iMesh::EntitySetHandle &dest)
 Create a copy set if one doesn't exist yet.
static void process_ce_subsets (iMesh *mesh, iMesh::EntitySetHandle src, iMesh::EntitySetHandle current, const std::set< iMesh::EntitySetHandle > &cesets, iMesh::TagHandle local_tag)
 Add copied entities/sets recursively.
void process_ce_sets (iMesh *mesh, const std::set< iMesh::EntitySetHandle > &cesets, iMesh::TagHandle local_tag)
 Add newly-created entities/sets to a collection of sets.
void tag_copy_sets (iMesh *mesh, iMesh::TagHandle copyTag, const std::set< iMesh::EntitySetHandle > &copySets, iMesh::TagHandle tag, const char *tag_val)
 Tag a collection of copied sets.
void tag_copy_sets (const CESets &ce_sets, iMesh::TagHandle local_tag, iMesh::TagHandle copy_tag)
 Tag a collection of copied sets.
void connect_the_dots (iMesh *mesh, iBase_TagHandle local_tag, const std::vector< iBase_EntityHandle > &ents, const std::vector< int > &indices, const std::vector< int > &offsets, const std::vector< iBase_EntityHandle > &verts)
 Create higher-dimension entities on a set of vertices.
Vector< 3 > rodrigues (const Vector< 3 > &pt, const Vector< 3 > &z, double dtheta)
double * vec2ptr (std::vector< Vector< 3 > > &v)
int borderPointsOfXinY (double *X, double *Y, double *P)
int swap (double *p, double *q)
int SortAndRemoveDoubles (double *P, int &nP)
int edgeIntersections (double *red, double *blue, int mark[3], double *points, int &nPoints)
 REGISTER_MESH_OP (VertexMesher)
 REGISTER_MESH_OP (EdgeMesher)
 REGISTER_MESH_OP (OneToOneSwept)
 REGISTER_MESH_OP (TFIMapping)
 REGISTER_MESH_OP (SCDMesh)
 REGISTER_MESH_OP (CopyMesh)
 REGISTER_MESH_OP (MergeMesh)
 REGISTER_MESH_OP (CopyGeom)
 REGISTER_MESH_OP (ExtrudeMesh)
 REGISTER_MESH_OP (EBMesher)
 REGISTER_MESH_OP (QslimMesher)
 REGISTER_MESH_OP (QuadMesher)
 REGISTER_MESH_OP (AssyGen)
 REGISTER_MESH_OP (CoreGen)
 REGISTER_MESH_OP (PostBL)
 REGISTER_MESH_OP (MeshOpTemplate)
double tArea (double *a, double *b, double *c, double *normal)

Variables

const int have_algs_mesh_ops = register_algs_mesh_ops()
const int have_extern_mesh_ops = register_extern_mesh_ops()
moab::EntityType AssyGen_tps []
moab::EntityType CopyGeom_tps []
moab::EntityType CopyMesh_tps []
moab::EntityType CoreGen_tps []
moab::EntityType EBMesher_tps [] = {moab::MBVERTEX, moab::MBHEX, moab::MBMAXTYPE}
moab::EntityType EdgeMesher_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBMAXTYPE}
moab::EntityType ExtrudeMesh_tps []
const double MESHKIT_IA_upperUnbound = 2e19
const double MESHKIT_IA_lowerUnbound = -2e19
moab::EntityType IAInterface_types [] = {moab::MBMAXTYPE}
double p_norm = 3
struct MeshKit::c_unique UniqueNumber
moab::EntityType MBGeomOp_tps [] = { moab::MBMAXTYPE }
moab::EntityType MBSplitOp_tps [] = { moab::MBMAXTYPE }
moab::EntityType MBVolOp_tps [] = { moab::MBMAXTYPE }
moab::EntityType MergeMesh_tps []
moab::EntityType MeshOpTemplate_tps []
moab::EntityType ParallelMesher_tps [] = {moab::MBVERTEX, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}
moab::EntityType ParExchangeMesh_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}
moab::EntityType ParRecvSurfMesh_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}
moab::EntityType ParSendPostSurfMesh_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}
moab::EntityType PostBL_tps []
double epsilon = 1.e-5
moab::EntityType QslimMesher_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBMAXTYPE}
moab::EntityType QuadMesher_tps [] = {moab::MBVERTEX, moab::MBQUAD, moab::MBMAXTYPE}
moab::EntityType SCDMesh_tps [] = {moab::MBVERTEX, moab::MBHEX, moab::MBMAXTYPE}
moab::EntityType OneToOneSwept_tps [] = { moab::MBVERTEX, moab::MBQUAD, moab::MBHEX, moab::MBMAXTYPE }
moab::EntityType SubMapping_tps [] = {moab::MBVERTEX, moab::MBEDGE, moab::MBQUAD, moab::MBMAXTYPE}
moab::EntityType TFIMapping_tps [] = { moab::MBVERTEX, moab::MBEDGE, moab::MBQUAD, moab::MBMAXTYPE }
moab::EntityType types [] = { moab::MBVERTEX, moab::MBMAXTYPE}

Typedef Documentation

typedef std::vector< IPBend > IPBendVec

Definition at line 56 of file IPBend.hpp.

typedef std::map<ModelEnt*, moab::Range> MEntSelection

Type used to store pairs of ModelEnt* and moab::Range, used to associate partial meshes with the ModelEnt's they resolve.

Definition at line 26 of file Types.hpp.

typedef std::set<ModelEnt*> MEntSet

Type used to store a set of ModelEnt*'s.

Definition at line 21 of file Types.hpp.

typedef std::vector< ModelEnt * > MEntVector

Type used to store a vector of ModelEnt*'s.

Definition at line 13 of file Types.hpp.

typedef std::vector<MeshOp*> MOpVector

Type used to store a set of MeshOp*'s.

Definition at line 30 of file Types.hpp.


Enumeration Type Documentation

Enumerator:
INTERSECT 
UNION 

Definition at line 49 of file Types.hpp.

enum EdgeTypes
Enumerator:
POSI_I 
NEG_I 
POSI_J 
NEG_J 

Definition at line 52 of file SubMapping.hpp.

enum ErrorCode
Enumerator:
MK_SUCCESS 
MK_FAILURE 
MK_NOT_FOUND 
MK_MULTIPLE_FOUND 
MK_MESHOP_NOT_FOUND 
MK_NOT_IMPLEMENTED 
MK_WRONG_DIMENSION 
MK_ALREADY_DEFINED 
MK_BAD_INPUT 
MK_BAD_GEOMETRIC_EVALUATION 
MK_INCOMPLETE_MESH_SPECIFICATION 
Examples:
example_camalpaver.cpp.

Definition at line 49 of file Error.hpp.

Enumerator:
PINCELLS 
INVALIDINPUT 
EMAT 
EGEOMTYPE 
EGEOMENGINE 
ENEGATIVE 
EALIAS 
EPIN 

Definition at line 47 of file AssyGen.hpp.

enum Firmness
Enumerator:
DEFAULT 
SOFT 
HARD 
DEFAULT 
SOFT 
HARD 

Definition at line 15 of file IntervalAssignment/stubs/IAVariable.hpp.

enum Firmness
Enumerator:
DEFAULT 
SOFT 
HARD 
DEFAULT 
SOFT 
HARD 

Definition at line 32 of file Types.hpp.

Enumerator:
NO_MESH 
BOUNDARY_MESH 
PARTIAL_MESH 
COMPLETE_MESH 
REFINED_MESH 
POST_MESH 

Definition at line 34 of file Types.hpp.

Enumerator:
MESH_VERTEX 
MESH_EDGE 
MESH_INTER_SURF 
MESH_NINTER_SURF 
EXCHANGE_VERTEX 
EXCHANGE_EDGE 
POST_RECV 
SEND_POST_SURF_MESH 
RECV_SURF_MESH 
MESH_VOLUME 

Definition at line 22 of file ParallelMesher.hpp.

enum Sense
Enumerator:
SENSE_FORWARD 
SENSE_REVERSE 
SENSE_BOTH 

Definition at line 43 of file Types.hpp.

Enumerator:
REVERSAL 
CORNER 
SIDE 
END 

Definition at line 51 of file SubMapping.hpp.


Function Documentation

Matrix<2,2> MeshKit::adj ( const Matrix< 2, 2 > &  m) [inline]

Definition at line 616 of file Matrix.hpp.

Matrix<3,3> MeshKit::adj ( const Matrix< 3, 3 > &  m) [inline]

Definition at line 636 of file Matrix.hpp.

int MeshKit::borderPointsOfXinY ( double *  X,
double *  Y,
double *  P 
)

Definition at line 807 of file ProjectShell.cpp.

double MeshKit::cofactor ( const Matrix< RC, RC > &  m,
unsigned  r,
unsigned  c 
) [inline]

Definition at line 585 of file Matrix.hpp.

void connect_the_dots ( iMesh mesh,
iBase_TagHandle  local_tag,
const std::vector< iBase_EntityHandle > &  ents,
const std::vector< int > &  indices,
const std::vector< int > &  offsets,
const std::vector< iBase_EntityHandle > &  verts 
)

Create higher-dimension entities on a set of vertices.

Given an array of vertices and a template to build from, recreate the higher-dimension entities on the array of vertices. This is useful when making copies of a selection.

Parameters:
meshthe iMesh instance handle
local_tagthe local copy tag
entsthe entities for the template
indicesindex buffer into |entities|
offsetsoffset array indicating start and end of |indices| for each entity in |entities|
vertsthe array of vertices to build upon

Definition at line 223 of file CopyMesh.cpp.

double MeshKit::det ( const Matrix< RC, RC > &  m) [inline]

Definition at line 591 of file Matrix.hpp.

double MeshKit::det ( const Matrix< 2, 2 > &  m) [inline]

Definition at line 604 of file Matrix.hpp.

double MeshKit::det ( const Matrix< 3, 3 > &  m) [inline]

Definition at line 609 of file Matrix.hpp.

int MeshKit::edgeIntersections ( double *  red,
double *  blue,
int  mark[3],
double *  points,
int &  nPoints 
)

Definition at line 1355 of file ProjectShell.cpp.

double MeshKit::Frobenius ( const Matrix< R, C > &  m) [inline]

Definition at line 714 of file Matrix.hpp.

static void MeshKit::get_copied_ents ( iMesh mesh,
iMesh::EntitySetHandle  set,
iMesh::TagHandle  local_tag,
std::vector< iMesh::EntityHandle > &  ents 
) [static]

Get the entities copied from a set.

Given a set and a tag, return the values of the tag set on entities from that set (i.e. the copied entities).

Parameters:
meshthe iMesh instance handle
setthe set containing the entities we want
local_tagthe tag relating source and target entities
entsa vector which will hold our copied entities

Definition at line 79 of file CESets.cpp.

static void MeshKit::get_dest_set ( iMesh mesh,
iMesh::TagHandle  local_tag,
iMesh::EntitySetHandle  src,
iMesh::EntitySetHandle &  dest 
) [static]

Create a copy set if one doesn't exist yet.

Given a source set and a tag, create a destination (copy) set unless one already exists.

Parameters:
meshthe iMesh instance handle
local_tagthe tag relating source and target sets
srcthe source set
destthe destination set

Definition at line 108 of file CESets.cpp.

void MeshKit::IBERRCHK_ ( int  err,
const char *  descr 
) [inline]
void MeshKit::IBERRCHK_ ( int  err,
iMesh mesh 
) [inline]
void MeshKit::IBERRCHK_ ( int  err,
iGeom geom 
) [inline]
void MeshKit::IBERRCHK_ ( int  err,
iRel rel 
) [inline]
void MeshKit::IBERRCHK_ ( int  err,
const char *  descr,
const char *  file,
int  line 
) [inline]

Definition at line 157 of file Error.hpp.

void MeshKit::IBERRCHK_ ( int  err,
iMesh mesh,
const char *  file,
int  line 
) [inline]

Definition at line 163 of file Error.hpp.

void MeshKit::IBERRCHK_ ( int  err,
iGeom geom,
const char *  file,
int  line 
) [inline]

Definition at line 170 of file Error.hpp.

void MeshKit::IBERRCHK_ ( int  err,
iRel rel,
const char *  file,
int  line 
) [inline]

Definition at line 177 of file Error.hpp.

double MeshKit::inner_product ( const Matrix< R, C > &  m1,
const Matrix< R, C > &  m2 
) [inline]

Definition at line 767 of file Matrix.hpp.

Matrix<R,C> MeshKit::inverse ( const Matrix< R, C > &  m) [inline]

Definition at line 674 of file Matrix.hpp.

double MeshKit::length ( const Matrix< R, 1 > &  v) [inline]

Definition at line 757 of file Matrix.hpp.

double MeshKit::length ( const Matrix< 1, C > &  v) [inline]

Definition at line 762 of file Matrix.hpp.

void link_expand_sets ( const CESets &  ce_sets,
iMesh::TagHandle  local_tag 
)

Set the target sets for expand sets to be themselves.

Definition at line 60 of file CESets.cpp.

double MeshKit::multiply_helper_result_val ( unsigned  r,
unsigned  c,
const Matrix< R, RC > &  A,
const Matrix< RC, C > &  B 
) [inline]

Definition at line 545 of file Matrix.hpp.

bool MeshKit::operator!= ( const Matrix< R, C > &  A,
const Matrix< R, C > &  B 
) [inline]

Definition at line 727 of file Matrix.hpp.

double MeshKit::operator% ( const Matrix< R, C > &  v1,
const Matrix< R, C > &  v2 
) [inline]

Definition at line 822 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator* ( const Matrix< R, C > &  m,
double  s 
) [inline]

Definition at line 535 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator* ( double  s,
const Matrix< R, C > &  m 
) [inline]

Definition at line 540 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator* ( const Matrix< R, RC > &  A,
const Matrix< RC, C > &  B 
) [inline]

Definition at line 563 of file Matrix.hpp.

double MeshKit::operator* ( const Matrix< 2, 1 > &  v1,
const Matrix< 2, 1 > &  v2 
) [inline]

Definition at line 827 of file Matrix.hpp.

double MeshKit::operator* ( const Matrix< 1, 2 > &  v1,
const Matrix< 1, 2 > &  v2 
) [inline]

Definition at line 832 of file Matrix.hpp.

Matrix<3,1> MeshKit::operator* ( const Matrix< 3, 1 > &  v1,
const Matrix< 3, 1 > &  v2 
) [inline]

Definition at line 837 of file Matrix.hpp.

Matrix<1,3> MeshKit::operator* ( const Matrix< 1, 3 > &  v1,
const Matrix< 1, 3 > &  v2 
) [inline]

Definition at line 842 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator+ ( const Matrix< R, C > &  m,
double  s 
) [inline]

Definition at line 503 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator+ ( double  s,
const Matrix< R, C > &  m 
) [inline]

Definition at line 508 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator+ ( const Matrix< R, C > &  A,
const Matrix< R, C > &  B 
) [inline]

Definition at line 513 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator- ( const Matrix< R, C > &  m) [inline]

Definition at line 495 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator- ( const Matrix< R, C > &  m,
double  s 
) [inline]

Definition at line 519 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator- ( double  s,
const Matrix< R, C > &  m 
) [inline]

Definition at line 524 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator- ( const Matrix< R, C > &  A,
const Matrix< R, C > &  B 
) [inline]

Definition at line 529 of file Matrix.hpp.

Matrix<R,C> MeshKit::operator/ ( const Matrix< R, C > &  m,
double  s 
) [inline]

Definition at line 580 of file Matrix.hpp.

std::ostream& MeshKit::operator<< ( std::ostream &  str,
const Matrix< R, C > &  m 
) [inline]

Definition at line 732 of file Matrix.hpp.

bool MeshKit::operator== ( const Matrix< R, C > &  A,
const Matrix< R, C > &  B 
) [inline]

Definition at line 719 of file Matrix.hpp.

std::istream& MeshKit::operator>> ( std::istream &  str,
Matrix< R, C > &  m 
) [inline]

Definition at line 740 of file Matrix.hpp.

Matrix<R,C> MeshKit::outer ( const Matrix< R, 1 > &  v1,
const Matrix< C, 1 > &  v2 
) [inline]

Definition at line 776 of file Matrix.hpp.

Matrix<R,C> MeshKit::outer ( const Matrix< 1, R > &  v1,
const Matrix< 1, C > &  v2 
) [inline]

Definition at line 785 of file Matrix.hpp.

void process_ce_sets ( iMesh mesh,
const std::set< iMesh::EntitySetHandle > &  cesets,
iMesh::TagHandle  local_tag 
)

Add newly-created entities/sets to a collection of sets.

Given a collection of copy, expand, or extrude source sets and a tag, create a destination (copy) set unless one already exists. Fill this set with any new entities/sets created from those in the source set.

Parameters:
meshthe iMesh instance handle
cesetsa collection of source sets
local_tagthe tag relating source and target entities/sets

Definition at line 175 of file CESets.cpp.

static void MeshKit::process_ce_subsets ( iMesh mesh,
iMesh::EntitySetHandle  src,
iMesh::EntitySetHandle  current,
const std::set< iMesh::EntitySetHandle > &  cesets,
iMesh::TagHandle  local_tag 
) [static]

Add copied entities/sets recursively.

Helper function for process_ce_sets. This adds any entities directly contained in the current set to the dest set and then loops through the contained sets and adds the children if they are also CE sets. If not, it adds the entities in the child set and recurses down a level.

Parameters:
meshthe iMesh instance handle
srcthe source set
currentthe child set to examine (start with current == src)
cesetsthe copy or expand sets to operate on
local_tagthe tag relating source and target sets

Definition at line 134 of file CESets.cpp.

void MeshKit::QR ( const Matrix< 3, 3 > &  A,
Matrix< 3, 3 > &  Q,
Matrix< 3, 3 > &  R 
) [inline]

Compute QR factorization of A

Definition at line 848 of file Matrix.hpp.

void MeshKit::QR ( const Matrix< 2, 2 > &  A,
Matrix< 2, 2 > &  Q,
Matrix< 2, 2 > &  R 
) [inline]

Compute QR factorization of A

Definition at line 893 of file Matrix.hpp.

Dummy function to force load from static library.

Definition at line 42 of file register_algs.cpp.

Dummy function to force load from static library.

Definition at line 26 of file register_extern.cpp.

MeshKit::REGISTER_MESH_OP ( VertexMesher  )
MeshKit::REGISTER_MESH_OP ( EdgeMesher  )
MeshKit::REGISTER_MESH_OP ( OneToOneSwept  )
MeshKit::REGISTER_MESH_OP ( TFIMapping  )
MeshKit::REGISTER_MESH_OP ( CopyMesh  )
MeshKit::REGISTER_MESH_OP ( MergeMesh  )
MeshKit::REGISTER_MESH_OP ( CopyGeom  )
MeshKit::REGISTER_MESH_OP ( ExtrudeMesh  )
MeshKit::REGISTER_MESH_OP ( EBMesher  )
MeshKit::REGISTER_MESH_OP ( QslimMesher  )
MeshKit::REGISTER_MESH_OP ( QuadMesher  )
MeshKit::REGISTER_MESH_OP ( MeshOpTemplate  )
Vector< 3 > rodrigues ( const Vector< 3 > &  pt,
const Vector< 3 > &  z,
double  dtheta 
)

Definition at line 8 of file Transform.cpp.

void MeshKit::set_region ( Matrix< R1, C1 > &  d,
unsigned  r,
unsigned  c,
Matrix< R2, C2 > &  s 
) [inline]

Set a subset of this matrix to some other matrix.

Definition at line 431 of file Matrix.hpp.

int MeshKit::SortAndRemoveDoubles ( double *  P,
int &  nP 
)

Definition at line 898 of file ProjectShell.cpp.

double MeshKit::sqr_Frobenius ( const Matrix< R, C > &  m) [inline]

Definition at line 706 of file Matrix.hpp.

double MeshKit::sqr_length ( const Matrix< R, 1 > &  v) [inline]

Definition at line 747 of file Matrix.hpp.

double MeshKit::sqr_length ( const Matrix< 1, C > &  v) [inline]

Definition at line 752 of file Matrix.hpp.

int MeshKit::swap ( double *  p,
double *  q 
)

Definition at line 891 of file ProjectShell.cpp.

void tag_copy_sets ( iMesh mesh,
iMesh::TagHandle  copyTag,
const std::set< iMesh::EntitySetHandle > &  copySets,
iMesh::TagHandle  tag,
const char *  tag_val 
)

Tag a collection of copied sets.

Given a collection of source sets and a tag |copyTag| relating sources to destinations, apply a tag |tag| to the destination sets if the tag exists on the corresponding source.

Parameters:
meshthe iMesh instance handle
copyTagthe tag relating sources and destinations
copySetsa collection of source sets
tagthe tag to set on the destinations
tag_valif non-NULL, only set |tag| on the destination if the source's tag matches this value

Definition at line 184 of file CESets.cpp.

void tag_copy_sets ( const CESets &  ce_sets,
iMesh::TagHandle  local_tag,
iMesh::TagHandle  copy_tag 
)

Tag a collection of copied sets.

Given a CESets instance and a tag |local_tag| relating sources to destinations, move the contents of the local tag to |copy_tag| and apply the tags in CESets to the destination sets if the tag exists on the corresponding source.

Parameters:
ce_setsthe CESets to operate on
local_tagthe local tag relating copied sets with their originals
copy_tagthe copy tag to receive local_tag's data

Definition at line 221 of file CESets.cpp.

double MeshKit::tArea ( double *  a,
double *  b,
double *  c,
double *  normal 
)

Definition at line 155 of file CAMALSurfEval.cpp.

double MeshKit::trace ( const Matrix< RC, RC > &  m) [inline]

Definition at line 698 of file Matrix.hpp.

Matrix<R,C> MeshKit::transpose ( const Matrix< C, R > &  m) [inline]

Definition at line 679 of file Matrix.hpp.

Matrix<2,2> MeshKit::transpose_adj ( const Matrix< 2, 2 > &  m) [inline]

Definition at line 626 of file Matrix.hpp.

Matrix<3,3> MeshKit::transpose_adj ( const Matrix< 3, 3 > &  m) [inline]

Definition at line 655 of file Matrix.hpp.

double* MeshKit::vec2ptr ( std::vector< Vector< 3 > > &  v) [inline]

Definition at line 10 of file TransformBase.hpp.

double MeshKit::vector_product ( const Matrix< 2, 1 > &  v1,
const Matrix< 2, 1 > &  v2 
) [inline]

Definition at line 794 of file Matrix.hpp.

double MeshKit::vector_product ( const Matrix< 1, 2 > &  v1,
const Matrix< 1, 2 > &  v2 
) [inline]

Definition at line 799 of file Matrix.hpp.

Matrix<3,1> MeshKit::vector_product ( const Matrix< 3, 1 > &  a,
const Matrix< 3, 1 > &  b 
) [inline]

Definition at line 804 of file Matrix.hpp.

Matrix<1,3> MeshKit::vector_product ( const Matrix< 1, 3 > &  a,
const Matrix< 1, 3 > &  b 
) [inline]

Definition at line 813 of file Matrix.hpp.


Variable Documentation

moab::EntityType AssyGen_tps[]
Initial value:
 { moab::MBVERTEX,
                                     moab::MBEDGE,
                                     moab::MBTRI,
                                     moab::MBHEX,
                                     moab::MBMAXTYPE}

Definition at line 6 of file AssyGen.cpp.

moab::EntityType CopyGeom_tps[]
Initial value:
 { moab::MBVERTEX,
                                    moab::MBEDGE,
                                    moab::MBTRI,
                                    moab::MBHEX,
                                    moab::MBMAXTYPE}

Definition at line 15 of file CopyGeom.cpp.

moab::EntityType CopyMesh_tps[]
Initial value:
 { moab::MBVERTEX,
                                    moab::MBEDGE,
                                    moab::MBTRI,
                                    moab::MBHEX,
                                    moab::MBMAXTYPE}

Definition at line 21 of file CopyMesh.cpp.

moab::EntityType CoreGen_tps[]
Initial value:
 { moab::MBVERTEX,
                                   moab::MBEDGE,
                                   moab::MBTRI,
                                   moab::MBHEX,
                                   moab::MBMAXTYPE}

Definition at line 7 of file CoreGen.cpp.

moab::EntityType EBMesher_tps[] = {moab::MBVERTEX, moab::MBHEX, moab::MBMAXTYPE}

Definition at line 42 of file EBMesher.cpp.

moab::EntityType EdgeMesher_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBMAXTYPE}

Definition at line 16 of file EdgeMesher.cpp.

double epsilon = 1.e-5

Definition at line 42 of file ProjectShell.cpp.

moab::EntityType ExtrudeMesh_tps[]
Initial value:
 { moab::MBVERTEX,
                                         moab::MBEDGE,
                                         moab::MBTRI,
                                         moab::MBHEX,
                                         moab::MBMAXTYPE}

Definition at line 20 of file ExtrudeMesh.cpp.

Definition at line 38 of file MKCore.cpp.

Definition at line 39 of file MKCore.cpp.

moab::EntityType IAInterface_types[] = {moab::MBMAXTYPE}

Definition at line 27 of file IAInterface.cpp.

moab::EntityType MBGeomOp_tps[] = { moab::MBMAXTYPE }

Definition at line 18 of file MBGeomOp.cpp.

moab::EntityType MBSplitOp_tps[] = { moab::MBMAXTYPE }

Definition at line 20 of file MBSplitOp.cpp.

moab::EntityType MBVolOp_tps[] = { moab::MBMAXTYPE }

Definition at line 20 of file MBVolOp.cpp.

moab::EntityType MergeMesh_tps[]
Initial value:
 { moab::MBVERTEX,
                                       moab::MBEDGE,
                                       moab::MBTRI,
                                       moab::MBHEX,
                                       moab::MBMAXTYPE}

Definition at line 22 of file MergeMesh.cpp.

const double MESHKIT_IA_lowerUnbound = -2e19

Definition at line 22 of file IAData.hpp.

const double MESHKIT_IA_upperUnbound = 2e19

Definition at line 21 of file IAData.hpp.

moab::EntityType MeshOpTemplate_tps[]
Initial value:
 { moab::MBVERTEX,
                                    moab::MBEDGE,
                                    moab::MBTRI,
                                    moab::MBHEX,
                                    moab::MBMAXTYPE}

Definition at line 16 of file MeshOpTemplate.cpp.

moab::EntityType OneToOneSwept_tps[] = { moab::MBVERTEX, moab::MBQUAD, moab::MBHEX, moab::MBMAXTYPE }

Definition at line 20 of file OneToOneSwept.cpp.

double p_norm = 3

Definition at line 35 of file IAMINlp.cpp.

moab::EntityType ParallelMesher_tps[] = {moab::MBVERTEX, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}

Definition at line 25 of file ParallelMesher.cpp.

moab::EntityType ParExchangeMesh_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}

Definition at line 12 of file ParExchangeMesh.cpp.

moab::EntityType ParRecvSurfMesh_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}

Definition at line 10 of file ParRecvSurfMesh.cpp.

moab::EntityType ParSendPostSurfMesh_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBTRI, moab::MBTET, moab::MBMAXTYPE}

Definition at line 9 of file ParSendPostSurfMesh.cpp.

moab::EntityType PostBL_tps[]
Initial value:
 {moab::MBHEX,
                                 moab::MBMAXTYPE}

Definition at line 7 of file PostBL.cpp.

moab::EntityType QslimMesher_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBMAXTYPE}

Definition at line 16 of file QslimMesher.cpp.

moab::EntityType QuadMesher_tps[] = {moab::MBVERTEX, moab::MBQUAD, moab::MBMAXTYPE}

Definition at line 12 of file QuadMesh.cpp.

moab::EntityType SCDMesh_tps[] = {moab::MBVERTEX, moab::MBHEX, moab::MBMAXTYPE}

Definition at line 26 of file SCDMesh.cpp.

moab::EntityType SubMapping_tps[] = {moab::MBVERTEX, moab::MBEDGE, moab::MBQUAD, moab::MBMAXTYPE}

Definition at line 29 of file SubMapping.cpp.

moab::EntityType TFIMapping_tps[] = { moab::MBVERTEX, moab::MBEDGE, moab::MBQUAD, moab::MBMAXTYPE }

Definition at line 23 of file TFIMapping.cpp.

moab::EntityType types[] = { moab::MBVERTEX, moab::MBMAXTYPE}

Definition at line 12 of file VertexMesher.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines