OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Types | Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
BareField< T, Dim > Class Template Reference

#include <FFT.h>

Inheritance diagram for BareField< T, Dim >:
Inheritance graph
[legend]
Collaboration diagram for BareField< T, Dim >:
Collaboration graph
[legend]

Public Types

enum  { Dim_u = Dim }
 
enum  { IsExpr = 0 }
 
typedef T T_t
 
typedef FieldLayout< DimLayout_t
 
typedef LField< T, DimLField_t
 
typedef vmap< typename
Unique::type, my_auto_ptr
< LField< T, Dim > > > 
ac_id_larray
 
typedef ac_id_larray::iterator iterator_if
 
typedef
ac_id_larray::const_iterator 
const_iterator_if
 
typedef LField< T, Dim >::iterator LFI
 
typedef BareFieldIterator< T, Dimiterator
 
typedef iterator PETE_Expr_t
 
- Public Types inherited from User
typedef Unique::type ID_t
 
- Public Types inherited from PETE_Expr< BareField< T, Dim > >
typedef BareField< T, DimWrapped
 

Public Member Functions

 BareField ()
 
 BareField (const BareField< T, Dim > &)
 
 BareField (Layout_t &)
 
 BareField (Layout_t &, const GuardCellSizes< Dim > &)
 
 ~BareField ()
 
void initialize (Layout_t &)
 
void initialize (Layout_t &, const bool)
 
void initialize (Layout_t &, const GuardCellSizes< Dim > &)
 
iterator_if begin_if ()
 
iterator_if end_if ()
 
const_iterator_if begin_if () const
 
const_iterator_if end_if () const
 
ac_id_larray::size_type size_if () const
 
virtual void fillGuardCells (bool reallyFill=true) const
 
void setGuardCells (const T &) const
 
void accumGuardCells ()
 
bool isDirty () const
 
void setDirtyFlag ()
 
void clearDirtyFlag ()
 
void fillGuardCellsIfNotDirty () const
 
Layout_tgetLayout () const
 
IndexedBareField< T, Dim, 1 > operator[] (const Index &idx)
 
IndexedBareField< T, Dim, 1 > operator[] (int i)
 
IndexedBareField< T, Dim, Dimoperator[] (const NDIndex< Dim > &nidx)
 
SubBareField< T, Dim, SIndex
< Dim > > 
operator[] (const SIndex< Dim > &)
 
const GuardCellSizes< Dim > & getGC () const
 
const GuardCellSizes< Dim > & getGuardCellSizes () const
 
unsigned leftGuard (unsigned d) const
 
unsigned rightGuard (unsigned d) const
 
const IndexgetIndex (unsigned d) const
 
const NDIndex< Dim > & getDomain () const
 
const BareField< T, Dim > & operator= (T x)
 
const BareField< T, Dim > & operator= (const BareField< T, Dim > &x)
 
template<class X >
const BareField< T, Dim > & operator= (const BareField< X, Dim > &x)
 
template<class B >
const BareField< T, Dim > & operator= (const PETE_Expr< B > &x)
 
bool compressible () const
 
double CompressedFraction () const
 
void Compress () const
 
void Uncompress () const
 
void setCompression (bool compress)
 
virtual void Repartition (UserList *)
 
virtual void notifyUserOfDelete (UserList *)
 
iterator begin () const
 
iterator end () const
 
iterator beginLoc (const FieldLoc< Dim > &loc) const
 
void prepareForScalarCode (bool tryfill=true)
 
void finishScalarCode (bool modified=true)
 
TlocalElement (const NDIndex< Dim > &) const
 
void getsingle (const NDIndex< Dim > &, T &) const
 
void write (std::ostream &)
 
void write (char *) const
 
void writeb (char *) const
 
iterator MakeExpression () const
 
- Public Member Functions inherited from FieldLayoutUser
 FieldLayoutUser ()
 
virtual ~FieldLayoutUser ()
 
- Public Member Functions inherited from User
 User ()
 
virtual ~User ()
 
ID_t get_Id () const
 
- Public Member Functions inherited from PETE_Expr< BareField< T, Dim > >
BareField< T, Dim > & PETE_unwrap ()
 
const BareField< T, Dim > & PETE_unwrap () const
 

Protected Attributes

ac_id_larray Locals_ac
 
- Protected Attributes inherited from User
ID_t Id
 

Private Member Functions

void setup ()
 
void getsingle_bc (const NDIndex< Dim > &, T &) const
 

Private Attributes

Layout_tLayout
 
GuardCellSizes< DimGc
 
bool dirty_m
 
bool compressible_m
 
bool pinned
 

Friends

class BareFieldIterator< T, Dim >
 

Detailed Description

template<class T, unsigned Dim>
class BareField< T, Dim >

The FFT class performs complex-to-complex, real-to-complex, or sine transforms on IPPL Fields. FFT is templated on the type of transform to be performed, the dimensionality of the Field to transform, and the floating-point precision type of the Field (float or double).

Definition at line 30 of file FFT.h.

Member Typedef Documentation

template<class T, unsigned Dim>
typedef vmap< typename Unique::type, my_auto_ptr< LField<T,Dim> > > BareField< T, Dim >::ac_id_larray

Definition at line 90 of file BareField.h.

template<class T, unsigned Dim>
typedef ac_id_larray::const_iterator BareField< T, Dim >::const_iterator_if

Definition at line 92 of file BareField.h.

template<class T, unsigned Dim>
typedef BareFieldIterator<T,Dim> BareField< T, Dim >::iterator

Definition at line 96 of file BareField.h.

template<class T, unsigned Dim>
typedef ac_id_larray::iterator BareField< T, Dim >::iterator_if

Definition at line 91 of file BareField.h.

template<class T, unsigned Dim>
typedef FieldLayout<Dim> BareField< T, Dim >::Layout_t

Definition at line 60 of file BareField.h.

template<class T, unsigned Dim>
typedef LField<T,Dim>::iterator BareField< T, Dim >::LFI

Definition at line 93 of file BareField.h.

template<class T, unsigned Dim>
typedef LField<T,Dim> BareField< T, Dim >::LField_t

Definition at line 61 of file BareField.h.

template<class T, unsigned Dim>
typedef iterator BareField< T, Dim >::PETE_Expr_t

Definition at line 327 of file BareField.h.

template<class T, unsigned Dim>
typedef T BareField< T, Dim >::T_t

Definition at line 59 of file BareField.h.

Member Enumeration Documentation

template<class T, unsigned Dim>
anonymous enum
Enumerator
Dim_u 

Definition at line 62 of file BareField.h.

template<class T, unsigned Dim>
anonymous enum
Enumerator
IsExpr 

Definition at line 326 of file BareField.h.

Constructor & Destructor Documentation

template<class T , unsigned Dim>
BareField< T, Dim >::BareField ( )
inline

Definition at line 370 of file BareField.h.

template<class T, unsigned Dim>
BareField< T, Dim >::BareField ( const BareField< T, Dim > &  a)
template<class T, unsigned Dim>
BareField< T, Dim >::BareField ( Layout_t l)
inline

Definition at line 386 of file BareField.h.

References BareField< T, Dim >::setup().

Here is the call graph for this function:

template<class T, unsigned Dim>
BareField< T, Dim >::BareField ( Layout_t l,
const GuardCellSizes< Dim > &  g 
)
inline

Definition at line 403 of file BareField.h.

References BareField< T, Dim >::setup().

Here is the call graph for this function:

template<class T , unsigned Dim>
BareField< T, Dim >::~BareField ( )

Definition at line 84 of file BareField.hpp.

Member Function Documentation

template<class T , unsigned Dim>
void BareField< T, Dim >::accumGuardCells ( )
template<class T, unsigned Dim>
iterator BareField< T, Dim >::begin ( ) const
inline
template<class T, unsigned Dim>
iterator_if BareField< T, Dim >::begin_if ( )
inline
template<class T, unsigned Dim>
const_iterator_if BareField< T, Dim >::begin_if ( ) const
inline

Definition at line 101 of file BareField.h.

template<class T, unsigned Dim>
iterator BareField< T, Dim >::beginLoc ( const FieldLoc< Dim > &  loc) const
inline

Definition at line 248 of file BareField.h.

template<class T, unsigned Dim>
void BareField< T, Dim >::clearDirtyFlag ( )
inline
template<class T , unsigned Dim>
void BareField< T, Dim >::Compress ( ) const
template<class T , unsigned Dim>
double BareField< T, Dim >::CompressedFraction ( ) const

Definition at line 1334 of file BareField.hpp.

References LField< T, Dim >::getOwned(), LField< T, Dim >::IsCompressed(), and reduce().

Here is the call graph for this function:

template<class T, unsigned Dim>
bool BareField< T, Dim >::compressible ( ) const
inline

Definition at line 190 of file BareField.h.

Referenced by assign(), and DiscField< Dim >::read().

template<class T, unsigned Dim>
iterator BareField< T, Dim >::end ( ) const
inline

Definition at line 240 of file BareField.h.

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

