WarpX
Loading...
Searching...
No Matches
ablastr::fields::MultiFabOwner Struct Reference

#include <MultiFabRegister.H>

Public Member Functions

AMREX_INLINE bool is_vector () const
 
AMREX_INLINE bool is_alias () const
 

Public Attributes

amrex::MultiFab m_mf
 
std::optional< Directionm_dir = std::nullopt
 
int m_level = 0
 
bool m_remake = true
 
bool m_redistribute_on_remake = true
 
std::string m_owner
 

Detailed Description

A class to control the lifetime and properties of a MultiFab (field).

This class is used to own the lifetime of an amrex::MultiFab and to store associated information around it regarding unique naming, scalar/vector/tensor properties, aliasing, load balancing, etc.

Member Function Documentation

◆ is_alias()

AMREX_INLINE bool ablastr::fields::MultiFabOwner::is_alias ( ) const
inline

Is this an alias MultiFab?

If yes, that means we do not own the memory.

◆ is_vector()

AMREX_INLINE bool ablastr::fields::MultiFabOwner::is_vector ( ) const
inline

Is this part of a vector/tensor?

Member Data Documentation

◆ m_dir

std::optional<Direction> ablastr::fields::MultiFabOwner::m_dir = std::nullopt

Components (base vector directions) of this MultiFab

◆ m_level

int ablastr::fields::MultiFabOwner::m_level = 0

the MR level of this (i)MultiFab

◆ m_mf

amrex::MultiFab ablastr::fields::MultiFabOwner::m_mf

owned (i)MultiFab

◆ m_owner

std::string ablastr::fields::MultiFabOwner::m_owner

if m_mf is a non-owning alias, this string tracks the name of the owner

◆ m_redistribute_on_remake

bool ablastr::fields::MultiFabOwner::m_redistribute_on_remake = true

redistribute on

See also
amrex::AmrCore::RemakeLevel

◆ m_remake

bool ablastr::fields::MultiFabOwner::m_remake = true

remake distribution map on load balance,

See also
amrex::AmrCore::RemakeLevel

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