ImpactX
Loading...
Searching...
No Matches
impactx::elements::mixin::Thin Struct Reference

#include <thin.H>

Inheritance diagram for impactx::elements::mixin::Thin:
impactx::elements::Aperture impactx::elements::Buncher impactx::elements::DipEdge impactx::elements::Empty impactx::elements::Kicker impactx::elements::Marker impactx::elements::Multipole impactx::elements::NonlinearLens impactx::elements::PRot impactx::elements::PlaneXYRot impactx::elements::QuadEdge impactx::elements::ShortRF impactx::elements::Source impactx::elements::TaperedPL impactx::elements::ThinDipole impactx::elements::diagnostics::BeamMonitor

Public Member Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void operator() (RefPart &AMREX_RESTRICT refpart) const
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int nslice () const
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::ParticleReal ds () const
 

Detailed Description

This is a helper class for lattice elements with zero length

Member Function Documentation

◆ ds()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::ParticleReal impactx::elements::mixin::Thin::ds ( ) const
inline

Return the segment length

Returns
zero, because this is a zero-length element

◆ nslice()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int impactx::elements::mixin::Thin::nslice ( ) const
inline

Number of slices used for the application of space charge

Returns
one, because this is a zero-length element

◆ operator()()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void impactx::elements::mixin::Thin::operator() ( RefPart &AMREX_RESTRICT refpart) const
inline

This pushes the reference particle.

Parameters
[in,out]refpartreference particle

The documentation for this struct was generated from the following file: