diff options
author | 2020-01-28 13:24:49 -0800 | |
---|---|---|
committer | 2020-01-28 13:24:49 -0800 | |
commit | 80074a19c67a17a9b8169dc64004322bbd0c31b5 (patch) | |
tree | bc5f1c513e58c9fb5e51b43bceaad0c02eda4576 /Source/Particles/PhotonParticleContainer.cpp | |
parent | f5328965e6bcb338e50be09bb9fa6af8ccc6a6e6 (diff) | |
download | WarpX-80074a19c67a17a9b8169dc64004322bbd0c31b5.tar.gz WarpX-80074a19c67a17a9b8169dc64004322bbd0c31b5.tar.zst WarpX-80074a19c67a17a9b8169dc64004322bbd0c31b5.zip |
switch deposition, gather, and pushers to use the get / set position functor
Diffstat (limited to 'Source/Particles/PhotonParticleContainer.cpp')
-rw-r--r-- | Source/Particles/PhotonParticleContainer.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/Source/Particles/PhotonParticleContainer.cpp b/Source/Particles/PhotonParticleContainer.cpp index a4d738f93..86cc206a7 100644 --- a/Source/Particles/PhotonParticleContainer.cpp +++ b/Source/Particles/PhotonParticleContainer.cpp @@ -14,7 +14,7 @@ // Import low-level single-particle kernels #include <UpdatePositionPhoton.H> - +#include <GetAndSetPosition.H> using namespace amrex; @@ -72,14 +72,19 @@ PhotonParticleContainer::PushPX(WarpXParIter& pti, Real dt, DtType a_dt_type) if (WarpX::do_back_transformed_diagnostics && do_back_transformed_diagnostics) { - copy_attribs(pti, pstruct); + copy_attribs(pti); } + const auto get_position = GetPosition(pti); + auto set_position = SetPosition(pti); + amrex::ParallelFor( pti.numParticles(), [=] AMREX_GPU_DEVICE (long i) { - - UpdatePositionPhoton( pstruct[i], ux[i], uy[i], uz[i], dt ); + Real x, y, z; + get_position(i, x, y, z); + UpdatePositionPhoton( x, y, z, ux[i], uy[i], uz[i], dt ); + set_position(i, x, y, z); } ); } |