26template<
class T,
unsigned D>
class BareField;
27template<
class T,
unsigned D,
class M,
class C>
class Field;
28template <
unsigned Dim,
class MFLOAT>
class Cartesian;
29template <
unsigned Dim,
class MFLOAT>
32template <
unsigned Dim,
class MFLOAT=
double>
174 unsigned vnodes1,
unsigned vnodes2,
175 bool recurse=
false,
int vnodes=-1);
177 unsigned vnodes1,
unsigned vnodes2,
unsigned vnodes3,
178 bool recurse=
false,
int vnodes=-1);
182 unsigned* vnodesPerDirection,
183 bool recurse=
false,
int vnodes=-1);
207 void print(std::ostream&);
271template<
unsigned Dim,
class MFLOAT >
284#ifndef CARTESIAN_STENCIL_SETUP_H
324template <
class T,
class MFLOAT >
329template <
class T,
class MFLOAT >
334template <
class T,
class MFLOAT >
341template <
class T,
class MFLOAT >
346template <
class T,
class MFLOAT >
351template <
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 >
427template <
class T,
class MFLOAT >
432template <
class T,
class MFLOAT >
437template <
class T,
class MFLOAT >
444template <
class T,
class MFLOAT >
449template <
class T,
class MFLOAT >
454template <
class T,
class MFLOAT >
463template <
class T,
class MFLOAT >
468template <
class T,
class MFLOAT >
473template <
class T,
class MFLOAT >
480template <
class T,
class MFLOAT >
485template <
class T,
class MFLOAT >
490template <
class T,
class MFLOAT >
498template <
class T,
class MFLOAT >
503template <
class T,
class MFLOAT >
508template <
class T,
class MFLOAT >
515template <
class T,
class MFLOAT >
520template <
class T,
class MFLOAT >
525template <
class T,
class MFLOAT >
532template <
class T,
class MFLOAT >
537template <
class T,
class MFLOAT >
542template <
class T,
class MFLOAT >
549template <
class T,
class MFLOAT >
554template <
class T,
class MFLOAT >
559template <
class T,
class MFLOAT >
568template <
class T1,
class T2,
class MFLOAT >
574template <
class T1,
class T2,
class MFLOAT >
580template <
class T1,
class T2,
class MFLOAT >
589template <
class T1,
class T2,
class MFLOAT >
595template <
class T1,
class T2,
class MFLOAT >
601template <
class T1,
class T2,
class MFLOAT >
612template <
class T1,
class MFLOAT >
617template <
class T1,
class MFLOAT >
622template <
class T1,
class MFLOAT >
630template <
class T1,
class MFLOAT >
635template <
class T1,
class MFLOAT >
640template <
class T1,
class MFLOAT >
Field< T, 1U, Cartesian< 1U, MFLOAT >, Cell > & Div(Field< Vektor< T, 1U >, 1U, Cartesian< 1U, MFLOAT >, Vert > &x, Field< T, 1U, Cartesian< 1U, MFLOAT >, Cell > &r)
std::ostream & operator<<(std::ostream &, const Cartesian< Dim, MFLOAT > &)
Field< Vektor< T, 1U >, 1U, Cartesian< 1U, MFLOAT >, Cell > & Grad(Field< T, 1U, Cartesian< 1U, MFLOAT >, Vert > &x, Field< Vektor< T, 1U >, 1U, Cartesian< 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)
Vektor< MFLOAT, Dim > MeshVektor_t
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getDeltaVertexField(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
void get_meshSpacing(unsigned d, MFLOAT *spacings) const
MFLOAT getCellRangeVolume(const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & getVertexPositionField(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > &) const
Vektor< MFLOAT, Dim > Dvc[1<< Dim]
NDIndex< Dim > getCellContaining(const Vektor< MFLOAT, Dim > &x) const
NDIndex< Dim > getVertexBelow(const Vektor< MFLOAT, Dim > &) const
BareField< Vektor< MFLOAT, Dim >, Dim > * CellSpacings
Vektor< MFLOAT, Dim > getSurfaceNormal(const NDIndex< Dim > &, unsigned) const
Vektor< MFLOAT, Dim > origin
void set_meshSpacing(MFLOAT **const del)
void getSurfaceNormalFields(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > **) const
Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > & getCellVolumeField(Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, Dim > getDeltaCell(const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getCellPositionField(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
FieldLayout< Dim > * FlCell
MFLOAT getCellVolume(const NDIndex< Dim > &) const
Vektor< MFLOAT, Dim > getVertexPosition(const NDIndex< Dim > &) const
Vektor< MFLOAT, Dim > getCellPosition(const NDIndex< Dim > &) const
void storeSpacingFields()
void set_MeshBC(unsigned face, MeshBC_E meshBCType)
FieldLayout< Dim > * FlVert
void set_origin(const Vektor< MFLOAT, Dim > &o)
MeshBC_E * get_MeshBC() const
NDIndex< Dim > getNearestVertex(const Vektor< MFLOAT, Dim > &) const
Vektor< MFLOAT, Dim > * getSurfaceNormals(const NDIndex< Dim > &) const
std::map< int, MFLOAT > meshPosition[Dim]
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & getDeltaCellField(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > &) const
Vektor< MFLOAT, Dim > getDeltaVertex(const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getSurfaceNormalField(Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &, unsigned) const
void updateMeshSpacingGuards(int face)
BareField< Vektor< MFLOAT, Dim >, Dim > * VertSpacings
std::map< int, MFLOAT > meshSpacing[Dim]
void print(std::ostream &)
Vektor< MFLOAT, Dim > get_origin() const
void initialize(const NDIndex< Dim > &ndi)
MFLOAT getVertRangeVolume(const NDIndex< Dim > &) const