WarpX
Public Member Functions | Private Attributes | List of all members
MultiSigmaBox Class Reference

#include <PML.H>

Inheritance diagram for MultiSigmaBox:
amrex::FabArray< SigmaBox >

Public Member Functions

 MultiSigmaBox (const amrex::BoxArray &ba, const amrex::DistributionMapping &dm, const amrex::BoxArray &grid_ba, const amrex::Real *dx, const amrex::IntVect &ncell, const amrex::IntVect &delta, const amrex::Box &regular_domain, const amrex::Real v_sigma_sb)
 
void ComputePMLFactorsB (const amrex::Real *dx, amrex::Real dt)
 
void ComputePMLFactorsE (const amrex::Real *dx, amrex::Real dt)
 
- Public Member Functions inherited from amrex::FabArray< SigmaBox >
 FabArray () noexcept
 
 FabArray (Arena *a) noexcept
 
 FabArray (const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())
 
 FabArray (const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())
 
 FabArray (const FabArray< FAB > &rhs, MakeType maketype, int scomp, int ncomp)
 
 FabArray (FabArray< FAB > &&rhs) noexcept
 
 FabArray (const FabArray< FAB > &rhs)=delete
 
virtual ~FabArray ()
 
FabArray< FAB > & operator= (FabArray< FAB > &&rhs) noexcept
 
FabArray< FAB > & operator= (const FabArray< FAB > &rhs)=delete
 
void operator= (value_type val)
 
virtual void define (const BoxArray &bxs, const DistributionMapping &dm, int nvar, int ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())
 
virtual void define (const BoxArray &bxs, const DistributionMapping &dm, int nvar, const IntVect &ngrow, const MFInfo &info=MFInfo(), const FabFactory< FAB > &factory=DefaultFabFactory< FAB >())
 
const FabFactory< FAB > & Factory () const noexcept
 
Arenaarena () const noexcept
 
const Vector< std::string > & tags () const noexcept
 
bool hasEBFabFactory () const noexcept
 
bool isAllRegular () const noexcept
 
bool ok () const
 
bool isDefined () const
 
const FABoperator[] (const MFIter &mfi) const noexcept
 
FABoperator[] (const MFIter &mfi) noexcept
 
const FABoperator[] (int K) const noexcept
 
FABoperator[] (int K) noexcept
 
const FABget (const MFIter &mfi) const noexcept
 
FABget (const MFIter &mfi) noexcept
 
const FABget (int K) const noexcept
 
FABget (int K) noexcept
 
FABatLocalIdx (int L) noexcept
 
const FABatLocalIdx (int L) const noexcept
 
FABfabPtr (const MFIter &mfi) noexcept
 
FAB const * fabPtr (const MFIter &mfi) const noexcept
 
FABfabPtr (int K) noexcept
 
FAB const * fabPtr (int K) const noexcept
 
void prefetchToHost (const MFIter &mfi) const noexcept
 
void prefetchToDevice (const MFIter &mfi) const noexcept
 
Array4< typename FabArray< FAB >::value_type const > array (const MFIter &mfi) const noexcept
 
Array4< typename FabArray< FAB >::value_typearray (const MFIter &mfi) noexcept
 
Array4< typename FabArray< FAB >::value_type const > array (int K) const noexcept
 
Array4< typename FabArray< FAB >::value_typearray (int K) noexcept
 
Array4< typename FabArray< FAB >::value_type const > array (const MFIter &mfi, int start_comp) const noexcept
 
Array4< typename FabArray< FAB >::value_typearray (const MFIter &mfi, int start_comp) noexcept
 
Array4< typename FabArray< FAB >::value_type const > array (int K, int start_comp) const noexcept
 
Array4< typename FabArray< FAB >::value_typearray (int K, int start_comp) noexcept
 
Array4< typename FabArray< FAB >::value_type const > const_array (const MFIter &mfi) const noexcept
 
Array4< typename FabArray< FAB >::value_type const > const_array (int K) const noexcept
 
Array4< typename FabArray< FAB >::value_type const > const_array (const MFIter &mfi, int start_comp) const noexcept
 
Array4< typename FabArray< FAB >::value_type const > const_array (int K, int start_comp) const noexcept
 
MultiArray4< typename FabArray< FAB >::value_typearrays () noexcept
 
MultiArray4< typename FabArray< FAB >::value_type const > arrays () const noexcept
 
MultiArray4< typename FabArray< FAB >::value_type const > const_arrays () const noexcept
 
void setFab (int K, std::unique_ptr< FAB > elem)
 
void setFab (int K, FAB &&elem)
 
void setFab (const MFIter &mfi, std::unique_ptr< FAB > elem)
 
void setFab (const MFIter &mfi, FAB &&elem)
 
AMREX_NODISCARD FABrelease (int K)
 
