Hipace
Functions
ExternalFields.H File Reference

Go to the source code of this file.

Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ApplyExternalField (const amrex::ParticleReal xp, const amrex::ParticleReal yp, const amrex::ParticleReal zp, const amrex::ParticleReal time, const amrex::ParticleReal clight, amrex::ParticleReal &ExmByp, amrex::ParticleReal &EypBxp, amrex::ParticleReal &Ezp, amrex::ParticleReal &Bxp, amrex::ParticleReal &Byp, amrex::ParticleReal &Bzp, amrex::GpuArray< amrex::ParserExecutor< 4 >, 6 > external_fields)
 add axisymmetric linear focusing field on particles and linear accelerating field. Typically called right after the field gather. More...
 

Function Documentation

◆ ApplyExternalField()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ApplyExternalField ( const amrex::ParticleReal  xp,
const amrex::ParticleReal  yp,
const amrex::ParticleReal  zp,
const amrex::ParticleReal  time,
const amrex::ParticleReal  clight,
amrex::ParticleReal &  ExmByp,
amrex::ParticleReal &  EypBxp,
amrex::ParticleReal &  Ezp,
amrex::ParticleReal &  Bxp,
amrex::ParticleReal &  Byp,
amrex::ParticleReal &  Bzp,
amrex::GpuArray< amrex::ParserExecutor< 4 >, 6 >  external_fields 
)

add axisymmetric linear focusing field on particles and linear accelerating field. Typically called right after the field gather.

Parameters
[in]xpparticle position x
[in]ypparticle position y
[in]zpparticle position x
[in]timetime of the current step
[in]clightspeed of light
[in,out]ExmBypEx-By Field on particle
[in,out]EypBxpEy+Bx Field on particle
[in,out]EzpElectric field on particle, z component
[in,out]BxpMagnetic field on particle, x component
[in,out]BypMagnetic field on particle, y component
[in,out]BzpMagnetic field on particle, z component
[in]external_fieldsExternal field functions for Ex Ey Ez Bx By Bz