Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
shammodels::zeus::modules::GhostZones< Tvec, TgridVec > Class Template Reference
+ Collaboration diagram for shammodels::zeus::modules::GhostZones< Tvec, TgridVec >:

Public Types

using Tscal = shambase::VecComponent< Tvec >
 
using Tgridscal = shambase::VecComponent< TgridVec >
 
using Config = SolverConfig< Tvec, TgridVec >
 
using Storage = SolverStorage< Tvec, TgridVec, u64 >
 

Public Member Functions

 GhostZones (ShamrockCtx &context, Config &solver_config, Storage &storage)
 
void build_ghost_cache ()
 
shambase::DistributedDataShared< shamrock::patch::PatchDataLayercommunicate_pdat (const std::shared_ptr< shamrock::patch::PatchDataLayerLayout > &pdl_ptr, shambase::DistributedDataShared< shamrock::patch::PatchDataLayer > &&interf)
 
template<class T >
shambase::DistributedDataShared< PatchDataField< T > > communicate_pdat_field (shambase::DistributedDataShared< PatchDataField< T > > &&interf)
 
template<class T , class Tmerged >
shambase::DistributedData< Tmerged > merge_native (shambase::DistributedDataShared< T > &&interfs, std::function< Tmerged(const shamrock::patch::Patch, shamrock::patch::PatchDataLayer &pdat)> init, std::function< void(Tmerged &, T &)> appender)
 
void exchange_ghost ()
 
template<class T >
shamrock::ComputeField< T > exchange_compute_field (shamrock::ComputeField< T > &in)
 

Public Attributes

ShamrockCtxcontext
 
Configsolver_config
 
Storagestorage
 

Static Public Attributes

static constexpr u32 dim = shambase::VectorProperties<Tvec>::dimension
 

Detailed Description

template<class Tvec, class TgridVec>
class shammodels::zeus::modules::GhostZones< Tvec, TgridVec >

Definition at line 26 of file GhostZones.hpp.

Member Typedef Documentation

◆ Config

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::Config = SolverConfig<Tvec, TgridVec>

Definition at line 32 of file GhostZones.hpp.

◆ Storage

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::Storage = SolverStorage<Tvec, TgridVec, u64>

Definition at line 33 of file GhostZones.hpp.

◆ Tgridscal

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::Tgridscal = shambase::VecComponent<TgridVec>

Definition at line 29 of file GhostZones.hpp.

◆ Tscal

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::Tscal = shambase::VecComponent<Tvec>

Definition at line 28 of file GhostZones.hpp.

Constructor & Destructor Documentation

◆ GhostZones()

template<class Tvec , class TgridVec >
shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::GhostZones ( ShamrockCtx context,
Config solver_config,
Storage storage 
)
inline

Definition at line 39 of file GhostZones.hpp.

Member Function Documentation

◆ build_ghost_cache()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::build_ghost_cache ( )

Definition at line 121 of file GhostZones.cpp.

◆ communicate_pdat()

template<class Tvec , class TgridVec >
shambase::DistributedDataShared< shamrock::patch::PatchDataLayer > shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::communicate_pdat ( const std::shared_ptr< shamrock::patch::PatchDataLayerLayout > &  pdl_ptr,
shambase::DistributedDataShared< shamrock::patch::PatchDataLayer > &&  interf 
)

Definition at line 206 of file GhostZones.cpp.

◆ communicate_pdat_field()

template<class Tvec , class TgridVec >
template<class T >
shambase::DistributedDataShared< PatchDataField< T > > shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::communicate_pdat_field ( shambase::DistributedDataShared< PatchDataField< T > > &&  interf)

Definition at line 243 of file GhostZones.cpp.

◆ exchange_compute_field()

template<class Tvec , class TgridVec >
template<class T >
shamrock::ComputeField< T > shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::exchange_compute_field ( shamrock::ComputeField< T > &  in)

Definition at line 431 of file GhostZones.cpp.

◆ exchange_ghost()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::exchange_ghost ( )

Definition at line 305 of file GhostZones.cpp.

◆ merge_native()

template<class Tvec , class TgridVec >
template<class T , class Tmerged >
shambase::DistributedData< Tmerged > shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::merge_native ( shambase::DistributedDataShared< T > &&  interfs,
std::function< Tmerged(const shamrock::patch::Patch, shamrock::patch::PatchDataLayer &pdat)>  init,
std::function< void(Tmerged &, T &)>  appender 
)

Definition at line 277 of file GhostZones.cpp.

Member Data Documentation

◆ context

template<class Tvec , class TgridVec >
ShamrockCtx& shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::context

Definition at line 35 of file GhostZones.hpp.

◆ dim

template<class Tvec , class TgridVec >
constexpr u32 shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::dim = shambase::VectorProperties<Tvec>::dimension
staticconstexpr

Definition at line 30 of file GhostZones.hpp.

◆ solver_config

template<class Tvec , class TgridVec >
Config& shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::solver_config

Definition at line 36 of file GhostZones.hpp.

◆ storage

template<class Tvec , class TgridVec >
Storage& shammodels::zeus::modules::GhostZones< Tvec, TgridVec >::storage

Definition at line 37 of file GhostZones.hpp.


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