Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Classes | Public Member Functions | Private Member Functions | Private Attributes
PeriodiCube Class Reference

PeriodiCube. More...

#include <periodicube.hh>

Inheritance diagram for PeriodiCube:
Inheritance graph
[legend]
Collaboration diagram for PeriodiCube:
Collaboration graph
[legend]

List of all members.

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::Scan3scan ()
 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

Detailed Description

PeriodiCube.

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

Author:
Christoph Winkelmann, 2002

Definition at line 18 of file periodicube.hh.


Constructor & Destructor Documentation

PeriodiCube::PeriodiCube ( uint  n,
Real  jitter = 0 
)

Constructor.

The mesh has 6*n*n*n elements. The inner points are moved in all directions by a random value between -jitter/n and jitter/n.

Parameters:
nmesh size
jitterjitter parameter
virtual PeriodiCube::~PeriodiCube ( ) [virtual]

Destructor.


Member Function Documentation

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.

Here is the call graph for this function:

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.

Here is the call graph for this function:

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.

Here is the call graph for this function:

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.


Member Data Documentation

cell array

Definition at line 94 of file periodicube.hh.

coordinate array

Definition at line 84 of file periodicube.hh.

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.

tetrahedron array

Definition at line 92 of file periodicube.hh.

triangle array

Definition at line 90 of file periodicube.hh.

vertex array

Definition at line 86 of file periodicube.hh.


The documentation for this class was generated from the following file:

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)