MixedTransfer< T > Class Template Reference

The transfer operators class. More...

#include <MixedTransfer.hpp>

Inheritance diagram for MixedTransfer< T >:

Inheritance graph
[legend]
Collaboration diagram for MixedTransfer< T >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

void PrintParam ()
 Prints the name of the transfer object and (optionally) the parameters.
virtual bool ProperGrids (const Array< int > &p_domain_size, const Array< int > &p_range_size)
 Returns true if the grid sizes may correspond to the domain and the range of the prolongation (or the range and the domain of the restriction).
void Prolong (MultiVector< T > &src, MultiVector< T > &dst)
 The prolongation.
void Restrict (MultiVector< T > &src, MultiVector< T > &dst)
 The restriction.
 MixedTransfer (unsigned the_disp_type)
 Constructor which sets the display type.

Detailed Description

template<typename T>
class MixedTransfer< T >

The transfer operators class.


Constructor & Destructor Documentation

template<typename T>
MixedTransfer< T >::MixedTransfer ( unsigned  the_disp_type  )  [inline]

Constructor which sets the display type.


Member Function Documentation

template<typename T>
void MixedTransfer< T >::PrintParam (  )  [inline, virtual]

Prints the name of the transfer object and (optionally) the parameters.

Implements SysTransfer< T >.

template<typename T>
virtual bool MixedTransfer< T >::ProperGrids ( const Array< int > &  p_domain_size,
const Array< int > &  p_range_size 
) [inline, virtual]

Returns true if the grid sizes may correspond to the domain and the range of the prolongation (or the range and the domain of the restriction).

This means, the grid sizes corresponding to the same dimensions should be either halved or equal.

Parameters:
[in] p_domain_size For the domain of the prolongation
[in] p_range_size For the range of the prolongation

Implements Transfer< T >.

template<typename T>
void MixedTransfer< T >::Prolong ( MultiVector< T > &  src,
MultiVector< T > &  dst 
) [inline, virtual]

The prolongation.

It is implemented as computation of halved sums of manyfolds of the grid. We do it recursively and start with the manyfolds of the smallest dimensionality.

Parameters:
[in] src The vector to prolong
[in] dst The result (the sizes must be initialized!)

Implements Transfer< T >.

template<typename T>
void MixedTransfer< T >::Restrict ( MultiVector< T > &  src,
MultiVector< T > &  dst 
) [inline, virtual]

The restriction.

Parameters:
[in] src The vector to restrict
[in] dst The result (the sizes must be initialized!)

Implements Transfer< T >.


The documentation for this class was generated from the following files:
Generated on Fri Sep 21 12:34:20 2007 for SG2 by  doxygen 1.5.2