OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
NDIndex< Dim > Class Template Reference

#include <NDIndex.h>

Inheritance diagram for NDIndex< Dim >:
Collaboration diagram for NDIndex< Dim >:

Public Member Functions

 NDIndex ()
 NDIndex (const Index *idx)
 NDIndex (const Index &)
 NDIndex (const Index &, const Index &)
 NDIndex (const Index &, const Index &, const Index &)
 NDIndex (const Index &, const Index &, const Index &, const Index &)
 NDIndex (const Index &, const Index &, const Index &, const Index &, const Index &)
 NDIndex (const Index &, const Index &, const Index &, const Index &, const Index &, const Index &)
 NDIndex (const NDIndex< Dim-1 > &, const Index &)
const Indexoperator[] (unsigned d) const
Indexoperator[] (unsigned d)
unsigned size () const
bool empty () const
NDIndex< Dimintersect (const NDIndex< Dim > &) const
template<unsigned D>
NDIndex< DimplugBase (const NDIndex< D > &i) const
bool touches (const NDIndex< Dim > &) const
bool contains (const NDIndex< Dim > &a) const
bool containsAllPoints (const NDIndex< Dim > &b) const
bool split (NDIndex< Dim > &l, NDIndex< Dim > &r, unsigned d, double a) const
bool split (NDIndex< Dim > &l, NDIndex< Dim > &r, unsigned d) const
bool split (NDIndex< Dim > &l, NDIndex< Dim > &r) const
MessageputMessage (Message &m) const
MessagegetMessage (Message &m)
 NDIndex (const NDIndex< 1 > &ndi, const Index &i)
 NDIndex (const NDIndex< 2 > &ndi, const Index &i)
 NDIndex (const NDIndex< 3 > &ndi, const Index &i)
 NDIndex (const NDIndex< 4 > &ndi, const Index &i)
 NDIndex (const NDIndex< 5 > &ndi, const Index &i)

Private Attributes

Index p [Dim==0?1:Dim]

Detailed Description

template<unsigned Dim>
class NDIndex< Dim >

Definition at line 73 of file NDIndex.h.

Constructor & Destructor Documentation

