OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
|
#include <ParallelCyclotronTracker.h>
Classes | |
struct | settings |
Public Types | |
typedef std::vector< double > | dvector_t |
typedef std::vector< int > | ivector_t |
typedef std::pair< double[8], Component * > | element_pair |
typedef std::pair< ElementType, element_pair > | type_pair |
typedef std::list< type_pair * > | beamline_list |
![]() | |
enum | { X , PX , Y , PY , T , PT } |
Public Member Functions | |
ParallelCyclotronTracker (const Beamline &bl, PartBunchBase< double, 3 > *bunch, DataSink &ds, const PartData &data, bool revBeam, bool revTrack, int maxSTEPS, Steppers::TimeIntegrator timeintegrator, const int &numBunch, const double &mbEta, const double &mbPara, const std::string &mbMode, const std::string &mbBinning) | |
Constructor. More... | |
virtual | ~ParallelCyclotronTracker () |
virtual void | execute () |
Apply the algorithm to the top-level beamline. More... | |
bool | computeExternalFields_m (const Vector_t &R, const Vector_t &P, const double &t, Vector_t &Efield, Vector_t &Bfield) |
Calculate the field map at an arbitrary point. More... | |
virtual void | visitBeamline (const Beamline &) |
Apply the algorithm to a beam line. More... | |
virtual void | visitCCollimator (const CCollimator &) |
Apply the algorithm to a collimator. More... | |
virtual void | visitCorrector (const Corrector &) |
Apply the algorithm to a closed orbit corrector. More... | |
virtual void | visitCyclotron (const Cyclotron &cycl) |
Apply the algorithm to a cyclotron. More... | |
virtual void | visitDegrader (const Degrader &) |
Apply the algorithm to a degrader. More... | |
virtual void | visitDrift (const Drift &) |
Apply the algorithm to a drift space. More... | |
virtual void | visitFlexibleCollimator (const FlexibleCollimator &) |
Apply the algorithm to a flexible collimator. More... | |
virtual void | visitMarker (const Marker &) |
Apply the algorithm to a marker. More... | |
virtual void | visitMonitor (const Monitor &) |
Apply the algorithm to a beam position monitor. More... | |
virtual void | visitMultipole (const Multipole &) |
Apply the algorithm to a multipole. More... | |
virtual void | visitMultipoleT (const MultipoleT &) |
Apply the algorithm to an arbitrary multipole. More... | |
virtual void | visitMultipoleTStraight (const MultipoleTStraight &) |
Apply the algorithm to an arbitrary straight multipole. More... | |
virtual void | visitMultipoleTCurvedConstRadius (const MultipoleTCurvedConstRadius &) |
Apply the algorithm to an arbitrary curved multipole of constant radius. More... | |
virtual void | visitMultipoleTCurvedVarRadius (const MultipoleTCurvedVarRadius &) |
Apply the algorithm to an arbitrary curved multipole of variable radius. More... | |
virtual void | visitOffset (const Offset &) |
Apply the algorithm to a offset (placement). More... | |
virtual void | visitProbe (const Probe &) |
Apply the algorithm to a probe. More... | |
virtual void | visitRBend (const RBend &) |
Apply the algorithm to a rectangular bend. More... | |
virtual void | visitRFCavity (const RFCavity &) |
Apply the algorithm to a RF cavity. More... | |
virtual void | visitRing (const Ring &ring) |
Apply the algorithm to a ring. More... | |
virtual void | visitSBend (const SBend &) |
Apply the algorithm to a sector bend. More... | |
virtual void | visitSBend3D (const SBend3D &) |
Apply the algorithm to a sector bend with 3D field map. More... | |
virtual void | visitScalingFFAMagnet (const ScalingFFAMagnet &bend) |
Apply the algorithm to a scaling FFA magnet. More... | |
virtual void | visitSeptum (const Septum &) |
Apply the algorithm to a septum. More... | |
virtual void | visitSolenoid (const Solenoid &) |
Apply the algorithm to a solenoid. More... | |
virtual void | visitStripper (const Stripper &) |
Apply the algorithm to a particle stripper. More... | |
virtual void | visitVacuum (const Vacuum &) |
Apply the algorithm to a vacuum space. More... | |
virtual void | visitVariableRFCavity (const VariableRFCavity &cav) |
Apply the algorithm to a variabel RF cavity. More... | |
virtual void | visitVariableRFCavityFringeField (const VariableRFCavityFringeField &cav) |
Apply the algorithm to a variable RF cavity with Fringe Field. More... | |
virtual void | visitVerticalFFAMagnet (const VerticalFFAMagnet &bend) |
Apply the algorithm to a vertical FFA magnet. More... | |
void | setLastDumpedStep (const int para) |
set last dumped step More... | |
void | bgf_main_collision_test () |
void | initializeBoundaryGeometry () |
void | setPr (double x) |
Method for restart. More... | |
void | setPt (double x) |
void | setPz (double x) |
void | setR (double x) |
void | setTheta (double x) |
void | setZ (double x) |
void | setBeGa (double x) |
void | setPhi (double x) |
void | setPsi (double x) |
void | setPreviousH5Local (bool x) |
![]() | |
Tracker (const Beamline &, const PartData &, bool backBeam, bool backTrack) | |
Constructor. More... | |
Tracker (const Beamline &, PartBunchBase< double, 3 > *bunch, const PartData &, bool backBeam, bool backTrack) | |
Constructor. More... | |
virtual | ~Tracker () |
const PartBunchBase< double, 3 > * | getBunch () const |
Return the current bunch. More... | |
void | addToBunch (const OpalParticle &) |
Add particle to bunch. More... | |
virtual void | visitComponent (const Component &) |
Store the bunch. More... | |
virtual void | setNumBunch (short) |
set total number of tracked bunches More... | |
virtual short | getNumBunch () |
get total number of tracked bunches More... | |
![]() | |
AbstractTracker (const Beamline &, const PartData &, bool backBeam, bool backTrack) | |
Constructor. More... | |
virtual | ~AbstractTracker () |
![]() | |
DefaultVisitor (const Beamline &beamline, bool backBeam, bool backTrack) | |
Constructor. More... | |
virtual | ~DefaultVisitor ()=0 |
virtual void | execute () |
Apply the algorithm to the top-level beamline. More... | |
virtual void | visitBeamline (const Beamline &) |
Apply the algorithm to a beam line. More... | |
virtual void | visitCCollimator (const CCollimator &) |
Apply the algorithm to a collimator. More... | |
virtual void | visitComponent (const Component &) |
Apply the algorithm to an arbitrary component. More... | |
virtual void | visitCorrector (const Corrector &) |
Apply the algorithm to a closed orbit corrector. More... | |
virtual void | visitCyclotron (const Cyclotron &) |
Apply the algorithm to an cyclotron. More... | |
virtual void | visitDegrader (const Degrader &) |
Apply the algorithm to a degrader. More... | |
virtual void | visitDrift (const Drift &) |
Apply the algorithm to a drift space. More... | |
virtual void | visitFlaggedElmPtr (const FlaggedElmPtr &) |
Apply the algorithm to a FlaggedElmPtr. More... | |
virtual void | visitFlexibleCollimator (const FlexibleCollimator &) |
Apply the algorithm to a flexible collimator. More... | |
virtual void | visitMarker (const Marker &) |
Apply the algorithm to a marker. More... | |
virtual void | visitMonitor (const Monitor &) |
Apply the algorithm to a beam position monitor. More... | |
virtual void | visitMultipole (const Multipole &) |
Apply the algorithm to a multipole. More... | |
virtual void | visitMultipoleT (const MultipoleT &) |
Apply the algorithm to to an arbitrary multipole. More... | |
virtual void | visitMultipoleTStraight (const MultipoleTStraight &) |
Apply the algorithm to an arbitrary straight multipole. More... | |
virtual void | visitMultipoleTCurvedConstRadius (const MultipoleTCurvedConstRadius &) |
Apply the algorithm to an arbitrary curved multipole of constant radius. More... | |
virtual void | visitMultipoleTCurvedVarRadius (const MultipoleTCurvedVarRadius &) |
Apply the algorithm to an arbitrary curved multipole of variable radius. More... | |
virtual void | visitOffset (const Offset &) |
Apply the algorithm to an offset (placement). More... | |
virtual void | visitProbe (const Probe &prob) |
Apply the algorithm to a probe. More... | |
virtual void | visitRBend (const RBend &) |
Apply the algorithm to a rectangular bend. More... | |
virtual void | visitRBend3D (const RBend3D &) |
Apply the algorithm to a rectangular bend. More... | |
virtual void | visitRFCavity (const RFCavity &) |
Apply the algorithm to a RF cavity. More... | |
virtual void | visitRing (const Ring &) |
Apply the algorithm to a ring. More... | |
virtual void | visitSBend (const SBend &) |
Apply the algorithm to a sector bend. More... | |
virtual void | visitSBend3D (const SBend3D &) |
Apply the algorithm to a sector bend with 3D field map. More... | |
virtual void | visitScalingFFAMagnet (const ScalingFFAMagnet &) |
Apply the algorithm to a scaling FFA magnet. More... | |
virtual void | visitSeptum (const Septum &) |
Apply the algorithm to a septum. More... | |
virtual void | visitSolenoid (const Solenoid &) |
Apply the algorithm to a solenoid. More... | |
virtual void | visitSource (const Source &) |
Apply the algorithm to a source. More... | |
virtual void | visitStripper (const Stripper &) |
Apply the algorithm to a particle stripper. More... | |
virtual void | visitTravelingWave (const TravelingWave &) |
Apply the algorithm to a traveling wave. More... | |
virtual void | visitVacuum (const Vacuum &) |
Apply the algorithm to a vacuum space. More... | |
virtual void | visitVariableRFCavity (const VariableRFCavity &vcav) |
Apply the algorithm to a a variable RF cavity. More... | |
virtual void | visitVariableRFCavityFringeField (const VariableRFCavityFringeField &vcav) |
Apply the algorithm to a a variable RF cavity with Fringe Field. More... | |
virtual void | visitVerticalFFAMagnet (const VerticalFFAMagnet &) |
Apply the algorithm to a vertical FFA magnet. More... | |
![]() | |
BeamlineVisitor () | |
virtual | ~BeamlineVisitor () |
virtual void | execute ()=0 |
Execute the algorithm on the attached beam line. More... | |
virtual void | visitBeamline (const Beamline &)=0 |
Apply the algorithm to a beam line. More... | |
virtual void | visitCCollimator (const CCollimator &)=0 |
Apply the algorithm to a collimator. More... | |
virtual void | visitComponent (const Component &)=0 |
Apply the algorithm to an arbitrary component. More... | |
virtual void | visitCorrector (const Corrector &)=0 |
Apply the algorithm to a closed orbit corrector. More... | |
virtual void | visitCyclotron (const Cyclotron &)=0 |
Apply the algorithm to a cyclotron. More... | |
virtual void | visitDegrader (const Degrader &)=0 |
Apply the algorithm to a degrader. More... | |
virtual void | visitDrift (const Drift &)=0 |
Apply the algorithm to a drift space. More... | |
virtual void | visitFlaggedElmPtr (const FlaggedElmPtr &)=0 |
Apply the algorithm to a FlaggedElmPtr. More... | |
virtual void | visitFlexibleCollimator (const FlexibleCollimator &)=0 |
Apply the algorithm to a flexible collimator. More... | |
virtual void | visitMarker (const Marker &)=0 |
Apply the algorithm to a marker. More... | |
virtual void | visitMonitor (const Monitor &)=0 |
Apply the algorithm to a beam position monitor. More... | |
virtual void | visitMultipole (const Multipole &)=0 |
Apply the algorithm to a multipole. More... | |
virtual void | visitMultipoleT (const MultipoleT &)=0 |
Apply the algorithm to an arbitrary multipole. More... | |
virtual void | visitMultipoleTStraight (const MultipoleTStraight &)=0 |
Apply the algorithm to an arbitrary straight multipole. More... | |
virtual void | visitMultipoleTCurvedConstRadius (const MultipoleTCurvedConstRadius &)=0 |
Apply the algorithm to an arbitrary curved multipole of constant radius. More... | |
virtual void | visitMultipoleTCurvedVarRadius (const MultipoleTCurvedVarRadius &)=0 |
Apply the algorithm to an arbitrary curved multipole of variable radius. More... | |
virtual void | visitOffset (const Offset &)=0 |
Apply the algorithm to an offset (placement). More... | |
virtual void | visitProbe (const Probe &)=0 |
Apply the algorithm to a probe. More... | |
virtual void | visitRBend (const RBend &)=0 |
Apply the algorithm to a rectangular bend. More... | |
virtual void | visitRBend3D (const RBend3D &) |
Apply the algorithm to a rectangular bend. More... | |
virtual void | visitRFCavity (const RFCavity &)=0 |
Apply the algorithm to a RF cavity. More... | |
virtual void | visitRing (const Ring &)=0 |
Apply the algorithm to a ring. More... | |
virtual void | visitSBend (const SBend &)=0 |
Apply the algorithm to a sector bend. More... | |
virtual void | visitSBend3D (const SBend3D &)=0 |
Apply the algorithm to a sector bend with 3D field map. More... | |
virtual void | visitScalingFFAMagnet (const ScalingFFAMagnet &)=0 |
Apply the algorithm to a scaling FFA magnet. More... | |
virtual void | visitSeptum (const Septum &)=0 |
Apply the algorithm to a septum magnet. More... | |
virtual void | visitSolenoid (const Solenoid &)=0 |
Apply the algorithm to a solenoid. More... | |
virtual void | visitSource (const Source &)=0 |
Apply the algorithm to a source. More... | |
virtual void | visitStripper (const Stripper &)=0 |
Apply the algorithm to a particle stripper. More... | |
virtual void | visitTravelingWave (const TravelingWave &)=0 |
Apply the algorithm to a traveling wave. More... | |
virtual void | visitVacuum (const Vacuum &)=0 |
Apply the algorithm to a vacuum space. More... | |
virtual void | visitVariableRFCavity (const VariableRFCavity &)=0 |
Apply the algorithm to a variable RF cavity. More... | |
virtual void | visitVariableRFCavityFringeField (const VariableRFCavityFringeField &)=0 |
Apply the algorithm to a variable RF cavity with Fringe Field. More... | |
virtual void | visitVerticalFFAMagnet (const VerticalFFAMagnet &)=0 |
Apply the algorithm to a vertical FFA magnet. More... | |
Private Types | |
enum class | TrackingMode : unsigned short { UNDEFINED , SINGLE , SEO , BUNCH } |
typedef std::function< bool(const double &, const size_t &, Vector_t &, Vector_t &)> | function_t |
Private Member Functions | |
ParallelCyclotronTracker () | |
ParallelCyclotronTracker (const ParallelCyclotronTracker &) | |
void | operator= (const ParallelCyclotronTracker &) |
void | MtsTracker () |
void | GenericTracker () |
bool | getFieldsAtPoint (const double &t, const size_t &Pindex, Vector_t &Efield, Vector_t &Bfield) |
void | dumpAngle (const double &theta, double &prevAzimuth, double &azimuth, const short &bunchNr=0) |
double | computeRadius (const Vector_t &meanR) const |
void | computePathLengthUpdate (std::vector< double > &dl, const double &dt) |
void | openFiles (size_t numFiles, std::string fn) |
@ open / close output coordinate files More... | |
void | closeFiles () |
void | buildupFieldList (double BcParameter[], ElementType elementType, Component *elptr) |
double | calculateAngle (double x, double y) |
double | calculateAngle2 (double x, double y) |
bool | checkGapCross (Vector_t Rold, Vector_t Rnew, RFCavity *rfcavity, double &DistOld) |
bool | RFkick (RFCavity *rfcavity, const double t, const double dt, const int Pindex) |
bool | getTunes (dvector_t &t, dvector_t &r, dvector_t &z, int lastTurn, double &nur, double &nuz) |
Vector_t | calcMeanR (short bunchNr=-1) const |
Vector_t | calcMeanP () const |
void | repartition () |
void | globalToLocal (ParticleAttrib< Vector_t > &vectorArray, double phi, Vector_t const translationToGlobal=0) |
void | localToGlobal (ParticleAttrib< Vector_t > &vectorArray, double phi, Vector_t const translationToGlobal=0) |
void | globalToLocal (ParticleAttrib< Vector_t > &vectorArray, Quaternion_t const quaternion, Vector_t const meanR=Vector_t(0.0)) |
void | localToGlobal (ParticleAttrib< Vector_t > &vectorArray, Quaternion_t const quaternion, Vector_t const meanR=Vector_t(0.0)) |
void | globalToLocal (ParticleAttrib< Vector_t > &particleVectors, double const phi, double const psi, Vector_t const meanR=Vector_t(0.0)) |
void | localToGlobal (ParticleAttrib< Vector_t > &particleVectors, double const phi, double const psi, Vector_t const meanR=Vector_t(0.0)) |
void | globalToLocal (Vector_t &myVector, double const phi, double const psi, Vector_t const meanR=Vector_t(0.0)) |
void | localToGlobal (Vector_t &myVector, double const phi, double const psi, Vector_t const meanR=Vector_t(0.0)) |
void | rotateWithQuaternion (ParticleAttrib< Vector_t > &vectorArray, Quaternion_t const quaternion) |
void | getQuaternionTwoVectors (Vector_t u, Vector_t v, Quaternion_t &quaternion) |
void | normalizeQuaternion (Quaternion_t &quaternion) |
void | normalizeVector (Vector_t &vector) |
void | rotateAroundZ (ParticleAttrib< Vector_t > &particleVectors, double const phi) |
void | rotateAroundX (ParticleAttrib< Vector_t > &particleVectors, double const psi) |
void | rotateAroundZ (Vector_t &myVector, double const phi) |
void | rotateAroundX (Vector_t &myVector, double const psi) |
bool | push (double h) |
bool | kick (double h) |
void | borisExternalFields (double h) |
bool | applyPluginElements (const double dt) |
bool | deleteParticle (bool=false) |
void | initTrackOrbitFile () |
void | singleParticleDump () |
void | bunchDumpStatData () |
void | bunchDumpPhaseSpaceData () |
void | evaluateSpaceChargeField () |
void | initDistInGlobalFrame () |
void | setTimeStep () |
void | checkFileMomentum () |
void | checkNumPart (std::string s) |
double | getHarmonicNumber () const |
bool | isTurnDone () |
Check if turn done. More... | |
void | update_m (double &t, const double &dt, const bool &finishedTurn) |
Update time and path length, write to output files. More... | |
std::tuple< double, double, double > | initializeTracking_m () |
void | finalizeTracking_m (dvector_t &Ttime, dvector_t &Tdeltr, dvector_t &Tdeltz, ivector_t &TturnNumber) |
void | setTrackingMode () |
void | seoMode_m (double &t, const double dt, bool &finishedTurn, dvector_t &Ttime, dvector_t &Tdeltr, dvector_t &Tdeltz, ivector_t &TturnNumber) |
void | singleMode_m (double &t, const double dt, bool &finishedTurn, double &oldReferenceTheta) |
void | bunchMode_m (double &t, const double dt, bool &finishedTurn) |
void | gapCrossKick_m (size_t i, double t, double dt, const Vector_t &Rold, const Vector_t &Pold) |
void | dumpAzimuthAngles_m (const double &t, const Vector_t &R, const Vector_t &P, const double &oldReferenceTheta, const double &temp_meanTheta) |
void | dumpThetaEachTurn_m (const double &t, const Vector_t &R, const Vector_t &P, const double &temp_meanTheta, bool &finishedTurn) |
void | computeSpaceChargeFields_m () |
bool | computeExternalFields_m (const size_t &i, const double &t, Vector_t &Efield, Vector_t &Bfield) |
void | injectBunch (bool &flagTransition) |
void | saveInjectValues () |
bool | isMultiBunch () const |
bool | hasMultiBunch () const |
void | updatePathLength (const double &dt) |
void | updateTime (const double &dt) |
void | updateAzimuthAndRadius () |
void | initPathLength () |
Static Private Attributes | |
static Vector_t const | xaxis = Vector_t(1.0, 0.0, 0.0) |
The positive axes unit vectors. More... | |
static Vector_t const | yaxis = Vector_t(0.0, 1.0, 0.0) |
static Vector_t const | zaxis = Vector_t(0.0, 0.0, 1.0) |
Additional Inherited Members | |
![]() | |
FieldList | cavities_m |
const Beamline & | itsBeamline_m |
![]() | |
void | applyDrift (double length) |
Apply a drift length. More... | |
void | applyThinMultipole (const BMultipoleField &field, double factor) |
void | applyThinSBend (const BMultipoleField &field, double scale, double h) |
void | applyTransform (const Euclid3D &, double refLength=0.0) |
Apply a geometric transformation. More... | |
FTps< double, 2 > | buildMultipoleVectorPotential2D (const BMultipoleField &) |
Construct vector potential for a Multipole. More... | |
FTps< double, 6 > | buildMultipoleVectorPotential (const BMultipoleField &) |
Construct vector potential for a Multipole. More... | |
FTps< double, 2 > | buildSBendVectorPotential2D (const BMultipoleField &, double h) |
Construct vector potential for a SBend. More... | |
FTps< double, 6 > | buildSBendVectorPotential (const BMultipoleField &, double h) |
Construct vector potential for a SBend. More... | |
![]() | |
PartBunchBase< double, 3 > * | itsBunch_m |
The bunch of particles to be tracked. More... | |
![]() | |
const PartData | itsReference |
The reference information. More... | |
![]() | |
const Beamline & | itsLine |
bool | back_beam |
bool | back_track |
bool | back_path |
double | flip_B |
double | flip_s |
Definition at line 54 of file ParallelCyclotronTracker.h.
typedef std::list<type_pair*> ParallelCyclotronTracker::beamline_list |
Definition at line 61 of file ParallelCyclotronTracker.h.
typedef std::vector<double> ParallelCyclotronTracker::dvector_t |
Definition at line 57 of file ParallelCyclotronTracker.h.
typedef std::pair<double[8], Component*> ParallelCyclotronTracker::element_pair |
Definition at line 59 of file ParallelCyclotronTracker.h.
|
private |
Definition at line 458 of file ParallelCyclotronTracker.h.
typedef std::vector<int> ParallelCyclotronTracker::ivector_t |
Definition at line 58 of file ParallelCyclotronTracker.h.
typedef std::pair<ElementType, element_pair> ParallelCyclotronTracker::type_pair |
Definition at line 60 of file ParallelCyclotronTracker.h.
|
strongprivate |
Enumerator | |
---|---|
UNDEFINED | |
SINGLE | |
SEO | |
BUNCH |
Definition at line 206 of file ParallelCyclotronTracker.h.
ParallelCyclotronTracker::ParallelCyclotronTracker | ( | const Beamline & | beamline, |
PartBunchBase< double, 3 > * | bunch, | ||
DataSink & | ds, | ||
const PartData & | reference, | ||
bool | revBeam, | ||
bool | revTrack, | ||
int | maxSTEPS, | ||
Steppers::TimeIntegrator | timeintegrator, | ||
const int & | numBunch, | ||
const double & | mbEta, | ||
const double & | mbPara, | ||
const std::string & | mbMode, | ||
const std::string & | mbBinning | ||
) |
Constructor.
Constructor ParallelCyclotronTracker
beamline | |
bunch | |
ds | |
reference | |
revBeam | |
revTrack | |
maxSTEPS | |
timeIntegrator |
Definition at line 114 of file ParallelCyclotronTracker.cpp.
References BinRepartTimer_m, ElementBase::clone(), DelParticleTimer_m, DumpTimer_m, IpplTimings::getTimer(), IntegrationTimer_m, itsBeamline, itsDataSink, mbHandler_m, PluginElemTimer_m, setTrackingMode(), and TransformTimer_m.
|
virtual |
Destructor ParallelCyclotronTracker
Definition at line 162 of file ParallelCyclotronTracker.cpp.
References bgf_m, FieldDimensions, itsBeamline, lossDs_m, and myElements.
|
private |
|
private |
|
private |
Definition at line 2045 of file ParallelCyclotronTracker.cpp.
References Vacuum::checkVacuum(), cycl_m, endl(), FieldDimensions, PartBunchBase< T, Dim >::getT(), PartBunchBase< T, Dim >::getTotalNum(), gmsg, Tracker::itsBunch_m, pluginElements_m, PluginElemTimer_m, IpplTimings::startTimer(), IpplTimings::stopTimer(), turnnumber_m, PartBunchBase< T, Dim >::updateNumTotal(), and VACUUM.
Referenced by borisExternalFields(), bunchMode_m(), GenericTracker(), and singleMode_m().
void ParallelCyclotronTracker::bgf_main_collision_test | ( | ) |
Here we check if a particle is outside the domain, flag it for deletion
Definition at line 176 of file ParallelCyclotronTracker.cpp.
References bgf_m, PartBunchBase< T, Dim >::Bin, PartBunchBase< T, Dim >::bunchNum, endl(), PartBunchBase< T, Dim >::getdT(), getHarmonicNumber(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getT(), PartBunchBase< T, Dim >::ID, INFORM_ALL_NODES, Tracker::itsBunch_m, level4(), lossDs_m, PartBunchBase< T, Dim >::M, PartBunchBase< T, Dim >::P, BoundaryGeometry::partInside(), PartBunchBase< T, Dim >::Q, PartBunchBase< T, Dim >::R, and turnnumber_m.
Referenced by bunchMode_m(), and singleMode_m().
|
private |
Definition at line 2014 of file ParallelCyclotronTracker.cpp.
References applyPluginElements(), PartBunchBase< T, Dim >::Bf, computeExternalFields_m(), deleteParticle(), PartBunchBase< T, Dim >::Ef, PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getT(), IntegrationTimer_m, Tracker::itsBunch_m, kick(), push(), Units::s2ns, IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by MtsTracker().
|
private |
BcParameter | |
ElementType | |
elptr |
Definition at line 1112 of file ParallelCyclotronTracker.cpp.
References CYCLOTRON, FieldDimensions, and RING.
Referenced by visitCCollimator(), visitCyclotron(), visitProbe(), visitRFCavity(), visitRing(), visitSeptum(), visitStripper(), and visitVacuum().
|
private |
Definition at line 2657 of file ParallelCyclotronTracker.cpp.
References acos(), atan2(), BUNCH_MEAN, calcMeanP(), calcMeanR(), calculateAngle(), computeRadius(), cos(), Units::deg2rad, dot(), DataSink::dumpH5(), DumpTimer_m, endl(), extB_m, extE_m, FDext_m, FieldDimensions, PartBunchBase< T, Dim >::get_meanKineticEnergy(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getT(), PartBunchBase< T, Dim >::getTotalNum(), GLOBAL, globalToLocal(), gmsg, isMultiBunch(), Tracker::itsBunch_m, itsDataSink, Units::kG2T, lastDumpedStep_m, localToGlobal(), Units::m2mm, max(), PartBunchBase< T, Dim >::P, Physics::pi, Options::psDumpFrame, Options::psDumpFreq, PartBunchBase< T, Dim >::R, referencePr, referencePt, referencePtot, referencePz, referenceR, referenceTheta, referenceZ, Units::s2ns, sin(), sqrt(), IpplTimings::startTimer(), step_m, and IpplTimings::stopTimer().
Referenced by initDistInGlobalFrame(), and update_m().
|
private |
Definition at line 2546 of file ParallelCyclotronTracker.cpp.
References acos(), azimuth_m, BUNCH_MEAN, calcMeanP(), calcMeanR(), calculateAngle(), dot(), dumpAngle(), DataSink::dumpSDDS(), DumpTimer_m, extB_m, extE_m, FDext_m, FieldDimensions, PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getT(), GLOBAL, globalToLocal(), isMultiBunch(), Tracker::itsBunch_m, itsDataSink, Units::kG2T, localToGlobal(), mbHandler_m, PartBunchBase< T, Dim >::P, Physics::pi, prevAzimuth_m, Options::psDumpFrame, PartBunchBase< T, Dim >::R, Units::rad2deg, Units::s2ns, sqrt(), IpplTimings::startTimer(), IpplTimings::stopTimer(), updateAzimuthAndRadius(), and DataSink::writeMultiBunchStatistics().
Referenced by initDistInGlobalFrame(), and update_m().
|
private |
Definition at line 3129 of file ParallelCyclotronTracker.cpp.
References applyPluginElements(), Communicate::barrier(), PartBunchBase< T, Dim >::Bf, bgf_main_collision_test(), PartBunchBase< T, Dim >::Bin, calcMeanP(), PartBunchBase< T, Dim >::cavityGapCrossed, IpplInfo::Comm, computeSpaceChargeFields_m(), deleteParticle(), PartBunchBase< T, Dim >::Ef, endl(), gapCrossKick_m(), PartBunchBase< T, Dim >::getLocalNum(), getQuaternionTwoVectors(), PartBunchBase< T, Dim >::getTotalNum(), globalToLocal(), gmsg, PartBunchBase< T, Dim >::hasFieldSolver(), injectBunch(), IntegrationTimer_m, isMultiBunch(), isTurnDone(), Tracker::itsBunch_m, itsStepper_mp, mbHandler_m, PartBunchBase< T, Dim >::P, PreviousMeanP, PartBunchBase< T, Dim >::R, Options::rebinFreq, ParallelCyclotronTracker::settings::scSolveFreq, setup_m, singleParticleDump(), Options::sptDumpFreq, IpplTimings::startTimer(), step_m, IpplTimings::stopTimer(), and turnnumber_m.
Referenced by GenericTracker().
|
private |
Definition at line 1652 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getTotalNum(), Tracker::itsBunch_m, PartBunchBase< T, Dim >::P, and reduce().
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), bunchMode_m(), computeSpaceChargeFields_m(), deleteParticle(), initDistInGlobalFrame(), and MtsTracker().
|
private |
Definition at line 1629 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::bunchNum, PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getTotalNum(), PartBunchBase< T, Dim >::getTotalNumPerBunch(), Tracker::itsBunch_m, Hypervolume::n, PartBunchBase< T, Dim >::R, and reduce().
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), computeSpaceChargeFields_m(), deleteParticle(), initDistInGlobalFrame(), MtsTracker(), saveInjectValues(), and updateAzimuthAndRadius().
|
inlineprivate |
x | |
y |
Definition at line 559 of file ParallelCyclotronTracker.h.
References atan2(), and Physics::two_pi.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), deleteParticle(), initDistInGlobalFrame(), MtsTracker(), saveInjectValues(), seoMode_m(), and updateAzimuthAndRadius().
|
inlineprivate |
x | |
y |
Definition at line 573 of file ParallelCyclotronTracker.h.
References atan2().
Referenced by MtsTracker(), and singleMode_m().
|
private |
Definition at line 2389 of file ParallelCyclotronTracker.cpp.
References abs(), allreduce(), Physics::e, euclidean_norm(), initialLocalNum_m, initialTotalNum_m, Tracker::itsBunch_m, PartBunchBase< T, Dim >::P, and referencePtot.
Referenced by initDistInGlobalFrame().
|
private |
Rold | |
Rnew | |
elptr | |
Dold |
Definition at line 1492 of file ParallelCyclotronTracker.cpp.
References RFCavity::getCosAzimuth(), RFCavity::getPerpenDistance(), RFCavity::getSinAzimuth(), Units::m2mm, and Units::mm2m.
Referenced by gapCrossKick_m().
|
private |
Definition at line 1142 of file ParallelCyclotronTracker.cpp.
References endl(), PartBunchBase< T, Dim >::getLocalNum(), gmsg, Tracker::itsBunch_m, and reduce().
Referenced by initDistInGlobalFrame().
|
private |
Close all files related to special output in the Cyclotron mode.
Definition at line 308 of file ParallelCyclotronTracker.cpp.
References outfTheta_m.
Referenced by finalizeTracking_m().
|
private |
Definition at line 3411 of file ParallelCyclotronTracker.cpp.
References FieldDimensions, Units::kG2T, Units::kV2V, and Units::mm2m.
bool ParallelCyclotronTracker::computeExternalFields_m | ( | const Vector_t & | R, |
const Vector_t & | P, | ||
const double & | t, | ||
Vector_t & | Efield, | ||
Vector_t & | Bfield | ||
) |
Calculate the field map at an arbitrary point.
Definition at line 3425 of file ParallelCyclotronTracker.cpp.
References FieldDimensions, Units::kG2T, Units::kV2V, Units::mm2m, and Attrib::Distribution::R.
Referenced by borisExternalFields(), and getFieldsAtPoint().
|
private |
Definition at line 238 of file ParallelCyclotronTracker.cpp.
References allreduce(), BUNCH_MEAN, PartBunchBase< T, Dim >::bunchNum, c_mmtns, dot(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getTotalNum(), PartBunchBase< T, Dim >::getTotalNumPerBunch(), isMultiBunch(), Tracker::itsBunch_m, Units::mm2m, PartBunchBase< T, Dim >::P, Options::psDumpFrame, sqrt(), and sum().
Referenced by updatePathLength().
|
private |
Definition at line 233 of file ParallelCyclotronTracker.cpp.
References Units::m2mm, and sqrt().
Referenced by bunchDumpPhaseSpaceData(), saveInjectValues(), and updateAzimuthAndRadius().
|
private |
Definition at line 3321 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::Bf, PartBunchBase< T, Dim >::boundp(), PartBunchBase< T, Dim >::boundp_destroyCycl(), Options::boundpDestroyFreq, PartBunchBase< T, Dim >::calcGammas_cycl(), calcMeanP(), calcMeanR(), PartBunchBase< T, Dim >::computeSelfFields_cycl(), dot(), PartBunchBase< T, Dim >::Ef, PartBunchBase< T, Dim >::getChargePerParticle(), PartBunchBase< T, Dim >::getFieldSolverType(), PartBunchBase< T, Dim >::getLastemittedBin(), getQuaternionTwoVectors(), globalToLocal(), hasMultiBunch(), Tracker::itsBunch_m, localToGlobal(), PreviousMeanP, PartBunchBase< T, Dim >::Q, PartBunchBase< T, Dim >::R, repartition(), SAAMG, PartBunchBase< T, Dim >::setBinCharge(), PartBunchBase< T, Dim >::setGlobalMeanR(), PartBunchBase< T, Dim >::setGlobalToLocalQuaternion(), spiral_flag, sqrt(), step_m, and yaxis.
Referenced by bunchMode_m(), and MtsTracker().
|
private |
Definition at line 2074 of file ParallelCyclotronTracker.cpp.
References acos(), allreduce(), PartBunchBase< T, Dim >::Bin, PartBunchBase< T, Dim >::boundp(), PartBunchBase< T, Dim >::bunchNum, PartBunchBase< T, Dim >::calcBeamParameters(), calcMeanP(), calcMeanR(), calculateAngle(), Options::delPartFreq, DelParticleTimer_m, PartBunchBase< T, Dim >::destroy(), dot(), endl(), PartBunchBase< T, Dim >::getLastemittedBin(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getLocalNumPerBunch(), PartBunchBase< T, Dim >::getNumBunch(), globalToLocal(), gmsg, isMultiBunch(), Tracker::itsBunch_m, level3(), localToGlobal(), mbHandler_m, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::performDestroy(), Physics::pi, PartBunchBase< T, Dim >::R, reduce(), PartBunchBase< T, Dim >::setLocalBinCount(), PartBunchBase< T, Dim >::setLocalNumPerBunch(), PartBunchBase< T, Dim >::setTotalNum(), PartBunchBase< T, Dim >::setTotalNumPerBunch(), sqrt(), IpplTimings::startTimer(), step_m, IpplTimings::stopTimer(), and sum().
Referenced by borisExternalFields(), bunchMode_m(), GenericTracker(), and singleMode_m().
|
private |
Definition at line 209 of file ParallelCyclotronTracker.cpp.
Referenced by bunchDumpStatData(), saveInjectValues(), and updateAzimuthAndRadius().
|
inlineprivate |
Definition at line 3274 of file ParallelCyclotronTracker.cpp.
References azimuth_angle_m, cos(), ParallelCyclotronTracker::settings::deltaTheta, endl(), outfTheta_m, Attrib::Distribution::R, Units::rad2deg, setup_m, sin(), and turnnumber_m.
Referenced by MtsTracker(), and singleMode_m().
|
inlineprivate |
Definition at line 3296 of file ParallelCyclotronTracker.cpp.
References cos(), Units::deg2rad, endl(), gmsg, isTurnDone(), outfTheta_m, Attrib::Distribution::R, sin(), sqrt(), and turnnumber_m.
Referenced by MtsTracker(), and singleMode_m().
|
private |
|
virtual |
Apply the algorithm to the top-level beamline.
Reimplemented from DefaultVisitor.
Definition at line 1153 of file ParallelCyclotronTracker.cpp.
References ElementBase::accept(), OpalData::APPEND, Options::asciidump, azimuth_m, bgf_m, cavCrossDatas_m, CCOLLIMATOR, endl(), extB_m, extE_m, FDext_m, FieldDimensions, GenericTracker(), RFCavity::getCosAzimuth(), getFieldsAtPoint(), OpalData::getGlobalGeometry(), OpalData::getInstance(), PartBunchBase< T, Dim >::getNumBunch(), Object::getOpalName(), RFCavity::getPerpenDistance(), RFCavity::getSinAzimuth(), ElementBase::getTypeString(), gmsg, isMultiBunch(), itsBeamline, Tracker::itsBunch_m, itsStepper_mp, Steppers::LF2, Ring::lockRing(), lossDs_m, mbHandler_m, Units::mm2m, Steppers::MTS, MtsTracker(), opalRing_m, pluginElements_m, prevAzimuth_m, PROBE, restartStep0_m, RFCAVITY, Steppers::RK4, SEPTUM, OpalData::setOpenMode(), step_m, stepper_m, STRIPPER, turnnumber_m, DumpEMFields::writeFields(), and DumpFields::writeFields().
|
private |
Definition at line 2946 of file ParallelCyclotronTracker.cpp.
References Communicate::barrier(), BUNCH, PartBunchBase< T, Dim >::calcBeamParameters(), closeFiles(), IpplInfo::Comm, endl(), Units::eV2MeV, PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getM(), PartBunchBase< T, Dim >::getTotalNum(), getTunes(), gmsg, PartBunchBase< T, Dim >::ID, isMultiBunch(), Tracker::itsBunch_m, lastDumpedStep_m, mode_m, myNode_m, outfTrackOrbit_m, PartBunchBase< T, Dim >::P, pow(), SEO, SINGLE, sqrt(), turnnumber_m, and UNDEFINED.
Referenced by GenericTracker(), and MtsTracker().
|
private |
Definition at line 3224 of file ParallelCyclotronTracker.cpp.
References Physics::c, PartBunchBase< T, Dim >::cavityGapCrossed, checkGapCross(), dot(), FieldDimensions, Tracker::itsBunch_m, itsStepper_mp, Units::m2mm, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::R, RFCAVITY, RFkick(), Units::s2ns, and sqrt().
Referenced by bunchMode_m(), and singleMode_m().
|
private |
Definition at line 1383 of file ParallelCyclotronTracker.cpp.
References applyPluginElements(), BUNCH, bunchMode_m(), deleteParticle(), endl(), finalizeTracking_m(), PartBunchBase< T, Dim >::getTotalNum(), gmsg, initializeTracking_m(), Tracker::itsBunch_m, maxSteps_m, mode_m, SEO, seoMode_m(), SINGLE, singleMode_m(), step_m, UNDEFINED, and update_m().
Referenced by execute().
|
private |
Definition at line 1461 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::Bf, computeExternalFields_m(), PartBunchBase< T, Dim >::Ef, PartBunchBase< T, Dim >::hasFieldSolver(), PartBunchBase< T, Dim >::ID, and Tracker::itsBunch_m.
Referenced by execute().
|
private |
Definition at line 1617 of file ParallelCyclotronTracker.cpp.
References FieldDimensions, Cyclotron::getCyclHarm(), Ring::getHarmonicNumber(), and opalRing_m.
Referenced by bgf_main_collision_test(), and initializeTracking_m().
|
inlineprivate |
Definition at line 1903 of file ParallelCyclotronTracker.cpp.
References abs(), cos(), cross(), dot(), normalizeQuaternion(), normalizeVector(), Physics::pi, sin(), sqrt(), xaxis, and zaxis.
Referenced by bunchMode_m(), and computeSpaceChargeFields_m().
|
private |
t | |
r | |
z | |
lastTurn | |
nur | |
nuz |
Definition at line 1550 of file ParallelCyclotronTracker.cpp.
References endl(), for_each(), gmsg, TUNE_class::lombAnalysis(), and AbstractTracker::T.
Referenced by finalizeTracking_m().
|
inlineprivate |
Definition at line 1736 of file ParallelCyclotronTracker.cpp.
References rotateAroundX(), rotateAroundZ(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
private |
Definition at line 1674 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), PartBunchBase< T, Dim >::getLocalNum(), Tracker::itsBunch_m, sin(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), bunchMode_m(), computeSpaceChargeFields_m(), deleteParticle(), initDistInGlobalFrame(), and MtsTracker().
|
inlineprivate |
Definition at line 1707 of file ParallelCyclotronTracker.cpp.
References rotateWithQuaternion(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
inlineprivate |
Definition at line 1757 of file ParallelCyclotronTracker.cpp.
References rotateAroundX(), rotateAroundZ(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
inlineprivate |
Definition at line 585 of file ParallelCyclotronTracker.h.
References isMultiBunch(), and mbHandler_m.
Referenced by computeSpaceChargeFields_m().
|
private |
Definition at line 2226 of file ParallelCyclotronTracker.cpp.
References acos(), PartBunchBase< T, Dim >::Bin, PartBunchBase< T, Dim >::boundp(), bunchDumpPhaseSpaceData(), bunchDumpStatData(), PartBunchBase< T, Dim >::calcBeamParameters(), calcMeanP(), calcMeanR(), calculateAngle(), checkFileMomentum(), checkNumPart(), cosRefTheta_m, PartBunchBase< T, Dim >::countTotalNumPerBunch(), Units::deg2rad, dot(), endl(), FROMFILE, PartBunchBase< T, Dim >::get_sPos(), PartBunchBase< T, Dim >::getDistType(), OpalData::getInstance(), GLOBAL, globalToLocal(), gmsg, PartBunchBase< T, Dim >::ID, initialLocalNum_m, initialTotalNum_m, isMultiBunch(), Tracker::itsBunch_m, localToGlobal(), mbHandler_m, Units::mm2m, PartBunchBase< T, Dim >::P, pathLength_m, Physics::pi, Options::psDumpFrame, PartBunchBase< T, Dim >::R, referencePhi, referencePr, referencePsi, referencePt, referencePz, referenceR, referenceTheta, referenceZ, repartition(), saveInjectValues(), setTimeStep(), sinRefTheta_m, sqrt(), and step_m.
Referenced by initializeTracking_m().
void ParallelCyclotronTracker::initializeBoundaryGeometry | ( | ) |
|
private |
Definition at line 2835 of file ParallelCyclotronTracker.cpp.
References azimuth_angle_m, BUNCH, Units::deg2rad, ParallelCyclotronTracker::settings::deltaTheta, endl(), PartBunchBase< T, Dim >::getdT(), getHarmonicNumber(), OpalData::getInputBasename(), OpalData::getInstance(), PartBunchBase< T, Dim >::getLocalTrackStep(), IpplInfo::getNodes(), PartBunchBase< T, Dim >::getNumBunch(), PartBunchBase< T, Dim >::getStepsPerTurn(), PartBunchBase< T, Dim >::getT(), gmsg, initDistInGlobalFrame(), initPathLength(), initTrackOrbitFile(), isMultiBunch(), Tracker::itsBunch_m, mbHandler_m, mode_m, openFiles(), Physics::pi, Options::rebinFreq, referenceTheta, Options::repartFreq, restartStep0_m, Units::s2ns, ParallelCyclotronTracker::settings::scSolveFreq, Options::scSolveFreq, SEO, setup_m, SINGLE, spiral_flag, Options::sptDumpFreq, step_m, ParallelCyclotronTracker::settings::stepsNextCheck, ParallelCyclotronTracker::settings::stepsPerTurn, turnnumber_m, and UNDEFINED.
Referenced by GenericTracker(), and MtsTracker().
|
private |
multi-bunch mode: set the path length of each bunch in case of restart mode
At creation of DataSink the lines are rewinded properly --> the last entry of the path length is therefore the initial path length at restart.
Definition at line 3549 of file ParallelCyclotronTracker.cpp.
References isMultiBunch(), itsDataSink, mbHandler_m, and DataSink::setMultiBunchInitialPathLengh().
Referenced by initializeTracking_m().
|
private |
Definition at line 2206 of file ParallelCyclotronTracker.cpp.
References endl(), OpalData::getInputBasename(), OpalData::getInstance(), PartBunchBase< T, Dim >::getLocalTrackStep(), Tracker::itsBunch_m, myNode_m, and outfTrackOrbit_m.
Referenced by initializeTracking_m().
|
private |
Definition at line 3440 of file ParallelCyclotronTracker.cpp.
References endl(), gmsg, isMultiBunch(), Tracker::itsBunch_m, AbstractTracker::itsReference, mbHandler_m, saveInjectValues(), setup_m, step_m, ParallelCyclotronTracker::settings::stepsNextCheck, ParallelCyclotronTracker::settings::stepsPerTurn, and turnnumber_m.
Referenced by bunchMode_m(), and MtsTracker().
|
inlineprivate |
Definition at line 579 of file ParallelCyclotronTracker.h.
References Tracker::itsBunch_m, mbHandler_m, and PartBunchBase< T, Dim >::weHaveBins().
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), bunchMode_m(), computePathLengthUpdate(), deleteParticle(), execute(), finalizeTracking_m(), hasMultiBunch(), initDistInGlobalFrame(), initializeTracking_m(), initPathLength(), injectBunch(), MtsTracker(), saveInjectValues(), updateAzimuthAndRadius(), updatePathLength(), updateTime(), and visitCyclotron().
|
private |
Check if turn done.
Definition at line 2788 of file ParallelCyclotronTracker.cpp.
References setup_m, step_m, and ParallelCyclotronTracker::settings::stepsPerTurn.
Referenced by bunchMode_m(), dumpThetaEachTurn_m(), MtsTracker(), and seoMode_m().
|
private |
Definition at line 1994 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::Bf, PartBunchBase< T, Dim >::Bin, PartBunchBase< T, Dim >::Ef, PartBunchBase< T, Dim >::getLocalNum(), Units::GeV2eV, IntegrationTimer_m, Tracker::itsBunch_m, BorisPusher::kick(), PartBunchBase< T, Dim >::M, Units::ns2s, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::Q, Physics::q_e, PartBunchBase< T, Dim >::R, IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by borisExternalFields(), and MtsTracker().
|
inlineprivate |
Definition at line 1778 of file ParallelCyclotronTracker.cpp.
References rotateAroundX(), rotateAroundZ(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
private |
Definition at line 1690 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), PartBunchBase< T, Dim >::getLocalNum(), Tracker::itsBunch_m, sin(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), computeSpaceChargeFields_m(), deleteParticle(), initDistInGlobalFrame(), and MtsTracker().
|
inlineprivate |
Definition at line 1720 of file ParallelCyclotronTracker.cpp.
References rotateWithQuaternion(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
inlineprivate |
Definition at line 1799 of file ParallelCyclotronTracker.cpp.
References rotateAroundX(), rotateAroundZ(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TransformTimer_m.
|
private |
Definition at line 1250 of file ParallelCyclotronTracker.cpp.
References Communicate::barrier(), borisExternalFields(), BUNCH, calcMeanP(), calcMeanR(), calculateAngle(), calculateAngle2(), IpplInfo::Comm, computeSpaceChargeFields_m(), dumpAzimuthAngles_m(), dumpThetaEachTurn_m(), endl(), finalizeTracking_m(), PartBunchBase< T, Dim >::getTotalNum(), globalToLocal(), gmsg, PartBunchBase< T, Dim >::hasFieldSolver(), initializeTracking_m(), injectBunch(), isMultiBunch(), isTurnDone(), Tracker::itsBunch_m, kick(), localToGlobal(), max(), maxSteps_m, mbHandler_m, mode_m, Options::mtsSubsteps, Hypervolume::n, PartBunchBase< T, Dim >::P, Physics::pi, PartBunchBase< T, Dim >::R, Options::rebinFreq, Options::repartFreq, repartition(), SINGLE, singleParticleDump(), Options::sptDumpFreq, step_m, turnnumber_m, update_m(), and PartBunchBase< T, Dim >::updateNumTotal().
Referenced by execute().
|
inlineprivate |
Definition at line 1834 of file ParallelCyclotronTracker.cpp.
References abs(), dot(), and sqrt().
Referenced by getQuaternionTwoVectors().
|
inlineprivate |
Definition at line 1846 of file ParallelCyclotronTracker.cpp.
References abs(), dot(), and sqrt().
Referenced by getQuaternionTwoVectors().
|
private |
@ open / close output coordinate files
fn | Base file name |
Definition at line 282 of file ParallelCyclotronTracker.cpp.
References endl(), and outfTheta_m.
Referenced by initializeTracking_m().
|
private |
|
private |
Definition at line 1947 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::Bin, Physics::c, cavCrossDatas_m, dot(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::getT(), IntegrationTimer_m, Tracker::itsBunch_m, Units::ns2s, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::R, RFkick(), Units::s2ns, sqrt(), IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by borisExternalFields().
|
private |
Definition at line 1665 of file ParallelCyclotronTracker.cpp.
References Communicate::barrier(), BinRepartTimer_m, IpplInfo::Comm, PartBunchBase< T, Dim >::do_binaryRepart(), Tracker::itsBunch_m, Options::repartFreq, IpplTimings::startTimer(), step_m, and IpplTimings::stopTimer().
Referenced by computeSpaceChargeFields_m(), initDistInGlobalFrame(), and MtsTracker().
|
private |
Definition at line 1508 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::getM(), RFCavity::getMomentaKick(), RFCavity::getPerpenDistance(), PartBunchBase< T, Dim >::getQ(), RFCavity::getRmax(), RFCavity::getRmin(), PartBunchBase< T, Dim >::ID, Tracker::itsBunch_m, Units::m2mm, PartBunchBase< T, Dim >::P, pow(), PartBunchBase< T, Dim >::R, and sqrt().
Referenced by gapCrossKick_m(), and push().
|
inlineprivate |
Definition at line 1880 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), PartBunchBase< T, Dim >::getLocalNum(), Tracker::itsBunch_m, and sin().
Referenced by globalToLocal(), and localToGlobal().
|
inlineprivate |
Definition at line 1893 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), and sin().
|
inlineprivate |
Definition at line 1858 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), PartBunchBase< T, Dim >::getLocalNum(), Tracker::itsBunch_m, and sin().
Referenced by globalToLocal(), and localToGlobal().
|
inlineprivate |
Definition at line 1870 of file ParallelCyclotronTracker.cpp.
References cos(), dot(), and sin().
|
inlineprivate |
Definition at line 1820 of file ParallelCyclotronTracker.cpp.
References cross(), dot(), PartBunchBase< T, Dim >::getLocalNum(), and Tracker::itsBunch_m.
Referenced by globalToLocal(), and localToGlobal().
|
private |
Definition at line 3476 of file ParallelCyclotronTracker.cpp.
References MultiBunchHandler::injection_t::azimuth, azimuth_m, calcMeanR(), calculateAngle(), computeRadius(), dumpAngle(), PartBunchBase< T, Dim >::get_sPos(), PartBunchBase< T, Dim >::getT(), isMultiBunch(), Tracker::itsBunch_m, mbHandler_m, MultiBunchHandler::injection_t::pathlength, prevAzimuth_m, Units::rad2deg, MultiBunchHandler::injection_t::radius, Units::s2ns, and MultiBunchHandler::injection_t::time.
Referenced by initDistInGlobalFrame(), and injectBunch().
|
private |
Definition at line 3017 of file ParallelCyclotronTracker.cpp.
References calculateAngle(), cos(), endl(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::ID, IntegrationTimer_m, isTurnDone(), Tracker::itsBunch_m, itsStepper_mp, Units::ns2s, outfTrackOrbit_m, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::R, sin(), Options::sptDumpFreq, IpplTimings::startTimer(), step_m, IpplTimings::stopTimer(), and turnnumber_m.
Referenced by GenericTracker().
|
inline |
Definition at line 197 of file ParallelCyclotronTracker.h.
References bega.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
set last dumped step
Definition at line 188 of file ParallelCyclotronTracker.h.
References lastDumpedStep_m.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 198 of file ParallelCyclotronTracker.h.
References referencePhi.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Method for restart.
Definition at line 191 of file ParallelCyclotronTracker.h.
References referencePr.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 200 of file ParallelCyclotronTracker.h.
References previousH5Local.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 199 of file ParallelCyclotronTracker.h.
References referencePsi.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 192 of file ParallelCyclotronTracker.h.
References referencePt.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 193 of file ParallelCyclotronTracker.h.
References referencePz.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 194 of file ParallelCyclotronTracker.h.
References referenceR.
Referenced by TrackRun::setupCyclotronTracker().
|
inline |
Definition at line 195 of file ParallelCyclotronTracker.h.
References referenceTheta.
Referenced by TrackRun::setupCyclotronTracker().
|
private |
Definition at line 2383 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::dt, PartBunchBase< T, Dim >::getdT(), initialLocalNum_m, and Tracker::itsBunch_m.
Referenced by initDistInGlobalFrame().
|
private |
Definition at line 3005 of file ParallelCyclotronTracker.cpp.
References BUNCH, initialTotalNum_m, mode_m, SEO, SINGLE, and UNDEFINED.
Referenced by ParallelCyclotronTracker().
|
inline |
Definition at line 196 of file ParallelCyclotronTracker.h.
References referenceZ.
Referenced by TrackRun::setupCyclotronTracker().
|
private |
Definition at line 3065 of file ParallelCyclotronTracker.cpp.
References applyPluginElements(), bgf_main_collision_test(), PartBunchBase< T, Dim >::Bin, calculateAngle2(), PartBunchBase< T, Dim >::cavityGapCrossed, deleteParticle(), dumpAzimuthAngles_m(), dumpThetaEachTurn_m(), endl(), gapCrossKick_m(), PartBunchBase< T, Dim >::getLocalNum(), PartBunchBase< T, Dim >::ID, IntegrationTimer_m, Tracker::itsBunch_m, itsStepper_mp, outfTrackOrbit_m, PartBunchBase< T, Dim >::P, PartBunchBase< T, Dim >::R, Options::sptDumpFreq, IpplTimings::startTimer(), step_m, and IpplTimings::stopTimer().
Referenced by GenericTracker().
|
private |
Definition at line 2418 of file ParallelCyclotronTracker.cpp.
References Communicate::barrier(), IpplInfo::Comm, COMM_ANY_NODE, DumpTimer_m, endl(), ERRORMSG, Message::get(), PartBunchBase< T, Dim >::getLocalNum(), IpplInfo::getNodes(), PartBunchBase< T, Dim >::ID, IPPL_APP_CYCLE, IPPL_APP_TAG4, Tracker::itsBunch_m, myNode_m, TagMaker::next_tag(), outfTrackOrbit_m, PartBunchBase< T, Dim >::P, Message::put(), PartBunchBase< T, Dim >::R, Communicate::receive_block(), PartBunchBase< T, Dim >::RefPartP_m, PartBunchBase< T, Dim >::RefPartR_m, IpplTimings::startTimer(), and IpplTimings::stopTimer().
Referenced by bunchMode_m(), and MtsTracker().
|
private |
Update time and path length, write to output files.
Definition at line 2792 of file ParallelCyclotronTracker.cpp.
References bunchDumpPhaseSpaceData(), bunchDumpStatData(), endl(), PartBunchBase< T, Dim >::getTotalNum(), gmsg, Tracker::itsBunch_m, mode_m, pluginElements_m, Options::psDumpEachTurn, Options::psDumpFreq, SEO, PartBunchBase< T, Dim >::setLocalTrackStep(), Options::statDumpFreq, step_m, updatePathLength(), and updateTime().
Referenced by GenericTracker(), and MtsTracker().
|
private |
Definition at line 3533 of file ParallelCyclotronTracker.cpp.
References MultiBunchHandler::beaminfo_t::azimuth, calcMeanR(), calculateAngle(), computeRadius(), dumpAngle(), isMultiBunch(), mbHandler_m, MultiBunchHandler::beaminfo_t::prevAzimuth, Units::rad2deg, and MultiBunchHandler::beaminfo_t::radius.
Referenced by bunchDumpStatData().
|
private |
Definition at line 3500 of file ParallelCyclotronTracker.cpp.
References computePathLengthUpdate(), isMultiBunch(), Tracker::itsBunch_m, mbHandler_m, pathLength_m, and PartBunchBase< T, Dim >::set_sPos().
Referenced by update_m().
|
private |
Definition at line 3521 of file ParallelCyclotronTracker.cpp.
References PartBunchBase< T, Dim >::getT(), isMultiBunch(), Tracker::itsBunch_m, mbHandler_m, Units::ns2s, and PartBunchBase< T, Dim >::setT().
Referenced by update_m().
|
virtual |
Apply the algorithm to a beam line.
bl |
Reimplemented from DefaultVisitor.
Definition at line 1137 of file ParallelCyclotronTracker.cpp.
References TBeamline< T >::iterate().
|
virtual |
Apply the algorithm to a collimator.
coll |
Reimplemented from DefaultVisitor.
Definition at line 491 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), CCOLLIMATOR, ElementBase::clone(), endl(), ElementBase::getName(), CCollimator::getWidth(), PluginElement::getXEnd(), PluginElement::getXStart(), PluginElement::getYEnd(), PluginElement::getYStart(), CCollimator::getZEnd(), CCollimator::getZStart(), gmsg, PluginElement::initialise(), Tracker::itsBunch_m, and myElements.
|
virtual |
Apply the algorithm to a closed orbit corrector.
corr |
Reimplemented from DefaultVisitor.
Definition at line 538 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), ElementBase::getElementLength(), gmsg, and myElements.
|
virtual |
Apply the algorithm to a cyclotron.
cycl |
Reimplemented from DefaultVisitor.
Definition at line 320 of file ParallelCyclotronTracker.cpp.
References Cyclotron::BANDRF, bega, Util::boolVectorToUpperString(), buildupFieldList(), ElementBase::clone(), cos(), cosRefTheta_m, cycl_m, CYCLOTRON, Units::deg2rad, Util::doubleVectorToString(), endl(), PartData::getBeta(), Cyclotron::getBFieldType(), Cyclotron::getBScale(), Cyclotron::getCyclHarm(), Cyclotron::getCyclotronType(), Cyclotron::getEScale(), Cyclotron::getFieldMapFN(), PartData::getGamma(), OpalData::getInstance(), Cyclotron::getMaxR(), Cyclotron::getMaxZ(), Cyclotron::getMinR(), Cyclotron::getMinZ(), Cyclotron::getNumberOfTrimcoils(), Cyclotron::getPHIinit(), Cyclotron::getPRinit(), Cyclotron::getPZinit(), Cyclotron::getRfFrequ(), Cyclotron::getRfPhi(), Cyclotron::getRinit(), Cyclotron::getRmax(), Cyclotron::getRmin(), Cyclotron::getSpiralFlag(), Cyclotron::getSuperpose(), Cyclotron::getSymmetry(), Cyclotron::getZinit(), GLOBAL, gmsg, Cyclotron::initialise(), OpalData::inRestartRun(), isMultiBunch(), Tracker::itsBunch_m, AbstractTracker::itsReference, mbHandler_m, Units::mm2m, myElements, previousH5Local, Options::psDumpFrame, Units::rad2deg, referencePhi, referencePr, referencePsi, referencePt, referencePtot, referencePz, referenceR, referenceTheta, referenceZ, Cyclotron::setBFieldType(), sin(), sinRefTheta_m, spiral_flag, and sqrt().
|
virtual |
Apply the algorithm to a degrader.
degrader |
Reimplemented from DefaultVisitor.
Definition at line 548 of file ParallelCyclotronTracker.cpp.
References matheval::detail::math::deg(), endl(), gmsg, and myElements.
|
virtual |
Apply the algorithm to a drift space.
drift |
Reimplemented from DefaultVisitor.
Definition at line 559 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), ElementBase::getElementLength(), gmsg, and myElements.
|
virtual |
Apply the algorithm to a flexible collimator.
Reimplemented from DefaultVisitor.
Definition at line 569 of file ParallelCyclotronTracker.cpp.
|
virtual |
Apply the algorithm to a marker.
marker |
Reimplemented from DefaultVisitor.
Definition at line 594 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), and myElements.
|
virtual |
Apply the algorithm to a beam position monitor.
corr |
Reimplemented from DefaultVisitor.
Definition at line 605 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), and myElements.
|
virtual |
Apply the algorithm to a multipole.
mult |
Reimplemented from DefaultVisitor.
Definition at line 616 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), ElementBase::getElementLength(), gmsg, and myElements.
|
virtual |
Apply the algorithm to an arbitrary multipole.
multT |
Reimplemented from DefaultVisitor.
Definition at line 626 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), MultipoleT::clone(), endl(), gmsg, myElements, and opalRing_m.
|
virtual |
Apply the algorithm to an arbitrary curved multipole of constant radius.
multTccurv |
Reimplemented from DefaultVisitor.
Definition at line 658 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), MultipoleTCurvedConstRadius::clone(), endl(), gmsg, myElements, and opalRing_m.
|
virtual |
Apply the algorithm to an arbitrary curved multipole of variable radius.
multTvcurv |
Reimplemented from DefaultVisitor.
Definition at line 674 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), MultipoleTCurvedVarRadius::clone(), endl(), gmsg, myElements, and opalRing_m.
|
virtual |
Apply the algorithm to an arbitrary straight multipole.
multTstraight |
Reimplemented from DefaultVisitor.
Definition at line 642 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), MultipoleTStraight::clone(), endl(), gmsg, myElements, and opalRing_m.
|
virtual |
Apply the algorithm to a offset (placement).
off |
Reimplemented from DefaultVisitor.
Definition at line 578 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), Ring::getNextNormal(), Ring::getNextPosition(), opalRing_m, and Offset::updateGeometry().
|
virtual |
Apply the algorithm to a probe.
prob |
Reimplemented from DefaultVisitor.
Definition at line 690 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), ElementBase::clone(), endl(), ElementBase::getName(), PluginElement::getXEnd(), PluginElement::getXStart(), PluginElement::getYEnd(), PluginElement::getYStart(), gmsg, PluginElement::initialise(), Tracker::itsBunch_m, myElements, and PROBE.
|
virtual |
Apply the algorithm to a rectangular bend.
bend |
Reimplemented from DefaultVisitor.
Definition at line 729 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), ElementBase::getElementLength(), gmsg, and myElements.
|
virtual |
Apply the algorithm to a RF cavity.
as |
Reimplemented from DefaultVisitor.
Definition at line 739 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), ElementBase::clone(), endl(), RFCavity::getAmplitudeModelName(), RFCavity::getAzimuth(), RFCavity::getCavityType(), RFCavity::getCavityTypeString(), RFCavity::getCycFrequency(), RFCavity::getFieldMapFN(), RFCavity::getFrequencyModelName(), RFCavity::getGapWidth(), ElementBase::getName(), RFCavity::getPerpenDistance(), RFCavity::getPhaseModelName(), RFCavity::getPhi0(), RFCavity::getRmax(), RFCavity::getRmin(), AbstractTimeDependence::getTimeDependence(), gmsg, RFCavity::initialise(), Tracker::itsBunch_m, Units::mm2m, myElements, RFCAVITY, and SGSW.
|
virtual |
Apply the algorithm to a ring.
ring |
Reimplemented from DefaultVisitor.
Definition at line 833 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), Ring::clone(), cos(), cosRefTheta_m, Units::deg2rad, endl(), Ring::getBeamPhiInit(), Ring::getBeamPRInit(), Ring::getBeamRInit(), PartData::getBeta(), PartData::getGamma(), Ring::getHarmonicNumber(), Ring::getSymmetry(), gmsg, Ring::initialise(), Tracker::itsBunch_m, AbstractTracker::itsReference, myElements, opalRing_m, referencePr, referencePt, referencePtot, referencePz, referenceR, referenceTheta, referenceZ, RING, sin(), sinRefTheta_m, and sqrt().
|
virtual |
Apply the algorithm to a sector bend.
bend |
Reimplemented from DefaultVisitor.
Definition at line 885 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), ElementBase::getElementLength(), gmsg, and myElements.
|
virtual |
Apply the algorithm to a sector bend with 3D field map.
Reimplemented from DefaultVisitor.
Definition at line 890 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), endl(), gmsg, and opalRing_m.
|
virtual |
Apply the algorithm to a scaling FFA magnet.
Reimplemented from DefaultVisitor.
Definition at line 899 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), ScalingFFAMagnet::clone(), endl(), gmsg, opalRing_m, and ScalingFFAMagnet::setupEndField().
|
virtual |
Apply the algorithm to a septum.
sept |
Reimplemented from DefaultVisitor.
Definition at line 916 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), ElementBase::clone(), endl(), ElementBase::getName(), Septum::getWidth(), PluginElement::getXEnd(), PluginElement::getXStart(), PluginElement::getYEnd(), PluginElement::getYStart(), gmsg, Septum::initialise(), Tracker::itsBunch_m, myElements, and SEPTUM.
|
virtual |
Apply the algorithm to a solenoid.
solenoid |
Reimplemented from DefaultVisitor.
Definition at line 958 of file ParallelCyclotronTracker.cpp.
References ElementBase::clone(), endl(), gmsg, ElementBase::hasAttribute(), and myElements.
|
virtual |
Apply the algorithm to a particle stripper.
stripper |
Reimplemented from DefaultVisitor.
Definition at line 972 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), ElementBase::clone(), endl(), ElementBase::getName(), Stripper::getOPCharge(), Stripper::getOPMass(), Stripper::getStop(), PluginElement::getXEnd(), PluginElement::getXStart(), PluginElement::getYEnd(), PluginElement::getYStart(), gmsg, PluginElement::initialise(), Tracker::itsBunch_m, myElements, and STRIPPER.
|
virtual |
Apply the algorithm to a vacuum space.
vac |
Reimplemented from DefaultVisitor.
Definition at line 1023 of file ParallelCyclotronTracker.cpp.
References buildupFieldList(), ElementBase::clone(), endl(), Vacuum::getPressure(), Vacuum::getPressureMapFN(), Vacuum::getPScale(), Vacuum::getResidualGasName(), Vacuum::getStop(), Vacuum::getTemperature(), gmsg, Vacuum::initialise(), Tracker::itsBunch_m, myElements, and VACUUM.
|
virtual |
Apply the algorithm to a variabel RF cavity.
cav |
Reimplemented from DefaultVisitor.
Definition at line 1066 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), endl(), gmsg, and opalRing_m.
|
virtual |
Apply the algorithm to a variable RF cavity with Fringe Field.
cav |
Reimplemented from DefaultVisitor.
Definition at line 1080 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), endl(), gmsg, and opalRing_m.
|
virtual |
Apply the algorithm to a vertical FFA magnet.
mag |
Reimplemented from DefaultVisitor.
Definition at line 1095 of file ParallelCyclotronTracker.cpp.
References Ring::appendElement(), endl(), gmsg, and opalRing_m.
|
private |
the different azimuthal angles for the outfTheta_m output files
Definition at line 312 of file ParallelCyclotronTracker.h.
Referenced by dumpAzimuthAngles_m(), and initializeTracking_m().
|
private |
Definition at line 284 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpStatData(), execute(), and saveInjectValues().
|
private |
The reference variables.
Definition at line 239 of file ParallelCyclotronTracker.h.
Referenced by setBeGa(), and visitCyclotron().
|
private |
Definition at line 226 of file ParallelCyclotronTracker.h.
Referenced by bgf_main_collision_test(), execute(), and ~ParallelCyclotronTracker().
|
private |
Definition at line 335 of file ParallelCyclotronTracker.h.
Referenced by ParallelCyclotronTracker(), and repartition().
|
private |
Definition at line 222 of file ParallelCyclotronTracker.h.
|
private |
Definition at line 259 of file ParallelCyclotronTracker.h.
Referenced by initDistInGlobalFrame(), visitCyclotron(), and visitRing().
|
private |
Definition at line 228 of file ParallelCyclotronTracker.h.
Referenced by applyPluginElements(), and visitCyclotron().
|
private |
Definition at line 337 of file ParallelCyclotronTracker.h.
Referenced by deleteParticle(), and ParallelCyclotronTracker().
|
private |
Definition at line 333 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), ParallelCyclotronTracker(), and singleParticleDump().
|
private |
Definition at line 303 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), and execute().
|
private |
Definition at line 303 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), and execute().
|
private |
Definition at line 303 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), and execute().
|
private |
Definition at line 218 of file ParallelCyclotronTracker.h.
Referenced by applyPluginElements(), buildupFieldList(), bunchDumpPhaseSpaceData(), bunchDumpStatData(), computeExternalFields_m(), execute(), gapCrossKick_m(), getHarmonicNumber(), and ~ParallelCyclotronTracker().
|
private |
Definition at line 306 of file ParallelCyclotronTracker.h.
Referenced by checkFileMomentum(), initDistInGlobalFrame(), and setTimeStep().
|
private |
Definition at line 307 of file ParallelCyclotronTracker.h.
Referenced by checkFileMomentum(), initDistInGlobalFrame(), and setTrackingMode().
|
private |
Definition at line 332 of file ParallelCyclotronTracker.h.
Referenced by borisExternalFields(), bunchMode_m(), kick(), ParallelCyclotronTracker(), push(), seoMode_m(), and singleMode_m().
|
private |
Definition at line 220 of file ParallelCyclotronTracker.h.
Referenced by execute(), ParallelCyclotronTracker(), and ~ParallelCyclotronTracker().
|
private |
Definition at line 224 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchDumpStatData(), initPathLength(), and ParallelCyclotronTracker().
|
private |
Definition at line 460 of file ParallelCyclotronTracker.h.
Referenced by bunchMode_m(), execute(), gapCrossKick_m(), seoMode_m(), and singleMode_m().
|
private |
Definition at line 264 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), finalizeTracking_m(), and setLastDumpedStep().
|
private |
Definition at line 449 of file ParallelCyclotronTracker.h.
Referenced by bgf_main_collision_test(), execute(), and ~ParallelCyclotronTracker().
|
private |
The maximal number of steps the system is integrated.
Definition at line 231 of file ParallelCyclotronTracker.h.
Referenced by GenericTracker(), and MtsTracker().
|
private |
Definition at line 262 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpStatData(), bunchMode_m(), deleteParticle(), execute(), hasMultiBunch(), initDistInGlobalFrame(), initializeTracking_m(), initPathLength(), injectBunch(), isMultiBunch(), MtsTracker(), ParallelCyclotronTracker(), saveInjectValues(), updateAzimuthAndRadius(), updatePathLength(), updateTime(), and visitCyclotron().
|
private |
Definition at line 469 of file ParallelCyclotronTracker.h.
Referenced by finalizeTracking_m(), GenericTracker(), initializeTracking_m(), MtsTracker(), setTrackingMode(), and update_m().
|
private |
Definition at line 219 of file ParallelCyclotronTracker.h.
Referenced by visitCCollimator(), visitCorrector(), visitCyclotron(), visitDegrader(), visitDrift(), visitMarker(), visitMonitor(), visitMultipole(), visitMultipoleT(), visitMultipoleTCurvedConstRadius(), visitMultipoleTCurvedVarRadius(), visitMultipoleTStraight(), visitProbe(), visitRBend(), visitRFCavity(), visitRing(), visitSBend(), visitSeptum(), visitSolenoid(), visitStripper(), visitVacuum(), and ~ParallelCyclotronTracker().
|
private |
Definition at line 305 of file ParallelCyclotronTracker.h.
Referenced by finalizeTracking_m(), initTrackOrbitFile(), and singleParticleDump().
|
private |
Definition at line 446 of file ParallelCyclotronTracker.h.
Referenced by execute(), getHarmonicNumber(), visitMultipoleT(), visitMultipoleTCurvedConstRadius(), visitMultipoleTCurvedVarRadius(), visitMultipoleTStraight(), visitOffset(), visitRing(), visitSBend3D(), visitScalingFFAMagnet(), visitVariableRFCavity(), visitVariableRFCavityFringeField(), and visitVerticalFFAMagnet().
|
private |
output coordinates at different azimuthal angles and one after every turn
Definition at line 310 of file ParallelCyclotronTracker.h.
Referenced by closeFiles(), dumpAzimuthAngles_m(), dumpThetaEachTurn_m(), and openFiles().
|
private |
output file for six dimensional phase space
Definition at line 318 of file ParallelCyclotronTracker.h.
Referenced by finalizeTracking_m(), initTrackOrbitFile(), seoMode_m(), singleMode_m(), and singleParticleDump().
|
private |
Definition at line 267 of file ParallelCyclotronTracker.h.
Referenced by initDistInGlobalFrame(), and updatePathLength().
|
private |
Definition at line 221 of file ParallelCyclotronTracker.h.
Referenced by applyPluginElements(), execute(), and update_m().
|
private |
Definition at line 336 of file ParallelCyclotronTracker.h.
Referenced by applyPluginElements(), and ParallelCyclotronTracker().
|
private |
Definition at line 285 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpStatData(), execute(), and saveInjectValues().
|
private |
Definition at line 256 of file ParallelCyclotronTracker.h.
Referenced by setPreviousH5Local(), and visitCyclotron().
|
private |
Definition at line 254 of file ParallelCyclotronTracker.h.
Referenced by bunchMode_m(), and computeSpaceChargeFields_m().
|
private |
Definition at line 250 of file ParallelCyclotronTracker.h.
Referenced by initDistInGlobalFrame(), setPhi(), and visitCyclotron().
|
private |
Definition at line 244 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), setPr(), visitCyclotron(), and visitRing().
|
private |
Definition at line 249 of file ParallelCyclotronTracker.h.
Referenced by initDistInGlobalFrame(), setPsi(), and visitCyclotron().
|
private |
Definition at line 245 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), setPt(), visitCyclotron(), and visitRing().
|
private |
Definition at line 247 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), checkFileMomentum(), visitCyclotron(), and visitRing().
|
private |
Definition at line 246 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), setPz(), visitCyclotron(), and visitRing().
|
private |
Definition at line 240 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), setR(), visitCyclotron(), and visitRing().
|
private |
Definition at line 241 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), initializeTracking_m(), setTheta(), visitCyclotron(), and visitRing().
|
private |
Definition at line 242 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), initDistInGlobalFrame(), setZ(), visitCyclotron(), and visitRing().
|
private |
Definition at line 279 of file ParallelCyclotronTracker.h.
Referenced by execute(), and initializeTracking_m().
|
private |
Referenced by bunchMode_m(), dumpAzimuthAngles_m(), initializeTracking_m(), injectBunch(), and isTurnDone().
|
private |
Definition at line 258 of file ParallelCyclotronTracker.h.
Referenced by initDistInGlobalFrame(), visitCyclotron(), and visitRing().
|
private |
Definition at line 252 of file ParallelCyclotronTracker.h.
Referenced by computeSpaceChargeFields_m(), initializeTracking_m(), and visitCyclotron().
|
private |
Definition at line 278 of file ParallelCyclotronTracker.h.
Referenced by bunchDumpPhaseSpaceData(), bunchMode_m(), computeSpaceChargeFields_m(), deleteParticle(), execute(), GenericTracker(), initDistInGlobalFrame(), initializeTracking_m(), injectBunch(), isTurnDone(), MtsTracker(), repartition(), seoMode_m(), singleMode_m(), and update_m().
|
private |
Definition at line 471 of file ParallelCyclotronTracker.h.
Referenced by execute().
|
private |
Definition at line 334 of file ParallelCyclotronTracker.h.
Referenced by globalToLocal(), localToGlobal(), and ParallelCyclotronTracker().
|
private |
Definition at line 281 of file ParallelCyclotronTracker.h.
Referenced by applyPluginElements(), bgf_main_collision_test(), bunchMode_m(), dumpAzimuthAngles_m(), dumpThetaEachTurn_m(), execute(), finalizeTracking_m(), initializeTracking_m(), injectBunch(), MtsTracker(), and seoMode_m().
The positive axes unit vectors.
Definition at line 234 of file ParallelCyclotronTracker.h.
Referenced by getQuaternionTwoVectors().
Definition at line 235 of file ParallelCyclotronTracker.h.
Referenced by computeSpaceChargeFields_m().
Definition at line 236 of file ParallelCyclotronTracker.h.
Referenced by getQuaternionTwoVectors().