aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/RigidInjectedParticleContainer.cpp
diff options
context:
space:
mode:
authorGravatar Yin-YinjianZhao <yinjianzhao@lbl.gov> 2019-10-14 10:28:20 -0700
committerGravatar Yin-YinjianZhao <yinjianzhao@lbl.gov> 2019-10-14 10:28:20 -0700
commit8e2ecfe27b9d464dcd40031ae5ebc4e3781963e2 (patch)
tree3277243da9cb31cbe0b35d3d79bc6304be53bffc /Source/Particles/RigidInjectedParticleContainer.cpp
parent46baf306dfa45a5a966452664d8f041e608711eb (diff)
downloadWarpX-8e2ecfe27b9d464dcd40031ae5ebc4e3781963e2.tar.gz
WarpX-8e2ecfe27b9d464dcd40031ae5ebc4e3781963e2.tar.zst
WarpX-8e2ecfe27b9d464dcd40031ae5ebc4e3781963e2.zip
Add Higuera-Cary pusher
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.cpp')
-rw-r--r--Source/Particles/RigidInjectedParticleContainer.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.cpp b/Source/Particles/RigidInjectedParticleContainer.cpp
index 891ade76d..aeaac7194 100644
--- a/Source/Particles/RigidInjectedParticleContainer.cpp
+++ b/Source/Particles/RigidInjectedParticleContainer.cpp
@@ -13,6 +13,7 @@
#include <WarpXAlgorithmSelection.H>
#include <UpdateMomentumBoris.H>
#include <UpdateMomentumVay.H>
+#include <UpdateMomentumHigueraCary.H>
using namespace amrex;
@@ -443,6 +444,13 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt,
Expp[i], Eypp[i], Ezpp[i], Bxpp[i], Bypp[i], Bzpp[i], q, m, dt);
}
);
+ } else if (WarpX::particle_pusher_algo == ParticlePusherAlgo::HigueraCary) {
+ amrex::ParallelFor( pti.numParticles(),
+ [=] AMREX_GPU_DEVICE (long i) {
+ UpdateMomentumHigueraCary( uxpp[i], uypp[i], uzpp[i],
+ Expp[i], Eypp[i], Ezpp[i], Bxpp[i], Bypp[i], Bzpp[i], q, m, dt);
+ }
+ );
} else {
amrex::Abort("Unknown particle pusher");
};