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

#include <UniformCartesian.h>

Inheritance diagram for UniformCartesian< Dim, MFLOAT >:
Collaboration diagram for UniformCartesian< 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

 UniformCartesian ()
 ~UniformCartesian ()
 UniformCartesian (const NDIndex< Dim > &ndi)
 UniformCartesian (const Index &I)
 UniformCartesian (const Index &I, const Index &J)
 UniformCartesian (const Index &I, const Index &J, const Index &K)
 UniformCartesian (const NDIndex< Dim > &ndi, MFLOAT *const delX)
 UniformCartesian (const Index &I, MFLOAT *const delX)
 UniformCartesian (const Index &I, const Index &J, MFLOAT *const delX)
 UniformCartesian (const Index &I, const Index &J, const Index &K, MFLOAT *const delX)
 UniformCartesian (const NDIndex< Dim > &ndi, MFLOAT *const delX, const Vektor< MFLOAT, Dim > &orig)
 UniformCartesian (const Index &I, MFLOAT *const delX, const Vektor< MFLOAT, Dim > &orig)
 UniformCartesian (const Index &I, const Index &J, MFLOAT *const delX, const Vektor< MFLOAT, Dim > &orig)
 UniformCartesian (const Index &I, const Index &J, const Index &K, MFLOAT *const delX, const Vektor< MFLOAT, Dim > &orig)
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 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
MFLOAT get_meshSpacing (unsigned d) const
MFLOAT get_volume () const
void set_origin (const Vektor< MFLOAT, Dim > &o)
void set_meshSpacing (MFLOAT *const del)
void print (std::ostream &)
void print (Inform &)
MFLOAT getCellVolume (const NDIndex< Dim > &) const
Field< MFLOAT, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getCellVolumeField (Field< MFLOAT, Dim, UniformCartesian< 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, UniformCartesian< Dim, MFLOAT >, Vert > & getVertexPositionField (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > &) const
Vektor< MFLOAT, DimgetCellPosition (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getCellPositionField (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, DimgetDeltaVertex (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getDeltaVertexField (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > &) const
Vektor< MFLOAT, DimgetDeltaCell (const NDIndex< Dim > &) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > & getDeltaCellField (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Vert > &) const
Vektor< MFLOAT, Dim > * getSurfaceNormals (const NDIndex< Dim > &) const
void getSurfaceNormalFields (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > **) const
Vektor< MFLOAT, DimgetSurfaceNormal (const NDIndex< Dim > &, unsigned) const
Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< Dim, MFLOAT >, Cell > & getSurfaceNormalField (Field< Vektor< MFLOAT, Dim >, Dim, UniformCartesian< 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 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

MFLOAT meshSpacing [Dim]
MFLOAT volume
Vektor< MFLOAT, Dimorigin
FieldLayout< Dim > * FlCell
FieldLayout< Dim > * FlVert
UserList_t userlist
ID_t userlistID

Detailed Description

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

Definition at line 33 of file UniformCartesian.h.

Member Typedef Documentation

◆ DefaultCentering

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

Definition at line 37 of file UniformCartesian.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 UniformCartesian< Dim, MFLOAT >::MeshValue_t

Definition at line 38 of file UniformCartesian.h.

◆ MeshVektor_t

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

Definition at line 39 of file UniformCartesian.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

◆ UniformCartesian() [1/13]

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

◆ ~UniformCartesian()

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

Definition at line 47 of file UniformCartesian.h.

◆ UniformCartesian() [2/13]

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

Definition at line 40 of file UniformCartesian.hpp.

References Dim, gridSizes, meshSpacing, origin, set_Dvc(), setup(), and volume.

Here is the call graph for this function:

◆ UniformCartesian() [3/13]

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

Definition at line 83 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ UniformCartesian() [4/13]

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

Definition at line 122 of file UniformCartesian.hpp.

References Dim, gridSizes, Index::length(), meshSpacing, PInsist, setup(), and Index::stride().

Here is the call graph for this function:

◆ UniformCartesian() [5/13]

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

Definition at line 166 of file UniformCartesian.hpp.

◆ UniformCartesian() [6/13]

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

Definition at line 54 of file UniformCartesian.hpp.

References Dim, gridSizes, origin, set_meshSpacing(), and setup().

Here is the call graph for this function:

◆ UniformCartesian() [7/13]

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

Definition at line 97 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ UniformCartesian() [8/13]

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

Definition at line 139 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ UniformCartesian() [9/13]

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

Definition at line 186 of file UniformCartesian.hpp.

◆ UniformCartesian() [10/13]

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

Definition at line 66 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ UniformCartesian() [11/13]

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

Definition at line 109 of file UniformCartesian.hpp.

◆ UniformCartesian() [12/13]

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

Definition at line 152 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ UniformCartesian() [13/13]

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

Definition at line 202 of file UniformCartesian.hpp.

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_meshSpacing()

template<unsigned Dim, class MFLOAT>
MFLOAT UniformCartesian< Dim, MFLOAT >::get_meshSpacing ( unsigned d) const

Definition at line 460 of file UniformCartesian.hpp.

References Dim, meshSpacing, and PAssert_LT.

◆ get_origin()

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

Definition at line 419 of file UniformCartesian.hpp.

References origin.

◆ get_volume()

template<unsigned Dim, class MFLOAT>
MFLOAT UniformCartesian< Dim, MFLOAT >::get_volume ( ) const

Definition at line 470 of file UniformCartesian.hpp.

References volume.

◆ getCellContaining()

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

Definition at line 197 of file UniformCartesian.h.

◆ getCellPosition()

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

Definition at line 1064 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ getCellPositionField()

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

Definition at line 1082 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ getCellRangeVolume()

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

Definition at line 961 of file UniformCartesian.hpp.

References abs(), Dim, getVertexPosition(), and volume.

Here is the call graph for this function:

◆ getCellVolume()

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

Definition at line 914 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ getCellVolumeField()

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

Definition at line 927 of file UniformCartesian.hpp.

References Dim, UniformCartesian(), and volume.

Here is the call graph for this function:

◆ getDeltaCell()

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

Definition at line 1131 of file UniformCartesian.hpp.

References Dim, and meshSpacing.

◆ getDeltaCellField()

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

Definition at line 1144 of file UniformCartesian.hpp.

References Dim, meshSpacing, and UniformCartesian().

Here is the call graph for this function:

◆ getDeltaVertex()

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

Definition at line 1104 of file UniformCartesian.hpp.

References Dim, and meshSpacing.

◆ getDeltaVertexField()

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

Definition at line 1117 of file UniformCartesian.hpp.

References Dim, meshSpacing, and UniformCartesian().

Here is the call graph for this function:

◆ getNearestVertex()

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

Definition at line 986 of file UniformCartesian.hpp.

References Dim, meshSpacing, and origin.

◆ 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 > UniformCartesian< Dim, MFLOAT >::getSurfaceNormal ( const NDIndex< Dim > & ,
unsigned face ) const

Definition at line 1201 of file UniformCartesian.hpp.

References Dim.

◆ getSurfaceNormalField()

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

Definition at line 1232 of file UniformCartesian.hpp.

References Dim, and UniformCartesian().

Here is the call graph for this function:

◆ getSurfaceNormalFields()

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

Definition at line 1175 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ getSurfaceNormals()

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

Definition at line 1157 of file UniformCartesian.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 > UniformCartesian< Dim, MFLOAT >::getVertexBelow ( const Vektor< MFLOAT, Dim > & x) const

Definition at line 1005 of file UniformCartesian.hpp.

References Dim, meshSpacing, and origin.

Referenced by UniformCartesian< 3, double >::getCellContaining().

◆ getVertexPosition()

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

Definition at line 1024 of file UniformCartesian.hpp.

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

Referenced by getCellRangeVolume(), and getVertRangeVolume().

Here is the call graph for this function:

◆ getVertexPositionField()

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

Definition at line 1042 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ getVertRangeVolume()

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

Definition at line 937 of file UniformCartesian.hpp.

References abs(), Dim, getVertexPosition(), and volume.

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/12]

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

Definition at line 266 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [2/12]

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

Definition at line 308 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [3/12]

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

Definition at line 355 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [4/12]

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

Definition at line 376 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [5/12]

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

Definition at line 393 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [6/12]

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

Definition at line 326 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [7/12]

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

Definition at line 340 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [8/12]

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

Definition at line 281 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [9/12]

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

Definition at line 294 of file UniformCartesian.hpp.

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

Here is the call graph for this function:

◆ initialize() [10/12]

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

Definition at line 220 of file UniformCartesian.hpp.

◆ initialize() [11/12]

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

Definition at line 235 of file UniformCartesian.hpp.

◆ initialize() [12/12]

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

Definition at line 248 of file UniformCartesian.hpp.

References Dim, gridSizes, 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() [1/2]

template<unsigned Dim, class MFLOAT>
void UniformCartesian< Dim, MFLOAT >::print ( Inform & out)

Definition at line 891 of file UniformCartesian.hpp.

References Dim, Dvc, gridSizes, meshSpacing, origin, and volume.

◆ print() [2/2]

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

Definition at line 882 of file UniformCartesian.hpp.

References print().

Referenced by operator<<(), operator<<(), and print().

Here is the call graph for this function:

◆ set_Dvc()

template<unsigned Dim, class MFLOAT>
void UniformCartesian< Dim, MFLOAT >::set_Dvc ( )
private

◆ set_meshSpacing()

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

Definition at line 427 of file UniformCartesian.hpp.

References Dim, hasSpacingFields, meshSpacing, Mesh< Dim >::notifyOfChange(), set_Dvc(), storeSpacingFields(), and volume.

Referenced by initialize(), initialize(), initialize(), initialize(), initialize(), initialize(), initialize(), PartBunch::resizeMesh(), UniformCartesian(), UniformCartesian(), UniformCartesian(), UniformCartesian(), UniformCartesian(), and PartBunch::updateFields().

Here is the call graph for this function:

◆ set_origin()

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

Definition at line 411 of file UniformCartesian.hpp.

References Mesh< Dim >::notifyOfChange(), and origin.

Referenced by initialize(), initialize(), initialize(), initialize(), PartBunch::resizeMesh(), UniformCartesian(), UniformCartesian(), and PartBunch::updateFields().

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 UniformCartesian< Dim, MFLOAT >::storeSpacingFields ( )

Definition at line 501 of file UniformCartesian.hpp.

References Dim, PARALLEL, and storeSpacingFields().

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

Here is the call graph for this function:

◆ storeSpacingFields() [2/9]

◆ storeSpacingFields() [3/9]

template<unsigned Dim, class MFLOAT>
void UniformCartesian< Dim, MFLOAT >::storeSpacingFields ( e_dim_tag * p,
unsigned * vnodesPerDirection,
bool recurse = false,
int vnodes = -1 )

◆ storeSpacingFields() [4/9]

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

Definition at line 530 of file UniformCartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [5/9]

template<unsigned Dim, class MFLOAT>
void UniformCartesian< 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 715 of file UniformCartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [6/9]

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

Definition at line 520 of file UniformCartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [7/9]

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

Definition at line 701 of file UniformCartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [8/9]

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

Definition at line 511 of file UniformCartesian.hpp.

References storeSpacingFields().

Here is the call graph for this function:

◆ storeSpacingFields() [9/9]

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

Definition at line 688 of file UniformCartesian.hpp.

References Dim, and storeSpacingFields().

Here is the call graph for this function:

Member Data Documentation

◆ CellSpacings

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

Definition at line 122 of file UniformCartesian.h.

Referenced by setup(), storeSpacingFields(), and storeSpacingFields().

◆ Dvc

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

Definition at line 119 of file UniformCartesian.h.

Referenced by print(), and set_Dvc().

◆ FlCell

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

Definition at line 106 of file UniformCartesian.h.

Referenced by setup(), storeSpacingFields(), and storeSpacingFields().

◆ FlVert

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

Definition at line 107 of file UniformCartesian.h.

Referenced by setup(), storeSpacingFields(), and storeSpacingFields().

◆ gridSizes

◆ hasSpacingFields

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

Definition at line 120 of file UniformCartesian.h.

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

◆ 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().

◆ 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>* UniformCartesian< Dim, MFLOAT >::VertSpacings

Definition at line 121 of file UniformCartesian.h.

Referenced by setup(), storeSpacingFields(), and storeSpacingFields().

◆ volume

template<unsigned Dim, class MFLOAT = double>
MFLOAT UniformCartesian< Dim, MFLOAT >::volume
private

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