Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::StateDescriptor Class Reference

Attributes of StateData. More...

#include <AMReX_StateDescriptor.H>

Classes

class  BndryFunc
 

Public Types

enum  TimeCenter { Point = 0 , Interval }
 Defines the temporal centeredness of data. More...
 

Public Member Functions

 StateDescriptor () noexcept
 The default constructor.
 
 StateDescriptor (IndexType btyp, TimeCenter ttyp, int ident, int nextra, int num_comp, InterpBase *interp, bool extrap=false, bool store_in_checkpoint=true)
 Constructor that sets all data members.
 
void define (IndexType btyp, TimeCenter ttyp, int ident, int nextra, int num_comp, InterpBase *interp, bool extrap=false, bool store_in_checkpoint=true)
 Define the data members if constructed with default constructor.
 
void setComponent (int comp, const std::string &nm, const BCRec &bc, const BndryFunc &func, InterpBase *interp=nullptr, int max_map_start_comp=-1, int min_map_end_comp=-1)
 Configure metadata for component comp.
 
void setComponent (int comp, const std::string &nm, const BCRec &bc, const BndryFunc &func, InterpBase *interp, bool a_primary, int groupsize)
 Configure component comp using explicit primary/groupsize flags.
 
void resetComponentBCs (int comp, const BCRec &bcr, const BndryFunc &func)
 Resets boundary condition data for component comp.
 
void dumpNames (std::ostream &os, int start_comp, int num_comp) const
 Output names of components.
 
IndexType getType () const noexcept
 Returns the IndexType.
 
StateDescriptor::TimeCenter timeType () const noexcept
 Returns StateDescriptor::TimeCenter.
 
int nComp () const noexcept
 Returns number of components.
 
int nExtra () const noexcept
 Returns the grow factor.
 
InterpBaseinterp () const noexcept
 Returns the interpolater.
 
InterpBaseinterp (int i) const noexcept
 Returns the interpolater used by component i.
 
const std::string & name (int i) const noexcept
 Returns the name of component i.
 
const BCRecgetBC (int i) const noexcept
 Returns the BCRec of component i.
 
const Vector< BCRec > & getBCs () const noexcept
 Returns all BCRecs.
 
const BndryFuncbndryFill (int i) const noexcept
 Returns the BndryFunc associated with component i.
 
int inRange (int sc, int nc) const noexcept
 Return true if the component range [sc, sc+nc) lies within this descriptor.
 
bool identicalInterps (int scomp, int ncomp) const noexcept
 Return true if all components in [scomp, scomp+ncomp) share the same interpolater.
 
std::vector< std::pair< int, int > > sameInterps (int scomp, int ncomp) const
 Returns contiguous component ranges (start,count) that share identical interpolaters within [scomp, scomp+ncomp).
 
bool extrap () const noexcept
 Can extrapolate in time.
 
bool store_in_checkpoint () const noexcept
 Should store this StateData in the checkpoint file.
 
bool primary (int i) const noexcept
 Return whether component i is the primary entry of a grouped set.
 
int groupsize (int i) const noexcept
 Return the size of the component group anchored at primary component i.
 
bool RunOnGPU () const noexcept
 will it run on gpu?
 
bool hasBndryFuncFab () const noexcept
 has new fab version of BndryFunc?
 

Static Public Member Functions

static void setBndryFuncThreadSafety (int ext_dir_safe) noexcept
 Control thread-safety flag for boundary fill functors (nonzero ext_dir_safe triggers thread-safe handling).
 

Friends

class DescriptorList
 

Detailed Description

Attributes of StateData.

Member Enumeration Documentation

◆ TimeCenter

Defines the temporal centeredness of data.

Enumerator
Point 
Interval 

Constructor & Destructor Documentation

◆ StateDescriptor() [1/2]

amrex::StateDescriptor::StateDescriptor ( )
inlinenoexcept

The default constructor.

◆ StateDescriptor() [2/2]

amrex::StateDescriptor::StateDescriptor ( IndexType  btyp,
StateDescriptor::TimeCenter  ttyp,
int  ident,
int  nextra,
int  num_comp,
InterpBase interp,
bool  extrap = false,
bool  store_in_checkpoint = true 
)

Constructor that sets all data members.

Parameters
btypIndex type describing cell/nodal staggering.
ttypTime-centering (Point or Interval).
identIdentifier assigned to this descriptor.
nextraNumber of ghost cells.
num_compNumber of components stored in the state.
interpDefault interpolater to use between levels.
extrapWhether to allow time extrapolation outside stored intervals.
store_in_checkpointShould this descriptor be persisted in checkpoints?

Member Function Documentation

◆ bndryFill()

const StateDescriptor::BndryFunc & amrex::StateDescriptor::bndryFill ( int  i) const
noexcept

Returns the BndryFunc associated with component i.

Parameters
iComponent index.

◆ define()

void amrex::StateDescriptor::define ( IndexType  btyp,
StateDescriptor::TimeCenter  ttyp,
int  ident,
int  nextra,
int  num_comp,
InterpBase interp,
bool  extrap = false,
bool  store_in_checkpoint = true 
)

Define the data members if constructed with default constructor.

