|
WarpX
|
#include "Fields.H"#include "Particles/ParticleIO.H"#include "Particles/Pusher/GetAndSetPosition.H"#include "Particles/MultiParticleContainer.H"#include "Particles/PhysicalParticleContainer.H"#include "Particles/LaserParticleContainer.H"#include "Particles/RigidInjectedParticleContainer.H"#include "Particles/WarpXParticleContainer.H"#include "Utils/TextMsg.H"#include "WarpX.H"#include "ablastr/fields/MultiFabRegister.H"#include <ablastr/utils/text/StreamUtils.H>#include <AMReX_Array.H>#include <AMReX_Array4.H>#include <AMReX_BLassert.H>#include <AMReX_Config.H>#include <AMReX_FArrayBox.H>#include <AMReX_FabArray.H>#include <AMReX_Geometry.H>#include <AMReX_GpuControl.H>#include <AMReX_GpuLaunch.H>#include <AMReX_GpuQualifiers.H>#include <AMReX_IndexType.H>#include <AMReX_MultiFab.H>#include <AMReX_ParallelDescriptor.H>#include <AMReX_ParIter.H>#include <AMReX_ParticleIO.H>#include <AMReX_Print.H>#include <AMReX_REAL.H>#include <AMReX_Vector.H>#include <algorithm>#include <memory>#include <string>#include <sstream>#include <vector>Enumerations | |
| enum class | FieldType |
Functions | |
| void | storePhiOnParticles (PinnedMemoryParticleContainer &tmp, ElectrostaticSolverAlgo electrostatic_solver_id, bool is_full_diagnostic) |
|
strong |
Unique identifiers for WarpX scalar and vector fields.
These are implemented as amrex::MultiFab (one or one per component "direction", respectively) and stored in the ablastr::fields::MultiFabRegister .
| void storePhiOnParticles | ( | PinnedMemoryParticleContainer & | tmp, |
| ElectrostaticSolverAlgo | electrostatic_solver_id, | ||
| bool | is_full_diagnostic ) |
Gathers phi (electrostatic potential) from a MultiFab to the macroparticles. Adds a runtime component of the particle container to store it.
| tmp | the particle container on which to store the gathered field |
| electrostatic_solver_id | the type of electrostatic solver used |
| is_full_diagnostic | whether this diagnostic is a full diagnostic |