|
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 (WarpXParticleContainer::Base &tmp, ElectrostaticSolverAlgo electrostatic_solver_id, bool is_full_diagnostic) |
| void | storeFieldOnParticles (WarpXParticleContainer::Base &tmp, bool is_full_diagnostic, bool save_Ex, bool save_Ey, bool save_Ez, bool save_Bx, bool save_By, bool save_Bz) |
| Gathers fields from a MultiFab to the macroparticles. Adds a runtime component of the particle container to store it. | |
|
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 storeFieldOnParticles | ( | WarpXParticleContainer::Base & | tmp, |
| bool | is_full_diagnostic, | ||
| bool | save_Ex, | ||
| bool | save_Ey, | ||
| bool | save_Ez, | ||
| bool | save_Bx, | ||
| bool | save_By, | ||
| bool | save_Bz ) |
Gathers fields 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 |
| is_full_diagnostic | Whether this diagnostic is a full diagnostic |
| save_Ex | Whether the Ex field is saved |
| save_Ey | Whether the Ex field is saved |
| save_Ez | Whether the Ex field is saved |
| save_Bx | Whether the Ex field is saved |
| save_By | Whether the Ex field is saved |
| save_Bz | Whether the Ex field is saved |
| void storePhiOnParticles | ( | WarpXParticleContainer::Base & | 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 |