Nektar++
|
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <float.h>
Go to the source code of this file.
Classes | |
struct | Vertex |
Represents a vertex in the mesh. More... | |
struct | Edge |
struct | Element |
struct | Mesh |
Macros | |
#define | PI 3.14159265358979323846 |
Functions | |
Mesh | CreateBasicCubicMesh () |
void | CutEdge (Mesh *LocMesh, int IdEdge) |
void | ProjectMeshEllipsoid (Mesh *LocMesh, double Rx, double Ry, double Rz) |
void | MakeClockwiseOrder (Mesh *LocMesh) |
void | RefineMesh (Mesh *LocMesh) |
void | ProjectMeshEllipsoidAndRefine (Mesh *LocMesh, double Rx, double Ry, double Rz, double MaxEdgeLength, int NbSubdiv) |
void | ExtractSubmesh (Mesh *LocMesh, double Xmin, double Xmax, double Ymin, double Ymax, double Zmin, double Zmax) |
void | WriteMesh (Mesh *LocMesh, char FileName[256]) |
void | usage () |
int | main (int argc, char **argv) |
#define PI 3.14159265358979323846 |
Definition at line 7 of file makeEllipsoidNektar.c.
Mesh CreateBasicCubicMesh | ( | ) |
Definition at line 63 of file makeEllipsoidNektar.c.
References Element::E1, Element::E2, Element::E3, Mesh::Edges, Mesh::Elements, Mesh::NbEdges, Mesh::NbElements, Edge::NbSubdiv, Mesh::NbVertexes, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by main().
void CutEdge | ( | Mesh * | LocMesh, |
int | IdEdge | ||
) |
Definition at line 129 of file makeEllipsoidNektar.c.
References Element::E1, Element::E2, Element::E3, Mesh::Edges, Mesh::Elements, Mesh::NbEdges, Mesh::NbElements, Edge::NbSubdiv, Mesh::NbVertexes, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by ProjectMeshEllipsoidAndRefine(), and RefineMesh().
void ExtractSubmesh | ( | Mesh * | LocMesh, |
double | Xmin, | ||
double | Xmax, | ||
double | Ymin, | ||
double | Ymax, | ||
double | Zmin, | ||
double | Zmax | ||
) |
Definition at line 527 of file makeEllipsoidNektar.c.
References Element::E1, Element::E2, Element::E3, Mesh::Edges, Mesh::Elements, Mesh::NbEdges, Mesh::NbElements, Edge::NbSubdiv, Mesh::NbVertexes, Edge::SubiVertex, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by main().
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 789 of file makeEllipsoidNektar.c.
References CreateBasicCubicMesh(), ExtractSubmesh(), ProjectMeshEllipsoidAndRefine(), usage(), and WriteMesh().
void MakeClockwiseOrder | ( | Mesh * | LocMesh | ) |
Definition at line 314 of file makeEllipsoidNektar.c.
References Element::E1, Element::E2, Element::E3, Mesh::Edges, Mesh::Elements, Mesh::NbElements, Edge::NbSubdiv, Edge::SubiVertex, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by WriteMesh().
void ProjectMeshEllipsoid | ( | Mesh * | LocMesh, |
double | Rx, | ||
double | Ry, | ||
double | Rz | ||
) |
Definition at line 272 of file makeEllipsoidNektar.c.
References Mesh::NbVertexes, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by ProjectMeshEllipsoidAndRefine().
void ProjectMeshEllipsoidAndRefine | ( | Mesh * | LocMesh, |
double | Rx, | ||
double | Ry, | ||
double | Rz, | ||
double | MaxEdgeLength, | ||
int | NbSubdiv | ||
) |
Definition at line 431 of file makeEllipsoidNektar.c.
References CutEdge(), Mesh::Edges, Nektar::for(), Mesh::NbEdges, Edge::NbSubdiv, ProjectMeshEllipsoid(), Edge::SubiVertex, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by main().
void RefineMesh | ( | Mesh * | LocMesh | ) |
Definition at line 397 of file makeEllipsoidNektar.c.
References CutEdge(), Mesh::Edges, Mesh::NbEdges, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
void usage | ( | ) |
Definition at line 770 of file makeEllipsoidNektar.c.
Referenced by main().
void WriteMesh | ( | Mesh * | LocMesh, |
char | FileName[256] | ||
) |
Definition at line 657 of file makeEllipsoidNektar.c.
References Element::E1, Element::E2, Element::E3, Mesh::Edges, Mesh::Elements, MakeClockwiseOrder(), Mesh::NbEdges, Mesh::NbElements, Edge::NbSubdiv, Mesh::NbVertexes, Edge::SubiVertex, Edge::V1, Edge::V2, Mesh::Vertexes, Vertex::X, Vertex::Y, and Vertex::Z.
Referenced by main().