Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::InterpBase Class Referenceabstract

#include <AMReX_InterpBase.H>

Inheritance diagram for amrex::InterpBase:
amrex::Interpolater amrex::MFInterpolater amrex::CellBilinear amrex::CellConservativeLinear amrex::CellConservativeQuartic amrex::CellQuadratic amrex::CellQuartic amrex::FaceConservativeLinear amrex::FaceDivFree amrex::FaceLinear amrex::NodeBilinear amrex::PCInterp amrex::MFCellBilinear amrex::MFCellConsLinInterp amrex::MFCellConsLinMinmaxLimitInterp amrex::MFNodeBilinear amrex::MFPCInterp

Public Member Functions

 InterpBase ()=default
virtual ~InterpBase ()=default
 InterpBase (InterpBase const &) noexcept=default
 InterpBase (InterpBase &&) noexcept=default
InterpBase & operator= (InterpBase const &) noexcept=default
InterpBase & operator= (InterpBase &&) noexcept=default
virtual Box CoarseBox (const Box &fine, int ratio)=0
 Return the coarsened box bounding fine for scalar refinement ratio ratio.
virtual Box CoarseBox (const Box &fine, const IntVect &ratio)=0
 Same as CoarseBox above but accepts per-direction ratios ratio.
InterpolaterBoxCoarsener BoxCoarsener (const IntVect &ratio)
 Convenience helper that returns a BoxConverter bound to this interpolater.

Static Public Member Functions

static Vector< int > GetBCArray (const Vector< BCRec > &bcr)
 Convert BCRec entries to an integer array that interpolaters can consume.

Constructor & Destructor Documentation

◆ InterpBase() [1/3]

amrex::InterpBase::InterpBase ( )
default

◆ ~InterpBase()

virtual amrex::InterpBase::~InterpBase ( )
virtualdefault

◆ InterpBase() [2/3]

amrex::InterpBase::InterpBase ( InterpBase const & )
defaultnoexcept

◆ InterpBase() [3/3]

amrex::InterpBase::InterpBase ( InterpBase && )
defaultnoexcept

Member Function Documentation

◆ BoxCoarsener()

InterpolaterBoxCoarsener amrex::InterpBase::BoxCoarsener ( const IntVect & ratio)

Convenience helper that returns a BoxConverter bound to this interpolater.

◆ CoarseBox() [1/2]

virtual Box amrex::InterpBase::CoarseBox ( const Box & fine,
const IntVect & ratio )
pure virtual

Same as CoarseBox above but accepts per-direction ratios ratio.

The result must depend only on the interpolater class and ratio, because FillPatch caches coarse-box metadata per class and ratio.

Implemented in amrex::CellBilinear, amrex::CellConservativeLinear, amrex::CellConservativeQuartic, amrex::CellQuadratic, amrex::CellQuartic, amrex::FaceConservativeLinear, amrex::FaceDivFree, amrex::FaceLinear, amrex::MFCellBilinear, amrex::MFCellConsLinInterp, amrex::MFCellConsLinMinmaxLimitInterp, amrex::MFNodeBilinear, amrex::MFPCInterp, amrex::NodeBilinear, and amrex::PCInterp.

◆ CoarseBox() [2/2]

◆ GetBCArray()

Vector< int > amrex::InterpBase::GetBCArray ( const Vector< BCRec > & bcr)
static

Convert BCRec entries to an integer array that interpolaters can consume.

◆ operator=() [1/2]

InterpBase & amrex::InterpBase::operator= ( InterpBase && )
defaultnoexcept

◆ operator=() [2/2]

InterpBase & amrex::InterpBase::operator= ( InterpBase const & )
defaultnoexcept

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