◆ NDIndex() [1/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( )
inline

Definition at line 78 of file NDIndex.h.

Referenced by contains(), containsAllPoints(), intersect(), NDIndex(), plugBase(), split(), split(), split(), and touches().

◆ NDIndex() [2/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index * idx)
inline

Definition at line 22 of file NDIndexInlines.h.

References Dim, and p.

◆ NDIndex() [3/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0)
inline

Definition at line 169 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [4/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0,
const Index & i1 )
inline

Definition at line 177 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [5/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0,
const Index & i1,
const Index & i2 )
inline

Definition at line 186 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [6/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0,
const Index & i1,
const Index & i2,
const Index & i3 )
inline

Definition at line 196 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [7/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0,
const Index & i1,
const Index & i2,
const Index & i3,
const Index & i4 )
inline

Definition at line 208 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [8/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const Index & i0,
const Index & i1,
const Index & i2,
const Index & i3,
const Index & i4,
const Index & i5 )
inline

Definition at line 221 of file NDIndexInlines.h.

References Dim, p, and PInsist.

◆ NDIndex() [9/14]

template<unsigned Dim>
NDIndex< Dim >::NDIndex ( const NDIndex< Dim-1 > & ,
const Index &  )

References NDIndex().

Here is the call graph for this function:

◆ NDIndex() [10/14]

NDIndex< 2 >::NDIndex ( const NDIndex< 1 > & ndi,
const Index & i )
inline

Definition at line 234 of file NDIndexInlines.h.

◆ NDIndex() [11/14]

NDIndex< 3 >::NDIndex ( const NDIndex< 2 > & ndi,
const Index & i )
inline

Definition at line 240 of file NDIndexInlines.h.

◆ NDIndex() [12/14]

NDIndex< 4 >::NDIndex ( const NDIndex< 3 > & ndi,
const Index & i )
inline

Definition at line 247 of file NDIndexInlines.h.

◆ NDIndex() [13/14]

NDIndex< 5 >::NDIndex ( const NDIndex< 4 > & ndi,
const Index & i )
inline

Definition at line 255 of file NDIndexInlines.h.

◆ NDIndex() [14/14]

NDIndex< 6 >::NDIndex ( const NDIndex< 5 > & ndi,
const Index & i )
inline

Definition at line 264 of file NDIndexInlines.h.

Member Function Documentation

◆ contains()

template<unsigned Dim>
bool NDIndex< Dim >::contains ( const NDIndex< Dim > & a) const
inline

◆ containsAllPoints()

template<unsigned Dim>
bool NDIndex< Dim >::containsAllPoints ( const NDIndex< Dim > & b) const
inline

Definition at line 104 of file NDIndexInlines.h.

References a, and NDIndex().

Referenced by assign(), assign(), IndexedLocalAssign(), IndexedReceive(), and TryCompressLHS().

Here is the call graph for this function:

◆ empty()

template<unsigned Dim>
bool NDIndex< Dim >::empty ( ) const
inline

◆ getMessage()

template<unsigned Dim>
Message & NDIndex< Dim >::getMessage ( Message & m)
inline

Definition at line 138 of file NDIndex.h.

References Dim, getMessage(), and p.

Referenced by BareField< T, Dim >::accumGuardCells(), assign(), FieldLayout< Dim >::FieldLayout(), FieldDataSource< T, Dim, M, C >::gather_data(), getMessage(), IndexedReceive(), FieldDebugPrint< T, Dim >::print(), FieldPrint< T, Dim >::print(), DiscField< Dim >::read(), and DiscField< Dim >::write().

Here is the call graph for this function:

◆ intersect()

template<unsigned Dim>
NDIndex< Dim > NDIndex< Dim >::intersect ( const NDIndex< Dim > & i) const
inline

◆ operator[]() [1/2]

template<unsigned Dim>
Index & NDIndex< Dim >::operator[] ( unsigned d)
inline

Definition at line 101 of file NDIndex.h.

References p.

◆ operator[]() [2/2]

template<unsigned Dim>
const Index & NDIndex< Dim >::operator[] ( unsigned d) const
inline

Definition at line 97 of file NDIndex.h.

References p.

◆ plugBase()

◆ putMessage()

template<unsigned Dim>
Message & NDIndex< Dim >::putMessage ( Message & m) const
inline

Definition at line 130 of file NDIndex.h.

References Dim, p, and putMessage().

Referenced by assign(), FieldDataSource< T, Dim, M, C >::gather_data(), IndexedSend(), BareField< Vektor< T, Dim >, Dim >::notifyUserOfDelete(), FieldDebugPrint< T, Dim >::print(), FieldPrint< T, Dim >::print(), putMessage(), DiscField< Dim >::read(), and DiscField< Dim >::write().

Here is the call graph for this function:

◆ size()

◆ split() [1/3]

template<unsigned Dim>
bool NDIndex< Dim >::split ( NDIndex< Dim > & l,
NDIndex< Dim > & r ) const
inline

Definition at line 153 of file NDIndexInlines.h.

References Dim, NDIndex(), p, and split().

Here is the call graph for this function:

◆ split() [2/3]

template<unsigned Dim>
bool NDIndex< Dim >::split ( NDIndex< Dim > & l,
NDIndex< Dim > & r,
unsigned d ) const
inline

Definition at line 140 of file NDIndexInlines.h.

References NDIndex(), and p.

Here is the call graph for this function:

◆ split() [3/3]

template<unsigned Dim>
bool NDIndex< Dim >::split ( NDIndex< Dim > & l,
NDIndex< Dim > & r,
unsigned d,
double a ) const
inline

Definition at line 128 of file NDIndexInlines.h.

References a, NDIndex(), and p.

Referenced by FieldLayout< Dim >::setup(), and split().

Here is the call graph for this function:

◆ touches()

template<unsigned Dim>
bool NDIndex< Dim >::touches ( const NDIndex< Dim > & a) const
inline

Definition at line 80 of file NDIndexInlines.h.

References a, Dim, NDIndex(), p, and touches().

Referenced by BareField< T, Dim >::accumGuardCells(), AssignTouches< D1, D1 >::apply(), PatchBC< T, D, M, C >::apply(), assign(), CalcIndexedReceive(), ComponentFunctionFaceBCApply(), ComponentFunctionFaceBCApply(), ComponentFunctionFaceBCApply(), ComponentFunctionFaceBCApply(), ComponentLinearExtrapolateFaceBCApply(), DiscField< Dim >::compute_expected(), DiscField< Dim >::distribute_offsets(), ExtrapolateAndZeroFaceBCApply(), ExtrapolateAndZeroFaceBCApply(), ExtrapolateAndZeroFaceBCApply(), ExtrapolateAndZeroFaceBCApply(), ExtrapolateFaceBCApply(), ExtrapolateFaceBCApply(), ExtrapolateFaceBCApply(), ExtrapolateFaceBCApply(), FunctionFaceBCApply(), FunctionFaceBCApply(), FunctionFaceBCApply(), FunctionFaceBCApply(), BareField< T, Dim >::getsingle(), IndexedLocalAssign(), IndexedSend(), InterpolationFaceBCApply(), LinearExtrapolateFaceBCApply(), PeriodicFaceBCApply(), PeriodicFaceBCApply(), PeriodicFaceBCApply(), PeriodicFaceBCApply(), FieldDebugPrint< T, Dim >::print(), FieldPrint< T, Dim >::print(), DiscField< Dim >::read(), Cartesian< Dim, MFLOAT >::storeSpacingFields(), Cartesian< Dim, MFLOAT >::storeSpacingFields(), UniformCartesian< Dim, MFLOAT >::storeSpacingFields(), UniformCartesian< Dim, MFLOAT >::storeSpacingFields(), and touches().

Here is the call graph for this function:

Member Data Documentation

◆ p


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