diff options
author | 2019-08-02 19:05:17 -0700 | |
---|---|---|
committer | 2019-08-02 19:05:17 -0700 | |
commit | 1c137793dcfe35dc164eec1ec900f3ad8efc83ed (patch) | |
tree | eca1c70febb568bc8a1726d90dbfb9e5cba8cd21 /Source/Particles/RigidInjectedParticleContainer.cpp | |
parent | d2b7952caeccf6fad0a45d8dea3dfb84d6559a04 (diff) | |
parent | 1f54f88a93486d189c96333916edeb289631ec8f (diff) | |
download | WarpX-1c137793dcfe35dc164eec1ec900f3ad8efc83ed.tar.gz WarpX-1c137793dcfe35dc164eec1ec900f3ad8efc83ed.tar.zst WarpX-1c137793dcfe35dc164eec1ec900f3ad8efc83ed.zip |
Merge pull request #254 from ECP-WarpX/fix_pushp_gather
PushP now uses FIeldGather
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.cpp')
-rw-r--r-- | Source/Particles/RigidInjectedParticleContainer.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.cpp b/Source/Particles/RigidInjectedParticleContainer.cpp index 84c14dd7c..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; |