aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/RigidInjectedParticleContainer.cpp
diff options
context:
space:
mode:
authorGravatar Remi Lehe <remi.lehe@normalesup.org> 2019-08-05 22:16:43 -0700
committerGravatar Remi Lehe <remi.lehe@normalesup.org> 2019-08-05 22:16:43 -0700
commit6aec2be5712738b76f75c99fc181712eda34509b (patch)
treed1b4b3e3882f31e6809ba812e6d8e2f8ac86da7b /Source/Particles/RigidInjectedParticleContainer.cpp
parentb9fca364dda86db295ad66895e900fb30785565e (diff)
parent0797099828c04e96c88c093b96d22480e5391b06 (diff)
downloadWarpX-6aec2be5712738b76f75c99fc181712eda34509b.tar.gz
WarpX-6aec2be5712738b76f75c99fc181712eda34509b.tar.zst
WarpX-6aec2be5712738b76f75c99fc181712eda34509b.zip
Merge branch 'dev' into psatd_pml
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.cpp')
-rw-r--r--Source/Particles/RigidInjectedParticleContainer.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.cpp b/Source/Particles/RigidInjectedParticleContainer.cpp
index 79396e6af..83556e69f 100644
--- a/Source/Particles/RigidInjectedParticleContainer.cpp
+++ b/Source/Particles/RigidInjectedParticleContainer.cpp
@@ -421,6 +421,7 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt,
//
pti.GetPosition(m_xp[thread_num], m_yp[thread_num], m_zp[thread_num]);
+#ifdef WARPX_RZ
const std::array<Real,3>& xyzmin_grid = WarpX::LowerCorner(box, lev);
const int* ixyzmin_grid = box.loVect();
@@ -446,6 +447,12 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt,
BL_TO_FORTRAN_ANYD(bzfab),
&ll4symtry, &WarpX::l_lower_order_in_v, &WarpX::do_nodal,
&lvect_fieldgathe, &WarpX::field_gathering_algo);
+#else
+ int e_is_nodal = Ex.is_nodal() and Ey.is_nodal() and Ez.is_nodal();
+ FieldGather(pti, Exp, Eyp, Ezp, Bxp, Byp, Bzp,
+ &exfab, &eyfab, &ezfab, &bxfab, &byfab, &bzfab,
+ Ex.nGrow(), e_is_nodal, 0, np, thread_num, lev, lev);
+#endif
// Save the position and momenta, making copies
auto uxp_save = uxp;
@@ -459,9 +466,6 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt,
Real* const AMREX_RESTRICT uxpp = uxp.dataPtr();
Real* const AMREX_RESTRICT uypp = uyp.dataPtr();
Real* const AMREX_RESTRICT uzpp = uzp.dataPtr();
- const Real* const AMREX_RESTRICT uxp_savep = uxp_save.dataPtr();
- const Real* const AMREX_RESTRICT uyp_savep = uyp_save.dataPtr();
- const Real* const AMREX_RESTRICT uzp_savep = uzp_save.dataPtr();
const Real* const AMREX_RESTRICT Expp = Exp.dataPtr();
const Real* const AMREX_RESTRICT Eypp = Eyp.dataPtr();
const Real* const AMREX_RESTRICT Ezpp = Ezp.dataPtr();