WarpX
Functions
SchwingerProcessWrapper.H File Reference
#include "QedWrapperCommons.H"
#include <physics/schwinger/schwinger_pair_engine_core.hpp>
#include <AMReX_Random.H>
#include <cmath>

Go to the source code of this file.

Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real getSchwingerProductionNumber (const amrex::Real dV, const amrex::Real dt, const amrex::Real Ex, const amrex::Real Ey, const amrex::Real Ez, const amrex::Real Bx, const amrex::Real By, const amrex::Real Bz, const amrex::Real PoissonToGaussianThreshold, amrex::RandomEngine const &engine)
 

Function Documentation

◆ getSchwingerProductionNumber()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::Real getSchwingerProductionNumber ( const amrex::Real  dV,
const amrex::Real  dt,
const amrex::Real  Ex,
const amrex::Real  Ey,
const amrex::Real  Ez,
const amrex::Real  Bx,
const amrex::Real  By,
const amrex::Real  Bz,
const amrex::Real  PoissonToGaussianThreshold,
amrex::RandomEngine const &  engine 
)

This function is a wrapper around a PICSAR function which calculates the number of Schwinger pairs created at a given timestep and in a given cell as a function of the EM field in that cell.

Parameters
[in]dVVolume of the cell.
[in]dttemporal step.
[in]Exx-component of the electric field on the cell.
[in]Eyy-component of the electric field on the cell.
[in]Ezz-component of the electric field on the cell.
[in]Bxx-component of the magnetic field on the cell.
[in]Byy-component of the magnetic field on the cell.
[in]Bzz-component of the magnetic field on the cell.
[in]PoissonToGaussianThresholdIf the expected number of created pairs is below this parameter, a Poisson distribution is used to draw the number of created pairs. Otherwise a Gaussian distribution is used.
Returns
the number of pairs generated via the Schwinger process