OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
PartBunchBase< T, Dim > Class Template Referenceabstract

#include <PartBunchBase.h>

Inherits std::enable_shared_from_this< PartBunchBase< T, Dim > >.

Collaboration diagram for PartBunchBase< T, Dim >:
Collaboration graph
[legend]

Classes

class  ConstIterator
 

Public Types

enum  UnitState_t { units = 0 , unitless = 1 }
 
typedef AbstractParticle< T, Dim >::ParticlePos_t ParticlePos_t
 
typedef AbstractParticle< T, Dim >::ParticleIndex_t ParticleIndex_t
 
typedef AbstractParticle< T, Dim >::UpdateFlags UpdateFlags_t
 
typedef AbstractParticle< T, Dim >::Position_t Position_t
 
typedef std::pair< Vector_t, Vector_tVectorPair_t
 

Public Member Functions

virtual ~PartBunchBase ()
 
 PartBunchBase (AbstractParticle< T, Dim > *pb, const PartData *ref)
 
 PartBunchBase (const PartBunchBase &rhs)=delete
 
virtual void initialize (FieldLayout_t *fLayout)=0
 
bool getIfBeamEmitting ()
 
int getLastEmittedEnergyBin ()
 
size_t getNumberOfEmissionSteps ()
 
int getNumberOfEnergyBins ()
 
void Rebin ()
 
void setEnergyBins (int numberOfEnergyBins)
 
bool weHaveEnergyBins ()
 
void switchToUnitlessPositions (bool use_dt_per_particle=false)
 
void switchOffUnitlessPositions (bool use_dt_per_particle=false)
 
void setDistribution (Distribution *d, std::vector< Distribution * > addedDistributions, size_t &np)
 
void setDistribution (Distribution *d, size_t numberOfParticles, double current, const Beamline &bl)
 
bool isGridFixed () const
 
bool hasBinning () const
 
void setTEmission (double t)
 
double getTEmission ()
 
bool doEmission ()
 
bool weHaveBins () const
 
void setPBins (PartBins *pbin)
 
void setPBins (PartBinsCyc *pbin)
 
size_t emitParticles (double eZ)
 Emit particles in the given bin i.e. copy the particles from the bin structure into the particle container. More...
 
void updateNumTotal ()
 
void rebin ()
 
int getLastemittedBin ()
 
void setLocalBinCount (size_t num, int bin)
 
void calcGammas ()
 Compute the gammas of all bins. More...
 
void calcGammas_cycl ()
 
void calcDebyeLength ()
 Compute the (global) Debye length for the beam. More...
 
double getBinGamma (int bin)
 Get gamma of one bin. More...
 
virtual void setBinCharge (int bin, double q)
 Set the charge of one bin to the value of q and all other to zero. More...
 
virtual void setBinCharge (int bin)
 Set the charge of all other the ones in bin to zero. More...
 
size_t calcNumPartsOutside (Vector_t x)
 returns the number of particles outside of a box defined by x More...
 
void calcLineDensity (unsigned int nBins, std::vector< double > &lineDensity, std::pair< double, double > &meshInfo)
 calculates the 1d line density (not normalized) and append it to a file. More...
 
void setBeamFrequency (double v)
 
virtual void boundp ()
 
void boundp_destroyCycl ()
 
size_t boundp_destroyT ()
 
size_t destroyT ()
 
virtual double getPx (int i)
 
virtual double getPy (int i)
 
virtual double getPz (int i)
 
virtual double getPx0 (int i)
 
virtual double getPy0 (int i)
 
virtual double getX (int i)
 
virtual double getY (int i)
 
virtual double getZ (int i)
 
virtual double getX0 (int i)
 
virtual double getY0 (int i)
 
virtual void setZ (int i, double zcoo)
 
void get_bounds (Vector_t &rmin, Vector_t &rmax) const
 
void getLocalBounds (Vector_t &rmin, Vector_t &rmax) const
 
std::pair< Vector_t, double > getBoundingSphere ()
 
std::pair< Vector_t, double > getLocalBoundingSphere ()
 
void push_back (OpalParticle const &p)
 
void setParticle (FVector< double, 6 > z, int ii)
 
void setParticle (OpalParticle const &p, int ii)
 
OpalParticle getParticle (int ii)
 
ConstIterator begin () const
 
ConstIterator end () const
 
void maximumAmplitudes (const FMatrix< double, 6, 6 > &D, double &axmax, double &aymax)
 Return maximum amplitudes. More...
 
void setdT (double dt)
 
double getdT () const
 
void setT (double t)
 
void incrementT ()
 
double getT () const
 
double get_sPos () const
 
void set_sPos (double s)
 
double get_gamma () const
 
double get_meanKineticEnergy () const
 
double get_temperature () const
 
double get_debyeLength () const
 
double get_plasmaParameter () const
 
double get_rmsDensity () const
 
Vector_t get_origin () const
 
Vector_t get_maxExtent () const
 
Vector_t get_centroid () const
 
Vector_t get_rrms () const
 
Vector_t get_rprms () const
 
Vector_t get_rmean () const
 
Vector_t get_prms () const
 
Vector_t get_pmean () const
 
Vector_t get_pmean_Distribution () const
 
Vector_t get_emit () const
 
Vector_t get_norm_emit () const
 
Vector_t get_halo () const
 
Vector_t get_68Percentile () const
 
Vector_t get_95Percentile () const
 
Vector_t get_99Percentile () const
 
Vector_t get_99_99Percentile () const
 
Vector_t get_normalizedEps_68Percentile () const
 
Vector_t get_normalizedEps_95Percentile () const
 
Vector_t get_normalizedEps_99Percentile () const
 
Vector_t get_normalizedEps_99_99Percentile () const
 
virtual Vector_t get_hr () const
 
double get_Dx () const
 
double get_Dy () const
 
double get_DDx () const
 
double get_DDy () const
 
virtual void set_meshEnlargement (double dh)
 
void gatherLoadBalanceStatistics ()
 
size_t getLoadBalance (int p) const
 
void get_PBounds (Vector_t &min, Vector_t &max) const
 
void calcBeamParameters ()
 
void calcBeamParametersInitial ()
 
double getCouplingConstant () const
 
void setCouplingConstant (double c)
 
void setCharge (double q)
 
void setChargeZeroPart (double q)
 
void setMass (double mass)
 
void setMassZeroPart (double mass)
 
double getCharge () const
 get the total charge per simulation particle More...
 
double getChargePerParticle () const
 get the macro particle charge More...
 
double getMassPerParticle () const
 
virtual void setSolver (FieldSolver *fs)
 
bool hasFieldSolver ()
 
FieldSolverType getFieldSolverType () const
 Return the fieldsolver type if we have a fieldsolver. More...
 
void setStepsPerTurn (int n)
 
int getStepsPerTurn () const
 
void setGlobalTrackStep (long long n)
 step in multiple TRACK commands More...
 
long long getGlobalTrackStep () const
 
void setLocalTrackStep (long long n)
 step in a TRACK command More...
 
void incTrackSteps ()
 
long long getLocalTrackStep () const
 
void setNumBunch (short n)
 
short getNumBunch () const
 
void setTotalNumPerBunch (size_t numpart, short n)
 
size_t getTotalNumPerBunch (short n) const
 
void setLocalNumPerBunch (size_t numpart, short n)
 
size_t getLocalNumPerBunch (short n) const
 
void countTotalNumPerBunch ()
 
void setGlobalMeanR (Vector_t globalMeanR)
 
Vector_t getGlobalMeanR ()
 
void setGlobalToLocalQuaternion (Quaternion_t globalToLocalQuaternion)
 
Quaternion_t getGlobalToLocalQuaternion ()
 
void setSteptoLastInj (int n)
 
int getSteptoLastInj () const
 
double calcMeanPhi ()
 calculate average angle of longitudinal direction of bins More...
 
bool resetPartBinID2 (const double eta)
 reset Bin[] for each particle according to the method given in paper PAST-AB(064402) by G. Fubiani et al. More...
 
bool resetPartBinBunch ()
 
double getdE () const
 
virtual double getGamma (int i)
 
virtual double getBeta (int i)
 
virtual void actT ()
 
const PartDatagetReference () const
 
double getEmissionDeltaT ()
 
DistributionType getDistType () const
 
Quaternion_t getQKs3D ()
 
