WarpX
Public Member Functions | Public Attributes | List of all members
GetExternalField Struct Reference

Base class for functors that assign external field values (E or B) to particles. More...

#include <GetExternalFields.H>

Inheritance diagram for GetExternalField:
GetExternalBField GetExternalEField

Public Member Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void operator() (long i, amrex::ParticleReal &field_x, amrex::ParticleReal &field_y, amrex::ParticleReal &field_z) const noexcept
 

Public Attributes

ExternalFieldInitType m_type
 
amrex::GpuArray< amrex::ParticleReal, 3 > m_field_value
 
amrex::ParserExecutor< 4 > m_xfield_partparser
 
amrex::ParserExecutor< 4 > m_yfield_partparser
 
amrex::ParserExecutor< 4 > m_zfield_partparser
 
GetParticlePosition m_get_position
 
amrex::Real m_time
 
amrex::Real m_repeated_plasma_lens_period
 
amrex::Real m_gamma_boost
 
amrex::Real m_uz_boost
 
const amrex::Real *AMREX_RESTRICT m_repeated_plasma_lens_starts = nullptr
 
const amrex::Real *AMREX_RESTRICT m_repeated_plasma_lens_lengths = nullptr
 
const amrex::Real *AMREX_RESTRICT m_repeated_plasma_lens_strengths_E = nullptr
 
const amrex::Real *AMREX_RESTRICT m_repeated_plasma_lens_strengths_B = nullptr
 
int m_n_lenses
 
int m_lens_is_electric
 
amrex::Real m_dt
 
const amrex::ParticleReal *AMREX_RESTRICT m_ux = nullptr
 
const amrex::ParticleReal *AMREX_RESTRICT m_uy = nullptr
 
const amrex::ParticleReal *AMREX_RESTRICT m_uz = nullptr
 

Detailed Description

Base class for functors that assign external field values (E or B) to particles.

Member Function Documentation

◆ operator()()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void GetExternalField::operator() ( long  i,
amrex::ParticleReal &  field_x,
amrex::ParticleReal &  field_y,
amrex::ParticleReal &  field_z 
) const
inlinenoexcept

Member Data Documentation

◆ m_dt

amrex::Real GetExternalField::m_dt

◆ m_field_value

amrex::GpuArray<amrex::ParticleReal, 3> GetExternalField::m_field_value

◆ m_gamma_boost

amrex::Real GetExternalField::m_gamma_boost

◆ m_get_position

GetParticlePosition GetExternalField::m_get_position

◆ m_lens_is_electric

int GetExternalField::m_lens_is_electric

◆ m_n_lenses

int GetExternalField::m_n_lenses

◆ m_repeated_plasma_lens_lengths

const amrex::Real* AMREX_RESTRICT GetExternalField::m_repeated_plasma_lens_lengths = nullptr

◆ m_repeated_plasma_lens_period

amrex::Real GetExternalField::m_repeated_plasma_lens_period

◆ m_repeated_plasma_lens_starts

const amrex::Real* AMREX_RESTRICT GetExternalField::m_repeated_plasma_lens_starts = nullptr

◆ m_repeated_plasma_lens_strengths_B

const amrex::Real* AMREX_RESTRICT GetExternalField::m_repeated_plasma_lens_strengths_B = nullptr

◆ m_repeated_plasma_lens_strengths_E

const amrex::Real* AMREX_RESTRICT GetExternalField::m_repeated_plasma_lens_strengths_E = nullptr

◆ m_time

amrex::Real GetExternalField::m_time

◆ m_type

ExternalFieldInitType GetExternalField::m_type

◆ m_ux

const amrex::ParticleReal* AMREX_RESTRICT GetExternalField::m_ux = nullptr

◆ m_uy

const amrex::ParticleReal* AMREX_RESTRICT GetExternalField::m_uy = nullptr

◆ m_uz

const amrex::ParticleReal* AMREX_RESTRICT GetExternalField::m_uz = nullptr

◆ m_uz_boost

amrex::Real GetExternalField::m_uz_boost

◆ m_xfield_partparser

amrex::ParserExecutor<4> GetExternalField::m_xfield_partparser

◆ m_yfield_partparser

amrex::ParserExecutor<4> GetExternalField::m_yfield_partparser

◆ m_zfield_partparser

amrex::ParserExecutor<4> GetExternalField::m_zfield_partparser

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