ECP-WarpX / WarpX

WarpX is an advanced electromagnetic & electrostatic Particle-In-Cell code.
https://ecp-warpx.github.io
Other
311 stars 196 forks source link

Implement Compton scattering as a new binary process #5294

Open RemiLehe opened 2 months ago

RemiLehe commented 2 months ago

It might be useful to have the ability to compute scattering between electron macroparticles and photon macroparticles.

Note that we could reuse parts of the FBPIC implementation (which itself is based on an earlier implementation in Warp): https://github.com/fbpic/fbpic/blob/dev/fbpic/particles/elementary_process/compton/inline_functions.py#L43 (The implementation in FBPIC is for scattering between electron macroparticles and a background density of photons - instead of photon macroparticles. However, the above probability function could be reused for binary collisions between macroparticles.)

We could also reuse this test case for automated testing: https://github.com/fbpic/fbpic/blob/dev/tests/test_compton.py

RemiLehe commented 2 months ago

@lucafedeli88 pointed out that this process is implemented in:

RemiLehe commented 1 month ago

Another useful reference: https://journals.aps.org/prab/pdf/10.1103/PhysRevAccelBeams.25.084601