WarpX
|
#include "Particles/Gather/FieldGather.H"
#include "Particles/Gather/GetExternalFields.H"
#include "Particles/Pusher/GetAndSetPosition.H"
#include "Particles/WarpXParticleContainer.H"
#include "QEDInternals/QuantumSyncEngineWrapper.H"
#include "Utils/WarpXConst.H"
#include <AMReX_Array.H>
#include <AMReX_Array4.H>
#include <AMReX_Dim3.H>
#include <AMReX_Extension.H>
#include <AMReX_GpuLaunch.H>
#include <AMReX_GpuQualifiers.H>
#include <AMReX_IndexType.H>
#include <AMReX_ParticleTile.H>
#include <AMReX_REAL.H>
#include <AMReX_BaseFwd.H>
#include <algorithm>
#include <limits>
Go to the source code of this file.
Classes | |
class | PhotonEmissionFilterFunc |
Filter functor for the QED photon emission process. More... | |
class | PhotonEmissionTransformFunc |
Transform functor for the QED photon emission process. More... | |
Functions | |
template<typename PTile > | |
void | cleanLowEnergyPhotons (PTile &ptile, const int old_size, const int num_added, const amrex::ParticleReal energy_threshold) |
Free function to call to remove immediately low energy photons by setting their ID to -1. Photons with extremely small energy are removed regardless of the value of the energy_threshold. More... | |
This file contains the implementation of the elementary process functors needed for QED photon emission (an electron or a positron emits a photon).
void cleanLowEnergyPhotons | ( | PTile & | ptile, |
const int | old_size, | ||
const int | num_added, | ||
const amrex::ParticleReal | energy_threshold | ||
) |
Free function to call to remove immediately low energy photons by setting their ID to -1. Photons with extremely small energy are removed regardless of the value of the energy_threshold.
PTile | particle tile type |
[in,out] | ptile | a particle tile |
[in] | old_size | the old number of particles |
[in] | num_added | the number of photons added to the tile |
[in] | energy_threshold | the energy threshold |