diff options
author | 2019-10-14 10:28:20 -0700 | |
---|---|---|
committer | 2019-10-14 10:28:20 -0700 | |
commit | 8e2ecfe27b9d464dcd40031ae5ebc4e3781963e2 (patch) | |
tree | 3277243da9cb31cbe0b35d3d79bc6304be53bffc /Source/Particles/RigidInjectedParticleContainer.cpp | |
parent | 46baf306dfa45a5a966452664d8f041e608711eb (diff) | |
download | WarpX-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.cpp | 8 |
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"); }; |