WarpX
Loading...
Searching...
No Matches
ParticleIO.cpp File Reference
#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)
 

Enumeration Type Documentation

◆ FieldType

enum class warpx::fields::FieldType : int
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 .

Function Documentation

◆ storePhiOnParticles()

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.

Parameters
tmpthe particle container on which to store the gathered field
electrostatic_solver_idthe type of electrostatic solver used
is_full_diagnosticwhether this diagnostic is a full diagnostic