template<class T, unsigned Dim>
iterator_if BareField< T, Dim >::end_if ( )
inline
template<class T, unsigned Dim>
const_iterator_if BareField< T, Dim >::end_if ( ) const
inline

Definition at line 102 of file BareField.h.

template<class T , unsigned Dim>
void BareField< T, Dim >::fillGuardCells ( bool  reallyFill = true) const
virtual

Reimplemented in Field< T, Dim, Mesh, Centering >, Field< double, 3, Mesh_t, Center_t >, Field< T, Dim, M, C >, Field< dcomplex, 3, Mesh_t, Center_t >, Field< Vector_t, 3, Mesh_t, Center_t >, and Field< int, 3, Mesh_t, Center_t >.

Definition at line 298 of file BareField.hpp.

References LField< T, Dim >::AddToOverlapCache(), LField< T, Dim >::begin(), BareField< T, Dim >::begin_if(), LField< T, Dim >::BeginOverlap(), CompressedBrickIterator< T, Dim >::CanCompress(), BareField< T, Dim >::clearDirtyFlag(), IpplInfo::Comm, COMM_ANY_NODE, Dim, BareField< T, Dim >::end_if(), endl(), LField< T, Dim >::EndOverlap(), F_GUARD_CELLS_TAG, F_TAG_CYCLE, LField< T, Dim >::getAllocated(), BareField< T, Dim >::getGC(), BareField< T, Dim >::getLayout(), CompressedBrickIterator< T, Dim >::getMessage(), NDIndex< Dim >::getMessage(), IpplInfo::getNodes(), LField< T, Dim >::getOwned(), INFORM_ALL_NODES, NDIndex< Dim >::intersect(), CompressedBrickIterator< T, Dim >::IsCompressed(), LField< T, Dim >::IsCompressed(), TagMaker::next_tag(), LField< T, Dim >::OverlapCacheInitialized(), PAssert, Message::put(), Communicate::receive_block(), Communicate::send(), Message::size(), T, FieldLayout< Dim >::touch_range_rdv(), NDIndex< Dim >::touches(), CompressedBrickIterator< T, Dim >::TryCompress(), LField< T, Dim >::Uncompress(), and value_type().

Referenced by IndexedBareFieldIterator< T, D >::FillGCIfNecessary(), Field< T, Dim, M, C >::fillGuardCells(), BareField< T1, D >::fillGuardCellsIfNotDirty(), BareField< T1, D >::prepareForScalarCode(), FieldDebugPrint< T, Dim >::print(), UniformCartesian< D, T >::storeSpacingFields(), and Cartesian< Dim, MFLOAT >::storeSpacingFields().

Here is the call graph for this function:

template<class T, unsigned Dim>
void BareField< T, Dim >::fillGuardCellsIfNotDirty ( ) const
inline
template<class T, unsigned Dim>
void BareField< T, Dim >::finishScalarCode ( bool  modified = true)
inline

Definition at line 279 of file BareField.h.

template<class T, unsigned Dim>
const NDIndex<Dim>& BareField< T, Dim >::getDomain ( void  ) const
inline
template<class T, unsigned Dim>
const GuardCellSizes<Dim>& BareField< T, Dim >::getGC ( ) const
inline
template<class T, unsigned Dim>
const GuardCellSizes<Dim>& BareField< T, Dim >::getGuardCellSizes ( ) const
inline
template<class T, unsigned Dim>
const Index& BareField< T, Dim >::getIndex ( unsigned  d) const
inline

Definition at line 150 of file BareField.h.

template<class T, unsigned Dim>
Layout_t& BareField< T, Dim >::getLayout ( ) const
inline
template<class T, unsigned int Dim>
void BareField< T, Dim >::getsingle ( const NDIndex< Dim > &  Indexes,
T r 
) const
template<class T, unsigned D>
void BareField< T, D >::getsingle_bc ( const NDIndex< D > &  Indexes,
T r 
) const
private
template<class T , unsigned Dim>
void BareField< T, Dim >::initialize ( Layout_t l)

Definition at line 101 of file BareField.hpp.

Referenced by Field< T, Dim, M, C >::initialize().

template<class T , unsigned Dim>
void BareField< T, Dim >::initialize ( Layout_t l,
const bool  p 
)

Definition at line 115 of file BareField.hpp.

template<class T , unsigned Dim>
void BareField< T, Dim >::initialize ( Layout_t l,
const GuardCellSizes< Dim > &  gc 
)

Definition at line 129 of file BareField.hpp.

