#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 |