AMREX_NODISCARD FABrelease (const MFIter &mfi)
 
void clear ()
 
void setVal (value_type val)
 
void setVal (value_type val, int comp, int num_comp, int nghost=0)
 
void setVal (value_type val, int comp, int num_comp, const IntVect &nghost)
 
void setVal (value_type val, const Box &region, int comp, int num_comp, int nghost=0)
 
void setVal (value_type val, const Box &region, int comp, int num_comp, const IntVect &nghost)
 
void setVal (value_type val, int nghost)
 
void setVal (value_type val, const IntVect &nghost)
 
void setVal (value_type val, const Box &region, int nghost)
 
void setVal (value_type val, const Box &region, const IntVect &nghost)
 
void setVal (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)
 
void abs (int comp, int num_comp, int nghost=0)
 
void abs (int comp, int num_comp, const IntVect &nghost)
 
void plus (value_type val, int comp, int num_comp, int nghost=0)
 
void plus (value_type val, const Box &region, int comp, int num_comp, int nghost=0)
 
void mult (value_type val, int comp, int num_comp, int nghost=0)
 
void mult (value_type val, const Box &region, int comp, int num_comp, int nghost=0)
 
void invert (value_type numerator, int comp, int num_comp, int nghost=0)
 
void invert (value_type numerator, const Box &region, int comp, int num_comp, int nghost=0)
 
void setBndry (value_type val)
 
void setBndry (value_type val, int strt_comp, int ncomp)
 
void setDomainBndry (value_type val, const Geometry &geom)
 
void setDomainBndry (value_type val, int strt_comp, int ncomp, const Geometry &geom)
 
