ImpactX
Loading...
Searching...
No Matches
beamoptic.H File Reference
#include "alignment.H"
#include "pipeaperture.H"
#include "spintransport.H"
#include "particles/ImpactXParticleContainer.H"
#include "particles/PushAll.H"
#include <AMReX_Extension.H>
#include <AMReX_REAL.H>
#include <AMReX_SIMD.H>
#include <type_traits>

Go to the source code of this file.

Classes

struct  impactx::elements::mixin::detail::push_simd_ps< T, typename >
struct  impactx::elements::mixin::detail::push_simd_ps< T, std::void_t< decltype(T::simd_ps)> >
struct  impactx::elements::mixin::detail::push_simd_spin< T, typename >
struct  impactx::elements::mixin::detail::push_simd_spin< T, std::void_t< decltype(T::simd_spin)> >
struct  impactx::elements::mixin::detail::PushSingleParticleSpin< T_Element, T_DoAlignment >
struct  impactx::elements::mixin::detail::PushSingleParticle< T_Element, T_DoAlignment >
struct  impactx::elements::mixin::BeamOptic< T_Element >

Namespaces

namespace  impactx
namespace  impactx::elements
namespace  impactx::elements::mixin
namespace  impactx::elements::mixin::detail

Functions

template<typename T_Element, bool UseSimd = true, typename F>
void impactx::ParallelFor (int n, F &&f)
template<typename T, typename IndexType>
AMREX_GPU_DEVICE AMREX_FORCE_INLINE decltype(auto) impactx::elements::mixin::detail::load_pdata (T *ptr, IndexType const i)
template<auto P_Method, int N, bool ForceWriteback = false, typename T, typename IndexType, typename ValType>
AMREX_GPU_DEVICE AMREX_FORCE_INLINE void impactx::elements::mixin::detail::store_pdata (ValType const &AMREX_RESTRICT val, T *const AMREX_RESTRICT ptr, IndexType const i)
template<typename T_Element, typename F>
void impactx::elements::mixin::detail::dispatch_misalignment (T_Element &element, F &&f)
template<typename T_Element>
void impactx::elements::mixin::detail::push_all_particles (ImpactXParticleContainer::iterator &pti, RefPart &AMREX_RESTRICT ref_part, T_Element &element, bool spin)