Chombo + EB  3.2
Public Member Functions | Protected Attributes | List of all members
VoFStencil Class Reference

VoF-centered stencil. More...

#include <Stencils.H>

Inheritance diagram for VoFStencil:
Inheritance graph

Public Member Functions

 VoFStencil ()
virtual ~VoFStencil ()
void clear ()
void add (const VolIndex &vof, const Real &weight, int ivar=0)
virtual int size () const
const VolIndexvof (int i) const
virtual BaseIndexindex (int i) const
virtual const Realweight (int i) const
virtual Realweight (int i)
void shift (const IntVect &a_shift)
virtual const int & variable (int i) const
virtual int & variable (int i)
VoFStenciloperator+= (const VoFStencil &a_vofsten)
void operator*= (const Real &scaling)
VoFStenciloperator= (const VoFStencil &a_vofsten)
 VoFStencil (const VoFStencil &a_vofstenin)
void setAllVariables (int a_var)
void getExponentAndMantissa (Real &a_mantissa, int &a_exp, Real a_input) const
void poutFortranRelative (const IntVect &a_startIV, const string &a_prefix, const Real &wgtScaling) const
 prints the stencil to 16 digits—all weights are divided by weight scaling (typically h or h^2) More...
void outputToPout () const
- Public Member Functions inherited from BaseStencil
 BaseStencil ()
virtual ~BaseStencil ()

Protected Attributes

Vector< VolIndexvofs
 the VoFs More...
Vector< Realweights
 the weights More...
Vector< int > variables

Detailed Description

VoF-centered stencil.

This stencil is a fundamental tool for building eb applications by making the ability to cache stencil information. This object consists of a vector of VoFs and a vector of weights.

Constructor & Destructor Documentation

◆ VoFStencil() [1/2]

VoFStencil::VoFStencil ( )

default constructor. makes empty vectors.

◆ ~VoFStencil()

virtual VoFStencil::~VoFStencil ( )

◆ VoFStencil() [2/2]

VoFStencil::VoFStencil ( const VoFStencil a_vofstenin)

Member Function Documentation

◆ clear()

void VoFStencil::clear ( )

◆ add()

void VoFStencil::add ( const VolIndex vof,
const Real weight,
int  ivar = 0 

add a VoF to the Stencil, with it's associated weight it is required that all VoFs are in the same EBIndexSpace If the vof is already in the stencil, add the weights.

◆ size()

int VoFStencil::size ( ) const

number of VoFs in the Stencil


Implements BaseStencil.

◆ vof()

const VolIndex & VoFStencil::vof ( int  i) const

access a VoF

◆ index()

virtual BaseIndex& VoFStencil::index ( int  i) const

◆ weight() [1/2]

const Real & VoFStencil::weight ( int  i) const

access a weight

Implements BaseStencil.

◆ weight() [2/2]

Real & VoFStencil::weight ( int  i)

access a weight

References CH_assert, and linearSize().

◆ shift()

void VoFStencil::shift ( const IntVect a_shift)

shift all entries by a_shift

◆ variable() [1/2]

virtual const int& VoFStencil::variable ( int  i) const

Implements BaseStencil.

◆ variable() [2/2]

virtual int& VoFStencil::variable ( int  i)

◆ operator+=()

VoFStencil& VoFStencil::operator+= ( const VoFStencil a_vofsten)

add all faces and weights of inputs to this. If a vof is already in the stencil, add the weights. only addition is well-defined here as far as arithmatic operations are concerned.

◆ operator*=()

void VoFStencil::operator*= ( const Real scaling)

◆ operator=()

VoFStencil& VoFStencil::operator= ( const VoFStencil a_vofsten)

◆ setAllVariables()

void VoFStencil::setAllVariables ( int  a_var)

◆ getExponentAndMantissa()

void VoFStencil::getExponentAndMantissa ( Real a_mantissa,
int &  a_exp,
Real  a_input 
) const

◆ poutFortranRelative()

void VoFStencil::poutFortranRelative ( const IntVect a_startIV,
const string &  a_prefix,
const Real wgtScaling 
) const

prints the stencil to 16 digits—all weights are divided by weight scaling (typically h or h^2)

◆ outputToPout()

void VoFStencil::outputToPout ( ) const

Member Data Documentation

◆ vofs

Vector<VolIndex> VoFStencil::vofs

the VoFs

◆ weights

Vector<Real> VoFStencil::weights

the weights

◆ variables

Vector<int> VoFStencil::variables

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