ImpactX
Loading...
Searching...
No Matches
beamoptic.H File Reference
#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::PushSingleParticleSpin< T_Element >
 
struct  impactx::elements::mixin::detail::PushSingleParticle< T_Element >
 
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, 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, 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>
void impactx::elements::mixin::detail::push_all_particles (ImpactXParticleContainer::iterator &pti, RefPart &AMREX_RESTRICT ref_part, T_Element &element, bool spin)