void setQKs3D (Quaternion_t q)
 
Vector_t getKs3DRefr ()
 
void setKs3DRefr (Vector_t r)
 
Vector_t getKs3DRefp ()
 
void setKs3DRefp (Vector_t p)
 
void iterateEmittedBin (int binNumber)
 
void calcEMean ()
 
Informprint (Inform &os)
 
virtual void runTests ()
 
virtual void do_binaryRepart ()
 
virtual void resetInterpolationCache (bool clearCache=false)
 
virtual VectorPair_t getEExtrema ()=0
 
virtual double getRho (int x, int y, int z)=0
 
virtual void computeSelfFields ()=0
 
virtual void computeSelfFields (int bin)=0
 
virtual void computeSelfFields_cycl (double gamma)=0
 
virtual void computeSelfFields_cycl (int bin)=0
 
virtual void swap (unsigned int i, unsigned int j)
 
virtual void setBCAllPeriodic ()
 
virtual void setBCAllOpen ()
 
virtual void setBCForDCBeam ()
 
virtual FieldLayout_tgetFieldLayout ()=0
 
virtual void resizeMesh ()
 
size_t getTotalNum () const
 
void setTotalNum (size_t n)
 
void setLocalNum (size_t n)
 
size_t getLocalNum () const
 
size_t getDestroyNum () const
 
size_t getGhostNum () const
 
ParticleLayout< T, Dim > & getLayout ()
 
const ParticleLayout< T, Dim > & getLayout () const
 
bool getUpdateFlag (UpdateFlags_t f) const
 
void setUpdateFlag (UpdateFlags_t f, bool val)
 
ParticleBConds< Position_t, Dimension > & getBConds ()
 
void setBConds (const ParticleBConds< Position_t, Dimension > &bc)
 
bool singleInitNode () const
 
void resetID ()
 
void update ()
 
void update (const ParticleAttrib< char > &canSwap)
 
void createWithID (unsigned id)
 
void create (size_t M)
 
void globalCreate (size_t np)
 
void destroy (size_t M, size_t I, bool doNow=false)
 
void performDestroy (bool updateLocalNum=false)
 
void ghostDestroy (size_t M, size_t I)
 
FMatrix< double, 2 *Dim, 2 *DimgetSigmaMatrix () const
 
double getQ () const
 Access to reference data. More...
 
double getM () const
 
double getP () const
 
double getE () const
 
ParticleOrigin getPOrigin () const
 
ParticleType getPType () const
 
double getInitialBeta () const
 
double getInitialGamma () const
 
void resetQ (double q)
 
void resetM (double m)
 
void setPOrigin (ParticleOrigin)
 
void setPType (const std::string &type)
 

Public Attributes

ParticlePos_tR
 
ParticleIndex_tID
 
ParticleAttrib< Vector_tP
 
ParticleAttrib< double > Q
 
ParticleAttrib< double > M
 
ParticleAttrib< double > Phi
 
ParticleAttrib< Vector_tEf
 
ParticleAttrib< Vector_tEftmp
 
ParticleAttrib< Vector_tBf
 
ParticleAttrib< int > Bin
 
ParticleAttrib< double > dt
 
ParticleAttrib< ParticleTypePType
 
ParticleAttrib< ParticleOriginPOrigin
 
ParticleAttrib< int > TriID
 
ParticleAttrib< short > cavityGapCrossed
 
ParticleAttrib< short > bunchNum
 
Vector_t RefPartR_m
 
Vector_t RefPartP_m
 
CoordinateSystemTrafo toLabTrafo_m
 
ParticleOrigin refPOrigin_m
 
ParticleType refPType_m
 
PartBinspbin_m
 
IpplTimings::TimerRef distrReload_m
 timer for IC, can not be in Distribution.h More...
 
IpplTimings::TimerRef distrCreate_m
 
double dtScInit_m
 
double deltaTau_m
 

Static Public Attributes

static const unsigned Dimension = Dim
 

Protected Member Functions

size_t calcMoments ()
 
void calcMomentsInitial ()
 
double calculateAngle (double x, double y)
 angle range [0~2PI) degree More...
 

Protected Attributes

IpplTimings::TimerRef boundpTimer_m
 
IpplTimings::TimerRef boundpBoundsTimer_m
 
IpplTimings::TimerRef boundpUpdateTimer_m
 
IpplTimings::TimerRef statParamTimer_m
 
IpplTimings::TimerRef histoTimer_m
 
IpplTimings::TimerRef selfFieldTimer_m
 timer for selfField calculation More...
 
const PartDatareference
 
UnitState_t unit_state_
 
UnitState_t stateOfLastBoundP_
 
double centroid_m [2 *Dim]
 holds the centroid of the beam More...
 
double dt_m
 holds the timestep in seconds More...
 
double t_m
 holds the actual time of the integration More...
 
double spos_m
 the position along design trajectory More...
 
Vector_t globalMeanR_m
 
Quaternion_t globalToLocalQuaternion_m
 
Vector_t rmax_m
 maximal extend of particles More...
 
Vector_t rmin_m
 minimal extend of particles More...
 
double rmsDensity_m
 
Vector_t hr_m
 meshspacing of cartesian mesh More...
 
Vektor< int, 3 > nr_m
 meshsize of cartesian mesh More...
 
FieldSolverfs_m
 stores the used field solver More...
 
double couplingConstant_m
 
double qi_m
 
double massPerParticle_m
 
int distDump_m
 counter to store the distribution dump More...
 
double dh_m
 Mesh enlargement. More...
 
double tEmission_m
 relative enlargement of the mesh More...
 
std::unique_ptr< double[]> bingamma_m
 holds the gamma of the bin More...
 
std::unique_ptr< size_t[]> binemitted_m
 
int stepsPerTurn_m
 steps per turn for OPAL-cycl More...
 
long long localTrackStep_m
 step in a TRACK command More...
 
long long globalTrackStep_m
 if multiple TRACK commands More...
 
short numBunch_m
 current bunch number More...
 
std::vector< size_t > bunchTotalNum_m
 number of particles per bunch More...
 
std::vector< size_t > bunchLocalNum_m
 
int SteptoLastInj_m
 
std::unique_ptr< size_t[]> globalPartPerNode_m
 
Distributiondist_m
 
DistributionMoments momentsComputer_m
 
bool dcBeam_m
 
double periodLength_m
 
std::shared_ptr< AbstractParticle< T, Dim > > pbase_m
 

Private Member Functions

virtual void updateDomainLength (Vektor< int, 3 > &grid)=0
 
virtual void updateFields (const Vector_t &hr, const Vector_t &origin)
 
void setup (AbstractParticle< T, Dim > *pb)
 

Private Attributes

std::unique_ptr< Informpmsg_m
 
std::unique_ptr< std::ofstream > f_stream
 
bool fixed_grid
 if the grid does not have to adapt More...
 

Detailed Description

template<class T, unsigned Dim>
class PartBunchBase< T, Dim >

H5PartWrapper: a class that manages calls to H5Part

Definition at line 49 of file PartBunchBase.h.

Member Typedef Documentation

◆ ParticleIndex_t

template<class T , unsigned Dim>
typedef AbstractParticle<T,Dim>::ParticleIndex_t PartBunchBase< T, Dim >::ParticleIndex_t

Definition at line 53 of file PartBunchBase.h.

◆ ParticlePos_t

template<class T , unsigned Dim>
typedef AbstractParticle<T,Dim>::ParticlePos_t PartBunchBase< T, Dim >::ParticlePos_t

Definition at line 52 of file PartBunchBase.h.

◆ Position_t

template<class T , unsigned Dim>
typedef AbstractParticle<T,Dim>::Position_t PartBunchBase< T, Dim >::Position_t

Definition at line 55 of file PartBunchBase.h.

◆ UpdateFlags_t

template<class T , unsigned Dim>
typedef AbstractParticle<T,Dim>::UpdateFlags PartBunchBase< T, Dim >::UpdateFlags_t

Definition at line 54 of file PartBunchBase.h.

◆ VectorPair_t

template<class T , unsigned Dim>
typedef std::pair<Vector_t, Vector_t> PartBunchBase< T, Dim >::VectorPair_t

Definition at line 57 of file PartBunchBase.h.

Member Enumeration Documentation

◆ UnitState_t

