43 using namespace amrex;
54 using PinnedParIter =
typename T_ParticleContainer::ParIterType;
56 const int nLevels = pc->finestLevel();
57 for (
int lev=0; lev<=nLevels; lev++){
59#pragma omp parallel if (Gpu::notInLaunchRegion())
61 for (PinnedParIter pti(*pc, lev); pti.isValid(); ++pti)
67 auto& attribs = pti.GetStructOfArrays().GetRealData();
72 const long np = pti.numParticles();
void particlesConvertUnits(ConvertDirection convert_direction, T_ParticleContainer *pc, amrex::ParticleReal const mass)
Definition ParticleIO.H:41
ConvertDirection
Definition ParticleIO.H:22
@ WarpX_to_SI
Definition ParticleIO.H:22
@ SI_to_WarpX
Definition ParticleIO.H:22
void storePhiOnParticles(PinnedMemoryParticleContainer &tmp, ElectrostaticSolverAlgo electrostatic_solver_id, bool is_full_diagnostic)
Definition ParticleIO.cpp:253
amrex::ParticleContainerPureSoA< PIdx::nattribs, 0, amrex::PinnedArenaAllocator > PinnedMemoryParticleContainer
Definition PinnedMemoryParticleContainer.H:6
std::enable_if_t< std::is_integral_v< T > > ParallelFor(TypeList< CTOs... > ctos, std::array< int, sizeof...(CTOs)> const &runtime_options, T N, F &&f)