IBAMR  IBAMR version 0.19.
Public Member Functions | Private Attributes | List of all members
SAMRAI::pdat::NodeComplexInjection< DIM > Class Template Reference

#include <NodeComplexInjection.h>

Inheritance diagram for SAMRAI::pdat::NodeComplexInjection< DIM >:
Inheritance graph
[legend]

Public Member Functions

 NodeComplexInjection ()
 
virtual ~NodeComplexInjection ()
 
bool findCoarsenOperator (const tbox::Pointer< hier::Variable< DIM > > &var, const std::string &op_name) const
 
const std::string & getOperatorName () const
 
int getOperatorPriority () const
 
hier::IntVector< DIM > getStencilWidth () const
 
void coarsen (hier::Patch< DIM > &coarse, const hier::Patch< DIM > &fine, const int dst_component, const int src_component, const hier::Box< DIM > &coarse_box, const hier::IntVector< DIM > &ratio) const
 

Private Attributes

std::string d_name_id
 

Detailed Description

template<int DIM>
class SAMRAI::pdat::NodeComplexInjection< DIM >

Class NodeComplexInjection<DIM> implements constant averaging (i.e., injection) for node-centered complex patch data defined over a mesh. It is derived from the xfer::CoarsenOperator<DIM> base class. The numerical operations for theaveraging use FORTRAN numerical routines.

The findCoarsenOperator() operator function returns true if the input variable is node-centered complex, and the string is "CONSTANT_COARSEN".

See also
xfer::CoarsenOperator

Constructor & Destructor Documentation

◆ NodeComplexInjection()

Uninteresting default constructor.

◆ ~NodeComplexInjection()

template<int DIM>
virtual SAMRAI::pdat::NodeComplexInjection< DIM >::~NodeComplexInjection ( )
virtual

Uninteresting virtual destructor.

Member Function Documentation

◆ findCoarsenOperator()

template<int DIM>
bool SAMRAI::pdat::NodeComplexInjection< DIM >::findCoarsenOperator ( const tbox::Pointer< hier::Variable< DIM > > &  var,
const std::string &  op_name 
) const
virtual

Return true if the variable and name string match the node-centered constant averaging; otherwise, return false.

Implements SAMRAI::xfer::CoarsenOperator< DIM >.

◆ getOperatorName()

template<int DIM>
const std::string& SAMRAI::pdat::NodeComplexInjection< DIM >::getOperatorName ( ) const
virtual

Return name string identifier of this coarsening operator.

Implements SAMRAI::xfer::CoarsenOperator< DIM >.

◆ getOperatorPriority()

template<int DIM>
int SAMRAI::pdat::NodeComplexInjection< DIM >::getOperatorPriority ( ) const
virtual

The priority of node-centered constant averaging is 0. It will be performed before any user-defined coarsen operations.

Implements SAMRAI::xfer::CoarsenOperator< DIM >.

◆ getStencilWidth()

template<int DIM>
hier::IntVector<DIM> SAMRAI::pdat::NodeComplexInjection< DIM >::getStencilWidth ( ) const
virtual

The stencil width of the constant averaging operator is the vector of zeros. That is, its stencil does not extend outside the fine box.

Implements SAMRAI::xfer::CoarsenOperator< DIM >.

◆ coarsen()

template<int DIM>
void SAMRAI::pdat::NodeComplexInjection< DIM >::coarsen ( hier::Patch< DIM > &  coarse,
const hier::Patch< DIM > &  fine,
const int  dst_component,
const int  src_component,
const hier::Box< DIM > &  coarse_box,
const hier::IntVector< DIM > &  ratio 
) const
virtual

Coarsen the source component on the fine patch to the destination component on the coarse patch using the node-centered complex constant averaging operator. Coarsening is performed on the intersection of the destination patch and the coarse box. It is assumed that the fine patch contains sufficient data for the stencil width of the coarsening operator.

Implements SAMRAI::xfer::CoarsenOperator< DIM >.

Member Data Documentation

◆ d_name_id

template<int DIM>
std::string SAMRAI::pdat::NodeComplexInjection< DIM >::d_name_id
private

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