template<class T , unsigned Dim>
enum PartBunchBase::UnitState_t
Enumerator
units 
unitless 

Definition at line 61 of file PartBunchBase.h.

Constructor & Destructor Documentation

◆ ~PartBunchBase()

template<class T , unsigned Dim>
virtual PartBunchBase< T, Dim >::~PartBunchBase ( )
inlinevirtual

Definition at line 64 of file PartBunchBase.h.

◆ PartBunchBase() [1/2]

template<class T , unsigned Dim>
PartBunchBase< T, Dim >::PartBunchBase ( AbstractParticle< T, Dim > *  pb,
const PartData ref 
)

Definition at line 41 of file PartBunchBase.hpp.

◆ PartBunchBase() [2/2]

template<class T , unsigned Dim>
PartBunchBase< T, Dim >::PartBunchBase ( const PartBunchBase< T, Dim > &  rhs)
delete

Member Function Documentation

◆ actT()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::actT
virtual

Definition at line 1724 of file PartBunchBase.hpp.

◆ begin()

template<class T , unsigned Dim>
ConstIterator PartBunchBase< T, Dim >::begin ( ) const
inline

Definition at line 279 of file PartBunchBase.h.

Referenced by begin(), and DistributionMoments::compute().

◆ boundp()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::boundp
virtual

◆ boundp_destroyCycl()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::boundp_destroyCycl

delete particles which are too far away from the center of beam

Definition at line 611 of file PartBunchBase.hpp.

References abs(), Attrib::Distribution::R, Options::remotePartDel, IpplTimings::startTimer(), and IpplTimings::stopTimer().

Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().

Here is the call graph for this function:

◆ boundp_destroyT()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::boundp_destroyT

This is only temporary in order to get the collimator and pepperpot working

Definition at line 719 of file PartBunchBase.hpp.

References abs(), ne(), Attrib::Distribution::R, reduce(), and Options::remotePartDel.

Referenced by ParallelTTracker::computeExternalFields().

Here is the call graph for this function:

◆ calcBeamParameters()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcBeamParameters

◆ calcBeamParametersInitial()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcBeamParametersInitial ( )

◆ calcDebyeLength()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcDebyeLength

Compute the (global) Debye length for the beam.

Definition at line 413 of file PartBunchBase.hpp.

◆ calcEMean()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcEMean

◆ calcGammas()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcGammas

Compute the gammas of all bins.

Definition at line 339 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::computeSpaceChargeFields().

◆ calcGammas_cycl()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcGammas_cycl

◆ calcLineDensity()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcLineDensity ( unsigned int  nBins,
std::vector< double > &  lineDensity,
std::pair< double, double > &  meshInfo 
)

calculates the 1d line density (not normalized) and append it to a file.

\method calcLineDensity()

See also
ParallelTTracker
Warning
none yet

DETAILED TODO

Definition at line 471 of file PartBunchBase.hpp.

Referenced by GreenWakeFunction::apply(), CSRIGFWakeFunction::calculateLineDensity(), and CSRWakeFunction::calculateLineDensity().

◆ calcMeanPhi()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::calcMeanPhi

calculate average angle of longitudinal direction of bins

Definition at line 1518 of file PartBunchBase.hpp.

References endl(), INFOMSG, Units::rad2deg, and reduce().

Here is the call graph for this function:

◆ calcMoments()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::calcMoments ( )
protected

◆ calcMomentsInitial()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::calcMomentsInitial ( )
protected

◆ calcNumPartsOutside()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::calcNumPartsOutside ( Vector_t  x)

returns the number of particles outside of a box defined by x

Definition at line 438 of file PartBunchBase.hpp.

Referenced by DataSink::dumpSDDS().

◆ calculateAngle()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::calculateAngle ( double  x,
double  y 
)
protected

angle range [0~2PI) degree

Definition at line 1791 of file PartBunchBase.hpp.

References atan2(), and Physics::two_pi.

Here is the call graph for this function:

◆ computeSelfFields() [1/2]

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::computeSelfFields ( )
pure virtual

◆ computeSelfFields() [2/2]

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::computeSelfFields ( int  bin)
pure virtual

Implemented in PartBunch, and AmrPartBunch.

◆ computeSelfFields_cycl() [1/2]

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::computeSelfFields_cycl ( double  gamma)
pure virtual

◆ computeSelfFields_cycl() [2/2]

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::computeSelfFields_cycl ( int  bin)
pure virtual

Implemented in PartBunch, and AmrPartBunch.

◆ countTotalNumPerBunch()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::countTotalNumPerBunch

Definition at line 1455 of file PartBunchBase.hpp.

References allreduce(), and PAssert_LT.

Referenced by ParallelCyclotronTracker::initDistInGlobalFrame().

Here is the call graph for this function:

◆ create()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::create ( size_t  M)

◆ createWithID()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::createWithID ( unsigned  id)

Definition at line 1979 of file PartBunchBase.hpp.

Referenced by ScatteringPhysics::addParticleBackToBunch().

◆ destroy()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::destroy ( size_t  M,
size_t  I,
bool  doNow = false 
)

◆ destroyT()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::destroyT

Definition at line 762 of file PartBunchBase.hpp.

References INFORM_ALL_NODES, ne(), and reduce().

Referenced by BeamStrippingPhysics::apply(), and ParallelTTracker::computeExternalFields().

Here is the call graph for this function:

◆ do_binaryRepart()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::do_binaryRepart
virtual

◆ doEmission()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::doEmission

Definition at line 266 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::prepareEmission().

◆ emitParticles()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::emitParticles ( double  eZ)

Emit particles in the given bin i.e. copy the particles from the bin structure into the particle container.

Definition at line 299 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::emitParticles().

◆ end()

template<class T , unsigned Dim>
ConstIterator PartBunchBase< T, Dim >::end ( ) const
inline

Definition at line 283 of file PartBunchBase.h.

References PartBunchBase< T, Dim >::getLocalNum().

Referenced by DistributionMoments::compute(), and end().

Here is the call graph for this function:

◆ gatherLoadBalanceStatistics()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::gatherLoadBalanceStatistics

Definition at line 1244 of file PartBunchBase.hpp.

References gather(), and IpplInfo::getNodes().

Referenced by DataSink::dumpSDDS().

Here is the call graph for this function:

◆ get_68Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_68Percentile

Definition at line 1168 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_95Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_95Percentile

Definition at line 1173 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_99_99Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_99_99Percentile

Definition at line 1183 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_99Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_99Percentile

Definition at line 1178 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_bounds()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::get_bounds ( Vector_t rmin,
Vector_t rmax 
) const

◆ get_centroid()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_centroid

◆ get_DDx()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_DDx

Definition at line 1220 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_DDy()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_DDy

Definition at line 1226 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_debyeLength()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_debyeLength

Definition at line 1078 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_Dx()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_Dx

Definition at line 1208 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_Dy()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_Dy

Definition at line 1214 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_emit()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_emit

◆ get_gamma()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_gamma

◆ get_halo()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_halo

Definition at line 1163 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_hr()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_hr
virtual

◆ get_maxExtent()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_maxExtent

◆ get_meanKineticEnergy()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_meanKineticEnergy

◆ get_norm_emit()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_norm_emit

◆ get_normalizedEps_68Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_normalizedEps_68Percentile

Definition at line 1188 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_normalizedEps_95Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_normalizedEps_95Percentile

Definition at line 1193 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_normalizedEps_99_99Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_normalizedEps_99_99Percentile

Definition at line 1203 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_normalizedEps_99Percentile()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_normalizedEps_99Percentile

Definition at line 1198 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_origin()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_origin

◆ get_PBounds()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::get_PBounds ( Vector_t min,
Vector_t max 
) const

Definition at line 1261 of file PartBunchBase.hpp.

References bounds(), max(), and min().

Referenced by H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().

Here is the call graph for this function:

◆ get_plasmaParameter()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_plasmaParameter

Definition at line 1083 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_pmean()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_pmean

◆ get_pmean_Distribution()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_pmean_Distribution

Definition at line 1141 of file PartBunchBase.hpp.

References pow(), and sqrt().

Referenced by ParallelTTracker::execute(), and ThickTracker::execute().

Here is the call graph for this function:

◆ get_prms()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_prms

◆ get_rmean()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_rmean

Definition at line 1123 of file PartBunchBase.hpp.

