11#ifndef UNIFORM_CARTESIAN_H
12#define UNIFORM_CARTESIAN_H
24template<
class T,
unsigned D>
class BareField;
25template<
class T,
unsigned D,
class M,
class C>
class Field;
27template <
unsigned Dim,
class MFLOAT>
29template <
unsigned Dim,
class MFLOAT>
32template <
unsigned Dim,
class MFLOAT=
double>
151 unsigned vnodes1,
unsigned vnodes2,
152 bool recurse=
false,
int vnodes=-1);
154 unsigned vnodes1,
unsigned vnodes2,
unsigned vnodes3,
155 bool recurse=
false,
int vnodes=-1);
159 unsigned* vnodesPerDirection,
160 bool recurse=
false,
int vnodes=-1);
177 void print(std::ostream&);
244template<
unsigned Dim,
class MFLOAT >
254template<
unsigned Dim,
class MFLOAT >
268#ifndef CARTESIAN_STENCIL_SETUP_H
308template <
class T,
class MFLOAT >
313template <
class T,
class MFLOAT >
318template <
class T,
class MFLOAT >
325template <
class T,
class MFLOAT >
330template <
class T,
class MFLOAT >
335template <
class T,
class MFLOAT >
342template <
class T,
class MFLOAT >
347template <
class T,
class MFLOAT >
352template <
class T,
class MFLOAT >
359template <
class T,
class MFLOAT >
364template <
class T,
class MFLOAT >
369template <
class T,
class MFLOAT >
376template <
class T,
class MFLOAT >
381template <
class T,
class MFLOAT >
386template <
class T,
class MFLOAT >
393template <
class T,
class MFLOAT >
398template <
class T,
class MFLOAT >
403template <
class T,
class MFLOAT >
410template <
class T,
class MFLOAT >
415template <
class T,
class MFLOAT >
420template <
class T,
class MFLOAT >
428template <
class T,
class MFLOAT >
433template <
class T,
class MFLOAT >
440template <
class T,
class MFLOAT >
446template <
class T,
class MFLOAT >
453template <
class T,
class MFLOAT >
458template <
class T,
class MFLOAT >
463template <
class T,
class MFLOAT >
470template <
class T,
class MFLOAT >
475template <
class T,
class MFLOAT >
480template <
class T,
class MFLOAT >
487template <
class T,
class MFLOAT >
492template <
class T,
class MFLOAT >
497template <
class T,
class MFLOAT >
504template <
class T,
class MFLOAT >
509template <
class T,
class MFLOAT >
514template <
class T,
class MFLOAT >
521template <
class T,
class MFLOAT >
526template <
class T,
class MFLOAT >
531template <
class T,
class MFLOAT >
538template <
class T,
class MFLOAT >
543template <
class T,
class MFLOAT >
548template <
class T,
class MFLOAT >
556template <
class T,
class MFLOAT >
561template <
class T,
class MFLOAT >
568template <
class T,
class MFLOAT >
573template <
class T,
class MFLOAT >
578template <
class T,
class MFLOAT >
588template <
class T1,
class T2,
class MFLOAT >
594template <
class T1,
class T2,
class MFLOAT >
600template <
class T1,
class T2,
class MFLOAT >
609template <
class T1,
class T2,
class MFLOAT >
615template <
class T1,
class T2,
class MFLOAT >
621template <
class T1,
class T2,
class MFLOAT >
632template <
class T1,
class MFLOAT >
637template <
class T1,
class MFLOAT >
642template <
class T1,
class MFLOAT >
650template <
class T1,
class MFLOAT >
655template <
class T1,
class MFLOAT >
660template <
class T1,
class MFLOAT >
std::ostream & operator<<(std::ostream &, const UniformCartesian< Dim, MFLOAT > &)
Field< Vektor< T, 1U >, 1U, UniformCartesian< 1U, MFLOAT >, Cell > & Grad(Field< T, 1U, UniformCartesian< 1U, MFLOAT >, Vert > &x, Field< Vektor< T, 1U >, 1U, UniformCartesian< 1U, MFLOAT >, Cell > &r)
Field< Vektor< T, 3U >, 3U, UniformCartesian< 3U, MFLOAT >, Cell > & Grad1Ord(Field< T, 3U, UniformCartesian< 3U, MFLOAT >, Vert > &x, Field< Vektor< T, 3U >, 3U, UniformCartesian< 3U, MFLOAT >, Cell > &r)
Old Grad operator.
Field< T, 1U, UniformCartesian< 1U, MFLOAT >, Cell > & Div(Field< Vektor< T, 1U >, 1U, UniformCartesian< 1U, MFLOAT >, Vert > &x, Field< T, 1U, UniformCartesian< 1U, MFLOAT >, Cell > &r)
Field< T1, 1U, Cartesian< 1U, MFLOAT >, Vert > & Average(Field< T1, 1U, Cartesian< 1U, MFLOAT >, Cell > &x, Field< T2, 1U, Cartesian< 1U, MFLOAT >, Cell > &w, Field< T1, 1U, Cartesian< 1U, MFLOAT >, Vert > &r)
NDIndex< Dim > getVertexBelow(const Vektor< MFLOAT, Dim > &) const
void getSurfaceNormalFields(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > **) const
BareField< Vektor< MFLOAT, Dim >, Dim > * CellSpacings
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > & getDeltaCellField(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > &) const
void set_origin(const Vektor< MFLOAT, Dim > &o)
NDIndex< Dim > getCellContaining(const Vektor< MFLOAT, Dim > &x) const
Vektor< MFLOAT, Dim > * getSurfaceNormals(const NDIndex< Dim > &) const
Field< MFLOAT, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getCellVolumeField(Field< MFLOAT, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, Dim > getVertexPosition(const NDIndex< Dim > &) const
Vektor< MFLOAT, Dim > origin
FieldLayout< Dim > * FlCell
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getDeltaVertexField(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &) const
MFLOAT get_meshSpacing(unsigned d) const
Vektor< MFLOAT, Dim > MeshVektor_t
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getSurfaceNormalField(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &, unsigned) const
MFLOAT get_volume() const
Vektor< MFLOAT, Dim > getDeltaVertex(const NDIndex< Dim > &) const
MFLOAT getCellVolume(const NDIndex< Dim > &) const
MFLOAT getCellRangeVolume(const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getCellPositionField(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > & getVertexPositionField(Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > &) const
void set_meshSpacing(MFLOAT *const del)
NDIndex< Dim > getNearestVertex(const Vektor< MFLOAT, Dim > &) const
FieldLayout< Dim > * FlVert
MFLOAT getVertRangeVolume(const NDIndex< Dim > &) const
void storeSpacingFields()
Vektor< MFLOAT, Dim > getCellPosition(const NDIndex< Dim > &) const
void print(std::ostream &)
Vektor< MFLOAT, Dim > get_origin() const
BareField< Vektor< MFLOAT, Dim >, Dim > * VertSpacings
Vektor< MFLOAT, Dim > Dvc[1<< Dim]
Vektor< MFLOAT, Dim > getSurfaceNormal(const NDIndex< Dim > &, unsigned) const
void initialize(const NDIndex< Dim > &ndi)
Vektor< MFLOAT, Dim > getDeltaCell(const NDIndex< Dim > &) const