void ParallelAdd (const FabArray< FAB > &fa, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelCopy (const FabArray< FAB > &fa, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY, const FabArrayBase::CPC *a_cpc=nullptr)
 
void copy (const FabArray< FAB > &fa, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void copy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void copy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void copy (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelAdd_nowait (const FabArray< FAB > &fa, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelAdd_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelCopy_nowait (const FabArray< FAB > &fa, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, int src_nghost, int dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY)
 
void ParallelCopy_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic(), CpOp op=FabArrayBase::COPY, const FabArrayBase::CPC *a_cpc=nullptr, bool to_ghost_cells_only=false)
 
void ParallelCopy_finish ()
 
void ParallelCopyToGhost (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelCopyToGhost_nowait (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &src_nghost, const IntVect &dst_nghost, const Periodicity &period=Periodicity::NonPeriodic())
 
void ParallelCopyToGhost_finish ()
 
void Redistribute (const FabArray< FAB > &src, int src_comp, int dest_comp, int num_comp, const IntVect &nghost)
 
void copyTo (FAB &dest, int nghost=0) const
 
void copyTo (FAB &dest, int src_comp, int dest_comp, int num_comp, int nghost=0) const
 
void shift (const IntVect &v)
 
bool defined (int i) const noexcept
 
bool defined (const MFIter &mfi) const noexcept
 
void FillBoundary (bool cross=false)
 
void FillBoundary (const Periodicity &period, bool cross=false)
 
void FillBoundary (const IntVect &nghost, const Periodicity &period, bool cross=false)
 
void FillBoundary (int scomp, int ncomp, bool cross=false)
 
void FillBoundary (int scomp, int ncomp, const Periodicity &period, bool cross=false)
 
void FillBoundary (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross=false)
 
void FillBoundary_nowait (bool cross=false)
 
void FillBoundary_nowait (const Periodicity &period, bool cross=false)
 
void FillBoundary_nowait (const IntVect &nghost, const Periodicity &period, bool cross=false)
 
void FillBoundary_nowait (int scomp, int ncomp, bool cross=false)
 
void FillBoundary_nowait (int scomp, int ncomp, const Periodicity &period, bool cross=false)
 
void FillBoundary_nowait (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross=false)
 
void FillBoundary_finish ()
 
void FillBoundary_finish ()
 
void FillBoundary_test ()
 
void FillBoundaryAndSync (const Periodicity &period=Periodicity::NonPeriodic())
 
void FillBoundaryAndSync (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period)
 
void FillBoundaryAndSync_nowait (const Periodicity &period=Periodicity::NonPeriodic())
 
void FillBoundaryAndSync_nowait (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period)
 
void FillBoundaryAndSync_finish ()
 
void OverrideSync (const Periodicity &period=Periodicity::NonPeriodic())
 
void OverrideSync (int scomp, int ncomp, const Periodicity &period)
 
void OverrideSync_nowait (const Periodicity &period=Periodicity::NonPeriodic())
 
void OverrideSync_nowait (int scomp, int ncomp, const Periodicity &period)
 
void OverrideSync_finish ()
 
void SumBoundary (const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary (int scomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary (int scomp, int ncomp, IntVect const &ngrow, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary (int scomp, int ncomp, IntVect const &src_ngrow, IntVect const &dst_ngrow, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary_nowait (const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary_nowait (int scomp, int ncomp, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary_nowait (int scomp, int ncomp, IntVect const &ngrow, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary_nowait (int scomp, int ncomp, IntVect const &src_ngrow, IntVect const &dst_ngrow, const Periodicity &period=Periodicity::NonPeriodic())
 
void SumBoundary_finish ()
 
void EnforcePeriodicity (const Periodicity &period)
 
void EnforcePeriodicity (int scomp, int ncomp, const Periodicity &period)
 
void EnforcePeriodicity (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period)
 
void BuildMask (const Box &phys_domain, const Periodicity &period, value_type covered, value_type notcovered, value_type physbnd, value_type interior)
 
void FBEP_nowait (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only=false, bool override_sync=false)
 
void FBEP_nowait (int scomp, int ncomp, const IntVect &nghost, const Periodicity &period, bool cross, bool enforce_periodicity_only, bool override_sync)
 
void FB_local_copy_cpu (const FB &TheFB, int scomp, int ncomp)
 
void PC_local_cpu (const CPC &thecpc, FabArray< FAB > const &src, int scomp, int dcomp, int ncomp, CpOp op)
 
LayoutData< intRecvLayoutMask (const CommMetaData &thecmd)
 
void FB_local_copy_gpu (const FB &TheFB, int scomp, int ncomp)
 
void PC_local_gpu (const CPC &thecpc, FabArray< FAB > const &src, int scomp, int dcomp, int ncomp, CpOp op)
 
void CMD_local_setVal_gpu (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)
 
void CMD_remote_setVal_gpu (value_type x, const CommMetaData &thecmd, int scomp, int ncomp)
 
void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< CopyComTagsContainer const * > const &send_cctc)
 
void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< CopyComTagsContainer const * > const &recv_cctc, CpOp op, bool is_thread_safe)
 

Private Attributes

amrex::Real dt_B = -1.e10
 
amrex::Real dt_E = -1.e10
 

Additional Inherited Members

- Public Types inherited from amrex::FabArray< SigmaBox >
typedef typename std::conditional< IsBaseFab< FAB >::value, FAB, FABType >::type::value_type value_type
 
- Static Public Member Functions inherited from amrex::FabArray< SigmaBox >
static void pack_send_buffer_gpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
static void unpack_recv_buffer_gpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
static void pack_send_buffer_cpu (FabArray< FAB > const &src, int scomp, int ncomp, Vector< char * > const &send_data, Vector< std::size_t > const &send_size, Vector< const CopyComTagsContainer * > const &send_cctc)
 
static void unpack_recv_buffer_cpu (FabArray< FAB > &dst, int dcomp, int ncomp, Vector< char * > const &recv_data, Vector< std::size_t > const &recv_size, Vector< const CopyComTagsContainer * > const &recv_cctc, CpOp op, bool is_thread_safe)
 
- Public Attributes inherited from amrex::FabArray< SigmaBox >
std::unique_ptr< FBData< FAB > > fbd
 
std::unique_ptr< PCData< FAB > > pcd
 
std::unique_ptr< FabArray< FAB > > os_temp
 
- Protected Member Functions inherited from amrex::FabArray< SigmaBox >
bool SharedMemory () const noexcept
 
- Protected Attributes inherited from amrex::FabArray< SigmaBox >
std::unique_ptr< FabFactory< FAB > > m_factory
 
DataAllocator m_dallocator
 
bool define_function_called
 
std::vector< FAB * > m_fabs_v
 
void * m_dp_arrays
 
void * m_hp_arrays
 
MultiArray4< value_typem_arrays
 
MultiArray4< value_type const > m_const_arrays
 
Vector< std::string > m_tags
 
ShMem shmem
 

Constructor & Destructor Documentation

◆ MultiSigmaBox()

MultiSigmaBox::MultiSigmaBox ( const amrex::BoxArray ba,
const amrex::DistributionMapping dm,
const amrex::BoxArray grid_ba,
const amrex::Real *  dx,
const amrex::IntVect ncell,
const amrex::IntVect delta,
const amrex::Box regular_domain,
const amrex::Real  v_sigma_sb 
)

Member Function Documentation

◆ ComputePMLFactorsB()

void MultiSigmaBox::ComputePMLFactorsB ( const amrex::Real *  dx,
amrex::Real  dt 
)

◆ ComputePMLFactorsE()

void MultiSigmaBox::ComputePMLFactorsE ( const amrex::Real *  dx,
amrex::Real  dt 
)

Member Data Documentation

◆ dt_B

amrex::Real MultiSigmaBox::dt_B = -1.e10
private

◆ dt_E

amrex::Real MultiSigmaBox::dt_E = -1.e10
private

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