Referenced by StatWriter::write(), and H5PartWrapperForPC::writeStepHeader().

◆ get_rmsDensity()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_rmsDensity

Definition at line 1088 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_rprms()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_rprms

Definition at line 1117 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ get_rrms()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::get_rrms

◆ get_sPos()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_sPos

◆ get_temperature()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::get_temperature

Definition at line 1073 of file PartBunchBase.hpp.

Referenced by StatWriter::write().

◆ getBConds()

template<class T , unsigned Dim>
ParticleBConds< Position_t, Dimension > & PartBunchBase< T, Dim >::getBConds ( )
inline

Definition at line 525 of file PartBunchBase.h.

References PartBunchBase< T, Dim >::pbase_m.

◆ getBeta()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getBeta ( int  i)
virtual

Definition at line 1718 of file PartBunchBase.hpp.

◆ getBinGamma()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getBinGamma ( int  bin)

Get gamma of one bin.

Definition at line 420 of file PartBunchBase.hpp.

Referenced by AmrBoxLib::computeSelfFields_cycl().

◆ getBoundingSphere()

template<class T , unsigned Dim>
std::pair< Vector_t, double > PartBunchBase< T, Dim >::getBoundingSphere

Definition at line 918 of file PartBunchBase.hpp.

References dot(), and sqrt().

Here is the call graph for this function:

◆ getCharge()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getCharge

get the total charge per simulation particle

Definition at line 1317 of file PartBunchBase.hpp.

References sum().