Parameters
btypIndex type describing cell/nodal staggering.
ttypTime-centering (Point or Interval).
identIdentifier assigned to this descriptor.
nextraNumber of ghost cells.
num_compNumber of components stored in the state.
interpDefault interpolater to use between levels.
extrapWhether to allow time extrapolation outside stored intervals.
store_in_checkpointShould this descriptor be persisted in checkpoints?

◆ dumpNames()

void amrex::StateDescriptor::dumpNames ( std::ostream &  os,
int  start_comp,
int  num_comp 
) const

Output names of components.

Parameters
os
start_comp
num_comp

◆ extrap()

bool amrex::StateDescriptor::extrap ( ) const
noexcept

Can extrapolate in time.

◆ getBC()

const BCRec & amrex::StateDescriptor::getBC ( int  i) const
noexcept

Returns the BCRec of component i.

Parameters
iComponent index.

◆ getBCs()

const Vector< BCRec > & amrex::StateDescriptor::getBCs ( ) const
noexcept

Returns all BCRecs.

◆ getType()

IndexType amrex::StateDescriptor::getType ( ) const
noexcept

Returns the IndexType.

◆ groupsize()

int amrex::StateDescriptor::groupsize ( int  i) const
inlinenoexcept

Return the size of the component group anchored at primary component i.

◆ hasBndryFuncFab()

bool amrex::StateDescriptor::hasBndryFuncFab ( ) const
inlinenoexcept

has new fab version of BndryFunc?

◆ identicalInterps()

bool amrex::StateDescriptor::identicalInterps ( int  scomp,
int  ncomp 
) const
noexcept

Return true if all components in [scomp, scomp+ncomp) share the same interpolater.

Parameters
scompStarting component index.
ncompNumber of components inspected.

◆ inRange()

int amrex::StateDescriptor::inRange ( int  sc,
int  nc 
) const
noexcept

Return true if the component range [sc, sc+nc) lies within this descriptor.

Parameters
scStarting component index.
ncNumber of components in the range.

◆ interp() [1/2]

InterpBase * amrex::StateDescriptor::interp ( ) const
noexcept

Returns the interpolater.

◆ interp() [2/2]

InterpBase * amrex::StateDescriptor::interp ( int  i) const
noexcept

Returns the interpolater used by component i.

Parameters
iComponent index.

◆ name()

const std::string & amrex::StateDescriptor::name ( int  i) const
noexcept

Returns the name of component i.

Parameters
iComponent index.

◆ nComp()

int amrex::StateDescriptor::nComp ( ) const
noexcept

Returns number of components.

◆ nExtra()

int amrex::StateDescriptor::nExtra ( ) const
noexcept

Returns the grow factor.

◆ primary()

bool amrex::StateDescriptor::primary ( int  i) const
inlinenoexcept

Return whether component i is the primary entry of a grouped set.

◆ resetComponentBCs()

void amrex::StateDescriptor::resetComponentBCs ( int  comp,
const BCRec bcr,
const BndryFunc func 
)

Resets boundary condition data for component comp.

Parameters
compComponent index to update.
bcrReplacement BCRec.
funcReplacement physical BC functor.

◆ RunOnGPU()

bool amrex::StateDescriptor::RunOnGPU ( ) const
inlinenoexcept

will it run on gpu?

◆ sameInterps()

std::vector< std::pair< int, int > > amrex::StateDescriptor::sameInterps ( int  scomp,
int  ncomp 
) const

Returns contiguous component ranges (start,count) that share identical interpolaters within [scomp, scomp+ncomp).

◆ setBndryFuncThreadSafety()

static void amrex::StateDescriptor::setBndryFuncThreadSafety ( int  ext_dir_safe)
inlinestaticnoexcept

Control thread-safety flag for boundary fill functors (nonzero ext_dir_safe triggers thread-safe handling).

◆ setComponent() [1/2]

void amrex::StateDescriptor::setComponent ( int  comp,
const std::string &  nm,
const BCRec bc,
const BndryFunc func,
InterpBase interp,
bool  a_primary,
int  groupsize 
)

Configure component comp using explicit primary/groupsize flags.

Parameters
compComponent index to configure.
nmName of the component.
bcBoundary condition recipe for the component.
funcBoundary fill functor for physical BCs.
interpOptional per-component interpolater override.
a_primaryWhether this component is the primary entry for a grouped set.
groupsizeHow many coupled components participate in the group anchored here.

◆ setComponent() [2/2]

void amrex::StateDescriptor::setComponent ( int  comp,
const std::string &  nm,
const BCRec bc,
const BndryFunc func,
InterpBase interp = nullptr,
int  max_map_start_comp = -1,
int  min_map_end_comp = -1 
)

Configure metadata for component comp.

Parameters
compComponent index to configure.
nmName of the component.
bcBoundary condition recipe for the component.
funcBoundary fill functor for physical BCs.
interpOptional per-component interpolater override.
max_map_start_compIf >=0, restricts upper bound of remapping region.
min_map_end_compIf >=0, restricts lower bound of remapping region.

◆ store_in_checkpoint()

bool amrex::StateDescriptor::store_in_checkpoint ( ) const
noexcept

Should store this StateData in the checkpoint file.

◆ timeType()

StateDescriptor::TimeCenter amrex::StateDescriptor::timeType ( ) const
noexcept

Friends And Related Symbol Documentation

◆ DescriptorList

friend class DescriptorList
friend

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