OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
Cartesian< Dim, MFLOAT > Class Template Reference

#include <Cartesian.h>

Inheritance diagram for Cartesian< Dim, MFLOAT >:
Collaboration diagram for Cartesian< Dim, MFLOAT >:

Public Types

typedef Cell DefaultCentering
typedef MFLOAT MeshValue_t
typedef Vektor< MFLOAT, DimMeshVektor_t
enum  { Dimension = Dim }
typedef UserList::ID_t ID_t
typedef iterator_user iterator_if
typedef size_type_user size_type_if

Public Member Functions

 Cartesian ()
 ~Cartesian ()
 Cartesian (const NDIndex< Dim > &ndi)
 Cartesian (const Index &I)
 Cartesian (const Index &I, const Index &J)
 Cartesian (const Index &I, const Index &J, const Index &K)
 Cartesian (const NDIndex< Dim > &ndi, MFLOAT **const delX)
 Cartesian (const Index &I, MFLOAT **const delX)
 Cartesian (const Index &I, const Index &J, MFLOAT **const delX)
 Cartesian (const Index &I, const Index &J, const Index &K, MFLOAT **const delX)
 Cartesian (const NDIndex< Dim > &ndi, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
 Cartesian (const Index &I, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
 Cartesian (const Index &I, const Index &J, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
 Cartesian (const Index &I, const Index &J, const Index &K, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
 Cartesian (const NDIndex< Dim > &ndi, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
 Cartesian (const Index &I, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
 Cartesian (const Index &I, const Index &J, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
 Cartesian (const Index &I, const Index &J, const Index &K, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
void initialize (const NDIndex< Dim > &ndi)
void initialize (const Index &I)
void initialize (const Index &I, const Index &J)
void initialize (const Index &I, const Index &J, const Index &K)
void initialize (const NDIndex< Dim > &ndi, MFLOAT **const delX)
void initialize (const Index &I, MFLOAT **const delX)
void initialize (const Index &I, const Index &J, MFLOAT **const delX)
void initialize (const Index &I, const Index &J, const Index &K, MFLOAT **const delX)
void initialize (const NDIndex< Dim > &ndi, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
void initialize (const Index &I, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
void initialize (const Index &I, const Index &J, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
void initialize (const Index &I, const Index &J, const Index &K, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig)
void initialize (const NDIndex< Dim > &ndi, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
void initialize (const Index &I, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
void initialize (const Index &I, const Index &J, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
void initialize (const Index &I, const Index &J, const Index &K, MFLOAT **const delX, const Vektor< MFLOAT, Dim > &orig, MeshBC_E *const mbc)
void storeSpacingFields ()
void storeSpacingFields (e_dim_tag p1, int vnodes=-1)
void storeSpacingFields (e_dim_tag p1, e_dim_tag p2, int vnodes=-1)
void storeSpacingFields (e_dim_tag p1, e_dim_tag p2, e_dim_tag p3, int vnodes=-1)
void storeSpacingFields (e_dim_tag *p, int vnodes=-1)
void storeSpacingFields (e_dim_tag p1, unsigned vnodes1, bool recurse=false, int vnodes=-1)
void storeSpacingFields (e_dim_tag p1, e_dim_tag p2, unsigned vnodes1, unsigned vnodes2, bool recurse=false, int vnodes=-1)
void storeSpacingFields (e_dim_tag p1, e_dim_tag p2, e_dim_tag p3, unsigned vnodes1, unsigned vnodes2, unsigned vnodes3, bool recurse=false, int vnodes=-1)
void storeSpacingFields (e_dim_tag *p, unsigned *vnodesPerDirection, bool recurse=false, int vnodes=-1)
Vektor< MFLOAT, Dimget_origin () const
void get_meshSpacing (unsigned d, MFLOAT *spacings) const
MeshBC_E get_MeshBC (unsigned face) const
MeshBC_Eget_MeshBC () const
void set_origin (const Vektor< MFLOAT, Dim > &o)
void set_meshSpacing (MFLOAT **const del)
void set_MeshBC (unsigned face, MeshBC_E meshBCType)
void set_MeshBC (MeshBC_E *meshBCTypes)
void print (std::ostream &)
MFLOAT getCellVolume (const NDIndex< Dim > &) const
Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > & getCellVolumeField (Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
MFLOAT getVertRangeVolume (const NDIndex< Dim > &) const
MFLOAT getCellRangeVolume (const NDIndex< Dim > &) const
NDIndex< DimgetNearestVertex (const Vektor< MFLOAT, Dim > &) const
NDIndex< DimgetVertexBelow (const Vektor< MFLOAT, Dim > &) const
NDIndex< DimgetCellContaining (const Vektor< MFLOAT, Dim > &x) const
Vektor< MFLOAT, DimgetVertexPosition (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, DimgetCellPosition (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getCellPositionField (Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, DimgetDeltaVertex (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getDeltaVertexField (Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, DimgetDeltaCell (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & getDeltaCellField (Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > &) const
Vektor< MFLOAT, Dim > * getSurfaceNormals (const NDIndex< Dim > &) const
void getSurfaceNormalFields (Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > **) const
Vektor< MFLOAT, DimgetSurfaceNormal (const NDIndex< Dim > &, unsigned) const
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & getSurfaceNormalField (Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > &, unsigned) const
ID_t get_Id () const
void checkin (FieldLayoutUser &f)
void checkout (FieldLayoutUser &f)
size_type_if size_if () const
iterator_if begin_if ()
iterator_if end_if ()
void notifyOfChange ()

Public Attributes

unsigned gridSizes [Dim]
Vektor< MFLOAT, DimDvc [1<< Dim]
bool hasSpacingFields
BareField< Vektor< MFLOAT, Dim >, Dim > * VertSpacings
BareField< Vektor< MFLOAT, Dim >, Dim > * CellSpacings

Static Public Attributes

static std::string MeshBC_E_Names [3]

Private Types

typedef User::ID_t Key
typedef vmap< Key, User * > UserList_t
typedef UserList_t::iterator iterator_user
typedef UserList_t::size_type size_type_user

Private Member Functions

void updateMeshSpacingGuards (int face)
void setup ()
void set_Dvc ()
size_type_user getNumUsers () const
ID_t getUserListID () const
bool haveUser (Key key) const
UsergetUser (Key key)
iterator_user begin_user ()
iterator_user end_user ()
virtual ID_t checkinUser (User &user)
virtual void checkoutUser (Key key, bool informuser=false)
virtual void checkoutUser (const User &user, bool informuser=false)

Private Attributes

std::map< int, MFLOAT > meshSpacing [Dim]
std::map< int, MFLOAT > meshPosition [Dim]
Vektor< MFLOAT, Dimorigin
MeshBC_E MeshBC [2 *Dim]
FieldLayout< Dim > * FlCell
FieldLayout< Dim > * FlVert
UserList_t userlist
ID_t userlistID

Detailed Description

template<unsigned Dim, class MFLOAT = double>
class Cartesian< Dim, MFLOAT >

Definition at line 33 of file Cartesian.h.

Member Typedef Documentation

◆ DefaultCentering

template<unsigned Dim, class MFLOAT = double>
typedef Cell Cartesian< Dim, MFLOAT >::DefaultCentering

Definition at line 37 of file Cartesian.h.

◆ ID_t

template<unsigned Dim>
typedef UserList::ID_t Mesh< Dim >::ID_t
inherited

Definition at line 39 of file ippl/src/Meshes/Mesh.h.

◆ iterator_if

template<unsigned Dim>
typedef iterator_user Mesh< Dim >::iterator_if
inherited

Definition at line 40 of file ippl/src/Meshes/Mesh.h.

◆ iterator_user

Definition at line 43 of file UserList.h.

◆ Key

typedef User::ID_t UserList::Key
inherited

Definition at line 41 of file UserList.h.

◆ MeshValue_t

template<unsigned Dim, class MFLOAT = double>
typedef MFLOAT Cartesian< Dim, MFLOAT >::MeshValue_t

Definition at line 38 of file Cartesian.h.

◆ MeshVektor_t

template<unsigned Dim, class MFLOAT = double>
typedef Vektor<MFLOAT,Dim> Cartesian< Dim, MFLOAT >::MeshVektor_t

Definition at line 39 of file Cartesian.h.

◆ size_type_if

template<unsigned Dim>
typedef size_type_user Mesh< Dim >::size_type_if
inherited

Definition at line 41 of file ippl/src/Meshes/Mesh.h.

◆ size_type_user

Definition at line 45 of file UserList.h.

◆ UserList_t

typedef vmap<Key, User *> UserList::UserList_t
inherited

Definition at line 42 of file UserList.h.

Member Enumeration Documentation

◆ anonymous enum

template<unsigned Dim>
anonymous enum
inherited
Enumerator
Dimension 

Definition at line 44 of file ippl/src/Meshes/Mesh.h.

Constructor & Destructor Documentation

◆ Cartesian() [1/17]

template<unsigned Dim, class MFLOAT = double>
Cartesian< Dim, MFLOAT >::Cartesian ( )
inline

◆ ~Cartesian()

template<unsigned Dim, class MFLOAT = double>
Cartesian< Dim, MFLOAT >::~Cartesian ( )
inline

Definition at line 47 of file Cartesian.h.

References CellSpacings, FlCell, FlVert, hasSpacingFields, and VertSpacings.

◆ Cartesian() [2/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const NDIndex< Dim > & ndi)

Definition at line 55 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, meshPosition, meshSpacing, origin, Reflective, set_Dvc(), and setup().

Here is the call graph for this function:

◆ Cartesian() [3/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I)

Definition at line 131 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ Cartesian() [4/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J )

Definition at line 201 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ Cartesian() [5/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
const Index & K )

Definition at line 282 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ Cartesian() [6/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const NDIndex< Dim > & ndi,
MFLOAT **const delX )

Definition at line 77 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, origin, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ Cartesian() [7/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
MFLOAT **const delX )

Definition at line 153 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ Cartesian() [8/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
MFLOAT **const delX )

Definition at line 230 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ Cartesian() [9/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX )

Definition at line 320 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ Cartesian() [10/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const NDIndex< Dim > & ndi,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 94 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [11/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 169 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [12/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 248 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [13/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 341 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [14/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const NDIndex< Dim > & ndi,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 112 of file Cartesian.hpp.

References Dim, gridSizes, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [15/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 186 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [16/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 266 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ Cartesian() [17/17]

template<unsigned Dim, class MFLOAT>
Cartesian< Dim, MFLOAT >::Cartesian ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 360 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

Member Function Documentation

◆ begin_if()

template<unsigned Dim>
iterator_if Mesh< Dim >::begin_if ( )
inlineinherited

Definition at line 98 of file ippl/src/Meshes/Mesh.h.

References UserList::begin_user().

Referenced by notifyOfChange().

Here is the call graph for this function:

◆ begin_user()

UserList::iterator_user UserList::begin_user ( )
inherited

◆ checkin()

template<unsigned Dim>
void Mesh< Dim >::checkin ( FieldLayoutUser & f)
inlineinherited

Definition at line 89 of file ippl/src/Meshes/Mesh.h.

References UserList::checkinUser().

Here is the call graph for this function:

◆ checkinUser()

UserList::ID_t UserList::checkinUser ( User & user)
virtualinherited

Definition at line 109 of file UserList.cpp.

References User::get_Id(), haveUser(), userlist, and userlistID.

Referenced by FieldLayout< Dim >::checkin(), Mesh< Dim >::checkin(), and RegionLayout< T, Dim, Mesh >::checkin().

Here is the call graph for this function:

◆ checkout()

template<unsigned Dim>
void Mesh< Dim >::checkout ( FieldLayoutUser & f)
inlineinherited

Definition at line 94 of file ippl/src/Meshes/Mesh.h.

References UserList::checkoutUser().

Here is the call graph for this function:

◆ checkoutUser() [1/2]

void UserList::checkoutUser ( const User & user,
bool informuser = false )
virtualinherited

Definition at line 138 of file UserList.cpp.

References checkoutUser(), and User::get_Id().

Here is the call graph for this function:

◆ checkoutUser() [2/2]

void UserList::checkoutUser ( Key key,
bool informuser = false )
virtualinherited

Definition at line 124 of file UserList.cpp.

References end_user(), and userlist.

Referenced by FieldLayout< Dim >::checkout(), Mesh< Dim >::checkout(), RegionLayout< T, Dim, Mesh >::checkout(), and checkoutUser().

Here is the call graph for this function:

◆ end_if()

template<unsigned Dim>
iterator_if Mesh< Dim >::end_if ( )
inlineinherited

Definition at line 99 of file ippl/src/Meshes/Mesh.h.

References UserList::end_user().

Referenced by notifyOfChange().

Here is the call graph for this function:

◆ end_user()

◆ get_Id()

template<unsigned Dim>
ID_t Mesh< Dim >::get_Id ( ) const
inlineinherited

Definition at line 84 of file ippl/src/Meshes/Mesh.h.

References UserList::getUserListID().

Here is the call graph for this function:

◆ get_MeshBC() [1/2]

template<unsigned Dim, class MFLOAT>
MeshBC_E * Cartesian< Dim, MFLOAT >::get_MeshBC ( ) const

Definition at line 2168 of file Cartesian.hpp.

References Dim, and MeshBC.

◆ get_MeshBC() [2/2]

template<unsigned Dim, class MFLOAT>
MeshBC_E Cartesian< Dim, MFLOAT >::get_MeshBC ( unsigned face) const

Definition at line 2158 of file Cartesian.hpp.

References MeshBC.

◆ get_meshSpacing()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::get_meshSpacing ( unsigned d,
MFLOAT * spacings ) const

Definition at line 786 of file Cartesian.hpp.

References Dim, gridSizes, meshSpacing, and PAssert_LT.

◆ get_origin()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::get_origin ( ) const

Definition at line 739 of file Cartesian.hpp.

References origin.

◆ getCellContaining()

template<unsigned Dim, class MFLOAT = double>
NDIndex< Dim > Cartesian< Dim, MFLOAT >::getCellContaining ( const Vektor< MFLOAT, Dim > & x) const
inline

Definition at line 224 of file Cartesian.h.

References getVertexBelow().

Here is the call graph for this function:

◆ getCellPosition()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::getCellPosition ( const NDIndex< Dim > & ndi) const

Definition at line 1777 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Here is the call graph for this function:

◆ getCellPositionField()

template<unsigned Dim, class MFLOAT>
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & Cartesian< Dim, MFLOAT >::getCellPositionField ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & cellPositions) const

Definition at line 1801 of file Cartesian.hpp.

References BareField< T, Dim >::begin(), Cartesian(), Dim, LField< T, Dim >::end(), and meshPosition.

Here is the call graph for this function:

◆ getCellRangeVolume()

template<unsigned Dim, class MFLOAT>
MFLOAT Cartesian< Dim, MFLOAT >::getCellRangeVolume ( const NDIndex< Dim > & ndi) const

Definition at line 1572 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Here is the call graph for this function:

◆ getCellVolume()

template<unsigned Dim, class MFLOAT>
MFLOAT Cartesian< Dim, MFLOAT >::getCellVolume ( const NDIndex< Dim > & ndi) const

Definition at line 1502 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, and meshSpacing.

Here is the call graph for this function:

◆ getCellVolumeField()

template<unsigned Dim, class MFLOAT>
Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > & Cartesian< Dim, MFLOAT >::getCellVolumeField ( Field< MFLOAT, Dim, Cartesian< Dim, MFLOAT >, Cell > & volumes) const

Definition at line 1519 of file Cartesian.hpp.

References BareField< T, Dim >::begin(), Cartesian(), Dim, LField< T, Dim >::end(), and meshSpacing.

Here is the call graph for this function:

◆ getDeltaCell()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::getDeltaCell ( const NDIndex< Dim > & ndi) const

Definition at line 1881 of file Cartesian.hpp.

References a, Dim, endl(), ERRORMSG, gridSizes, and meshSpacing.

Here is the call graph for this function:

◆ getDeltaCellField()

template<unsigned Dim, class MFLOAT>
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & Cartesian< Dim, MFLOAT >::getDeltaCellField ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & cellSpacings) const

Definition at line 1916 of file Cartesian.hpp.

References BareField< T, Dim >::begin(), Cartesian(), Dim, LField< T, Dim >::end(), and meshSpacing.

Here is the call graph for this function:

◆ getDeltaVertex()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::getDeltaVertex ( const NDIndex< Dim > & ndi) const

Definition at line 1826 of file Cartesian.hpp.

References a, Dim, endl(), ERRORMSG, gridSizes, and meshSpacing.

Here is the call graph for this function:

◆ getDeltaVertexField()

template<unsigned Dim, class MFLOAT>
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & Cartesian< Dim, MFLOAT >::getDeltaVertexField ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & vertexSpacings) const

Definition at line 1860 of file Cartesian.hpp.

References BareField< T, Dim >::begin(), Cartesian(), Dim, LField< T, Dim >::end(), and meshSpacing.

Here is the call graph for this function:

◆ getNearestVertex()

template<unsigned Dim, class MFLOAT>
NDIndex< Dim > Cartesian< Dim, MFLOAT >::getNearestVertex ( const Vektor< MFLOAT, Dim > & x) const

Definition at line 1603 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Here is the call graph for this function:

◆ getNumUsers()

UserList::size_type_user UserList::getNumUsers ( ) const
inherited

Definition at line 47 of file UserList.cpp.

References userlist.

Referenced by FieldLayout< Dim >::read(), FieldLayout< 1U >::size_if(), and Mesh< Dim >::size_if().

◆ getSurfaceNormal()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::getSurfaceNormal ( const NDIndex< Dim > & ,
unsigned face ) const

Definition at line 1981 of file Cartesian.hpp.

References Dim.

◆ getSurfaceNormalField()

template<unsigned Dim, class MFLOAT>
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & Cartesian< Dim, MFLOAT >::getSurfaceNormalField ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > & surfaceNormalField,
unsigned face ) const

Definition at line 2012 of file Cartesian.hpp.

References Cartesian(), and Dim.

Here is the call graph for this function:

◆ getSurfaceNormalFields()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::getSurfaceNormalFields ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Cell > ** surfaceNormalsFields) const

Definition at line 1955 of file Cartesian.hpp.

References assign(), Cartesian(), and Dim.

Here is the call graph for this function:

◆ getSurfaceNormals()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > * Cartesian< Dim, MFLOAT >::getSurfaceNormals ( const NDIndex< Dim > & ) const

Definition at line 1937 of file Cartesian.hpp.

References Dim.

◆ getUser()

User & UserList::getUser ( Key key)
inherited

Definition at line 68 of file UserList.cpp.

◆ getUserListID()

◆ getVertexBelow()

template<unsigned Dim, class MFLOAT>
NDIndex< Dim > Cartesian< Dim, MFLOAT >::getVertexBelow ( const Vektor< MFLOAT, Dim > & x) const

Definition at line 1670 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Referenced by getCellContaining().

Here is the call graph for this function:

◆ getVertexPosition()

template<unsigned Dim, class MFLOAT>
Vektor< MFLOAT, Dim > Cartesian< Dim, MFLOAT >::getVertexPosition ( const NDIndex< Dim > & ndi) const

Definition at line 1731 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Here is the call graph for this function:

◆ getVertexPositionField()

template<unsigned Dim, class MFLOAT>
Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & Cartesian< Dim, MFLOAT >::getVertexPositionField ( Field< Vektor< MFLOAT, Dim >, Dim, Cartesian< Dim, MFLOAT >, Vert > & vertexPositions) const

Definition at line 1754 of file Cartesian.hpp.

References BareField< T, Dim >::begin(), Cartesian(), Dim, LField< T, Dim >::end(), and meshPosition.

Here is the call graph for this function:

◆ getVertRangeVolume()

template<unsigned Dim, class MFLOAT>
MFLOAT Cartesian< Dim, MFLOAT >::getVertRangeVolume ( const NDIndex< Dim > & ndi) const

Definition at line 1541 of file Cartesian.hpp.

References Dim, endl(), ERRORMSG, gridSizes, and meshPosition.

Here is the call graph for this function:

◆ haveUser()

bool UserList::haveUser ( Key key) const
inherited

Definition at line 61 of file UserList.cpp.

References userlist.

Referenced by checkinUser().

◆ initialize() [1/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I)

Definition at line 461 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ initialize() [2/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J )

Definition at line 535 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ initialize() [3/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
const Index & K )

Definition at line 620 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, meshPosition, meshSpacing, origin, PInsist, Reflective, set_Dvc(), setup(), and Index::stride().

Here is the call graph for this function:

◆ initialize() [4/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX )

Definition at line 659 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ initialize() [5/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 681 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [6/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
const Index & K,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 701 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [7/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
MFLOAT **const delX )

Definition at line 565 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ initialize() [8/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 584 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [9/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
const Index & J,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 603 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [10/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
MFLOAT **const delX )

Definition at line 484 of file Cartesian.hpp.

References Dim, Index::first(), gridSizes, Index::length(), MeshBC, origin, PInsist, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ initialize() [11/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 501 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), MeshBC, PInsist, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [12/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const Index & I,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 519 of file Cartesian.hpp.

References Dim, gridSizes, Index::length(), PInsist, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [13/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const NDIndex< Dim > & ndi)

Definition at line 381 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, meshPosition, meshSpacing, origin, Reflective, set_Dvc(), and setup().

Here is the call graph for this function:

◆ initialize() [14/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const NDIndex< Dim > & ndi,
MFLOAT **const delX )

Definition at line 404 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, origin, Reflective, set_Dvc(), set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ initialize() [15/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const NDIndex< Dim > & ndi,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig )

Definition at line 422 of file Cartesian.hpp.

References Dim, gridSizes, MeshBC, Reflective, set_Dvc(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ initialize() [16/16]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::initialize ( const NDIndex< Dim > & ndi,
MFLOAT **const delX,
const Vektor< MFLOAT, Dim > & orig,
MeshBC_E *const mbc )

Definition at line 441 of file Cartesian.hpp.

References Dim, gridSizes, set_Dvc(), set_MeshBC(), set_meshSpacing(), set_origin(), and setup().

Here is the call graph for this function:

◆ notifyOfChange()

template<unsigned int Dim>
void Mesh< Dim >::notifyOfChange ( )
inherited

Definition at line 51 of file Mesh.hpp.

References begin_if(), end_if(), and FieldLayoutUser::Repartition().

Referenced by Cartesian< Dim, MFLOAT >::set_meshSpacing(), UniformCartesian< Dim, MFLOAT >::set_meshSpacing(), Cartesian< Dim, MFLOAT >::set_origin(), and UniformCartesian< Dim, MFLOAT >::set_origin().

Here is the call graph for this function:

◆ print()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::print ( std::ostream & out)

Definition at line 1470 of file Cartesian.hpp.

References begin(), Dim, Dvc, gridSizes, MeshBC, Mesh< Dim >::MeshBC_E_Names, meshSpacing, and origin.

Referenced by operator<<().

Here is the call graph for this function:

◆ set_Dvc()

◆ set_MeshBC() [1/2]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::set_MeshBC ( MeshBC_E * meshBCTypes)

Definition at line 2061 of file Cartesian.hpp.

References Dim, hasSpacingFields, MeshBC, storeSpacingFields(), and updateMeshSpacingGuards().

Here is the call graph for this function:

◆ set_MeshBC() [2/2]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::set_MeshBC ( unsigned face,
MeshBC_E meshBCType )

Definition at line 2050 of file Cartesian.hpp.

References hasSpacingFields, MeshBC, storeSpacingFields(), and updateMeshSpacingGuards().

Referenced by Cartesian(), Cartesian(), Cartesian(), Cartesian(), initialize(), initialize(), initialize(), and initialize().

Here is the call graph for this function:

◆ set_meshSpacing()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::set_meshSpacing ( MFLOAT **const del)

◆ set_origin()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::set_origin ( const Vektor< MFLOAT, Dim > & o)

Definition at line 722 of file Cartesian.hpp.

References Dim, gridSizes, meshPosition, meshSpacing, Mesh< Dim >::notifyOfChange(), origin, and updateMeshSpacingGuards().

Referenced by Cartesian(), Cartesian(), Cartesian(), Cartesian(), Cartesian(), Cartesian(), Cartesian(), Cartesian(), initialize(), initialize(), initialize(), initialize(), initialize(), initialize(), initialize(), and initialize().

Here is the call graph for this function:

◆ setup()

◆ size_if()

template<unsigned Dim>
size_type_if Mesh< Dim >::size_if ( ) const
inlineinherited

Definition at line 97 of file ippl/src/Meshes/Mesh.h.

References UserList::getNumUsers().

Here is the call graph for this function:

◆ storeSpacingFields() [1/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( )

Definition at line 839 of file Cartesian.hpp.

References Dim, PARALLEL, and storeSpacingFields().

Referenced by set_MeshBC(), set_MeshBC(), set_meshSpacing(), storeSpacingFields(), storeSpacingFields(), storeSpacingFields(), storeSpacingFields(), storeSpacingFields(), storeSpacingFields(), and storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [2/9]

◆ storeSpacingFields() [3/9]

◆ storeSpacingFields() [4/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
e_dim_tag p2,
e_dim_tag p3,
int vnodes = -1 )

Definition at line 868 of file Cartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [5/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
e_dim_tag p2,
e_dim_tag p3,
unsigned vnodes1,
unsigned vnodes2,
unsigned vnodes3,
bool recurse = false,
int vnodes = -1 )

Definition at line 1178 of file Cartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [6/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
e_dim_tag p2,
int vnodes = -1 )

Definition at line 858 of file Cartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [7/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
e_dim_tag p2,
unsigned vnodes1,
unsigned vnodes2,
bool recurse = false,
int vnodes = -1 )

Definition at line 1164 of file Cartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [8/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
int vnodes = -1 )

Definition at line 849 of file Cartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [9/9]

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag p1,
unsigned vnodes1,
bool recurse = false,
int vnodes = -1 )

Definition at line 1151 of file Cartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

◆ updateMeshSpacingGuards()

template<unsigned Dim, class MFLOAT>
void Cartesian< Dim, MFLOAT >::updateMeshSpacingGuards ( int face)
private

Definition at line 2074 of file Cartesian.hpp.

References endl(), ERRORMSG, gridSizes, MeshBC, meshPosition, meshSpacing, NoBC, Periodic, and Reflective.

Referenced by set_MeshBC(), set_MeshBC(), set_meshSpacing(), and set_origin().

Here is the call graph for this function:

Member Data Documentation

◆ CellSpacings

template<unsigned Dim, class MFLOAT = double>
BareField<Vektor<MFLOAT,Dim>,Dim>* Cartesian< Dim, MFLOAT >::CellSpacings

Definition at line 145 of file Cartesian.h.

Referenced by storeSpacingFields(), storeSpacingFields(), and ~Cartesian().

◆ Dvc

template<unsigned Dim, class MFLOAT = double>
Vektor<MFLOAT,Dim> Cartesian< Dim, MFLOAT >::Dvc[1<< Dim]

Definition at line 142 of file Cartesian.h.

Referenced by print(), and set_Dvc().

◆ FlCell

template<unsigned Dim, class MFLOAT = double>
FieldLayout<Dim>* Cartesian< Dim, MFLOAT >::FlCell
private

Definition at line 127 of file Cartesian.h.

Referenced by storeSpacingFields(), storeSpacingFields(), and ~Cartesian().

◆ FlVert

template<unsigned Dim, class MFLOAT = double>
FieldLayout<Dim>* Cartesian< Dim, MFLOAT >::FlVert
private

Definition at line 128 of file Cartesian.h.

Referenced by storeSpacingFields(), storeSpacingFields(), and ~Cartesian().

◆ gridSizes

◆ hasSpacingFields

template<unsigned Dim, class MFLOAT = double>
bool Cartesian< Dim, MFLOAT >::hasSpacingFields

◆ MeshBC

◆ MeshBC_E_Names

template<unsigned Dim>
std::string Mesh< Dim >::MeshBC_E_Names[3]
staticinherited

Definition at line 47 of file ippl/src/Meshes/Mesh.h.

Referenced by Cartesian< Dim, MFLOAT >::print().

◆ meshPosition

◆ meshSpacing

◆ origin

◆ userlist

◆ userlistID

ID_t UserList::userlistID
privateinherited

Definition at line 103 of file UserList.h.

Referenced by checkinUser(), getUserListID(), and UserList().

◆ VertSpacings

template<unsigned Dim, class MFLOAT = double>
BareField<Vektor<MFLOAT,Dim>,Dim>* Cartesian< Dim, MFLOAT >::VertSpacings

Definition at line 144 of file Cartesian.h.

Referenced by storeSpacingFields(), storeSpacingFields(), and ~Cartesian().


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