diff options
author | 2019-07-16 10:38:33 -0700 | |
---|---|---|
committer | 2019-07-16 10:38:33 -0700 | |
commit | f2b14c9e3daf0b3896c497572cdb1a1c088b5596 (patch) | |
tree | 2baf1f1d1284970a06dc6a0cc58f3ac8d29ce046 /Source/Particles/PhysicalParticleContainer.cpp | |
parent | 89c5652f379a4ed1f4f4f134d0b0dd68d84da77d (diff) | |
download | WarpX-f2b14c9e3daf0b3896c497572cdb1a1c088b5596.tar.gz WarpX-f2b14c9e3daf0b3896c497572cdb1a1c088b5596.tar.zst WarpX-f2b14c9e3daf0b3896c497572cdb1a1c088b5596.zip |
Update gaminv in the momentum push (in c++)
Diffstat (limited to 'Source/Particles/PhysicalParticleContainer.cpp')
-rw-r--r-- | Source/Particles/PhysicalParticleContainer.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/Particles/PhysicalParticleContainer.cpp b/Source/Particles/PhysicalParticleContainer.cpp index a1d9a9afb..9441a4d91 100644 --- a/Source/Particles/PhysicalParticleContainer.cpp +++ b/Source/Particles/PhysicalParticleContainer.cpp @@ -1754,6 +1754,7 @@ PhysicalParticleContainer::PushPX(WarpXParIter& pti, Real* AMREX_RESTRICT x = xp.dataPtr(); Real* AMREX_RESTRICT y = yp.dataPtr(); Real* AMREX_RESTRICT z = zp.dataPtr(); + Real* AMREX_RESTRICT gi = giv.dataPtr(); Real* AMREX_RESTRICT ux = attribs[PIdx::ux].dataPtr(); Real* AMREX_RESTRICT uy = attribs[PIdx::uy].dataPtr(); Real* AMREX_RESTRICT uz = attribs[PIdx::uz].dataPtr(); @@ -1775,7 +1776,7 @@ PhysicalParticleContainer::PushPX(WarpXParIter& pti, if (WarpX::particle_pusher_algo == ParticlePusherAlgo::Boris){ amrex::ParallelFor( pti.numParticles(), [=] AMREX_GPU_DEVICE (long i) { - UpdateMomentumBoris( ux[i], uy[i], uz[i], + UpdateMomentumBoris( ux[i], uy[i], uz[i], gi[i], Ex[i], Ey[i], Ez[i], Bx[i], By[i], Bz[i], q, m, dt); UpdatePosition( x[i], y[i], z[i], ux[i], uy[i], uz[i], dt ); @@ -1784,7 +1785,7 @@ PhysicalParticleContainer::PushPX(WarpXParIter& pti, } else if (WarpX::particle_pusher_algo == ParticlePusherAlgo::Vay) { amrex::ParallelFor( pti.numParticles(), [=] AMREX_GPU_DEVICE (long i) { - UpdateMomentumVay( ux[i], uy[i], uz[i], + UpdateMomentumVay( ux[i], uy[i], uz[i], gi[i], Ex[i], Ey[i], Ez[i], Bx[i], By[i], Bz[i], q, m, dt); UpdatePosition( x[i], y[i], z[i], ux[i], uy[i], uz[i], dt ); |