OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <PartBunchBase.h>
Inherits std::enable_shared_from_this< PartBunchBase< T, Dim > >.
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_t > | VectorPair_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) |
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 () |
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) |
void | getLocalBounds (Vector_t &rmin, Vector_t &rmax) |
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 |
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 |
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 () |
std::string | 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 PartData * | getReference () const |
double | getEmissionDeltaT () |
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 () |
Inform & | print (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_t & | getFieldLayout ()=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 *Dim > | getSigmaMatrix () |
double | getQ () const |
Access to reference data. More... | |
double | getM () const |
double | getP () const |
double | getE () const |
ParticleOrigin | getPOrigin () const |
ParticleType | getPType () const |
std::string | getPTypeString () |
double | getInitialBeta () const |
double | getInitialGamma () const |
void | resetQ (double q) |
void | resetM (double m) |
void | setPOrigin (ParticleOrigin) |
void | setPType (std::string type) |
Public Attributes | |
ParticlePos_t & | R |
ParticleIndex_t & | ID |
ParticleAttrib< Vector_t > | P |
ParticleAttrib< double > | Q |
ParticleAttrib< double > | M |
ParticleAttrib< double > | Phi |
ParticleAttrib< Vector_t > | Ef |
ParticleAttrib< Vector_t > | Eftmp |
ParticleAttrib< Vector_t > | Bf |
ParticleAttrib< int > | Bin |
ParticleAttrib< double > | dt |
ParticleAttrib< ParticleType > | PType |
ParticleAttrib< ParticleOrigin > | POrigin |
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 |
PartBins * | pbin_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 PartData * | reference |
UnitState_t | unit_state_ |
UnitState_t | stateOfLastBoundP_ |
double | centroid_m [2 *Dim] |
holds the centroid of the beam More... | |
FMatrix< double, 2 *Dim, 2 *Dim > | moments_m |
6x6 matrix of the moments 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... | |
Vector_t | hr_m |
meshspacing of cartesian mesh More... | |
Vektor< int, 3 > | nr_m |
meshsize of cartesian mesh More... | |
FieldSolver * | fs_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 |
Distribution * | dist_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< Inform > | pmsg_m |
std::unique_ptr< std::ofstream > | f_stream |
bool | fixed_grid |
if the grid does not have to adapt More... | |
H5PartWrapper: a class that manages calls to H5Part
Definition at line 67 of file PartBunchBase.h.
typedef AbstractParticle<T, Dim>::ParticleIndex_t PartBunchBase< T, Dim >::ParticleIndex_t |
Definition at line 71 of file PartBunchBase.h.
typedef AbstractParticle<T, Dim>::ParticlePos_t PartBunchBase< T, Dim >::ParticlePos_t |
Definition at line 70 of file PartBunchBase.h.
typedef AbstractParticle<T, Dim>::Position_t PartBunchBase< T, Dim >::Position_t |
Definition at line 73 of file PartBunchBase.h.
typedef AbstractParticle<T, Dim>::UpdateFlags PartBunchBase< T, Dim >::UpdateFlags_t |
Definition at line 72 of file PartBunchBase.h.
typedef std::pair<Vector_t, Vector_t> PartBunchBase< T, Dim >::VectorPair_t |
Definition at line 75 of file PartBunchBase.h.
enum PartBunchBase::UnitState_t |
Enumerator | |
---|---|
units | |
unitless |
Definition at line 79 of file PartBunchBase.h.
|
inlinevirtual |
Definition at line 82 of file PartBunchBase.h.
PartBunchBase< T, Dim >::PartBunchBase | ( | AbstractParticle< T, Dim > * | pb, |
const PartData * | ref | ||
) |
Definition at line 41 of file PartBunchBase.hpp.
References PartBunchBase< T, Dim >::setup().
|
delete |
|
virtual |
Definition at line 1696 of file PartBunchBase.hpp.
|
inline |
Definition at line 291 of file PartBunchBase.h.
Referenced by begin(), and DistributionMoments::compute().
|
virtual |
In case of dcBeam_m && hr_m < 0 this is the first call to boundp and we have to set hr completely i.e. x,y and z.
Reimplemented in AmrPartBunch.
Definition at line 495 of file PartBunchBase.hpp.
References Attrib::Distribution::R, and IpplTimings::startTimer().
Referenced by ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::computeSpaceChargeFields(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), ParallelCyclotronTracker::deleteParticle(), Distribution::doRestartOpalCycl(), Distribution::doRestartOpalT(), ParallelCyclotronTracker::initDistInGlobalFrame(), Distribution::injectBeam(), and MultiBunchHandler::readBunch().
void PartBunchBase< T, Dim >::boundp_destroyCycl |
delete particles which are too far away from the center of beam
Definition at line 580 of file PartBunchBase.hpp.
References Options::remotePartDel, IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().
size_t PartBunchBase< T, Dim >::boundp_destroyT |
This is only temporary in order to get the collimator and pepperpot working
Definition at line 688 of file PartBunchBase.hpp.
References abs(), ne(), Attrib::Distribution::R, reduce(), and Options::remotePartDel.
Referenced by ParallelTTracker::computeExternalFields().
void PartBunchBase< T, Dim >::calcBeamParameters |
Definition at line 1177 of file PartBunchBase.hpp.
References IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by GreenWakeFunction::apply(), Undulator::apply(), ParallelTTracker::computeSpaceChargeFields(), ParallelTTracker::computeWakefield(), ParallelCyclotronTracker::deleteParticle(), DataSink::dumpSDDS(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelCyclotronTracker::initDistInGlobalFrame(), MultiBunchHandler::injectBunch(), TrackRun::setupCyclotronTracker(), TrackRun::setupThickTracker(), TrackRun::setupTTracker(), P3MPoissonSolver::test(), ThickTracker::update_m(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPT::writeStep(), and H5PartWrapperForPC::writeStepHeader().
void PartBunchBase< T, Dim >::calcBeamParametersInitial | ( | ) |
void PartBunchBase< T, Dim >::calcEMean |
Definition at line 1720 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::dumpStats(), Distribution::injectBeam(), and ThickTracker::update_m().
void PartBunchBase< T, Dim >::calcGammas |
Compute the gammas of all bins.
Definition at line 330 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields().
void PartBunchBase< T, Dim >::calcGammas_cycl |
Definition at line 377 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().
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()
DETAILED TODO
Definition at line 456 of file PartBunchBase.hpp.
Referenced by GreenWakeFunction::apply(), CSRIGFWakeFunction::calculateLineDensity(), and CSRWakeFunction::calculateLineDensity().
double PartBunchBase< T, Dim >::calcMeanPhi |
calculate average angle of longitudinal direction of bins
Definition at line 1426 of file PartBunchBase.hpp.
References endl(), INFOMSG, Physics::pi, and reduce().
|
protected |
|
protected |
size_t PartBunchBase< T, Dim >::calcNumPartsOutside | ( | Vector_t | x | ) |
returns the number of particles outside of a box defined by x
Definition at line 423 of file PartBunchBase.hpp.
Referenced by DataSink::dumpSDDS().
|
protected |
angle range [0~2PI) degree
Definition at line 1763 of file PartBunchBase.hpp.
References atan2(), and Physics::two_pi.
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
Referenced by ParallelTTracker::computeSpaceChargeFields().
|
pure virtual |
Implemented in AmrPartBunch, and PartBunch.
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().
|
pure virtual |
Implemented in AmrPartBunch, and PartBunch.
void PartBunchBase< T, Dim >::countTotalNumPerBunch |
Definition at line 1363 of file PartBunchBase.hpp.
References allreduce(), and PAssert_LT.
Referenced by ParallelCyclotronTracker::initDistInGlobalFrame().
void PartBunchBase< T, Dim >::create | ( | size_t | M | ) |
Definition at line 1956 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), Stripper::doCheck(), Distribution::doRestartOpalCycl(), Distribution::doRestartOpalT(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), Distribution::injectBeam(), and MultiBunchHandler::readBunch().
void PartBunchBase< T, Dim >::createWithID | ( | unsigned | id | ) |
Definition at line 1951 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::addBackToBunch().
void PartBunchBase< T, Dim >::destroy | ( | size_t | M, |
size_t | I, | ||
bool | doNow = false |
||
) |
Definition at line 1966 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), ScatteringPhysics::copyFromBunch(), ParallelCyclotronTracker::deleteParticle(), and ParallelTTracker::evenlyDistributeParticles().
size_t PartBunchBase< T, Dim >::destroyT |
Definition at line 731 of file PartBunchBase.hpp.
References INFORM_ALL_NODES, ne(), and reduce().
Referenced by ParallelTTracker::computeExternalFields().
|
virtual |
Reimplemented in PartBunch, and AmrPartBunch.
Definition at line 212 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::doBinaryRepartition(), and ParallelCyclotronTracker::repartition().
bool PartBunchBase< T, Dim >::doEmission |
Definition at line 257 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::prepareEmission().
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 290 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::emitParticles().
|
inline |
Definition at line 295 of file PartBunchBase.h.
References PartBunchBase< T, Dim >::getLocalNum().
Referenced by DistributionMoments::compute(), and end().
void PartBunchBase< T, Dim >::gatherLoadBalanceStatistics |
Definition at line 1154 of file PartBunchBase.hpp.
References gather(), and IpplInfo::getNodes().
Referenced by DataSink::dumpSDDS().
void PartBunchBase< T, Dim >::get_bounds | ( | Vector_t & | rmin, |
Vector_t & | rmax | ||
) |
Definition at line 845 of file PartBunchBase.hpp.
References allreduce(), Dim, and min().
Referenced by CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), GreenWakeFunction::apply(), Vacuum::checkVacuum(), ParallelTTracker::computeExternalFields(), CCollimator::doFinaliseCheck(), CCollimator::doPreCheck(), Probe::doPreCheck(), Septum::doPreCheck(), Stripper::doPreCheck(), ThickTracker::dump_m(), ParallelTTracker::execute(), and ParallelTTracker::writePhaseSpace().
Vector_t PartBunchBase< T, Dim >::get_centroid |
Definition at line 1054 of file PartBunchBase.hpp.
Referenced by Ring::apply(), Undulator::apply(), ParallelTTracker::computeSpaceChargeFields(), MultiBunchHandler::injectBunch(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::get_DDx |
Definition at line 1130 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
double PartBunchBase< T, Dim >::get_DDy |
Definition at line 1136 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
double PartBunchBase< T, Dim >::get_Dx |
Definition at line 1118 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
double PartBunchBase< T, Dim >::get_Dy |
Definition at line 1124 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
Vector_t PartBunchBase< T, Dim >::get_emit |
Definition at line 1100 of file PartBunchBase.hpp.
Referenced by H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::get_gamma |
Definition at line 1030 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), ThickTracker::update_m(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_halo |
Definition at line 1112 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
|
virtual |
Reimplemented in AmrPartBunch.
Definition at line 1142 of file PartBunchBase.hpp.
Referenced by MGPoissonSolver::MGPoissonSolver(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
Vector_t PartBunchBase< T, Dim >::get_maxExtent |
Definition at line 1048 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::get_meanKineticEnergy |
Definition at line 1036 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), CSRIGFWakeFunction::calculateGreenFunction(), ParallelTTracker::dumpStats(), Expressions::getEkin(), StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_norm_emit |
Definition at line 1106 of file PartBunchBase.hpp.
Referenced by StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_origin |
Definition at line 1042 of file PartBunchBase.hpp.
Referenced by H5PartWrapperForPC::writeStepData(), H5PartWrapperForPT::writeStepData(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
void PartBunchBase< T, Dim >::get_PBounds | ( | Vector_t & | min, |
Vector_t & | max | ||
) | const |
Definition at line 1171 of file PartBunchBase.hpp.
References bounds(), max(), and min().
Referenced by H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_pmean |
Definition at line 1084 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), ParallelTTracker::computeSpaceChargeFields(), ParallelTTracker::computeWakefield(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_pmean_Distribution |
Definition at line 1090 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::execute(), and ThickTracker::execute().
Vector_t PartBunchBase< T, Dim >::get_prms |
Definition at line 1078 of file PartBunchBase.hpp.
Referenced by StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_rmean |
Definition at line 1072 of file PartBunchBase.hpp.
Referenced by StatWriter::write(), and H5PartWrapperForPC::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::get_rprms |
Definition at line 1066 of file PartBunchBase.hpp.
Referenced by StatWriter::write().
Vector_t PartBunchBase< T, Dim >::get_rrms |
Definition at line 1060 of file PartBunchBase.hpp.
Referenced by DataSink::dumpSDDS(), MultiBunchHandler::injectBunch(), StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::get_sPos |
get the spos of the primary beam
none |
Definition at line 1018 of file PartBunchBase.hpp.
Referenced by CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), BeamStrippingPhysics::apply(), Monitor::applyToReferenceParticle(), Distribution::doRestartOpalCycl(), ParallelTTracker::execute(), ParallelCyclotronTracker::initDistInGlobalFrame(), Monitor::initialise(), ParallelCyclotronTracker::saveInjectValues(), ThickTracker::update_m(), MemoryProfiler::write(), MemoryWriter::write(), StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
|
inline |
Definition at line 524 of file PartBunchBase.h.
References PartBunchBase< T, Dim >::pbase_m.
|
virtual |
Definition at line 1690 of file PartBunchBase.hpp.
double PartBunchBase< T, Dim >::getBinGamma | ( | int | bin | ) |
Get gamma of one bin.
Definition at line 405 of file PartBunchBase.hpp.
Referenced by AmrBoxLib::computeSelfFields_cycl().
std::pair< Vector_t, double > PartBunchBase< T, Dim >::getBoundingSphere |
double PartBunchBase< T, Dim >::getCharge |
get the total charge per simulation particle
Definition at line 1227 of file PartBunchBase.hpp.
References sum().
Referenced by StatWriter::write(), DataSink::writeImpactStatistics(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::getChargePerParticle |
get the macro particle charge
Definition at line 1233 of file PartBunchBase.hpp.
Referenced by GreenWakeFunction::apply(), Undulator::apply(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), Distribution::injectBeam(), Multipole::isFocusing(), and DataSink::writeImpactStatistics().
double PartBunchBase< T, Dim >::getCouplingConstant |
Definition at line 1186 of file PartBunchBase.hpp.
double PartBunchBase< T, Dim >::getdE |
Definition at line 1666 of file PartBunchBase.hpp.
Referenced by StatWriter::write(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
size_t PartBunchBase< T, Dim >::getDestroyNum |
Definition at line 1883 of file PartBunchBase.hpp.
double PartBunchBase< T, Dim >::getdT |
Definition at line 994 of file PartBunchBase.hpp.
Referenced by Corrector::apply(), BeamStrippingPhysics::apply(), ScatteringPhysics::apply(), Undulator::apply(), Degrader::applyToReferenceParticle(), Monitor::applyToReferenceParticle(), ParallelTTracker::autophaseCavities(), ParallelCyclotronTracker::bgf_main_collision_test(), Bend2D::calculateBendAngle(), Bend2D::calculateRefTrajectory(), ParallelTTracker::changeDT(), ParallelTTracker::computeParticleMatterInteraction(), MGPoissonSolver::computePotential(), ThickTracker::dump_m(), ParallelTTracker::emitParticles(), Distribution::emitParticles(), ParallelTTracker::execute(), ParallelTTracker::findStartPosition(), Corrector::goOnline(), RBend3D::initialise(), ParallelCyclotronTracker::initializeTracking_m(), ParallelTTracker::prepareEmission(), ParallelTTracker::selectDT(), ParallelTTracker::setTime(), P3MPoissonSolver::test(), ParallelTTracker::timeIntegration2(), ParallelTTracker::updateReferenceParticle(), ParallelTTracker::updateRefToLabCSTrafo(), StatWriter::write(), and ParallelTTracker::writePhaseSpace().
double PartBunchBase< T, Dim >::getE |
Definition at line 1556 of file PartBunchBase.hpp.
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
double PartBunchBase< T, Dim >::getEmissionDeltaT |
Definition at line 1708 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::prepareEmission(), and ParallelTTracker::selectDT().
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
Referenced by H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
std::string PartBunchBase< T, Dim >::getFieldSolverType |
Return the fieldsolver type if we have a fieldsolver.
Definition at line 1270 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().
|
virtual |
Definition at line 1684 of file PartBunchBase.hpp.
size_t PartBunchBase< T, Dim >::getGhostNum |
Definition at line 1888 of file PartBunchBase.hpp.
Vector_t PartBunchBase< T, Dim >::getGlobalMeanR |
Definition at line 1395 of file PartBunchBase.hpp.
Quaternion_t PartBunchBase< T, Dim >::getGlobalToLocalQuaternion |
Definition at line 1408 of file PartBunchBase.hpp.
long long PartBunchBase< T, Dim >::getGlobalTrackStep |
Definition at line 1297 of file PartBunchBase.hpp.
Referenced by Monitor::applyToReferenceParticle(), Distribution::doRestartOpalT(), ThickTracker::dump_m(), ParallelTTracker::dumpStats(), ParallelTTracker::execute(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
bool PartBunchBase< T, Dim >::getIfBeamEmitting |
Definition at line 91 of file PartBunchBase.hpp.
References reduce().
Referenced by ParallelTTracker::emitParticles(), and ParallelTTracker::selectDT().
double PartBunchBase< T, Dim >::getInitialBeta |
Definition at line 1672 of file PartBunchBase.hpp.
Referenced by ThickTracker::advanceDispersion_m(), and ThickTracker::updateParticle_m().
double PartBunchBase< T, Dim >::getInitialGamma |
Definition at line 1678 of file PartBunchBase.hpp.
Referenced by Distribution::createOpalCycl(), and ThickTracker::updateParticle_m().
Vector_t PartBunchBase< T, Dim >::getKs3DRefp | ( | ) |
Vector_t PartBunchBase< T, Dim >::getKs3DRefr | ( | ) |
int PartBunchBase< T, Dim >::getLastemittedBin |
Definition at line 313 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m(), and ParallelCyclotronTracker::deleteParticle().
int PartBunchBase< T, Dim >::getLastEmittedEnergyBin |
Definition at line 105 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields().
ParticleLayout< T, Dim > & PartBunchBase< T, Dim >::getLayout |
Definition at line 1903 of file PartBunchBase.hpp.
Referenced by AmrBoxLib::create(), AmrYtWriter::writeBunch(), and AmrYtWriter::writeParticles_m().
const ParticleLayout< T, Dim > & PartBunchBase< T, Dim >::getLayout |
Definition at line 1908 of file PartBunchBase.hpp.
size_t PartBunchBase< T, Dim >::getLoadBalance | ( | int | p | ) | const |
Definition at line 1165 of file PartBunchBase.hpp.
Referenced by LBalWriter::write().
std::pair< Vector_t, double > PartBunchBase< T, Dim >::getLocalBoundingSphere |
Definition at line 900 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeParticleMatterInteraction().
void PartBunchBase< T, Dim >::getLocalBounds | ( | Vector_t & | rmin, |
Vector_t & | rmax | ||
) |
Definition at line 866 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
size_t PartBunchBase< T, Dim >::getLocalNum |
Definition at line 1877 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::addBackToBunch(), ThickTracker::advanceParticles_m(), CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), GreenWakeFunction::apply(), Undulator::apply(), P3MPoissonSolver::applyConstantFocusing(), Tracker::applyDrift(), Tracker::applyThinMultipole(), Tracker::applyThinSBend(), Monitor::applyToReferenceParticle(), Tracker::applyTransform(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::borisExternalFields(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanP(), ParallelCyclotronTracker::calcMeanR(), ParallelTTracker::changeDT(), ParallelCyclotronTracker::checkNumPart(), Vacuum::checkVacuum(), P3MPoissonSolver::compute_temperature(), P3MPoissonSolver::computeAvgSpaceChargeForces(), 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(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), PartBunchBase< T, Dim >::end(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::finalizeTracking_m(), BeamStrippingPhysics::getSecondaryParticles(), ParallelCyclotronTracker::globalToLocal(), Degrader::goOnline(), Vacuum::initialise(), 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(), StatWriter::write(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
size_t PartBunchBase< T, Dim >::getLocalNumPerBunch | ( | short | n | ) | const |
Definition at line 1356 of file PartBunchBase.hpp.
References Hypervolume::n, and PAssert_LT.
Referenced by ParallelCyclotronTracker::deleteParticle().
long long PartBunchBase< T, Dim >::getLocalTrackStep |
Definition at line 1315 of file PartBunchBase.hpp.
Referenced by MGPoissonSolver::computeMap(), MGPoissonSolver::computePotential(), AmrBoxLib::computeSelfFields_cycl(), Distribution::doRestartOpalT(), ParallelCyclotronTracker::initializeTracking_m(), ParallelCyclotronTracker::initTrackOrbitFile(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::getM |
Definition at line 1544 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::apply(), Degrader::applyToReferenceParticle(), MultiBunchHandler::calcBunchBeamParameters(), BendBase::calcDesignRadius(), BendBase::calcFieldAmplitude(), BendBase::calcGamma(), CSRIGFWakeFunction::calculateGreenFunction(), Distribution::createOpalCycl(), Distribution::createOpalT(), Distribution::doRestartOpalCycl(), ParallelTTracker::execute(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelTTracker::findStartPosition(), Corrector::goOnline(), Vacuum::initialise(), PartBunchBase< T, Dim >::ConstIterator::operator*(), H5PartWrapperForPC::readStepHeader(), ParallelCyclotronTracker::RFkick(), Corrector::setDesignEnergy(), Distribution::setupEmissionModelAstra(), Distribution::setupEmissionModelNone(), Distribution::setupParticleBins(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::getMassPerParticle |
Definition at line 1238 of file PartBunchBase.hpp.
Referenced by Distribution::emitParticles(), and Distribution::injectBeam().
size_t PartBunchBase< T, Dim >::getNumberOfEmissionSteps |
Definition at line 116 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::prepareEmission().
int PartBunchBase< T, Dim >::getNumberOfEnergyBins |
Definition at line 122 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::prepareEmission().
short PartBunchBase< T, Dim >::getNumBunch |
Definition at line 1329 of file PartBunchBase.hpp.
Referenced by MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::deleteParticle(), Distribution::doRestartOpalCycl(), ParallelCyclotronTracker::execute(), AmrBoxLib::initFineLevels(), ParallelCyclotronTracker::initializeTracking_m(), MultiBunchHandler::MultiBunchHandler(), H5PartWrapperForPC::readStepData(), and H5PartWrapperForPC::writeStepHeader().
double PartBunchBase< T, Dim >::getP |
Definition at line 1550 of file PartBunchBase.hpp.
Referenced by Distribution::createOpalT(), and Distribution::setupParticleBins().
OpalParticle PartBunchBase< T, Dim >::getParticle | ( | int | ii | ) |
Definition at line 946 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
Referenced by Tracker::applyDrift(), Tracker::applyThinMultipole(), Tracker::applyThinSBend(), and Tracker::applyTransform().
ParticleOrigin PartBunchBase< T, Dim >::getPOrigin |
Definition at line 1562 of file PartBunchBase.hpp.
Referenced by Stripper::doFinaliseCheck().
ParticleType PartBunchBase< T, Dim >::getPType |
Definition at line 1573 of file PartBunchBase.hpp.
Referenced by BeamStrippingPhysics::apply(), ScatteringPhysics::apply(), ScatteringPhysics::computeEnergyLoss(), Distribution::emitParticles(), and Distribution::injectBeam().
std::string PartBunchBase< T, Dim >::getPTypeString |
Definition at line 1578 of file PartBunchBase.hpp.
References ALPHA, ANTIPROTON, CARBON, DEUTERON, ELECTRON, endl(), H2P, H3P, HMINUS, HYDROGEN, INFOMSG, MUON, POSITRON, PROTON, URANIUM, and XENON.
Referenced by BeamStrippingPhysics::apply(), and ScatteringPhysics::apply().
|
virtual |
Definition at line 784 of file PartBunchBase.hpp.
|
virtual |
Definition at line 799 of file PartBunchBase.hpp.
|
virtual |
Definition at line 789 of file PartBunchBase.hpp.
|
virtual |
Definition at line 804 of file PartBunchBase.hpp.
|
virtual |
Definition at line 794 of file PartBunchBase.hpp.
double PartBunchBase< T, Dim >::getQ |
Access to reference data.
Definition at line 1538 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::apply(), Degrader::applyToReferenceParticle(), BendBase::calcDesignRadius(), BendBase::calcFieldAmplitude(), Distribution::createOpalCycl(), Distribution::createOpalT(), Distribution::emitParticles(), RBend::findChordLength(), Bend2D::findIdealBendParameters(), Vacuum::initialise(), RBend3D::initialise(), RFCavity::initialise(), ParallelCyclotronTracker::RFkick(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Quaternion_t PartBunchBase< T, Dim >::getQKs3D | ( | ) |
const PartData * PartBunchBase< T, Dim >::getReference |
Definition at line 1702 of file PartBunchBase.hpp.
Referenced by Bend2D::setupPusher(), RFCavity::trackOnAxisParticle(), and RBend3D::trackRefParticleThrough().
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
Referenced by H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
FMatrix< double, 2 *Dim, 2 *Dim > PartBunchBase< T, Dim >::getSigmaMatrix |
Definition at line 1986 of file PartBunchBase.hpp.
References Dim.
Referenced by ThickTracker::track_m().
int PartBunchBase< T, Dim >::getStepsPerTurn |
Definition at line 1285 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::initializeTracking_m().
int PartBunchBase< T, Dim >::getSteptoLastInj |
Definition at line 1420 of file PartBunchBase.hpp.
Referenced by Distribution::doRestartOpalCycl(), and H5PartWrapperForPC::writeStepHeader().
double PartBunchBase< T, Dim >::getT |
Definition at line 1012 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::apply(), Undulator::apply(), ParallelTTracker::applyFractionalStep(), ParallelCyclotronTracker::applyPluginElements(), ParallelTTracker::autophaseCavities(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::borisExternalFields(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), MultiBunchHandler::calcBunchBeamParameters(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), AmrBoxLib::computeSelfFields_cycl(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalT(), ThickTracker::dump_m(), ParallelTTracker::dumpStats(), ParallelTTracker::emitParticles(), ParallelTTracker::execute(), AmrBoxLib::getT(), AmrBoxLib::initFineLevels(), ParallelCyclotronTracker::initializeTracking_m(), PartBunchBase< T, Dim >::ConstIterator::operator*(), ParallelCyclotronTracker::push(), ParallelCyclotronTracker::saveInjectValues(), ThickTracker::update_m(), ParallelTTracker::updateReferenceParticle(), ParallelCyclotronTracker::updateTime(), MemoryProfiler::write(), MemoryWriter::write(), StatWriter::write(), GridLBalWriter::write(), LBalWriter::write(), DataSink::writeImpactStatistics(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
double PartBunchBase< T, Dim >::getTEmission |
Definition at line 251 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::prepareEmission().
size_t PartBunchBase< T, Dim >::getTotalNum |
Definition at line 1872 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), ParallelCyclotronTracker::applyPluginElements(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchMode_m(), ParallelCyclotronTracker::calcMeanP(), ParallelCyclotronTracker::calcMeanR(), P3MPoissonSolver::compute_temperature(), P3MPoissonSolver::computeAvgSpaceChargeForces(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelCyclotronTracker::computePathLengthUpdate(), Distribution::createOpalCycl(), Probe::doInitialise(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::doRestartOpalT(), ThickTracker::dump_m(), ParallelTTracker::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), ParallelTTracker::execute(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelCyclotronTracker::GenericTracker(), Monitor::initialise(), MultiBunchHandler::injectBunch(), ParallelCyclotronTracker::MtsTracker(), MultiBunchHandler::MultiBunchHandler(), ParallelCyclotronTracker::update_m(), StatWriter::write(), AmrYtWriter::writeBunch(), DataSink::writeImpactStatistics(), ParallelTTracker::writePhaseSpace(), H5Writer::writePhaseSpace(), H5PartWrapperForPC::writeStep(), and H5PartWrapperForPT::writeStep().
size_t PartBunchBase< T, Dim >::getTotalNumPerBunch | ( | short | n | ) | const |
Definition at line 1342 of file PartBunchBase.hpp.
References Hypervolume::n, and PAssert_LT.
Referenced by ParallelCyclotronTracker::calcMeanR(), and ParallelCyclotronTracker::computePathLengthUpdate().
bool PartBunchBase< T, Dim >::getUpdateFlag | ( | UpdateFlags_t | f | ) | const |
Definition at line 1913 of file PartBunchBase.hpp.
|
virtual |
Definition at line 810 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
|
virtual |
Definition at line 828 of file PartBunchBase.hpp.
|
virtual |
Definition at line 816 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
|
virtual |
Definition at line 834 of file PartBunchBase.hpp.
|
virtual |
Definition at line 822 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
void PartBunchBase< T, Dim >::ghostDestroy | ( | size_t | M, |
size_t | I | ||
) |
Definition at line 1976 of file PartBunchBase.hpp.
void PartBunchBase< T, Dim >::globalCreate | ( | size_t | np | ) |
Definition at line 1961 of file PartBunchBase.hpp.
bool PartBunchBase< T, Dim >::hasBinning |
Definition at line 239 of file PartBunchBase.hpp.
Referenced by H5PartWrapperForPC::writeStepData().
bool PartBunchBase< T, Dim >::hasFieldSolver |
Definition at line 1260 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::bunchMode_m(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeWakefield(), ParallelTTracker::doBinaryRepartition(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::getFieldsAtPoint(), and ParallelCyclotronTracker::MtsTracker().
void PartBunchBase< T, Dim >::incrementT |
Definition at line 1006 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeParticleMatterInteraction(), and ParallelTTracker::execute().
void PartBunchBase< T, Dim >::incTrackSteps |
Definition at line 1309 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::execute().
|
pure virtual |
Implemented in PartBunch, and AmrPartBunch.
bool PartBunchBase< T, Dim >::isGridFixed |
Definition at line 233 of file PartBunchBase.hpp.
void PartBunchBase< T, Dim >::iterateEmittedBin | ( | int | binNumber | ) |
Definition at line 1714 of file PartBunchBase.hpp.
Referenced by Distribution::emitParticles(), and Distribution::injectBeam().
void PartBunchBase< T, Dim >::maximumAmplitudes | ( | const FMatrix< double, 6, 6 > & | D, |
double & | axmax, | ||
double & | aymax | ||
) |
Return maximum amplitudes.
Definition at line 955 of file PartBunchBase.hpp.
References OpalParticle::getPx(), OpalParticle::getPy(), OpalParticle::getPz(), OpalParticle::getX(), OpalParticle::getY(), OpalParticle::getZ(), max(), and pow().
void PartBunchBase< T, Dim >::performDestroy | ( | bool | updateLocalNum = false | ) |
Definition at line 1971 of file PartBunchBase.hpp.
Referenced by ScatteringPhysics::copyFromBunch(), and ParallelCyclotronTracker::deleteParticle().
Inform & PartBunchBase< T, Dim >::print | ( | Inform & | os | ) |
Definition at line 1725 of file PartBunchBase.hpp.
References abs(), endl(), Inform::flags(), Util::getChargeString(), Util::getEnergyString(), Util::getLengthString(), Util::getTimeString(), level1(), and sum().
Referenced by Undulator::apply(), operator<<(), and PartBunch::print().
void PartBunchBase< T, Dim >::push_back | ( | OpalParticle const & | p | ) |
Definition at line 913 of file PartBunchBase.hpp.
References endl(), OpalParticle::getP(), OpalParticle::getR(), and Attrib::Distribution::R.
Referenced by Tracker::addToBunch().
void PartBunchBase< T, Dim >::Rebin |
Definition at line 128 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::emitParticles().
void PartBunchBase< T, Dim >::rebin |
Definition at line 304 of file PartBunchBase.hpp.
void PartBunchBase< T, Dim >::resetID |
Definition at line 1928 of file PartBunchBase.hpp.
|
virtual |
Reimplemented in PartBunch.
Definition at line 1787 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields(), and ParallelTTracker::emitParticles().
void PartBunchBase< T, Dim >::resetM | ( | double | m | ) |
Definition at line 1660 of file PartBunchBase.hpp.
Referenced by Stripper::doFinaliseCheck().
bool PartBunchBase< T, Dim >::resetPartBinBunch |
Definition at line 1516 of file PartBunchBase.hpp.
Referenced by MultiBunchHandler::updateParticleBins().
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 1465 of file PartBunchBase.hpp.
References endl(), ERRORMSG, floor(), INFOMSG, Hypervolume::n, pow(), reduce(), and sqrt().
Referenced by MultiBunchHandler::updateParticleBins().
void PartBunchBase< T, Dim >::resetQ | ( | double | q | ) |
Set reference data
Definition at line 1654 of file PartBunchBase.hpp.
Referenced by Stripper::doFinaliseCheck().
|
inlinevirtual |
Reimplemented in PartBunch.
Definition at line 503 of file PartBunchBase.h.
|
virtual |
Reimplemented in PartBunch.
Definition at line 1781 of file PartBunchBase.hpp.
Referenced by TrackRun::setupTTracker().
|
virtual |
Reimplemented in AmrPartBunch.
Definition at line 1148 of file PartBunchBase.hpp.
Referenced by FieldSolver::initAmrObject_m(), FieldSolver::initSolver(), and AmrPartBunch::set_meshEnlargement().
void PartBunchBase< T, Dim >::set_sPos | ( | double | s | ) |
Definition at line 1024 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::execute(), ThickTracker::execute(), H5PartWrapperForPC::readStepHeader(), H5PartWrapperForPT::readStepHeader(), ThickTracker::update_m(), ParallelCyclotronTracker::updatePathLength(), and ParallelTTracker::writePhaseSpace().
|
virtual |
Reimplemented in PartBunch, and AmrPartBunch.
Definition at line 1820 of file PartBunchBase.hpp.
Referenced by TrackRun::setupFieldsolver().
|
virtual |
Reimplemented in PartBunch, and AmrPartBunch.
Definition at line 1814 of file PartBunchBase.hpp.
|
virtual |
Reimplemented in PartBunch, and AmrPartBunch.
Definition at line 1826 of file PartBunchBase.hpp.
Referenced by TrackRun::setupFieldsolver().
|
inline |
Definition at line 528 of file PartBunchBase.h.
References PartBunchBase< T, Dim >::pbase_m.
void PartBunchBase< T, Dim >::setBeamFrequency | ( | double | v | ) |
Definition at line 1981 of file PartBunchBase.hpp.
References Physics::c.
Referenced by TrackRun::setupTTracker().
|
virtual |
Set the charge of all other the ones in bin to zero.
Reimplemented in AmrPartBunch.
Definition at line 417 of file PartBunchBase.hpp.
References cmp_diff::eq(), and where().
|
virtual |
Set the charge of one bin to the value of q and all other to zero.
Reimplemented in AmrPartBunch.
Definition at line 411 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields(), and ParallelCyclotronTracker::computeSpaceChargeFields_m().
void PartBunchBase< T, Dim >::setCharge | ( | double | q | ) |
Definition at line 1198 of file PartBunchBase.hpp.
References endl(), and WARNMSG.
Referenced by TrackRun::setupCyclotronTracker(), TrackRun::setupThickTracker(), and TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setChargeZeroPart | ( | double | q | ) |
Definition at line 1208 of file PartBunchBase.hpp.
Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setCouplingConstant | ( | double | c | ) |
Definition at line 1192 of file PartBunchBase.hpp.
References Physics::c.
Referenced by TrackRun::setupCyclotronTracker(), TrackRun::setupThickTracker(), and TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setDistribution | ( | Distribution * | d, |
std::vector< Distribution * > | addedDistributions, | ||
size_t & | np | ||
) |
Definition at line 218 of file PartBunchBase.hpp.
Referenced by TrackRun::setDistributionParallelT().
void PartBunchBase< T, Dim >::setdT | ( | double | dt | ) |
Definition at line 988 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::execute(), ParallelTTracker::selectDT(), TrackRun::setupCyclotronTracker(), TrackRun::setupThickTracker(), TrackRun::setupTTracker(), and ThickTracker::update_m().
void PartBunchBase< T, Dim >::setEnergyBins | ( | int | numberOfEnergyBins | ) |
Definition at line 145 of file PartBunchBase.hpp.
Referenced by Distribution::initializeBeam().
void PartBunchBase< T, Dim >::setGlobalMeanR | ( | Vector_t | globalMeanR | ) |
Definition at line 1389 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields(), and ParallelCyclotronTracker::computeSpaceChargeFields_m().
void PartBunchBase< T, Dim >::setGlobalToLocalQuaternion | ( | Quaternion_t | globalToLocalQuaternion | ) |
Definition at line 1401 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::computeSpaceChargeFields_m().
void PartBunchBase< T, Dim >::setGlobalTrackStep | ( | long long | n | ) |
step in multiple TRACK commands
Definition at line 1291 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by H5PartWrapperForPC::readStepHeader(), H5PartWrapperForPT::readStepHeader(), and ThickTracker::update_m().
void PartBunchBase< T, Dim >::setKs3DRefp | ( | Vector_t | p | ) |
void PartBunchBase< T, Dim >::setKs3DRefr | ( | Vector_t | r | ) |
void PartBunchBase< T, Dim >::setLocalBinCount | ( | size_t | num, |
int | bin | ||
) |
Definition at line 322 of file PartBunchBase.hpp.
Referenced by ParallelCyclotronTracker::deleteParticle().
void PartBunchBase< T, Dim >::setLocalNum | ( | size_t | n | ) |
Definition at line 1898 of file PartBunchBase.hpp.
References Hypervolume::n.
void PartBunchBase< T, Dim >::setLocalNumPerBunch | ( | size_t | numpart, |
short | n | ||
) |
Definition at line 1349 of file PartBunchBase.hpp.
References Hypervolume::n, and PAssert_LT.
Referenced by MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::deleteParticle(), MultiBunchHandler::injectBunch(), and MultiBunchHandler::readBunch().
void PartBunchBase< T, Dim >::setLocalTrackStep | ( | long long | n | ) |
step in a TRACK command
Definition at line 1303 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by H5PartWrapperForPC::readStepHeader(), H5PartWrapperForPT::readStepHeader(), TrackRun::setupThickTracker(), TrackRun::setupTTracker(), and ParallelCyclotronTracker::update_m().
void PartBunchBase< T, Dim >::setMass | ( | double | mass | ) |
Definition at line 1214 of file PartBunchBase.hpp.
Referenced by TrackRun::setupCyclotronTracker(), and TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setMassZeroPart | ( | double | mass | ) |
Definition at line 1221 of file PartBunchBase.hpp.
Referenced by TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setNumBunch | ( | short | n | ) |
Definition at line 1321 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by Distribution::initializeBeam(), MultiBunchHandler::injectBunch(), and H5PartWrapperForPC::readStepHeader().
void PartBunchBase< T, Dim >::setParticle | ( | FVector< double, 6 > | z, |
int | ii | ||
) |
Definition at line 928 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
Referenced by Tracker::applyDrift(), Tracker::applyThinMultipole(), Tracker::applyThinSBend(), and Tracker::applyTransform().
void PartBunchBase< T, Dim >::setParticle | ( | OpalParticle const & | p, |
int | ii | ||
) |
Definition at line 939 of file PartBunchBase.hpp.
References OpalParticle::getP(), OpalParticle::getR(), and Attrib::Distribution::R.
void PartBunchBase< T, Dim >::setPBins | ( | PartBins * | pbin | ) |
Definition at line 275 of file PartBunchBase.hpp.
Referenced by Distribution::createOpalCycl(), Distribution::doRestartOpalCycl(), and MultiBunchHandler::MultiBunchHandler().
void PartBunchBase< T, Dim >::setPBins | ( | PartBinsCyc * | pbin | ) |
Definition at line 283 of file PartBunchBase.hpp.
void PartBunchBase< T, Dim >::setPOrigin | ( | ParticleOrigin | origin | ) |
Definition at line 1567 of file PartBunchBase.hpp.
Referenced by Stripper::doCheck().
void PartBunchBase< T, Dim >::setPType | ( | std::string | type | ) |
Definition at line 1616 of file PartBunchBase.hpp.
References ALPHA, ANTIPROTON, CARBON, DEUTERON, ELECTRON, endl(), H2P, H3P, HMINUS, HYDROGEN, INFOMSG, MUON, POSITRON, PROTON, UNNAMED, URANIUM, and XENON.
Referenced by TrackRun::setupCyclotronTracker(), and TrackRun::setupTTracker().
void PartBunchBase< T, Dim >::setQKs3D | ( | Quaternion_t | q | ) |
|
virtual |
CAN not re-inizialize ParticleLayout this is an IPPL issue
Reimplemented in AmrPartBunch.
Definition at line 1243 of file PartBunchBase.hpp.
References Hypervolume::fs, and OpalData::getInstance().
Referenced by AmrPartBunch::setSolver(), and TrackRun::setupFieldsolver().
void PartBunchBase< T, Dim >::setStepsPerTurn | ( | int | n | ) |
Definition at line 1279 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by TrackRun::setupCyclotronTracker().
void PartBunchBase< T, Dim >::setSteptoLastInj | ( | int | n | ) |
Definition at line 1414 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by H5PartWrapperForPC::readStepHeader().
void PartBunchBase< T, Dim >::setT | ( | double | t | ) |
Definition at line 1000 of file PartBunchBase.hpp.
Referenced by Undulator::apply(), ParallelTTracker::applyFractionalStep(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::execute(), ParallelTTracker::findStartPosition(), H5PartWrapperForPC::readStepHeader(), H5PartWrapperForPT::readStepHeader(), TrackRun::setupThickTracker(), TrackRun::setupTTracker(), ThickTracker::update_m(), and ParallelCyclotronTracker::updateTime().
void PartBunchBase< T, Dim >::setTEmission | ( | double | t | ) |
Definition at line 245 of file PartBunchBase.hpp.
Referenced by Distribution::initializeBeam().
void PartBunchBase< T, Dim >::setTotalNum | ( | size_t | n | ) |
Definition at line 1893 of file PartBunchBase.hpp.
References Hypervolume::n.
Referenced by ParallelCyclotronTracker::deleteParticle().
void PartBunchBase< T, Dim >::setTotalNumPerBunch | ( | size_t | numpart, |
short | n | ||
) |
Definition at line 1335 of file PartBunchBase.hpp.
References Hypervolume::n, and PAssert_LT.
Referenced by MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::deleteParticle(), MultiBunchHandler::injectBunch(), and MultiBunchHandler::readBunch().
|
private |
Definition at line 1837 of file PartBunchBase.hpp.
References AbstractParticle< T, Dim >::addAttribute(), IpplInfo::getNodes(), and IpplTimings::getTimer().
Referenced by PartBunchBase< T, Dim >::PartBunchBase().
void PartBunchBase< T, Dim >::setUpdateFlag | ( | UpdateFlags_t | f, |
bool | val | ||
) |
Definition at line 1918 of file PartBunchBase.hpp.
|
virtual |
Definition at line 840 of file PartBunchBase.hpp.
bool PartBunchBase< T, Dim >::singleInitNode |
Definition at line 1923 of file PartBunchBase.hpp.
|
virtual |
Reimplemented in PartBunch.
Definition at line 1792 of file PartBunchBase.hpp.
References Attrib::Distribution::R.
Referenced by PartBunch::swap().
void PartBunchBase< T, Dim >::switchOffUnitlessPositions | ( | bool | use_dt_per_particle = false | ) |
Definition at line 188 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::emitParticles(), and ParallelTTracker::pushParticles().
void PartBunchBase< T, Dim >::switchToUnitlessPositions | ( | bool | use_dt_per_particle = false | ) |
Definition at line 164 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::emitParticles(), and ParallelTTracker::pushParticles().
void PartBunchBase< T, Dim >::update |
Definition at line 1933 of file PartBunchBase.hpp.
References IpplException::what(), and IpplException::where().
Referenced by P3MPoissonSolver::test().
void PartBunchBase< T, Dim >::update | ( | const ParticleAttrib< char > & | canSwap | ) |
Definition at line 1942 of file PartBunchBase.hpp.
References IpplException::what(), and IpplException::where().
|
privatepure virtual |
Implemented in PartBunch, and AmrPartBunch.
|
privatevirtual |
Reimplemented in PartBunch, and AmrPartBunch.
Definition at line 1832 of file PartBunchBase.hpp.
void PartBunchBase< T, Dim >::updateNumTotal |
Definition at line 296 of file PartBunchBase.hpp.
References reduce().
Referenced by ParallelCyclotronTracker::applyPluginElements(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::emitParticles(), and ParallelCyclotronTracker::MtsTracker().
bool PartBunchBase< T, Dim >::weHaveBins |
Definition at line 266 of file PartBunchBase.hpp.
Referenced by Stripper::doCheck(), BeamStrippingPhysics::getSecondaryParticles(), Vacuum::initialise(), and ParallelCyclotronTracker::isMultiBunch().
bool PartBunchBase< T, Dim >::weHaveEnergyBins |
Definition at line 154 of file PartBunchBase.hpp.
Referenced by ParallelTTracker::computeSpaceChargeFields(), ParallelTTracker::emitParticles(), and ParallelTTracker::execute().
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Bf |
Definition at line 580 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), ParallelCyclotronTracker::borisExternalFields(), ParallelCyclotronTracker::bunchMode_m(), ParallelTTracker::computeExternalFields(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeSpaceChargeFields(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), ScatteringPhysics::copyFromBunch(), Distribution::emitParticles(), ParallelTTracker::execute(), ParallelCyclotronTracker::getFieldsAtPoint(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), ParallelTTracker::kickParticles(), ParallelTTracker::transformBunch(), AmrYtWriter::writeParticles_m(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
ParticleAttrib< int > PartBunchBase< T, Dim >::Bin |
Definition at line 581 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), Stepper< FieldFunction, Arguments >::advance(), Degrader::apply(), Cyclotron::apply(), Ring::apply(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::bunchMode_m(), Vacuum::checkVacuum(), ParallelTTracker::computeExternalFields(), AmrBoxLib::computeSelfFields_cycl(), ScatteringPhysics::copyFromBunch(), ParallelCyclotronTracker::deleteParticle(), CCollimator::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::emitParticles(), BeamStrippingPhysics::getSecondaryParticles(), ParallelCyclotronTracker::initDistInGlobalFrame(), Vacuum::initialise(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), ParallelCyclotronTracker::push(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), H5PartWrapperForPT::readStepData(), ParallelCyclotronTracker::singleMode_m(), AmrBoxLib::solvePoisson_m(), AmrBoxLib::tagForChargeDensity_m(), AmrYtWriter::writeParticles_m(), and H5PartWrapperForPC::writeStepData().
|
protected |
Definition at line 691 of file PartBunchBase.h.
|
protected |
holds the gamma of the bin
Definition at line 686 of file PartBunchBase.h.
|
protected |
Definition at line 619 of file PartBunchBase.h.
|
protected |
Definition at line 618 of file PartBunchBase.h.
|
protected |
Definition at line 620 of file PartBunchBase.h.
|
protected |
Definition at line 707 of file PartBunchBase.h.
ParticleAttrib< short > PartBunchBase< T, Dim >::bunchNum |
Definition at line 587 of file PartBunchBase.h.
Referenced by Cyclotron::apply(), ParallelCyclotronTracker::bgf_main_collision_test(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanR(), ParallelCyclotronTracker::computePathLengthUpdate(), ParallelCyclotronTracker::deleteParticle(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), and H5PartWrapperForPC::writeStepData().
|
protected |
number of particles per bunch
Definition at line 706 of file PartBunchBase.h.
ParticleAttrib< short > PartBunchBase< T, Dim >::cavityGapCrossed |
Definition at line 586 of file PartBunchBase.h.
Referenced by ParallelCyclotronTracker::bunchMode_m(), ParallelCyclotronTracker::gapCrossKick_m(), and ParallelCyclotronTracker::singleMode_m().
|
protected |
holds the centroid of the beam
Definition at line 638 of file PartBunchBase.h.
|
protected |
Definition at line 671 of file PartBunchBase.h.
|
protected |
Definition at line 724 of file PartBunchBase.h.
double PartBunchBase< T, Dim >::deltaTau_m |
Definition at line 605 of file PartBunchBase.h.
Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().
|
protected |
Mesh enlargement.
Definition at line 680 of file PartBunchBase.h.
|
static |
Definition at line 77 of file PartBunchBase.h.
Referenced by AmrBoxLib::getEExtrema().
|
protected |
Definition at line 720 of file PartBunchBase.h.
|
protected |
counter to store the distribution dump
Definition at line 677 of file PartBunchBase.h.
IpplTimings::TimerRef PartBunchBase< T, Dim >::distrCreate_m |
Definition at line 602 of file PartBunchBase.h.
Referenced by Distribution::createOpalT().
IpplTimings::TimerRef PartBunchBase< T, Dim >::distrReload_m |
timer for IC, can not be in Distribution.h
Definition at line 601 of file PartBunchBase.h.
Referenced by Distribution::doRestartOpalCycl(), and Distribution::doRestartOpalT().
ParticleAttrib< double > PartBunchBase< T, Dim >::dt |
Definition at line 582 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), Degrader::apply(), FlexibleCollimator::apply(), Monitor::apply(), Source::apply(), Undulator::apply(), ParallelTTracker::changeDT(), ParallelTTracker::computeExternalFields(), ScatteringPhysics::copyFromBunch(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), ParallelTTracker::kickParticles(), ParallelTTracker::pushParticles(), ParallelTTracker::setTime(), ParallelTTracker::timeIntegration2(), ThickTracker::update_m(), and AmrYtWriter::writeParticles_m().
|
protected |
holds the timestep in seconds
Definition at line 644 of file PartBunchBase.h.
double PartBunchBase< T, Dim >::dtScInit_m |
Definition at line 605 of file PartBunchBase.h.
Referenced by TrackRun::setupThickTracker(), and TrackRun::setupTTracker().
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Ef |
Definition at line 577 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), CSRIGFWakeFunction::apply(), CSRWakeFunction::apply(), GreenWakeFunction::apply(), P3MPoissonSolver::applyConstantFocusing(), ParallelCyclotronTracker::borisExternalFields(), ParallelCyclotronTracker::bunchMode_m(), P3MPoissonSolver::calculateGridForces(), P3MPoissonSolver::computeAvgSpaceChargeForces(), ParallelTTracker::computeExternalFields(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeSpaceChargeFields(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), ParallelTTracker::computeWakefield(), ScatteringPhysics::copyFromBunch(), Distribution::emitParticles(), ParallelTTracker::execute(), ParallelCyclotronTracker::getFieldsAtPoint(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), ParallelTTracker::kickParticles(), ApplyField< T >::operator()(), P3MPoissonSolver::test(), ParallelTTracker::transformBunch(), AmrYtWriter::writeParticles_m(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::Eftmp |
Definition at line 578 of file PartBunchBase.h.
Referenced by AmrBoxLib::computeSelfFields_cycl().
|
private |
Definition at line 613 of file PartBunchBase.h.
|
private |
if the grid does not have to adapt
Definition at line 615 of file PartBunchBase.h.
|
protected |
stores the used field solver
Definition at line 669 of file PartBunchBase.h.
|
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 655 of file PartBunchBase.h.
|
protected |
Definition at line 718 of file PartBunchBase.h.
|
protected |
Definition at line 656 of file PartBunchBase.h.
|
protected |
if multiple TRACK commands
Definition at line 700 of file PartBunchBase.h.
|
protected |
Definition at line 623 of file PartBunchBase.h.
|
protected |
meshspacing of cartesian mesh
Definition at line 664 of file PartBunchBase.h.
ParticleIndex_t& PartBunchBase< T, Dim >::ID |
Definition at line 570 of file PartBunchBase.h.
Referenced by Degrader::apply(), FlexibleCollimator::apply(), Monitor::apply(), Source::apply(), Monitor::applyToReferenceParticle(), ParallelCyclotronTracker::bgf_main_collision_test(), ScatteringPhysics::copyFromBunch(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), ParallelTTracker::evenlyDistributeParticles(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelCyclotronTracker::getFieldsAtPoint(), ParallelCyclotronTracker::initDistInGlobalFrame(), Distribution::injectBeam(), PartBunchBase< T, Dim >::ConstIterator::operator*(), H5PartWrapperForPT::readStepData(), ParallelCyclotronTracker::RFkick(), ParallelCyclotronTracker::seoMode_m(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), BeamStrippingPhysics::transformToH3plus(), BeamStrippingPhysics::transformToHminus(), BeamStrippingPhysics::transformToHydrogen(), BeamStrippingPhysics::transformToProton(), AmrYtWriter::writeParticles_m(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
|
protected |
step in a TRACK command
Definition at line 697 of file PartBunchBase.h.
ParticleAttrib< double > PartBunchBase< T, Dim >::M |
Definition at line 575 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), FlexibleCollimator::apply(), Monitor::apply(), Source::apply(), Cyclotron::apply(), Ring::apply(), Monitor::applyToReferenceParticle(), ParallelCyclotronTracker::bgf_main_collision_test(), ScatteringPhysics::copyFromBunch(), RK4< FieldFunction, Arguments >::derivate_m(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), Vacuum::initialise(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), LF2< FieldFunction, Arguments >::kick_m(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), MultiBunchHandler::saveBunch(), P3MPoissonSolver::test(), BeamStrippingPhysics::transformToH3plus(), BeamStrippingPhysics::transformToHminus(), BeamStrippingPhysics::transformToHydrogen(), BeamStrippingPhysics::transformToProton(), AmrYtWriter::writeParticles_m(), and H5PartWrapperForPC::writeStepData().
|
protected |
Definition at line 674 of file PartBunchBase.h.
|
protected |
6x6 matrix of the moments of the beam
Definition at line 641 of file PartBunchBase.h.
|
protected |
Definition at line 721 of file PartBunchBase.h.
|
protected |
meshsize of cartesian mesh
Definition at line 666 of file PartBunchBase.h.
|
protected |
current bunch number
Definition at line 703 of file PartBunchBase.h.
ParticleAttrib< Vector_t > PartBunchBase< T, Dim >::P |
Definition at line 573 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), 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(), Monitor::applyToReferenceParticle(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanP(), PluginElement::changeWidth(), P3MPoissonSolver::compute_temperature(), 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(), P3MPoissonSolver::test(), ParallelTTracker::transformBunch(), StatWriter::write(), AmrYtWriter::writeParticles_m(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
|
protected |
Definition at line 726 of file PartBunchBase.h.
Referenced by PartBunchBase< T, Dim >::getBConds(), and PartBunchBase< T, Dim >::setBConds().
PartBins* PartBunchBase< T, Dim >::pbin_m |
Definition at line 598 of file PartBunchBase.h.
Referenced by MultiBunchHandler::MultiBunchHandler().
|
protected |
Definition at line 725 of file PartBunchBase.h.
ParticleAttrib< double > PartBunchBase< T, Dim >::Phi |
Definition at line 576 of file PartBunchBase.h.
Referenced by P3MPoissonSolver::calculateGridForces(), and ApplyField< T >::operator()().
|
private |
Definition at line 612 of file PartBunchBase.h.
ParticleAttrib< ParticleOrigin > PartBunchBase< T, Dim >::POrigin |
Definition at line 584 of file PartBunchBase.h.
Referenced by Stripper::doCheck(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), BeamStrippingPhysics::getSecondaryParticles(), Distribution::injectBeam(), MultiBunchHandler::readBunch(), MultiBunchHandler::saveBunch(), TrackRun::setupCyclotronTracker(), and H5PartWrapperForPT::writeStepData().
ParticleAttrib< ParticleType > PartBunchBase< T, Dim >::PType |
Definition at line 583 of file PartBunchBase.h.
Referenced by BeamStrippingPhysics::computeCrossSection(), BeamStrippingPhysics::doPhysics(), Distribution::emitParticles(), BeamStrippingPhysics::getSecondaryParticles(), Distribution::injectBeam(), BeamStrippingPhysics::transformToH3plus(), BeamStrippingPhysics::transformToHminus(), BeamStrippingPhysics::transformToHydrogen(), BeamStrippingPhysics::transformToProton(), and H5PartWrapperForPT::writeStepData().
ParticleAttrib< double > PartBunchBase< T, Dim >::Q |
Definition at line 574 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), FlexibleCollimator::apply(), Monitor::apply(), Source::apply(), Cyclotron::apply(), Ring::apply(), Undulator::apply(), Monitor::applyToReferenceParticle(), ParallelCyclotronTracker::bgf_main_collision_test(), P3MPoissonSolver::calculateGridForces(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeSpaceChargeFields(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), ScatteringPhysics::copyFromBunch(), RK4< FieldFunction, Arguments >::derivate_m(), CCollimator::doCheck(), Probe::doCheck(), Septum::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), Vacuum::initialise(), Distribution::injectBeam(), ParallelCyclotronTracker::kick(), LF2< FieldFunction, Arguments >::kick_m(), ApplyField< T >::operator()(), PartBunchBase< T, Dim >::ConstIterator::operator*(), MultiBunchHandler::readBunch(), H5PartWrapperForPC::readStepData(), H5PartWrapperForPT::readStepData(), MultiBunchHandler::saveBunch(), AmrBoxLib::solvePoisson_m(), AmrBoxLib::tagForChargeDensity_m(), P3MPoissonSolver::test(), BeamStrippingPhysics::transformToH3plus(), BeamStrippingPhysics::transformToHminus(), BeamStrippingPhysics::transformToHydrogen(), BeamStrippingPhysics::transformToProton(), AmrYtWriter::writeParticles_m(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
|
protected |
Definition at line 673 of file PartBunchBase.h.
ParticlePos_t& PartBunchBase< T, Dim >::R |
Definition at line 569 of file PartBunchBase.h.
Referenced by ScatteringPhysics::addBackToBunch(), Stepper< FieldFunction, Arguments >::advance(), ThickTracker::advanceParticles_m(), Component::apply(), Corrector::apply(), Degrader::apply(), MultipoleTBase::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(), Undulator::apply(), P3MPoissonSolver::applyConstantFocusing(), Monitor::applyToReferenceParticle(), ParallelCyclotronTracker::bgf_main_collision_test(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), MultiBunchHandler::calcBunchBeamParameters(), ParallelCyclotronTracker::calcMeanR(), P3MPoissonSolver::calculateGridForces(), 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(), P3MPoissonSolver::test(), ParallelTTracker::transformBunch(), StatWriter::write(), AmrYtWriter::writeParticles_m(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepData(), and H5PartWrapperForPT::writeStepData().
|
protected |
Definition at line 627 of file PartBunchBase.h.
Vector_t PartBunchBase< T, Dim >::RefPartP_m |
Definition at line 590 of file PartBunchBase.h.
Referenced by Undulator::apply(), ParallelTTracker::applyFractionalStep(), ParallelTTracker::autophaseCavities(), ParallelTTracker::execute(), ParallelTTracker::findStartPosition(), H5PartWrapperForPT::readStepHeader(), ParallelCyclotronTracker::singleParticleDump(), ParallelTTracker::updateReferenceParticle(), ParallelTTracker::updateRefToLabCSTrafo(), StatWriter::write(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
Vector_t PartBunchBase< T, Dim >::RefPartR_m |
Definition at line 589 of file PartBunchBase.h.
Referenced by Undulator::apply(), ParallelTTracker::applyFractionalStep(), ParallelTTracker::autophaseCavities(), ParallelTTracker::execute(), ParallelTTracker::findStartPosition(), H5PartWrapperForPT::readStepHeader(), ParallelCyclotronTracker::singleParticleDump(), ParallelTTracker::updateReferenceParticle(), ParallelTTracker::updateRefToLabCSTrafo(), StatWriter::write(), ParallelTTracker::writePhaseSpace(), H5PartWrapperForPC::writeStepHeader(), and H5PartWrapperForPT::writeStepHeader().
ParticleOrigin PartBunchBase< T, Dim >::refPOrigin_m |
Definition at line 594 of file PartBunchBase.h.
ParticleType PartBunchBase< T, Dim >::refPType_m |
Definition at line 595 of file PartBunchBase.h.
|
protected |
maximal extend of particles
Definition at line 659 of file PartBunchBase.h.
|
protected |
minimal extend of particles
Definition at line 661 of file PartBunchBase.h.
|
protected |
timer for selfField calculation
Definition at line 625 of file PartBunchBase.h.
|
protected |
the position along design trajectory
Definition at line 648 of file PartBunchBase.h.
|
protected |
Definition at line 635 of file PartBunchBase.h.
|
protected |
Definition at line 621 of file PartBunchBase.h.
|
protected |
steps per turn for OPAL-cycl
Definition at line 694 of file PartBunchBase.h.
|
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 712 of file PartBunchBase.h.
|
protected |
holds the actual time of the integration
Definition at line 646 of file PartBunchBase.h.
|
protected |
relative enlargement of the mesh
if larger than 0, emitt particles for tEmission_m [s]
Definition at line 683 of file PartBunchBase.h.
CoordinateSystemTrafo PartBunchBase< T, Dim >::toLabTrafo_m |
Definition at line 592 of file PartBunchBase.h.
Referenced by Undulator::apply(), ParallelTTracker::applyFractionalStep(), ParallelTTracker::computeExternalFields(), ParallelTTracker::computeParticleMatterInteraction(), ParallelTTracker::emitParticles(), ParallelTTracker::execute(), ParallelTTracker::findStartPosition(), H5PartWrapperForPT::readStepHeader(), ParallelTTracker::updateRefToLabCSTrafo(), ParallelTTracker::writePhaseSpace(), and H5PartWrapperForPT::writeStepHeader().
ParticleAttrib< int > PartBunchBase< T, Dim >::TriID |
Definition at line 585 of file PartBunchBase.h.
Referenced by Distribution::emitParticles(), ParallelTTracker::evenlyDistributeParticles(), and Distribution::injectBeam().
|
protected |
Definition at line 634 of file PartBunchBase.h.