#include <Kurth4D.H>
|
| | Kurth4D (amrex::ParticleReal lambdax, amrex::ParticleReal lambday, amrex::ParticleReal lambdat, amrex::ParticleReal lambdapx, amrex::ParticleReal lambdapy, amrex::ParticleReal lambdapt, amrex::ParticleReal muxpx=0.0, amrex::ParticleReal muypy=0.0, amrex::ParticleReal mutpt=0.0, amrex::ParticleReal meanx=0.0, amrex::ParticleReal meany=0.0, amrex::ParticleReal meant=0.0, amrex::ParticleReal meanpx=0.0, amrex::ParticleReal meanpy=0.0, amrex::ParticleReal meanpt=0.0, amrex::ParticleReal dispx=0.0, amrex::ParticleReal disppx=0.0, amrex::ParticleReal dispy=0.0, amrex::ParticleReal disppy=0.0) |
| |
| 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_lambdaX |
| |
| amrex::ParticleReal | m_lambdaY |
| |
| amrex::ParticleReal | m_lambdaT |
| |
| amrex::ParticleReal | m_lambdaPx |
| | related position axis intercepts (length) of the phase space ellipse
|
| |
| amrex::ParticleReal | m_lambdaPy |
| |
| amrex::ParticleReal | m_lambdaPt |
| |
| amrex::ParticleReal | m_muxpx |
| | related momentum axis intercepts of the phase space ellipse
|
| |
| amrex::ParticleReal | m_muypy |
| |
| amrex::ParticleReal | m_mutpt |
| |
| amrex::ParticleReal | m_meanx |
| | correlation length-momentum
|
| |
| amrex::ParticleReal | m_meany |
| |
| amrex::ParticleReal | m_meant |
| |
| amrex::ParticleReal | m_meanpx |
| | spatial coordinates of centroid offset
|
| |
| amrex::ParticleReal | m_meanpy |
| |
| amrex::ParticleReal | m_meanpt |
| |
| amrex::ParticleReal | m_dispx |
| | momentum coordinates of centroid offset
|
| |
| amrex::ParticleReal | m_disppx |
| |
| amrex::ParticleReal | m_dispy |
| |
| amrex::ParticleReal | m_disppy |
| |
◆ Kurth4D()
| impactx::distribution::Kurth4D::Kurth4D |
( |
amrex::ParticleReal | lambdax, |
|
|
amrex::ParticleReal | lambday, |
|
|
amrex::ParticleReal | lambdat, |
|
|
amrex::ParticleReal | lambdapx, |
|
|
amrex::ParticleReal | lambdapy, |
|
|
amrex::ParticleReal | lambdapt, |
|
|
amrex::ParticleReal | muxpx = 0.0, |
|
|
amrex::ParticleReal | muypy = 0.0, |
|
|
amrex::ParticleReal | mutpt = 0.0, |
|
|
amrex::ParticleReal | meanx = 0.0, |
|
|
amrex::ParticleReal | meany = 0.0, |
|
|
amrex::ParticleReal | meant = 0.0, |
|
|
amrex::ParticleReal | meanpx = 0.0, |
|
|
amrex::ParticleReal | meanpy = 0.0, |
|
|
amrex::ParticleReal | meanpt = 0.0, |
|
|
amrex::ParticleReal | dispx = 0.0, |
|
|
amrex::ParticleReal | disppx = 0.0, |
|
|
amrex::ParticleReal | dispy = 0.0, |
|
|
amrex::ParticleReal | disppy = 0.0 ) |
|
inline |
A 4D Kurth distribution transversely + a uniform distribution in t + a Gaussian distribution in pt
Return sampling from a 4D Kurth + uniform distribution.
- Parameters
-
| lambdax,lambday,lambdat | for zero correlation, these are the related RMS sizes (in meters) |
| lambdapx,lambdapy,lambdapt | RMS momentum |
| muxpx,muypy,mutpt | correlation length-momentum |
| meanx,meany,meant | offsets of the mean (centroid) positions from those of the reference particle |
| meanpx,meanpy,meanpt | offsets of the mean (centroid) momenta from those of the reference particle |
| dispx,disppx,dispy,disppy | dispersion and its derivative in horizontal and vertical directions |
◆ finalize()
| void impactx::distribution::Kurth4D::finalize |
( |
| ) |
|
|
inline |
Close and deallocate all data and handles.
Nothing to do here.
◆ initialize()
| void impactx::distribution::Kurth4D::initialize |
( |
amrex::ParticleReal | bunch_charge, |
|
|
RefPart const & | ref ) |
|
inline |
Initialize the distribution.
Nothing to do here.
- 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_disppx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_disppx |
◆ m_disppy
| amrex::ParticleReal impactx::distribution::Kurth4D::m_disppy |
◆ m_dispx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_dispx |
momentum coordinates of centroid offset
◆ m_dispy
| amrex::ParticleReal impactx::distribution::Kurth4D::m_dispy |
◆ m_lambdaPt
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaPt |
◆ m_lambdaPx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaPx |
related position axis intercepts (length) of the phase space ellipse
◆ m_lambdaPy
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaPy |
◆ m_lambdaT
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaT |
◆ m_lambdaX
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaX |
◆ m_lambdaY
| amrex::ParticleReal impactx::distribution::Kurth4D::m_lambdaY |
◆ m_meanpt
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meanpt |
◆ m_meanpx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meanpx |
spatial coordinates of centroid offset
◆ m_meanpy
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meanpy |
◆ m_meant
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meant |
◆ m_meanx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meanx |
correlation length-momentum
◆ m_meany
| amrex::ParticleReal impactx::distribution::Kurth4D::m_meany |
◆ m_mutpt
| amrex::ParticleReal impactx::distribution::Kurth4D::m_mutpt |
◆ m_muxpx
| amrex::ParticleReal impactx::distribution::Kurth4D::m_muxpx |
related momentum axis intercepts of the phase space ellipse
◆ m_muypy
| amrex::ParticleReal impactx::distribution::Kurth4D::m_muypy |
The documentation for this struct was generated from the following file:
- /home/docs/checkouts/readthedocs.org/user_builds/impactx/checkouts/1182/src/particles/distribution/Kurth4D.H