WarpX
Public Member Functions | List of all members
ComputeParticleDiagFunctor Class Referenceabstract

Functor to compute a diagnostic and store the result in existing ParticleContainer. More...

#include <ComputeParticleDiagFunctor.H>

Inheritance diagram for ComputeParticleDiagFunctor:
BackTransformParticleFunctor

Public Member Functions

 ComputeParticleDiagFunctor ()=default
 
virtual ~ComputeParticleDiagFunctor ()=default
 
 ComputeParticleDiagFunctor (const ComputeParticleDiagFunctor &)=default
 
ComputeParticleDiagFunctoroperator= (const ComputeParticleDiagFunctor &)=default
 
 ComputeParticleDiagFunctor (ComputeParticleDiagFunctor &&)=default
 
ComputeParticleDiagFunctoroperator= (ComputeParticleDiagFunctor &&)=default
 
virtual void PrepareFunctorData (int i_buffer, bool ZSliceInDomain, amrex::Real old_z_boost, amrex::Real current_z_boost, amrex::Real t_lab, int snapshot_full)
 Prepare data required to back-transform particle attributes for lab-frame snapshot, with index i_buffer. Note that this function has parameters that are specific to back-transformed diagnostics, that are unused for regular diagnostics. More...
 
virtual void operator() (PinnedMemoryParticleContainer &pc_dst, int &totalParticlesInBuffer, int i_buffer=0) const =0
 
virtual void InitData ()
 

Detailed Description

Functor to compute a diagnostic and store the result in existing ParticleContainer.

Constructor & Destructor Documentation

◆ ComputeParticleDiagFunctor() [1/3]

ComputeParticleDiagFunctor::ComputeParticleDiagFunctor ( )
default

◆ ~ComputeParticleDiagFunctor()

virtual ComputeParticleDiagFunctor::~ComputeParticleDiagFunctor ( )
virtualdefault

Virtual Destructor to handle clean destruction of derived classes

◆ ComputeParticleDiagFunctor() [2/3]

ComputeParticleDiagFunctor::ComputeParticleDiagFunctor ( const ComputeParticleDiagFunctor )
default

Default assignment and copy operations

◆ ComputeParticleDiagFunctor() [3/3]

ComputeParticleDiagFunctor::ComputeParticleDiagFunctor ( ComputeParticleDiagFunctor &&  )
default

Member Function Documentation

◆ InitData()

virtual void ComputeParticleDiagFunctor::InitData ( )
inlinevirtual

Reimplemented in BackTransformParticleFunctor.

◆ operator()()

virtual void ComputeParticleDiagFunctor::operator() ( PinnedMemoryParticleContainer pc_dst,
int totalParticlesInBuffer,
int  i_buffer = 0 
) const
pure virtual

Compute particle attributes and store the result in pc_dst particle container.

Parameters
[out]pc_dstoutput particle container where the result is stored.
[out]totalParticlesInBuffertotal number of particles in the container
[in]i_buffersnapshot index for which the particle buffer is processed

Implemented in BackTransformParticleFunctor.

◆ operator=() [1/2]

ComputeParticleDiagFunctor& ComputeParticleDiagFunctor::operator= ( ComputeParticleDiagFunctor &&  )
default

◆ operator=() [2/2]

ComputeParticleDiagFunctor& ComputeParticleDiagFunctor::operator= ( const ComputeParticleDiagFunctor )
default

◆ PrepareFunctorData()

virtual void ComputeParticleDiagFunctor::PrepareFunctorData ( int  i_buffer,
bool  ZSliceInDomain,
amrex::Real  old_z_boost,
amrex::Real  current_z_boost,
amrex::Real  t_lab,
int  snapshot_full 
)
inlinevirtual

Prepare data required to back-transform particle attributes for lab-frame snapshot, with index i_buffer. Note that this function has parameters that are specific to back-transformed diagnostics, that are unused for regular diagnostics.

Parameters
[in]i_bufferindex of the snapshot
[in]ZSliceInDomainif the z-slice at current_z_boost is within the bounds of the boosted-frame and lab-frame domain. The particles are transformed only if this value is true.
[in]old_z_boostold z co-ordinate of the slice selected in boosted-frame.
[in]current_z_boostz co-ordinate of the slice selected in boosted-frame.
[in]t_labcurrent time in lab-frame for snapshot, i_buffer.
[in]snapshot_fullif the current snapshot, with index, i_buffer, is full (1) or not (0). If it is full, then Lorentz-transform is not performed by setting m_perform_backtransform to 0 for the corresponding ith snapshot.

Reimplemented in BackTransformParticleFunctor.


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