aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/WarpXParticleContainer.H
diff options
context:
space:
mode:
authorGravatar Andrew Myers <atmyers@lbl.gov> 2020-05-25 11:47:03 -0700
committerGravatar GitHub <noreply@github.com> 2020-05-25 11:47:03 -0700
commitd9d9721d80ff2f6ceda3c1a6e32e9ab31b7f81c6 (patch)
treee9ad07be8e464344930ab0bdef5e8cb45c89ea4e /Source/Particles/WarpXParticleContainer.H
parent0b411e8768bd7704d1d22bccf24a853e1918b581 (diff)
downloadWarpX-d9d9721d80ff2f6ceda3c1a6e32e9ab31b7f81c6.tar.gz
WarpX-d9d9721d80ff2f6ceda3c1a6e32e9ab31b7f81c6.tar.zst
WarpX-d9d9721d80ff2f6ceda3c1a6e32e9ab31b7f81c6.zip
Merge particle push (#1036)
* add functor for doing the tmp particles copy for the back-transformed diagnosti * merge the particle push options into one kernel * EOL * fix assertion * allow this functor to be constructed even it we aren't doing the back transformed diagnostics * EOL * init this val to 0.0 * put the push type selection in a device function so it can be reused * EOL * add docstring for the pusher selector function * EOL
Diffstat (limited to 'Source/Particles/WarpXParticleContainer.H')
-rw-r--r--Source/Particles/WarpXParticleContainer.H6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/Particles/WarpXParticleContainer.H b/Source/Particles/WarpXParticleContainer.H
index 477e70ce9..8bc4491d7 100644
--- a/Source/Particles/WarpXParticleContainer.H
+++ b/Source/Particles/WarpXParticleContainer.H
@@ -407,10 +407,14 @@ protected:
amrex::Vector<amrex::FArrayBox> local_jy;
amrex::Vector<amrex::FArrayBox> local_jz;
+public:
using DataContainer = amrex::Gpu::ManagedDeviceVector<amrex::ParticleReal>;
using PairIndex = std::pair<int, int>;
+ using TmpParticleTile = std::array<DataContainer, TmpIdx::nattribs>;
+ using TmpParticles = amrex::Vector<std::map<PairIndex, TmpParticleTile> >;
- amrex::Vector<std::map<PairIndex, std::array<DataContainer, TmpIdx::nattribs> > > tmp_particle_data;
+protected:
+ TmpParticles tmp_particle_data;
/**
* When using runtime components, AMReX requires to touch all tiles