proteus
1.8.1
C/C++/Fortran libraries
|
#include <set>
#include <vector>
#include <algorithm>
#include <map>
#include <list>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cassert>
#include <cmath>
Go to the source code of this file.
Classes | |
struct | Mesh |
struct | MultilevelMesh |
class | NodeTuple< nNodes > |
class | Node |
class | ElementNeighbors |
Functions | |
void | initializeMesh (Mesh &mesh) |
void | deleteMesh (Mesh &mesh) |
void | initializeMultilevelMesh (MultilevelMesh &multilevelMesh) |
void | deleteMultilevelMesh (MultilevelMesh &multilevelMesh) |
int | edgeMeshElements (const int &nx, Mesh &mesh) |
int | regularEdgeMeshNodes (const int &nx, const double &Lx, Mesh &mesh) |
int | globallyRefineEdgeMesh (const int &nLevels, Mesh &mesh, MultilevelMesh &multilevelMesh, bool averageNewNodeFlags=false) |
int | locallyRefineEdgeMesh (MultilevelMesh &multilevelMesh, int *elementTagArray) |
int | locallyRefineTriangleMesh (MultilevelMesh &multilevelMesh, int *elementTagArray) |
int | locallyRefineTriangleMesh_4T (MultilevelMesh &multilevelMesh, int *elementTagArray) |
int | locallyRefineTriangleMesh_redGreen (MultilevelMesh &multilevelMesh, int *elementTagArray) |
int | setNewestNodeBasesToLongestEdge (MultilevelMesh &multilevelMesh) |
int | regularRectangularToTriangularMeshElements (const int &nx, const int &ny, Mesh &mesh, int triangleFlag) |
int | regularRectangularToTriangularMeshNodes (const int &nx, const int &ny, const double &Lx, const double &Ly, Mesh &mesh) |
int | regularRectangularToTriangularElementBoundaryMaterials (const double &Lx, const double &Ly, Mesh &mesh) |
int | globallyRefineTriangularMesh (const int &nLevels, Mesh &mesh, MultilevelMesh &multilevelMesh, bool averageNewNodeFlags=false) |
int | regularQuadrilateralMeshElements (const int &nx, const int &ny, Mesh &mesh) |
int | regularQuadrilateralMeshElementBoundaryMaterials (const double &Lx, const double &Ly, Mesh &mesh) |
int | globallyRefineQuadrilateralMesh (const int &nLevels, Mesh &mesh, MultilevelMesh &multilevelMesh, bool averageNewNodeFlags=false) |
int | regularMeshNodes (const int &nx, const int &ny, const int &nz, const double &Lx, const double &Ly, const double &Lz, Mesh &mesh) |
int | regularMeshNodes2D (const int &nx, const int &ny, const double &Lx, const double &Ly, Mesh &mesh) |
int | regularHexahedralMeshElementBoundaryMaterials (const double &Lx, const double &Ly, const double &Lz, Mesh &mesh) |
int | regularHexahedralToTetrahedralMeshNodes (const int &nx, const int &ny, const int &nz, const double &Lx, const double &Ly, const double &Lz, Mesh &mesh) |
int | regularHexahedralToTetrahedralMeshElements (const int &nx, const int &ny, const int &nz, Mesh &mesh) |
int | regularHexahedralToTetrahedralElementBoundaryMaterials (const double &Lx, const double &Ly, const double &Lz, Mesh &mesh) |
int | regularHexahedralMeshElements (const int &nx, const int &ny, const int &nz, const int &px, const int &py, const int &pz, Mesh &mesh) |
int | reorientTetrahedralMesh (Mesh &mesh) |
int | regularNURBSMeshElements (const int &nx, const int &ny, const int &nz, const int &px, const int &py, const int &pz, Mesh &mesh) |
int | globallyRefineHexahedralMesh (const int &nLevels, Mesh &mesh, MultilevelMesh &multilevelMesh, bool averageNewNodeFlags=false) |
int | globallyRefineTetrahedralMesh (const int &nLevels, Mesh &mesh, MultilevelMesh &multilevelMesh, bool averageNewNodeFlags=false) |
int | constructElementBoundaryElementsArray_edge (Mesh &mesh) |
int | constructElementBoundaryElementsArray_triangle (Mesh &mesh) |
int | constructElementBoundaryElementsArray_quadrilateral (Mesh &mesh) |
int | constructElementBoundaryElementsArray_tetrahedron (Mesh &mesh) |
int | constructElementBoundaryElementsArray_hexahedron (Mesh &mesh) |
int | constructElementBoundaryElementsArray_NURBS (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryNumbers_edge (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryNumbers_triangle (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryNumbers_quadrilateral (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryNumbers_tetrahedron (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_edge (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_triangle (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_quadrilateral (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_tetrahedron (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_hexahedron (Mesh &mesh) |
int | constructElementBoundaryElementsArrayWithGivenElementBoundaryAndEdgeNumbers_NURBS (Mesh &mesh) |
int | writeElements (std::ostream &meshFile, const Mesh &mesh) |
int | writeNodes (std::ostream &meshFile, const Mesh &mesh) |
int | readElements (std::istream &meshFile, Mesh &mesh) |
int | allocateGeometricInfo_tetrahedron (Mesh &mesh) |
int | allocateGeometricInfo_triangle (Mesh &mesh) |
int | allocateGeometricInfo_edge (Mesh &mesh) |
int | allocateGeometricInfo_quadrilateral (Mesh &mesh) |
int | allocateGeometricInfo_hexahedron (Mesh &mesh) |
int | allocateGeometricInfo_NURBS (Mesh &mesh) |
int | computeGeometricInfo_tetrahedron (Mesh &mesh) |
int | computeGeometricInfo_triangle (Mesh &mesh) |
int | computeGeometricInfo_edge (Mesh &mesh) |
int | computeGeometricInfo_hexahedron (Mesh &mesh) |
int | computeGeometricInfo_quadrilateral (Mesh &mesh) |
int | computeGeometricInfo_NURBS (Mesh &mesh) |
int | assignElementBoundaryMaterialTypesFromParent (Mesh &parentMesh, Mesh &childMesh, const int *levelElementParentsArray, const int &nSpace_global) |
int | allocateNodeAndElementNodeDataStructures (Mesh &mesh, int nElements_global, int nNodes_global, int nNodes_element) |
int | setFromTriangleElements (triangulateio *trimesh, Mesh &mesh, int base) |
int | setFromTriangleNodes (triangulateio *trimesh, Mesh &mesh, int base) |
int | readTriangleMesh (Mesh &mesh, const char *filebase, int base) |
int | readTriangleElementBoundaryMaterialTypes (Mesh &mesh, const char *filebase, int base) |
int | writeTriangleMesh (Mesh &mesh, const char *filebase, int base) |
int | readTetgenMesh (Mesh &mesh, const char *filebase, int base) |
int | readTetgenElementBoundaryMaterialTypes (Mesh &mesh, const char *filebase, int base) |
int | writeTetgenMesh (Mesh &mesh, const char *filebase, int base) |
int | read3DM (Mesh &mesh, const char *filebase, int indexBase) |
int | read2DM (Mesh &mesh, const char *filebase, int indexBase) |
int | readHex (Mesh &mesh, const char *filebase, int indexBase) |
int | readBC (Mesh &mesh, const char *filebase, int indexBase) |
int | write3dmMesh (Mesh &mesh, const char *filebase, int base) |
int | write2dmMesh (Mesh &mesh, const char *filebase, int base) |
int | copyElementBoundaryMaterialTypesFromTriangle (triangulateio *trimesh, Mesh &mesh, int base) |
template<int nNodes> | |
bool | operator< (const NodeTuple< nNodes > &left, const NodeTuple< nNodes > &right) |
void | midpoint (const double *left, const double *right, Node &midpoint) |
double | edgeLength (const Node &left, const Node &right) |
double | edgeLengthFromNodeNumbers (double *nodeArray, const int &left, const int &right) |
bool | operator< (const Node &left, const Node &right) |
int | newEdge (int eN, int *nodes, int n0, int n1) |
int | newTriangle (int eN, int *nodes, int n0, int n1, int n2) |
int | newTetrahedron (int eN, int *nodes, int n0, int n1, int n2, int n3) |
int | newQuadrilateral (int eN, int *nodes, int n0, int n1, int n2, int n3) |
int | newHexahedron (int eN, int *nodes, int n0, int n1, int n2, int n3, int n4, int n5, int n6, int n7) |
bool | newestNodeBisect (int eN, int &nElements_global, int &nNodes_global, std::vector< double > &nodeArray, std::vector< int > &elementNodesArray, std::vector< int > &elementNeighborsArray, std::vector< std::list< int > > &childrenList, std::vector< int > &elementParentsArray, std::vector< int > &bases, std::vector< bool > &refined) |
bool | add4TnodesForRefinement2d (int eN, int &nNodes_global, std::vector< bool > &refined, std::vector< int > &edgeMidNodesArray, const int *elementNodesArray, const int *elementBoundariesArray, const int *elementNeighborsArray, const double *nodeArray) |
bool | add4TnodesForConformity2d (int eN, int ebN_longest, int ebN_neig, int eN_neig, int &nNodes_global, std::vector< bool > &refined, std::vector< int > &edgeMidNodesArray, const int *elementNodesArray, const int *elementBoundariesArray, const int *elementNeighborsArray, const double *nodeArray) |
int | findLocalLongestEdge2d (int eN, const int *elementNodesArray, const double *nodeArray) |
bool | subdivideTriangle4T (int eN_parent, int &eN_new, int *elementParentsArray, int *elementChildrenOffsets, int *elementChildrenArray, int *elementNodesArray_child, const std::vector< int > &edgeMidNodesArray, const std::vector< bool > &refined, const int *elementNodesArray_parent, const int *elementBoundariesArray_parent, const double *nodeArray_parent) |
#include <mach/mach_time.h>
Definition in file mesh.h.