Referenced by StatWriter::write(), DataSink::writeImpactStatistics(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().

Here is the call graph for this function:

◆ getChargePerParticle()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getChargePerParticle

◆ getCouplingConstant()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getCouplingConstant

Definition at line 1276 of file PartBunchBase.hpp.

◆ getdE()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getdE

◆ getDestroyNum()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getDestroyNum

Definition at line 1911 of file PartBunchBase.hpp.

◆ getDistType()

template<class T , unsigned Dim>
DistributionType PartBunchBase< T, Dim >::getDistType

Definition at line 1676 of file PartBunchBase.hpp.

Referenced by ParallelCyclotronTracker::initDistInGlobalFrame().

◆ getdT()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getdT

◆ getE()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getE

Definition at line 1648 of file PartBunchBase.hpp.

◆ getEExtrema()

template<class T , unsigned Dim>
virtual VectorPair_t PartBunchBase< T, Dim >::getEExtrema ( )
pure virtual

Implemented in AmrPartBunch, and PartBunch.

◆ getEmissionDeltaT()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getEmissionDeltaT

◆ getFieldLayout()

template<class T , unsigned Dim>
virtual FieldLayout_t & PartBunchBase< T, Dim >::getFieldLayout ( )
pure virtual

◆ getFieldSolverType()

template<class T , unsigned Dim>
FieldSolverType PartBunchBase< T, Dim >::getFieldSolverType

Return the fieldsolver type if we have a fieldsolver.

Definition at line 1361 of file PartBunchBase.hpp.

References NONE.

Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().

◆ getGamma()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getGamma ( int  i)
virtual

Definition at line 1712 of file PartBunchBase.hpp.

◆ getGhostNum()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getGhostNum

Definition at line 1916 of file PartBunchBase.hpp.

Referenced by P3MPoissonSolver::calculatePairForces().

◆ getGlobalMeanR()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::getGlobalMeanR

Definition at line 1487 of file PartBunchBase.hpp.

◆ getGlobalToLocalQuaternion()

template<class T , unsigned Dim>
Quaternion_t PartBunchBase< T, Dim >::getGlobalToLocalQuaternion

Definition at line 1500 of file PartBunchBase.hpp.

◆ getGlobalTrackStep()

template<class T , unsigned Dim>
long long PartBunchBase< T, Dim >::getGlobalTrackStep

◆ getIfBeamEmitting()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::getIfBeamEmitting

◆ getInitialBeta()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getInitialBeta

◆ getInitialGamma()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getInitialGamma

◆ getKs3DRefp()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::getKs3DRefp ( )

◆ getKs3DRefr()

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::getKs3DRefr ( )

◆ getLastemittedBin()

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::getLastemittedBin

◆ getLastEmittedEnergyBin()

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::getLastEmittedEnergyBin

Definition at line 105 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::computeSpaceChargeFields().

◆ getLayout() [1/2]

template<class T , unsigned Dim>
ParticleLayout< T, Dim > & PartBunchBase< T, Dim >::getLayout

◆ getLayout() [2/2]

template<class T , unsigned Dim>
const ParticleLayout< T, Dim > & PartBunchBase< T, Dim >::getLayout

Definition at line 1936 of file PartBunchBase.hpp.

◆ getLoadBalance()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getLoadBalance ( int  p) const

Definition at line 1255 of file PartBunchBase.hpp.

Referenced by LBalWriter::write().

◆ getLocalBoundingSphere()

template<class T , unsigned Dim>
std::pair< Vector_t, double > PartBunchBase< T, Dim >::getLocalBoundingSphere

Definition at line 931 of file PartBunchBase.hpp.

References dot(), and sqrt().

Referenced by ParallelTTracker::computeParticleMatterInteraction().

Here is the call graph for this function:

◆ getLocalBounds()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::getLocalBounds ( Vector_t rmin,
Vector_t rmax 
) const

Definition at line 897 of file PartBunchBase.hpp.

References Attrib::Distribution::R.

◆ getLocalNum()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getLocalNum

Definition at line 1905 of file PartBunchBase.hpp.

Referenced by ScatteringPhysics::addParticleBackToBunch(), ThickTracker::advanceParticles_m(), CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), GreenWakeFunction::apply(), Undulator::apply(), Tracker::applyDrift(), Tracker::applyThinMultipole(), Tracker::applyThinSBend(), Tracker::applyTransform(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::borisExternalFields(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanP(), ParallelCyclotronTracker::calcMeanR(), P3MPoissonSolver::calculatePairForces(), ParallelTTracker::changeDT(), ParallelCyclotronTracker::checkNumPart(), Vacuum::checkVacuum(), ParallelTTracker::computeExternalFields(), DistributionMoments::computeMeanKineticEnergy(), ParallelTTracker::computeParticleMatterInteraction(), ParallelCyclotronTracker::computePathLengthUpdate(), ParallelTTracker::computeSpaceChargeFields(), ParallelTTracker::computeWakefield(), ScatteringPhysics::copyFromBunch(), Distribution::createOpalCycl(), ParallelCyclotronTracker::deleteParticle(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), CCollimator::doFinaliseCheck(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), PartBunchBase< T, Dim >::end(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelCyclotronTracker::globalToLocal(), Degrader::goOnline(), MultiBunchHandler::injectBunch(), ParallelCyclotronTracker::kick(), ParallelTTracker::kickParticles(), ParallelCyclotronTracker::localToGlobal(), PartBunchBase< T, Dim >::ConstIterator::operator*(), AmrBoxLib::postRegrid_m(), ParallelCyclotronTracker::push(), ParallelTTracker::pushParticles(), MultiBunchHandler::readBunch(), ParallelCyclotronTracker::rotateAroundX(), ParallelCyclotronTracker::rotateAroundZ(), ParallelCyclotronTracker::rotateWithQuaternion(), MultiBunchHandler::saveBunch(), ParallelCyclotronTracker::seoMode_m(), ParallelTTracker::setTime(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), ParallelTTracker::timeIntegration2(), ParallelTTracker::transformBunch(), ThickTracker::update_m(), Vacuum::updateParticleAttributes(), StatWriter::write(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().

◆ getLocalNumPerBunch()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getLocalNumPerBunch ( short  n) const

Definition at line 1448 of file PartBunchBase.hpp.

References Hypervolume::n, and PAssert_LT.

Referenced by ParallelCyclotronTracker::deleteParticle().

◆ getLocalTrackStep()

template<class T , unsigned Dim>
long long PartBunchBase< T, Dim >::getLocalTrackStep

◆ getM()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getM

◆ getMassPerParticle()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getMassPerParticle

Definition at line 1328 of file PartBunchBase.hpp.

Referenced by Distribution::emitParticles(), and Distribution::injectBeam().

◆ getNumberOfEmissionSteps()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getNumberOfEmissionSteps

Definition at line 116 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::prepareEmission().

◆ getNumberOfEnergyBins()

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::getNumberOfEnergyBins

Definition at line 122 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::prepareEmission().

◆ getNumBunch()

template<class T , unsigned Dim>
short PartBunchBase< T, Dim >::getNumBunch

◆ getP()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getP

◆ getParticle()

template<class T , unsigned Dim>
OpalParticle PartBunchBase< T, Dim >::getParticle ( int  ii)

◆ getPOrigin()

template<class T , unsigned Dim>
ParticleOrigin PartBunchBase< T, Dim >::getPOrigin

Definition at line 1654 of file PartBunchBase.hpp.

Referenced by Stripper::doFinaliseCheck().

◆ getPType()

template<class T , unsigned Dim>
ParticleType PartBunchBase< T, Dim >::getPType

◆ getPx()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getPx ( int  i)
virtual

Definition at line 815 of file PartBunchBase.hpp.

◆ getPx0()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getPx0 ( int  i)
virtual

Definition at line 830 of file PartBunchBase.hpp.

◆ getPy()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getPy ( int  i)
virtual

Definition at line 820 of file PartBunchBase.hpp.

◆ getPy0()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getPy0 ( int  i)
virtual

Definition at line 835 of file PartBunchBase.hpp.

◆ getPz()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getPz ( int  i)
virtual

Definition at line 825 of file PartBunchBase.hpp.

◆ getQ()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getQ

◆ getQKs3D()

template<class T , unsigned Dim>
Quaternion_t PartBunchBase< T, Dim >::getQKs3D ( )

◆ getReference()

template<class T , unsigned Dim>
const PartData * PartBunchBase< T, Dim >::getReference

◆ getRho()

template<class T , unsigned Dim>
virtual double PartBunchBase< T, Dim >::getRho ( int  x,
int  y,
int  z 
)
pure virtual

◆ getSigmaMatrix()

template<class T , unsigned Dim>
FMatrix< double, 2 *Dim, 2 *Dim > PartBunchBase< T, Dim >::getSigmaMatrix

Definition at line 2014 of file PartBunchBase.hpp.

References Dim.

Referenced by ThickTracker::track_m(), and StatWriter::write().

◆ getStepsPerTurn()

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::getStepsPerTurn

Definition at line 1377 of file PartBunchBase.hpp.

Referenced by ParallelCyclotronTracker::initializeTracking_m().

◆ getSteptoLastInj()

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::getSteptoLastInj

◆ getT()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getT

◆ getTEmission()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getTEmission

Definition at line 260 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::prepareEmission().

◆ getTotalNum()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getTotalNum

◆ getTotalNumPerBunch()

template<class T , unsigned Dim>
size_t PartBunchBase< T, Dim >::getTotalNumPerBunch ( short  n) const

◆ getUpdateFlag()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::getUpdateFlag ( UpdateFlags_t  f) const

Definition at line 1941 of file PartBunchBase.hpp.

◆ getX()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getX ( int  i)
virtual

Definition at line 841 of file PartBunchBase.hpp.

References Attrib::Distribution::R.

◆ getX0()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getX0 ( int  i)
virtual

Definition at line 859 of file PartBunchBase.hpp.

◆ getY()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getY ( int  i)
virtual

Definition at line 847 of file PartBunchBase.hpp.

References Attrib::Distribution::R.

◆ getY0()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getY0 ( int  i)
virtual

Definition at line 865 of file PartBunchBase.hpp.

◆ getZ()

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::getZ ( int  i)
virtual

Definition at line 853 of file PartBunchBase.hpp.

References Attrib::Distribution::R.

◆ ghostDestroy()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::ghostDestroy ( size_t  M,
size_t  I 
)

Definition at line 2004 of file PartBunchBase.hpp.

◆ globalCreate()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::globalCreate ( size_t  np)

Definition at line 1989 of file PartBunchBase.hpp.

◆ hasBinning()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::hasBinning

Definition at line 248 of file PartBunchBase.hpp.

Referenced by H5PartWrapperForPC::writeStepData().

◆ hasFieldSolver()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::hasFieldSolver

◆ incrementT()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::incrementT

◆ incTrackSteps()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::incTrackSteps

Definition at line 1401 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::execute().

◆ initialize()

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::initialize ( FieldLayout_t fLayout)
pure virtual

Implemented in AmrPartBunch, and PartBunch.

◆ isGridFixed()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::isGridFixed

Definition at line 242 of file PartBunchBase.hpp.

◆ iterateEmittedBin()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::iterateEmittedBin ( int  binNumber)

Definition at line 1742 of file PartBunchBase.hpp.

Referenced by Distribution::emitParticles(), and Distribution::injectBeam().

◆ maximumAmplitudes()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::maximumAmplitudes ( const FMatrix< double, 6, 6 > &  D,
double &  axmax,
double &  aymax 
)

Return maximum amplitudes.

Definition at line 986 of file PartBunchBase.hpp.

References OpalParticle::getPx(), OpalParticle::getPy(), OpalParticle::getPz(), OpalParticle::getX(), OpalParticle::getY(), OpalParticle::getZ(), max(), and pow().

Here is the call graph for this function:

◆ performDestroy()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::performDestroy ( bool  updateLocalNum = false)

◆ print()

template<class T , unsigned Dim>
Inform & PartBunchBase< T, Dim >::print ( Inform os)

◆ push_back()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::push_back ( OpalParticle const &  p)

Definition at line 944 of file PartBunchBase.hpp.

References endl(), OpalParticle::getP(), OpalParticle::getR(), and Attrib::Distribution::R.

Referenced by Tracker::addToBunch().

Here is the call graph for this function:

◆ Rebin()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::Rebin

Definition at line 128 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::emitParticles().

◆ rebin()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::rebin

Definition at line 313 of file PartBunchBase.hpp.

◆ resetID()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::resetID

Definition at line 1956 of file PartBunchBase.hpp.

◆ resetInterpolationCache()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::resetInterpolationCache ( bool  clearCache = false)
virtual

Reimplemented in PartBunch.

Definition at line 1815 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::computeSpaceChargeFields(), and ParallelTTracker::emitParticles().

◆ resetM()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::resetM ( double  m)

Definition at line 1688 of file PartBunchBase.hpp.

Referenced by Stripper::doFinaliseCheck().

◆ resetPartBinBunch()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::resetPartBinBunch

Definition at line 1608 of file PartBunchBase.hpp.

Referenced by MultiBunchHandler::updateParticleBins().

◆ resetPartBinID2()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::resetPartBinID2 ( const double  eta)

reset Bin[] for each particle according to the method given in paper PAST-AB(064402) by G. Fubiani et al.

Definition at line 1557 of file PartBunchBase.hpp.

References endl(), ERRORMSG, floor(), INFOMSG, Hypervolume::n, pow(), reduce(), and sqrt().

Referenced by MultiBunchHandler::updateParticleBins().

Here is the call graph for this function:

◆ resetQ()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::resetQ ( double  q)

Set reference data

Definition at line 1682 of file PartBunchBase.hpp.

Referenced by Stripper::doFinaliseCheck().

◆ resizeMesh()

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::resizeMesh ( )
inlinevirtual

Reimplemented in PartBunch.

Definition at line 504 of file PartBunchBase.h.

◆ runTests()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::runTests
virtual

Definition at line 1809 of file PartBunchBase.hpp.

◆ set_meshEnlargement()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::set_meshEnlargement ( double  dh)
virtual

◆ set_sPos()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::set_sPos ( double  s)

◆ setBCAllOpen()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBCAllOpen
virtual

Reimplemented in AmrPartBunch, and PartBunch.

Definition at line 1848 of file PartBunchBase.hpp.

Referenced by TrackRun::setupFieldsolver().

◆ setBCAllPeriodic()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBCAllPeriodic
virtual

Reimplemented in AmrPartBunch, and PartBunch.

Definition at line 1842 of file PartBunchBase.hpp.

◆ setBCForDCBeam()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBCForDCBeam
virtual

Reimplemented in AmrPartBunch, and PartBunch.

Definition at line 1854 of file PartBunchBase.hpp.

Referenced by TrackRun::setupFieldsolver().

◆ setBConds()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBConds ( const ParticleBConds< Position_t, Dimension > &  bc)
inline

Definition at line 529 of file PartBunchBase.h.

References PartBunchBase< T, Dim >::pbase_m.

◆ setBeamFrequency()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBeamFrequency ( double  v)

Definition at line 2009 of file PartBunchBase.hpp.

References Physics::c.

Referenced by TrackRun::setupTTracker().

◆ setBinCharge() [1/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBinCharge ( int  bin)
virtual

Set the charge of all other the ones in bin to zero.

Reimplemented in AmrPartBunch.

Definition at line 432 of file PartBunchBase.hpp.

References cmp_diff::eq(), and where().

Here is the call graph for this function:

◆ setBinCharge() [2/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setBinCharge ( int  bin,
double  q 
)
virtual

Set the charge of one bin to the value of q and all other to zero.

Reimplemented in AmrPartBunch.

Definition at line 426 of file PartBunchBase.hpp.

Referenced by ParallelTTracker::computeSpaceChargeFields(), and ParallelCyclotronTracker::computeSpaceChargeFields_m().

◆ setCharge()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setCharge ( double  q)

Definition at line 1288 of file PartBunchBase.hpp.

References endl(), and WARNMSG.

Referenced by TrackRun::setupCyclotronTracker(), TrackRun::setupThickTracker(), and TrackRun::setupTTracker().

Here is the call graph for this function:

◆ setChargeZeroPart()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setChargeZeroPart ( double  q)

Definition at line 1298 of file PartBunchBase.hpp.

Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().

◆ setCouplingConstant()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setCouplingConstant ( double  c)

◆ setDistribution() [1/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setDistribution ( Distribution d,
size_t  numberOfParticles,
double  current,
const Beamline bl 
)

Definition at line 232 of file PartBunchBase.hpp.

References Distribution::createOpalCycl().

Here is the call graph for this function:

◆ setDistribution() [2/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setDistribution ( Distribution d,
std::vector< Distribution * >  addedDistributions,
size_t &  np 
)

Definition at line 218 of file PartBunchBase.hpp.

References Distribution::createOpalT().

Referenced by TrackRun::setDistributionParallelT(), and TrackRun::setupCyclotronTracker().

Here is the call graph for this function:

◆ setdT()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setdT ( double  dt)

◆ setEnergyBins()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setEnergyBins ( int  numberOfEnergyBins)

Definition at line 145 of file PartBunchBase.hpp.

Referenced by Distribution::initializeBeam().

◆ setGlobalMeanR()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setGlobalMeanR ( Vector_t  globalMeanR)

◆ setGlobalToLocalQuaternion()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setGlobalToLocalQuaternion ( Quaternion_t  globalToLocalQuaternion)

◆ setGlobalTrackStep()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setGlobalTrackStep ( long long  n)

step in multiple TRACK commands

Definition at line 1383 of file PartBunchBase.hpp.

References Hypervolume::n.

Referenced by H5PartWrapperForPC::readStepHeader(), H5PartWrapperForPT::readStepHeader(), and ThickTracker::update_m().

◆ setKs3DRefp()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setKs3DRefp ( Vector_t  p)

◆ setKs3DRefr()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setKs3DRefr ( Vector_t  r)

◆ setLocalBinCount()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setLocalBinCount ( size_t  num,
int  bin 
)

Definition at line 331 of file PartBunchBase.hpp.

Referenced by ParallelCyclotronTracker::deleteParticle().

◆ setLocalNum()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setLocalNum ( size_t  n)

Definition at line 1926 of file PartBunchBase.hpp.

References Hypervolume::n.

◆ setLocalNumPerBunch()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setLocalNumPerBunch ( size_t  numpart,
short  n 
)

◆ setLocalTrackStep()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setLocalTrackStep ( long long  n)

◆ setMass()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setMass ( double  mass)

Definition at line 1304 of file PartBunchBase.hpp.

Referenced by TrackRun::setupCyclotronTracker(), and TrackRun::setupTTracker().

◆ setMassZeroPart()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setMassZeroPart ( double  mass)

Definition at line 1311 of file PartBunchBase.hpp.

Referenced by TrackRun::setupTTracker().

◆ setNumBunch()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setNumBunch ( short  n)

◆ setParticle() [1/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setParticle ( FVector< double, 6 >  z,
int  ii 
)

◆ setParticle() [2/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setParticle ( OpalParticle const &  p,
int  ii 
)

Definition at line 970 of file PartBunchBase.hpp.

References OpalParticle::getP(), OpalParticle::getR(), and Attrib::Distribution::R.

Here is the call graph for this function:

◆ setPBins() [1/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setPBins ( PartBins pbin)

Definition at line 284 of file PartBunchBase.hpp.

References endl(), and gmsg.

Referenced by Distribution::createOpalCycl(), Distribution::doRestartOpalCycl(), and MultiBunchHandler::MultiBunchHandler().

Here is the call graph for this function:

◆ setPBins() [2/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setPBins ( PartBinsCyc pbin)

Definition at line 292 of file PartBunchBase.hpp.

◆ setPOrigin()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setPOrigin ( ParticleOrigin  origin)

Definition at line 1659 of file PartBunchBase.hpp.

Referenced by Stripper::doCheck().

◆ setPType()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setPType ( const std::string &  type)

Definition at line 1670 of file PartBunchBase.hpp.

References ParticleProperties::getParticleType().

Referenced by TrackRun::setupCyclotronTracker(), and TrackRun::setupTTracker().

Here is the call graph for this function:

◆ setQKs3D()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setQKs3D ( Quaternion_t  q)

◆ setSolver()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setSolver ( FieldSolver fs)
virtual

CAN not re-inizialize ParticleLayout this is an IPPL issue

Reimplemented in AmrPartBunch.

Definition at line 1333 of file PartBunchBase.hpp.

References Hypervolume::fs, and OpalData::getInstance().

Referenced by AmrPartBunch::setSolver(), and TrackRun::setupFieldsolver().

Here is the call graph for this function:

◆ setStepsPerTurn()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setStepsPerTurn ( int  n)

Definition at line 1371 of file PartBunchBase.hpp.

References Hypervolume::n.

Referenced by TrackRun::setupCyclotronTracker().

◆ setSteptoLastInj()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setSteptoLastInj ( int  n)

Definition at line 1506 of file PartBunchBase.hpp.

References Hypervolume::n.

Referenced by H5PartWrapperForPC::readStepHeader().

◆ setT()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setT ( double  t)

◆ setTEmission()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setTEmission ( double  t)

Definition at line 254 of file PartBunchBase.hpp.

Referenced by Distribution::initializeBeam().

◆ setTotalNum()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setTotalNum ( size_t  n)

Definition at line 1921 of file PartBunchBase.hpp.

References Hypervolume::n.

Referenced by ParallelCyclotronTracker::deleteParticle().

◆ setTotalNumPerBunch()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setTotalNumPerBunch ( size_t  numpart,
short  n 
)

◆ setup()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setup ( AbstractParticle< T, Dim > *  pb)
private

Definition at line 1865 of file PartBunchBase.hpp.

References AbstractParticle< T, Dim >::addAttribute(), IpplInfo::getNodes(), and IpplTimings::getTimer().

Here is the call graph for this function:

◆ setUpdateFlag()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setUpdateFlag ( UpdateFlags_t  f,
bool  val 
)

Definition at line 1946 of file PartBunchBase.hpp.

◆ setZ()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::setZ ( int  i,
double  zcoo 
)
virtual

Definition at line 871 of file PartBunchBase.hpp.

◆ singleInitNode()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::singleInitNode

Definition at line 1951 of file PartBunchBase.hpp.

◆ swap()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::swap ( unsigned int  i,
unsigned int  j 
)
virtual

Reimplemented in PartBunch.

Definition at line 1820 of file PartBunchBase.hpp.

References Attrib::Distribution::R.

Referenced by PartBunch::swap().

◆ switchOffUnitlessPositions()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::switchOffUnitlessPositions ( bool  use_dt_per_particle = false)

◆ switchToUnitlessPositions()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::switchToUnitlessPositions ( bool  use_dt_per_particle = false)

◆ update() [1/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::update

Definition at line 1961 of file PartBunchBase.hpp.

References IpplException::what(), and IpplException::where().

Here is the call graph for this function:

◆ update() [2/2]

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::update ( const ParticleAttrib< char > &  canSwap)

Definition at line 1970 of file PartBunchBase.hpp.

References IpplException::what(), and IpplException::where().

Here is the call graph for this function:

◆ updateDomainLength()

template<class T , unsigned Dim>
virtual void PartBunchBase< T, Dim >::updateDomainLength ( Vektor< int, 3 > &  grid)
privatepure virtual

Implemented in AmrPartBunch, and PartBunch.

◆ updateFields()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::updateFields ( const Vector_t hr,
const Vector_t origin 
)
privatevirtual

Reimplemented in AmrPartBunch, and PartBunch.

Definition at line 1860 of file PartBunchBase.hpp.

◆ updateNumTotal()

template<class T , unsigned Dim>
void PartBunchBase< T, Dim >::updateNumTotal

◆ weHaveBins()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::weHaveBins

Definition at line 275 of file PartBunchBase.hpp.

Referenced by Stripper::doCheck(), and ParallelCyclotronTracker::isMultiBunch().

◆ weHaveEnergyBins()

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::weHaveEnergyBins

Member Data Documentation

◆ Bf

template<class T , unsigned Dim>
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Bf

◆ Bin

template<class T , unsigned Dim>
ParticleAttrib< int > PartBunchBase< T, Dim >::Bin

◆ binemitted_m

template<class T , unsigned Dim>
std::unique_ptr<size_t[]> PartBunchBase< T, Dim >::binemitted_m
protected

Definition at line 692 of file PartBunchBase.h.

◆ bingamma_m

template<class T , unsigned Dim>
std::unique_ptr<double[]> PartBunchBase< T, Dim >::bingamma_m
protected

holds the gamma of the bin

Definition at line 687 of file PartBunchBase.h.

◆ boundpBoundsTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::boundpBoundsTimer_m
protected

Definition at line 620 of file PartBunchBase.h.

◆ boundpTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::boundpTimer_m
protected

Definition at line 619 of file PartBunchBase.h.

◆ boundpUpdateTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::boundpUpdateTimer_m
protected

Definition at line 621 of file PartBunchBase.h.

◆ bunchLocalNum_m

template<class T , unsigned Dim>
std::vector<size_t> PartBunchBase< T, Dim >::bunchLocalNum_m
protected

Definition at line 708 of file PartBunchBase.h.

◆ bunchNum

template<class T , unsigned Dim>
ParticleAttrib< short > PartBunchBase< T, Dim >::bunchNum

◆ bunchTotalNum_m

template<class T , unsigned Dim>
std::vector<size_t> PartBunchBase< T, Dim >::bunchTotalNum_m
protected

number of particles per bunch

Definition at line 707 of file PartBunchBase.h.

◆ cavityGapCrossed

template<class T , unsigned Dim>
ParticleAttrib< short > PartBunchBase< T, Dim >::cavityGapCrossed

◆ centroid_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::centroid_m[2 *Dim]
protected

holds the centroid of the beam

Definition at line 639 of file PartBunchBase.h.

◆ couplingConstant_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::couplingConstant_m
protected

Definition at line 672 of file PartBunchBase.h.

◆ dcBeam_m

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::dcBeam_m
protected

Definition at line 725 of file PartBunchBase.h.

◆ deltaTau_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::deltaTau_m

Definition at line 606 of file PartBunchBase.h.

Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().

◆ dh_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::dh_m
protected

Mesh enlargement.

Definition at line 681 of file PartBunchBase.h.

◆ Dimension

template<class T , unsigned Dim>
const unsigned PartBunchBase< T, Dim >::Dimension = Dim
static

Definition at line 59 of file PartBunchBase.h.

Referenced by AmrBoxLib::getEExtrema().

◆ dist_m

template<class T , unsigned Dim>
Distribution* PartBunchBase< T, Dim >::dist_m
protected

Definition at line 721 of file PartBunchBase.h.

◆ distDump_m

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::distDump_m
protected

counter to store the distribution dump

Definition at line 678 of file PartBunchBase.h.

◆ distrCreate_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::distrCreate_m

Definition at line 603 of file PartBunchBase.h.

Referenced by Distribution::createOpalT().

◆ distrReload_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::distrReload_m

timer for IC, can not be in Distribution.h

Definition at line 602 of file PartBunchBase.h.

Referenced by Distribution::doRestartOpalCycl(), and Distribution::doRestartOpalT().

◆ dt

template<class T , unsigned Dim>
ParticleAttrib< double > PartBunchBase< T, Dim >::dt

◆ dt_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::dt_m
protected

holds the timestep in seconds

Definition at line 642 of file PartBunchBase.h.

◆ dtScInit_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::dtScInit_m

Definition at line 606 of file PartBunchBase.h.

Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().

◆ Ef

template<class T , unsigned Dim>
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Ef

◆ Eftmp

template<class T , unsigned Dim>
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Eftmp

Definition at line 579 of file PartBunchBase.h.

Referenced by AmrBoxLib::computeSelfFields_cycl().

◆ f_stream

template<class T , unsigned Dim>
std::unique_ptr<std::ofstream> PartBunchBase< T, Dim >::f_stream
private

Definition at line 614 of file PartBunchBase.h.

◆ fixed_grid

template<class T , unsigned Dim>
bool PartBunchBase< T, Dim >::fixed_grid
private

if the grid does not have to adapt

Definition at line 616 of file PartBunchBase.h.

◆ fs_m

template<class T , unsigned Dim>
FieldSolver* PartBunchBase< T, Dim >::fs_m
protected

stores the used field solver

Definition at line 670 of file PartBunchBase.h.

◆ globalMeanR_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::globalMeanR_m
protected

Initialize the translation vector and rotation quaternion here. Cyclotron tracker will reset these values each timestep TTracker can just use 0 translation and 0 rotation (quat[1 0 0 0]).

Definition at line 653 of file PartBunchBase.h.

◆ globalPartPerNode_m

template<class T , unsigned Dim>
std::unique_ptr<size_t[]> PartBunchBase< T, Dim >::globalPartPerNode_m
protected

Definition at line 719 of file PartBunchBase.h.

◆ globalToLocalQuaternion_m

template<class T , unsigned Dim>
Quaternion_t PartBunchBase< T, Dim >::globalToLocalQuaternion_m
protected

Definition at line 654 of file PartBunchBase.h.

◆ globalTrackStep_m

template<class T , unsigned Dim>
long long PartBunchBase< T, Dim >::globalTrackStep_m
protected

if multiple TRACK commands

Definition at line 701 of file PartBunchBase.h.

◆ histoTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::histoTimer_m
protected

Definition at line 624 of file PartBunchBase.h.

◆ hr_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::hr_m
protected

meshspacing of cartesian mesh

Definition at line 665 of file PartBunchBase.h.

◆ ID

template<class T , unsigned Dim>
ParticleIndex_t& PartBunchBase< T, Dim >::ID

◆ localTrackStep_m

template<class T , unsigned Dim>
long long PartBunchBase< T, Dim >::localTrackStep_m
protected

step in a TRACK command

Definition at line 698 of file PartBunchBase.h.

◆ M

template<class T , unsigned Dim>
ParticleAttrib< double > PartBunchBase< T, Dim >::M

◆ massPerParticle_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::massPerParticle_m
protected

Definition at line 675 of file PartBunchBase.h.

◆ momentsComputer_m

template<class T , unsigned Dim>
DistributionMoments PartBunchBase< T, Dim >::momentsComputer_m
protected

Definition at line 722 of file PartBunchBase.h.

◆ nr_m

template<class T , unsigned Dim>
Vektor<int, 3> PartBunchBase< T, Dim >::nr_m
protected

meshsize of cartesian mesh

Definition at line 667 of file PartBunchBase.h.

◆ numBunch_m

template<class T , unsigned Dim>
short PartBunchBase< T, Dim >::numBunch_m
protected

current bunch number

Definition at line 704 of file PartBunchBase.h.

◆ P

template<class T , unsigned Dim>
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::P

Definition at line 574 of file PartBunchBase.h.

Referenced by ScatteringPhysics::addParticleBackToBunch(), Stepper< FieldFunction, Arguments >::advance(), ThickTracker::advanceParticles_m(), Corrector::apply(), Degrader::apply(), MultipoleTBase::apply(), VerticalFFAMagnet::apply(), FlexibleCollimator::apply(), Monitor::apply(), MultipoleT::apply(), RBend3D::apply(), RFCavity::apply(), SBend3D::apply(), ScalingFFAMagnet::apply(), Solenoid::apply(), Source::apply(), TravelingWave::apply(), VariableRFCavity::apply(), VariableRFCavityFringeField::apply(), Cyclotron::apply(), Ring::apply(), Undulator::apply(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanP(), PluginElement::changeWidth(), ParallelCyclotronTracker::checkFileMomentum(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelCyclotronTracker::computePathLengthUpdate(), ParallelTTracker::computeWakefield(), ScatteringPhysics::copyFromBunch(), ParallelCyclotronTracker::deleteParticle(), LF2< FieldFunction, Arguments >::doAdvance_m(), RK4< FieldFunction, Arguments >::doAdvance_m(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelCyclotronTracker::gapCrossKick_m(), ParallelCyclotronTracker::initDistInGlobalFrame(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), LF2< FieldFunction, Arguments >::kick_m(), ParallelTTracker::kickParticles(), ParallelCyclotronTracker::MtsTracker(), PartBunchBase< T, Dim >::ConstIterator::operator*(), ParallelCyclotronTracker::push(), ParallelTTracker::pushParticles(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), H5PartWrapperForPT::readStepData(), ParallelCyclotronTracker::RFkick(), MultiBunchHandler::saveBunch(), ParallelCyclotronTracker::seoMode_m(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), AmrBoxLib::tagForMomenta_m(), ParallelTTracker::transformBunch(), StatWriter::write(), AmrYtWriter::writeParticles_m(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().

◆ pbase_m

template<class T , unsigned Dim>
std::shared_ptr<AbstractParticle<T, Dim> > PartBunchBase< T, Dim >::pbase_m
protected

◆ pbin_m

template<class T , unsigned Dim>
PartBins* PartBunchBase< T, Dim >::pbin_m

Definition at line 599 of file PartBunchBase.h.

Referenced by MultiBunchHandler::MultiBunchHandler().

◆ periodLength_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::periodLength_m
protected

Definition at line 726 of file PartBunchBase.h.

◆ Phi

template<class T , unsigned Dim>
ParticleAttrib< double > PartBunchBase< T, Dim >::Phi

Definition at line 577 of file PartBunchBase.h.

◆ pmsg_m

template<class T , unsigned Dim>
std::unique_ptr<Inform> PartBunchBase< T, Dim >::pmsg_m
private

Definition at line 613 of file PartBunchBase.h.

◆ POrigin

template<class T , unsigned Dim>
ParticleAttrib< ParticleOrigin > PartBunchBase< T, Dim >::POrigin

◆ PType

template<class T , unsigned Dim>
ParticleAttrib< ParticleType > PartBunchBase< T, Dim >::PType

◆ Q

template<class T , unsigned Dim>
ParticleAttrib< double > PartBunchBase< T, Dim >::Q

◆ qi_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::qi_m
protected

Definition at line 674 of file PartBunchBase.h.

◆ R

template<class T , unsigned Dim>
ParticlePos_t& PartBunchBase< T, Dim >::R

Definition at line 570 of file PartBunchBase.h.

Referenced by ScatteringPhysics::addParticleBackToBunch(), Stepper< FieldFunction, Arguments >::advance(), ThickTracker::advanceParticles_m(), Corrector::apply(), Degrader::apply(), MultipoleTBase::apply(), Undulator::apply(), VerticalFFAMagnet::apply(), Bend2D::apply(), FlexibleCollimator::apply(), Monitor::apply(), Multipole::apply(), MultipoleT::apply(), RBend3D::apply(), RFCavity::apply(), SBend3D::apply(), ScalingFFAMagnet::apply(), Solenoid::apply(), Source::apply(), TravelingWave::apply(), VariableRFCavity::apply(), VariableRFCavityFringeField::apply(), Cyclotron::apply(), Ring::apply(), CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), GreenWakeFunction::apply(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanR(), P3MPoissonSolver::calculatePairForces(), Vacuum::checkVacuum(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeSpaceChargeFields(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), ParallelTTracker::computeWakefield(), ScatteringPhysics::copyFromBunch(), ParallelCyclotronTracker::deleteParticle(), RK4< FieldFunction, Arguments >::derivate_m(), LF2< FieldFunction, Arguments >::doAdvance_m(), RK4< FieldFunction, Arguments >::doAdvance_m(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::gapCrossKick_m(), ParallelCyclotronTracker::initDistInGlobalFrame(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), LF2< FieldFunction, Arguments >::kick_m(), ParallelTTracker::kickParticles(), ParallelCyclotronTracker::MtsTracker(), ApplyField< T >::operator()(), PartBunchBase< T, Dim >::ConstIterator::operator*(), ParallelCyclotronTracker::push(), ParallelTTracker::pushParticles(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), H5PartWrapperForPT::readStepData(), ParallelCyclotronTracker::RFkick(), MultiBunchHandler::saveBunch(), ParallelCyclotronTracker::seoMode_m(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), AmrBoxLib::solvePoisson_m(), AmrBoxLib::tagForChargeDensity_m(), AmrBoxLib::tagForMaxNumParticles_m(), AmrBoxLib::tagForMinNumParticles_m(), AmrBoxLib::tagForMomenta_m(), ParallelTTracker::transformBunch(), StatWriter::write(), AmrYtWriter::writeParticles_m(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().

◆ reference

template<class T , unsigned Dim>
const PartData* PartBunchBase< T, Dim >::reference
protected

Definition at line 628 of file PartBunchBase.h.

◆ RefPartP_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::RefPartP_m

◆ RefPartR_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::RefPartR_m

◆ refPOrigin_m

template<class T , unsigned Dim>
ParticleOrigin PartBunchBase< T, Dim >::refPOrigin_m

Definition at line 595 of file PartBunchBase.h.

◆ refPType_m

template<class T , unsigned Dim>
ParticleType PartBunchBase< T, Dim >::refPType_m

Definition at line 596 of file PartBunchBase.h.

◆ rmax_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::rmax_m
protected

maximal extend of particles

Definition at line 657 of file PartBunchBase.h.

◆ rmin_m

template<class T , unsigned Dim>
Vector_t PartBunchBase< T, Dim >::rmin_m
protected

minimal extend of particles

Definition at line 659 of file PartBunchBase.h.

◆ rmsDensity_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::rmsDensity_m
protected

Definition at line 662 of file PartBunchBase.h.

◆ selfFieldTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::selfFieldTimer_m
protected

timer for selfField calculation

Definition at line 626 of file PartBunchBase.h.

◆ spos_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::spos_m
protected

the position along design trajectory

Definition at line 646 of file PartBunchBase.h.

◆ stateOfLastBoundP_

template<class T , unsigned Dim>
UnitState_t PartBunchBase< T, Dim >::stateOfLastBoundP_
protected

Definition at line 636 of file PartBunchBase.h.

◆ statParamTimer_m

template<class T , unsigned Dim>
IpplTimings::TimerRef PartBunchBase< T, Dim >::statParamTimer_m
protected

Definition at line 622 of file PartBunchBase.h.

◆ stepsPerTurn_m

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::stepsPerTurn_m
protected

steps per turn for OPAL-cycl

Definition at line 695 of file PartBunchBase.h.

◆ SteptoLastInj_m

template<class T , unsigned Dim>
int PartBunchBase< T, Dim >::SteptoLastInj_m
protected

this parameter records the current steps since last bunch injection it helps to inject new bunches correctly in the restart run of OPAL-cycl it is stored during phase space dump.

Definition at line 713 of file PartBunchBase.h.

◆ t_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::t_m
protected

holds the actual time of the integration

Definition at line 644 of file PartBunchBase.h.

◆ tEmission_m

template<class T , unsigned Dim>
double PartBunchBase< T, Dim >::tEmission_m
protected

relative enlargement of the mesh

if larger than 0, emitt particles for tEmission_m [s]

Definition at line 684 of file PartBunchBase.h.

◆ toLabTrafo_m

template<class T , unsigned Dim>
CoordinateSystemTrafo PartBunchBase< T, Dim >::toLabTrafo_m

◆ TriID

template<class T , unsigned Dim>
ParticleAttrib< int > PartBunchBase< T, Dim >::TriID

◆ unit_state_

template<class T , unsigned Dim>
UnitState_t PartBunchBase< T, Dim >::unit_state_
protected

Definition at line 635 of file PartBunchBase.h.


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