#include <Thermal.H>
|
| | Thermal (amrex::ParticleReal k, amrex::ParticleReal kT, amrex::ParticleReal kT_halo, amrex::ParticleReal normalize, amrex::ParticleReal normalize_halo, amrex::ParticleReal halo) |
| |
| void | initialize (amrex::ParticleReal bunch_charge, RefPart const &ref) |
| |
| void | finalize () |
| |
| AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | operator() (amrex::ParticleReal &AMREX_RESTRICT x, amrex::ParticleReal &AMREX_RESTRICT y, amrex::ParticleReal &AMREX_RESTRICT t, amrex::ParticleReal &AMREX_RESTRICT px, amrex::ParticleReal &AMREX_RESTRICT py, amrex::ParticleReal &AMREX_RESTRICT pt, amrex::RandomEngine const &engine) const |
| |
|
| amrex::ParticleReal | m_k |
| |
| amrex::ParticleReal | m_T1 |
| | linear focusing strength (1/meters)
|
| |
| amrex::ParticleReal | m_T2 |
| |
| amrex::ParticleReal | m_normalize |
| | temperature of each particle population
|
| |
| amrex::ParticleReal | m_normalize_halo |
| |
| amrex::ParticleReal | m_halo |
| | normalization constant of first/second population
|
| |
| amrex::ParticleReal | m_rmin |
| | relative weight of halo population
|
| |
| amrex::ParticleReal | m_rmax |
| | maximum r value for tabulated cdf
|
| |
| int | m_nbins |
| | number of radial bins for tabulated cdf
|
| |
| amrex::ParticleReal | m_bg |
| | reference value of relativistic beta*gamma
|
| |
| amrex::ParticleReal | m_w |
| | weight of the secondary (halo) population
|
| |
|
| amrex::ParticleReal const * | m_cdf1 = nullptr |
| |
| amrex::ParticleReal const * | m_cdf2 = nullptr |
| | non-owning pointer to device core CDF
|
| |
◆ Thermal()
| impactx::distribution::Thermal::Thermal |
( |
amrex::ParticleReal | k, |
|
|
amrex::ParticleReal | kT, |
|
|
amrex::ParticleReal | kT_halo, |
|
|
amrex::ParticleReal | normalize, |
|
|
amrex::ParticleReal | normalize_halo, |
|
|
amrex::ParticleReal | halo ) |
|
inline |
A stationary Thermal or Bi-thermal distribution
Return sampling from a 6D bi-thermal distribution, a stationary solution of the Vlasov-Poisson system in an isotropic linear focusing channel.
- Parameters
-
| k | linear focusing strength (1/meters) |
| kT | temperature k*T of the primary (core) population |
| kT_halo | temperature k*T of the secondary (halo) population |
| normalize | normalization constant of first population |
| normalize_halo | normalization constant of second population |
| halo | weight of the secondary (halo) population |
◆ finalize()
| void impactx::distribution::Thermal::finalize |
( |
| ) |
|
|
inline |
Close and deallocate all data and handles.
◆ initialize()
| void impactx::distribution::Thermal::initialize |
( |
amrex::ParticleReal | bunch_charge, |
|
|
RefPart const & | ref ) |
|
inline |
Initialize the distribution.
This in particular sets the m_data radial profile of the stationary beam
- Parameters
-
| bunch_charge | charge of the beam in C |
| ref | the reference particle |
◆ operator()()
Return 1 6D particle coordinate
- Parameters
-
| x | particle position in x |
| y | particle position in y |
| t | particle position in t |
| px | particle momentum in x |
| py | particle momentum in y |
| pt | particle momentum in t |
| engine | a random number engine (with associated state) |
◆ m_bg
| amrex::ParticleReal impactx::distribution::Thermal::m_bg |
reference value of relativistic beta*gamma
◆ m_cdf1
| amrex::ParticleReal const* impactx::distribution::Thermal::m_cdf1 = nullptr |
|
private |
◆ m_cdf2
| amrex::ParticleReal const* impactx::distribution::Thermal::m_cdf2 = nullptr |
|
private |
non-owning pointer to device core CDF
◆ m_halo
| amrex::ParticleReal impactx::distribution::Thermal::m_halo |
normalization constant of first/second population
◆ m_k
| amrex::ParticleReal impactx::distribution::Thermal::m_k |
◆ m_nbins
| int impactx::distribution::Thermal::m_nbins |
number of radial bins for tabulated cdf
◆ m_normalize
| amrex::ParticleReal impactx::distribution::Thermal::m_normalize |
temperature of each particle population
◆ m_normalize_halo
| amrex::ParticleReal impactx::distribution::Thermal::m_normalize_halo |
◆ m_rmax
| amrex::ParticleReal impactx::distribution::Thermal::m_rmax |
maximum r value for tabulated cdf
◆ m_rmin
| amrex::ParticleReal impactx::distribution::Thermal::m_rmin |
relative weight of halo population
minimum r value for tabulated cdf
◆ m_T1
| amrex::ParticleReal impactx::distribution::Thermal::m_T1 |
linear focusing strength (1/meters)
◆ m_T2
| amrex::ParticleReal impactx::distribution::Thermal::m_T2 |
◆ m_w
| amrex::ParticleReal impactx::distribution::Thermal::m_w |
weight of the secondary (halo) population
The documentation for this struct was generated from the following file:
- /home/docs/checkouts/readthedocs.org/user_builds/impactx/checkouts/1182/src/particles/distribution/Thermal.H