![]() |
Block-Structured AMR Software Framework
|
#include <AMReX_ParIter.H>
Public Types | |
| using | ContainerType = ParticleContainer_impl< T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor > |
| using | ParticleTileType = typename ContainerType::ParticleTileType |
| using | AoS = typename ContainerType::AoS |
| using | SoA = typename ContainerType::SoA |
| using | ParticleType = T_ParticleType |
| using | RealVector = typename SoA::RealVector |
| using | IntVector = typename SoA::IntVector |
| using | ParticleVector = typename ContainerType::ParticleVector |
Public Types inherited from amrex::MFIter | |
| enum | Flags { Tiling = 0x01 , AllBoxes = 0x02 , NoTeamBarrier = 0x04 } |
| Flags that specify tiling modes. All these flags are off by default. More... | |
Public Member Functions | |
| ParIterBase_impl (ContainerRef pc, int level) | |
| ParIterBase_impl (ContainerRef pc, int level, MFItInfo &info) | |
| void | operator++ () |
| ParticleTileRef | GetParticleTile () const |
| AoSRef | GetArrayOfStructs () const |
| SoARef | GetStructOfArrays () const |
| int | numParticles () const |
| int | numRealParticles () const |
| int | numNeighborParticles () const |
| Long | capacity () const |
| int | GetLevel () const |
| std::pair< int, int > | GetPairIndex () const |
| const Geometry & | Geom (int lev) const |
Public Member Functions inherited from amrex::MFIter | |
| MFIter (const FabArrayBase &fabarray, unsigned char flags_=0) | |
| The default constructor does not enable tiling (flags_ is set to 0 by default). However, the tiling mode can be enabled by explicitly turning the tiling flag on (i.e. flags_ = Tiling). The tile size in this case is defined by FabArrayBase::mfiter_tile_size. | |
| MFIter (const FabArrayBase &fabarray, bool do_tiling) | |
| Enable tiling with the default tile size, which is defined by FabArrayBase::mfiter_tile_size. | |
| MFIter (const FabArrayBase &fabarray, const IntVect &tilesize, unsigned char flags_=0) | |
| Enable tiling with explicit tile size and flags (See type Flags for more information) | |
| MFIter (const BoxArray &ba, const DistributionMapping &dm, unsigned char flags_=0) | |
| MFIter (const BoxArray &ba, const DistributionMapping &dm, bool do_tiling) | |
| MFIter (const BoxArray &ba, const DistributionMapping &dm, const IntVect &tilesize, unsigned char flags_=0) | |
| MFIter (const FabArrayBase &fabarray, const MFItInfo &info) | |
| MFIter (const BoxArray &ba, const DistributionMapping &dm, const MFItInfo &info) | |
| MFIter (MFIter &&rhs)=default | |
| MFIter (MFIter const &)=delete | |
| MFIter & | operator= (MFIter const &)=delete |
| MFIter & | operator= (MFIter &&)=delete |
| ~MFIter () | |
| Box | tilebox () const noexcept |
| Return the tile Box at the current index. | |
| Box | tilebox (const IntVect &nodal) const noexcept |
| Return the tilebox with provided nodal flag. | |
| Box | tilebox (const IntVect &nodal, const IntVect &ngrow) const noexcept |
| Return the tilebox with provided nodal flag and grown cells. | |
| Box | nodaltilebox (int dir=-1) const noexcept |
| Return the dir-nodal (or all nodal if dir<0) Box at the current index. | |
| Box | growntilebox (int ng=-1000000) const noexcept |
| Return the tile box at the current index grown to include ghost cells. | |
| Box | growntilebox (const IntVect &ng) const noexcept |
| Box | grownnodaltilebox (int dir=-1, int ng=-1000000) const noexcept |
| Return the dir-nodal (or all nodal if dir<0) box grown to include ghost cells. | |
| Box | grownnodaltilebox (int dir, const IntVect &ng) const noexcept |
| Box | validbox () const noexcept |
| Return the valid Box in which the current tile resides. | |
| Box | fabbox () const noexcept |
| Return the Box of the FAB at which we currently point. | |
| void | operator++ () noexcept |
| Increment iterator to the next tile we own. | |
| bool | isValid () const noexcept |
| Is the iterator valid i.e. is it associated with a FAB? | |
| int | index () const noexcept |
| The index into the underlying BoxArray of the current FAB. | |
| int | length () const noexcept |
| The number of indices. | |
| int | LocalTileIndex () const noexcept |
| The current local tile index in the current grid;. | |
| int | numLocalTiles () const noexcept |
| The the number of tiles in the current grid;. | |
| int | LocalIndex () const noexcept |
| Return local index into the vector of fab pointers, m_fabs_v When AllBoxes is on, local_index_map is a nullptr and local index is current index. | |
| const FabArrayBase & | theFabArrayBase () const noexcept |
| Constant reference to FabArray over which we're iterating. | |
| int | tileIndex () const noexcept |
| const DistributionMapping & | DistributionMap () const noexcept |
| void | Finalize () |
Static Public Attributes | |
| static constexpr int | NStructReal = ParticleType::NReal |
| static constexpr int | NStructInt = ParticleType::NInt |
Protected Attributes | |
| int | m_level |
| ParticleTilePtr | m_particle_current_tile = nullptr |
| ContainerPtr | m_pc |
Protected Attributes inherited from amrex::MFIter | |
| std::unique_ptr< FabArrayBase > | m_fa |
| This must be the first member! | |
| const FabArrayBase * | fabArray |
| IntVect | tile_size |
| unsigned char | flags |
| int | currentIndex |
| int | beginIndex |
| int | endIndex |
| int | streams |
| IndexType | typ |
| bool | dynamic |
| bool | finalized = false |
| DeviceSync | device_sync |
| DeviceSync | device_sync_pre {true} |
| DeviceSync | device_sync_post {true} |
| const Vector< int > * | index_map |
| const Vector< int > * | local_index_map |
| const Vector< Box > * | tile_array |
| const Vector< int > * | local_tile_index_map |
| const Vector< int > * | num_local_tiles |
Additional Inherited Members | |
Static Public Member Functions inherited from amrex::MFIter | |
| static int | allowMultipleMFIters (int allow) |
| static int | currentDepth () |
Protected Member Functions inherited from amrex::MFIter | |
| void | Initialize () |
Static Protected Attributes inherited from amrex::MFIter | |
| static int | nextDynamicIndex = std::numeric_limits<int>::min() |
| static int | depth = 0 |
| static int | allow_multiple_mfiters = 0 |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::AoS = typename ContainerType::AoS |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ContainerType = ParticleContainer_impl<T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor> |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::IntVector = typename SoA::IntVector |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ParticleTileType = typename ContainerType::ParticleTileType |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ParticleType = T_ParticleType |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ParticleVector = typename ContainerType::ParticleVector |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::RealVector = typename SoA::RealVector |
| using amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::SoA = typename ContainerType::SoA |
| amrex::ParIterBase_impl< is_const, T_ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ParIterBase_impl | ( | ContainerRef | pc, |
| int | level | ||
| ) |
| amrex::ParIterBase_impl< is_const, ParticleType, NArrayReal, NArrayInt, Allocator, CellAssignor >::ParIterBase_impl | ( | ContainerRef | pc, |
| int | level, | ||
| MFItInfo & | info | ||
| ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
staticconstexpr |
|
staticconstexpr |