#include <periodicube.hh>


Classes | |
| class | S |
| Scanner over mesh cells. More... | |
Public Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information about the mesh. | |
| uint | n () |
| Returns the mesh size n. | |
| unsigned int | ncell () const |
| Returns the number of cells. | |
| PeriodiCube (uint n, Real jitter=0) | |
| Constructor. | |
| void | saveMesh () |
| Saves the mesh in the *.mesh format for NETGEN. | |
| concepts::Scan3 * | scan () |
| Returns a scanner over the mesh cells. | |
| virtual | ~PeriodiCube () |
| Destructor. | |
Private Member Functions | |
| Real | dRand () |
| Returns a random number in the suitable range for jittering. | |
| uint | ii (uint a, uint b, uint c) |
| Calculates a geometric vertex index for NETGEN. | |
| uint | j (uint a, uint b, uint c) |
| Calculates a topologic vertex index. | |
| uint | k (uint a, uint b, uint c, uint d) |
| Calculates a topologic edge index. | |
| uint | l (uint a, uint b, uint c, uint e) |
| Calculates a topologic face index. | |
| uint | m (uint a, uint b, uint c, uint f) |
| Calculates a topologic tetrahedron index. | |
| double | x (uint a) |
| Calculates a coordinate from a one dimensional index. | |
Private Attributes | |
| concepts::Tetrahedron3d ** | cell_ |
| cell array | |
| concepts::Real3d ** | coord_ |
| coordinate array | |
| concepts::Edge ** | edg_ |
| edge array | |
| Real | jitter_ |
| jitter parameter | |
| uint | n_ |
| mesh size | |
| concepts::Tetrahedron ** | tet_ |
| tetrahedron array | |
| concepts::Triangle ** | tri_ |
| triangle array | |
| concepts::Vertex ** | vtx_ |
| vertex array | |
A topologically periodic mesh of the unit cube into 6*n*n*n tetrahedrons, being able to export itself in the neutral *.mesh format for NETGEN, just for visualisation
Definition at line 18 of file periodicube.hh.
| PeriodiCube::PeriodiCube | ( | uint | n, |
| Real | jitter = 0 |
||
| ) |
Constructor.
The mesh has 6*n* The inner points are moved in all directions by a random value between -n*.n elementsjitter/ n andjitter/ n.
| n | mesh size |
| jitter | jitter parameter |
| virtual PeriodiCube::~PeriodiCube | ( | ) | [virtual] |
Destructor.
| Real PeriodiCube::dRand | ( | ) | [inline, private] |
Returns a random number in the suitable range for jittering.
Definition at line 73 of file periodicube.hh.
| uint PeriodiCube::ii | ( | uint | a, |
| uint | b, | ||
| uint | c | ||
| ) | [inline, private] |
Calculates a geometric vertex index for NETGEN.
Definition at line 61 of file periodicube.hh.
| virtual std::ostream& PeriodiCube::info | ( | std::ostream & | os | ) | const [virtual] |
Returns information about the mesh.
Reimplemented from concepts::Mesh.
| uint PeriodiCube::j | ( | uint | a, |
| uint | b, | ||
| uint | c | ||
| ) | [inline, private] |
Calculates a topologic vertex index.
Definition at line 65 of file periodicube.hh.
| uint PeriodiCube::k | ( | uint | a, |
| uint | b, | ||
| uint | c, | ||
| uint | d | ||
| ) | [inline, private] |
Calculates a topologic edge index.
Definition at line 67 of file periodicube.hh.

| uint PeriodiCube::l | ( | uint | a, |
| uint | b, | ||
| uint | c, | ||
| uint | e | ||
| ) | [inline, private] |
Calculates a topologic face index.
Definition at line 69 of file periodicube.hh.

| uint PeriodiCube::m | ( | uint | a, |
| uint | b, | ||
| uint | c, | ||
| uint | f | ||
| ) | [inline, private] |
Calculates a topologic tetrahedron index.
Definition at line 71 of file periodicube.hh.

| uint PeriodiCube::n | ( | ) | [inline] |
Returns the mesh size n.
Definition at line 38 of file periodicube.hh.
| unsigned int PeriodiCube::ncell | ( | ) | const [inline, virtual] |
Returns the number of cells.
Implements concepts::Mesh.
Definition at line 30 of file periodicube.hh.
| void PeriodiCube::saveMesh | ( | ) |
Saves the mesh in the *.mesh format for NETGEN.
| concepts::Scan3* PeriodiCube::scan | ( | ) | [inline, virtual] |
Returns a scanner over the mesh cells.
Implements concepts::Mesh3.
Definition at line 32 of file periodicube.hh.
| double PeriodiCube::x | ( | uint | a | ) | [inline, private] |
Calculates a coordinate from a one dimensional index.
Definition at line 78 of file periodicube.hh.
concepts::Tetrahedron3d** PeriodiCube::cell_ [private] |
cell array
Definition at line 94 of file periodicube.hh.
concepts::Real3d** PeriodiCube::coord_ [private] |
coordinate array
Definition at line 84 of file periodicube.hh.
concepts::Edge** PeriodiCube::edg_ [private] |
edge array
Definition at line 88 of file periodicube.hh.
Real PeriodiCube::jitter_ [private] |
jitter parameter
Definition at line 82 of file periodicube.hh.
uint PeriodiCube::n_ [private] |
mesh size
Definition at line 80 of file periodicube.hh.
concepts::Tetrahedron** PeriodiCube::tet_ [private] |
tetrahedron array
Definition at line 92 of file periodicube.hh.
concepts::Triangle** PeriodiCube::tri_ [private] |
triangle array
Definition at line 90 of file periodicube.hh.
concepts::Vertex** PeriodiCube::vtx_ [private] |
vertex array
Definition at line 86 of file periodicube.hh.