FreePOOMA  2.4.1
Public Member Functions | Protected Member Functions
Pooma::PoomaDA< Dim > Struct Template Reference

Struct to wrap extra global information about a DA. More...

#include <PETSc.h>

List of all members.

Public Member Functions

template<class T , class EngineTag >
 PoomaDA (const Array< Dim, T, EngineTag > &a, DAPeriodicType pt, DAStencilType st, int sw)
 Creates a PETSc DA from the specified array/field/layout.
template<class MeshTag , class T , class EngineTag >
 PoomaDA (const Field< MeshTag, T, EngineTag > &f, DAPeriodicType pt, DAStencilType st, int sw)
template<class Layout >
 PoomaDA (const Layout &l, DAPeriodicType pt, DAStencilType st, int sw)
 ~PoomaDA ()
 operator DA () const
 Can use this as PETSc DA type.
DAPeriodicType periodicType () const
 Access PeriodicType.
DAStencilType stencilType () const
 Access StencilType.
template<class T , class EngineTag >
void assign (Vec v, const Engine< Dim, T, EngineTag > &e)
 Assign from POOMA engine to PETSc vector.
template<class T , class EngineTag >
void assign (Vec v, const Array< Dim, T, EngineTag > &a)
 Assign from POOMA array to PETSc vector.
template<class MeshTag , class T , class EngineTag >
void assign (Vec v, const Field< MeshTag, T, EngineTag > &f)
 Assign from POOMA field to PETSc vector.
template<class T , class EngineTag >
void assign (const Engine< Dim, T, EngineTag > &e, Vec v)
 Assign from PETSc vector to POOMA engine.
template<class T , class EngineTag >
void assign (const Array< Dim, T, EngineTag > &a, Vec v)
 Assign from PETSc vector to POOMA array.
template<class MeshTag , class T , class EngineTag >
void assign (const Field< MeshTag, T, EngineTag > &f, Vec v)
 Assign from PETSc vector to POOMA field.

Protected Member Functions

void initialize (const Interval< Dim > &d, DAPeriodicType pt, DAStencilType st, int sw)

Detailed Description

template<int Dim>
struct Pooma::PoomaDA< Dim >

Struct to wrap extra global information about a DA.


Constructor & Destructor Documentation

template<int Dim>
template<class T , class EngineTag >
Pooma::PoomaDA< Dim >::PoomaDA ( const Array< Dim, T, EngineTag > &  a,
DAPeriodicType  pt,
DAStencilType  st,
int  sw 
) [inline]

Creates a PETSc DA from the specified array/field/layout.

Extra arguments are like DACreateNd, namely the periodicity and stencil type and the stencil width.

References Pooma::PoomaDA< Dim >::initialize(), and Array< Dim, T, EngineTag >::physicalDomain().

template<int Dim>
template<class MeshTag , class T , class EngineTag >
Pooma::PoomaDA< Dim >::PoomaDA ( const Field< MeshTag, T, EngineTag > &  f,
DAPeriodicType  pt,
DAStencilType  st,
int  sw 
) [inline]
template<int Dim>
template<class Layout >
Pooma::PoomaDA< Dim >::PoomaDA ( const Layout &  l,
DAPeriodicType  pt,
DAStencilType  st,
int  sw 
) [inline]
template<int Dim>
Pooma::PoomaDA< Dim >::~PoomaDA ( ) [inline]

Member Function Documentation

template<int Dim>
Pooma::PoomaDA< Dim >::operator DA ( ) const [inline]

Can use this as PETSc DA type.

template<int Dim>
DAPeriodicType Pooma::PoomaDA< Dim >::periodicType ( ) const [inline]

Access PeriodicType.

template<int Dim>
DAStencilType Pooma::PoomaDA< Dim >::stencilType ( ) const [inline]

Access StencilType.

template<int Dim>
template<class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( Vec  v,
const Engine< Dim, T, EngineTag > &  e 
)
template<int Dim>
template<class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( Vec  v,
const Array< Dim, T, EngineTag > &  a 
) [inline]

Assign from POOMA array to PETSc vector.

References Pooma::PoomaDA< Dim >::assign(), and Array< Dim, T, EngineTag >::engine().

template<int Dim>
template<class MeshTag , class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( Vec  v,
const Field< MeshTag, T, EngineTag > &  f 
) [inline]
template<int Dim>
template<class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( const Engine< Dim, T, EngineTag > &  e,
Vec  v 
)

Assign from PETSc vector to POOMA engine.

References Pooma::context(), Pooma::Algorithms::copy(), and Array< Dim, T, EngineTag >::engine().

template<int Dim>
template<class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( const Array< Dim, T, EngineTag > &  a,
Vec  v 
) [inline]

Assign from PETSc vector to POOMA array.

References Pooma::PoomaDA< Dim >::assign(), and Array< Dim, T, EngineTag >::engine().

template<int Dim>
template<class MeshTag , class T , class EngineTag >
void Pooma::PoomaDA< Dim >::assign ( const Field< MeshTag, T, EngineTag > &  f,
Vec  v 
) [inline]
template<int Dim>
void Pooma::PoomaDA< Dim >::initialize ( const Interval< Dim > &  d,
DAPeriodicType  pt,
DAStencilType  st,
int  sw 
) [protected]

The documentation for this struct was generated from the following file: