diff options
author | 2019-10-22 02:41:37 -0500 | |
---|---|---|
committer | 2019-10-22 02:41:37 -0500 | |
commit | 4b816d568b298c83bcc272c78a95aa9b790c9e5c (patch) | |
tree | 04b237145fa21db8b4797cafa139bdd588c0f117 /Source/Particles/RigidInjectedParticleContainer.cpp | |
parent | 9ee0c52e47748619baa44abd04653a9b8bd15c54 (diff) | |
parent | 366f46aa9a4b9ea56f0846795aa3900b99791923 (diff) | |
download | WarpX-4b816d568b298c83bcc272c78a95aa9b790c9e5c.tar.gz WarpX-4b816d568b298c83bcc272c78a95aa9b790c9e5c.tar.zst WarpX-4b816d568b298c83bcc272c78a95aa9b790c9e5c.zip |
Merge branch 'dev' into classical_radiation_reaction
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.cpp')
-rw-r--r-- | Source/Particles/RigidInjectedParticleContainer.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.cpp b/Source/Particles/RigidInjectedParticleContainer.cpp index 24d4ac24c..535ffec6f 100644 --- a/Source/Particles/RigidInjectedParticleContainer.cpp +++ b/Source/Particles/RigidInjectedParticleContainer.cpp @@ -14,6 +14,7 @@ #include <UpdateMomentumBoris.H> #include <UpdateMomentumVay.H> #include <UpdateMomentumBorisWithRadiationReaction.H> +#include <UpdateMomentumHigueraCary.H> using namespace amrex; @@ -391,9 +392,9 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt, const FArrayBox& byfab = By[pti]; const FArrayBox& bzfab = Bz[pti]; - Exp.assign(np,0.0); - Eyp.assign(np,0.0); - Ezp.assign(np,0.0); + Exp.assign(np,WarpX::E_external[0]); + Eyp.assign(np,WarpX::E_external[1]); + Ezp.assign(np,WarpX::E_external[2]); Bxp.assign(np,WarpX::B_external[0]); Byp.assign(np,WarpX::B_external[1]); Bzp.assign(np,WarpX::B_external[2]); @@ -463,6 +464,13 @@ RigidInjectedParticleContainer::PushP (int lev, Real dt, 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"); }; |