|
WarpX
|
#include "MCCProcess.H"#include "Utils/ParticleUtils.H"#include "Utils/WarpXConst.H"#include <AMReX_Random.H>#include <AMReX_REAL.H>Go to the source code of this file.
Classes | |
| class | ImpactIonizationFilterFunc |
| Filter functor for impact ionization. More... | |
| class | ImpactIonizationTransformFunc |
| Transform functor for impact ionization. More... | |
Functions | |
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void | ElasticScattering (amrex::ParticleReal &ux, amrex::ParticleReal &uy, amrex::ParticleReal &uz, amrex::ParticleReal uCOM_x, amrex::ParticleReal uCOM_y, amrex::ParticleReal uCOM_z, amrex::RandomEngine const &engine) |
| Function to perform elastic scattering of a particle in the lab frame. The particle velocities transformed to the COM frame where a hard sphere collision occurs. The resulting particle velocities are transformed back to the lab frame and the input particle's velocity is updated. More... | |
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void | BackScattering (amrex::ParticleReal &ux, amrex::ParticleReal &uy, amrex::ParticleReal &uz, const amrex::ParticleReal uCOM_x, const amrex::ParticleReal uCOM_y, const amrex::ParticleReal uCOM_z) |
| Function to perform back scattering of a particle in the lab frame. The particle velocity is transformed to the COM frame where it is reversed. The resulting particle velocities are then transformed back to the lab frame and the input particle's velocity is updated. More... | |
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void | ChargeExchange (amrex::ParticleReal &ux, amrex::ParticleReal &uy, amrex::ParticleReal &uz, const amrex::ParticleReal ua_x, const amrex::ParticleReal ua_y, const amrex::ParticleReal ua_z) |
| Function to perform charge exchange of an ion with a neutral particle. More... | |
This file contains the implementation of the scattering processes available in the MCC handling.
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void BackScattering | ( | amrex::ParticleReal & | ux, |
| amrex::ParticleReal & | uy, | ||
| amrex::ParticleReal & | uz, | ||
| const amrex::ParticleReal | uCOM_x, | ||
| const amrex::ParticleReal | uCOM_y, | ||
| const amrex::ParticleReal | uCOM_z | ||
| ) |
Function to perform back scattering of a particle in the lab frame. The particle velocity is transformed to the COM frame where it is reversed. The resulting particle velocities are then transformed back to the lab frame and the input particle's velocity is updated.
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void ChargeExchange | ( | amrex::ParticleReal & | ux, |
| amrex::ParticleReal & | uy, | ||
| amrex::ParticleReal & | uz, | ||
| const amrex::ParticleReal | ua_x, | ||
| const amrex::ParticleReal | ua_y, | ||
| const amrex::ParticleReal | ua_z | ||
| ) |
Function to perform charge exchange of an ion with a neutral particle.
| AMREX_GPU_HOST_DEVICE AMREX_INLINE void ElasticScattering | ( | amrex::ParticleReal & | ux, |
| amrex::ParticleReal & | uy, | ||
| amrex::ParticleReal & | uz, | ||
| amrex::ParticleReal | uCOM_x, | ||
| amrex::ParticleReal | uCOM_y, | ||
| amrex::ParticleReal | uCOM_z, | ||
| amrex::RandomEngine const & | engine | ||
| ) |
Function to perform elastic scattering of a particle in the lab frame. The particle velocities transformed to the COM frame where a hard sphere collision occurs. The resulting particle velocities are transformed back to the lab frame and the input particle's velocity is updated.
1.8.13