diff options
Diffstat (limited to 'Source/Particles/PhysicalParticleContainer.cpp')
-rw-r--r-- | Source/Particles/PhysicalParticleContainer.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/Source/Particles/PhysicalParticleContainer.cpp b/Source/Particles/PhysicalParticleContainer.cpp index cd22465df..ccd5edf6c 100644 --- a/Source/Particles/PhysicalParticleContainer.cpp +++ b/Source/Particles/PhysicalParticleContainer.cpp @@ -1852,10 +1852,12 @@ PhysicalParticleContainer::Evolve (int lev, WARPX_PROFILE_VAR_STOP(blp_fg); - // // Current Deposition - // - if (! skip_deposition) { + if (skip_deposition == false) + { + // Deposit at t_{n+1/2} + amrex::Real relative_time = -0.5_rt * dt; + int* AMREX_RESTRICT ion_lev; if (do_field_ionization){ ion_lev = pti.GetiAttribs(particle_icomps["ionizationLevel"]).dataPtr(); @@ -1865,12 +1867,14 @@ PhysicalParticleContainer::Evolve (int lev, // Deposit inside domains DepositCurrent(pti, wp, uxp, uyp, uzp, ion_lev, &jx, &jy, &jz, 0, np_current, thread_num, - lev, lev, dt, -0.5_rt); // Deposit current at t_{n+1/2} - if (has_buffer){ + lev, lev, dt, relative_time); + + if (has_buffer) + { // Deposit in buffers DepositCurrent(pti, wp, uxp, uyp, uzp, ion_lev, cjx, cjy, cjz, np_current, np-np_current, thread_num, - lev, lev-1, dt, -0.5_rt); // Deposit current at t_{n+1/2} + lev, lev-1, dt, relative_time); } } // end of "if do_electrostatic == ElectrostaticSolverAlgo::None" } // end of "if do_not_push" |