template<class T, unsigned Dim>
bool BareField< T, Dim >::isDirty ( ) const
inline
template<class T, unsigned Dim>
unsigned BareField< T, Dim >::leftGuard ( unsigned  d) const
inline
template<class T , unsigned Dim>
T & BareField< T, Dim >::localElement ( const NDIndex< Dim > &  Indexes) const
template<class T, unsigned Dim>
iterator BareField< T, Dim >::MakeExpression ( ) const
inline

Definition at line 328 of file BareField.h.

template<class T , unsigned Dim>
void BareField< T, Dim >::notifyUserOfDelete ( UserList userlist)
virtual
template<class T, unsigned Dim>
const BareField<T,Dim>& BareField< T, Dim >::operator= ( T  x)
inline

Definition at line 154 of file BareField.h.

template<class T, unsigned Dim>
const BareField<T,Dim>& BareField< T, Dim >::operator= ( const BareField< T, Dim > &  x)
inline

Definition at line 162 of file BareField.h.

template<class T, unsigned Dim>
template<class X >
const BareField<T,Dim>& BareField< T, Dim >::operator= ( const BareField< X, Dim > &  x)
inline

Definition at line 170 of file BareField.h.

template<class T, unsigned Dim>
template<class B >
const BareField<T,Dim>& BareField< T, Dim >::operator= ( const PETE_Expr< B > &  x)
inline

Definition at line 179 of file BareField.h.

template<class T , unsigned Dim>
IndexedBareField< T, Dim, 1 > BareField< T, Dim >::operator[] ( const Index idx)
inline

Definition at line 417 of file BareField.h.

template<class T , unsigned Dim>
IndexedBareField< T, Dim, 1 > BareField< T, Dim >::operator[] ( int  i)
inline

Definition at line 424 of file BareField.h.

template<class T , unsigned Dim>
IndexedBareField< T, Dim, Dim > BareField< T, Dim >::operator[] ( const NDIndex< Dim > &  nidx)
inline

Definition at line 431 of file BareField.h.

template<class T , unsigned Dim>
SubBareField< T, Dim, SIndex< Dim > > BareField< T, Dim >::operator[] ( const SIndex< Dim > &  s)
inline

Definition at line 438 of file BareField.h.

template<class T, unsigned Dim>
void BareField< T, Dim >::prepareForScalarCode ( bool  tryfill = true)
inline

Definition at line 261 of file BareField.h.

template<class T , unsigned Dim>
void BareField< T, Dim >::Repartition ( UserList userlist)
virtual
template<class T, unsigned Dim>
unsigned BareField< T, Dim >::rightGuard ( unsigned  d) const
inline
template<class T, unsigned Dim>
void BareField< T, Dim >::setCompression ( bool  compress)
inline
template<class T, unsigned Dim>
void BareField< T, Dim >::setDirtyFlag ( )
inline
template<class T, unsigned Dim>
void BareField< T, Dim >::setGuardCells ( const T val) const
template<class T , unsigned Dim>
void BareField< T, Dim >::setup ( void  )
private

Definition at line 151 of file BareField.hpp.

References IpplInfo::abort(), AddGuardCells(), endl(), and ERRORMSG.

Referenced by BareField< T, Dim >::BareField().

Here is the call graph for this function:

template<class T, unsigned Dim>
ac_id_larray::size_type BareField< T, Dim >::size_if ( ) const
inline
template<class T , unsigned Dim>
void BareField< T, Dim >::Uncompress ( ) const
template<class T , unsigned Dim>
void BareField< T, Dim >::write ( std::ostream &  out)
template<class T , unsigned Dim>
void BareField< T, Dim >::write ( char *  fname) const
template<class T , unsigned Dim>
void BareField< T, Dim >::writeb ( char *  fname) const

Friends And Related Function Documentation

template<class T, unsigned Dim>
friend class BareFieldIterator< T, Dim >
friend

Definition at line 335 of file BareField.h.

Member Data Documentation

template<class T, unsigned Dim>
bool BareField< T, Dim >::compressible_m
private
template<class T, unsigned Dim>
bool BareField< T, Dim >::dirty_m
private
template<class T, unsigned Dim>
GuardCellSizes<Dim> BareField< T, Dim >::Gc
private
template<class T, unsigned Dim>
Layout_t* BareField< T, Dim >::Layout
private

Definition at line 341 of file BareField.h.

Referenced by BareField< T1, D >::getLayout().

template<class T, unsigned Dim>
ac_id_larray BareField< T, Dim >::Locals_ac
protected
template<class T, unsigned Dim>
bool BareField< T, Dim >::pinned
private

Definition at line 358 of file BareField.h.


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