#include <DipEdge.H>
|
static constexpr auto | name = "DipEdge" |
|
◆ PType
◆ DipEdge()
impactx::DipEdge::DipEdge |
( |
amrex::ParticleReal const |
psi, |
|
|
amrex::ParticleReal const |
rc, |
|
|
amrex::ParticleReal const |
g, |
|
|
amrex::ParticleReal const |
K2 |
|
) |
| |
|
inline |
Edge focusing associated with bend entry or exit
This model assumes a first-order effect of nonzero gap. Here we use the linear fringe field map, given to first order in g/rc (gap / radius of curvature).
References: K. L. Brown, SLAC Report No. 75 (1982). K. Hwang and S. Y. Lee, PRAB 18, 122401 (2015).
- Parameters
-
psi | Pole face angle in rad. |
rc | Radius of curvature in m. |
g | Gap parameter in m. |
K2 | Fringe field integral (unitless). |
◆ ds()
Return the segment length
- Returns
- zero, because this is a zero-length element
◆ nslice()
Number of slices used for the application of space charge
- Returns
- one, because this is a zero-length element
◆ operator()() [1/2]
This is a dipedge functor, so that a variable of this type can be used like a dipedge function.
- Parameters
-
p | Particle AoS data for positions and cpu/id |
px | particle momentum in x |
py | particle momentum in y |
pt | particle momentum in t (unchanged) |
refpart | reference particle (unused) |
◆ operator()() [2/2]
This pushes the reference particle.
- Parameters
-
[in,out] | refpart | reference particle |
◆ m_g
amrex::ParticleReal impactx::DipEdge::m_g |
|
private |
◆ m_K2
amrex::ParticleReal impactx::DipEdge::m_K2 |
|
private |
◆ m_psi
amrex::ParticleReal impactx::DipEdge::m_psi |
|
private |
◆ m_rc
amrex::ParticleReal impactx::DipEdge::m_rc |
|
private |
◆ name
constexpr auto impactx::DipEdge::name = "DipEdge" |
|
static |
The documentation for this struct was generated from the following file:
- /home/docs/checkouts/readthedocs.org/user_builds/impactx/checkouts/22.12/src/particles/elements/DipEdge.H