#include <CartPPVirtualRegion.hpp>
Public Member Functions | |
void | Init (const std::vector< int > &isperiod0, const std::vector< std::vector< Real >> &gb_domain_size0) |
Init. More... | |
void | ExtendVirtualParticleByBoundary (dmdyn::SmartPList< dmdyn::ParticleField< N_dim >> &pflist, const Real r) |
add extral particle to virtual list More... | |
void | RecoverVirtualParticleByExistData (dmdyn::SmartPList< dmdyn::ParticleField< N_dim >> &pflist) |
Recover virtual particle in list from existed Data. More... | |
Public Attributes | |
std::vector< std::vector< int > > | local_index |
std::vector< std::pair< int, Vecr< N_dim > > > | ind_dpos |
std::vector< int > | isperiod |
std::vector< std::vector< Real > > | gb_domain_size |
|
inline |
add extral particle to virtual list
For example, for a position [0.1,0.1]. if the width of virtual region is 0.5, domain sizes lx and lz are 1,2, respectively. we will add new positins [1.1, 0.1],[1.1, 1.1] and [0.1,1.1] to virtual list
pflist | |
r |
References dmdyn::AddVirtualListOnly, solver::ppsol::CartPPVirtualRegion< N_dim >::gb_domain_size, solver::ppsol::CartPPVirtualRegion< N_dim >::ind_dpos, solver::ppsol::CartPPVirtualRegion< N_dim >::isperiod, dmdyn::ParticleField< N_dim >::pdata, and dmdyn::ReadOnly.
|
inline |
Init.
isperiod0 | flag of peroid, from cartDataSpace |
gb_domain_size0 | global domian size, from cartDataSpace |
References solver::ppsol::CartPPVirtualRegion< N_dim >::gb_domain_size, and solver::ppsol::CartPPVirtualRegion< N_dim >::isperiod.
|
inline |
Recover virtual particle in list from existed Data.
For example, ind_pos stored index of particle and corresponding increment dx with respect to x(index). it means that the virtual particles will be recovered one-by-one through ind_pos.
pflist |
References dmdyn::AddVirtualListOnly, solver::ppsol::CartPPVirtualRegion< N_dim >::ind_dpos, dmdyn::ParticleField< N_dim >::pdata, and dmdyn::ReadOnly.
std::vector<std::vector<Real> > solver::ppsol::CartPPVirtualRegion< N_dim >::gb_domain_size |
std::vector<std::pair<int, Vecr<N_dim> > > solver::ppsol::CartPPVirtualRegion< N_dim >::ind_dpos |
std::vector<int> solver::ppsol::CartPPVirtualRegion< N_dim >::isperiod |
std::vector<std::vector<int> > solver::ppsol::CartPPVirtualRegion< N_dim >::local_index |