BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
The base class for bunch distribution generators. More...
#include <BDSBunch.hh>
Public Member Functions | |
BDSBunch (const G4String &nameIn) | |
virtual void | SetOptions (const BDSParticleDefinition *beamParticle, const GMAD::Beam &beam, const BDSBunchType &distrType, G4Transform3D beamlineTransformIn=G4Transform3D::Identity, const G4double beamlineS=0) |
virtual void | CheckParameters () |
virtual void | Initialise () |
Any initialisation - to be used after SetOptions, then CheckParameters. | |
BDSParticleCoordsFullGlobal | GetNextParticle () |
virtual G4bool | ExpectChangingParticleType () const |
A hint of whether we expect to require and extended particle set (ie pions, kaons, muons). | |
virtual BDSParticleCoordsFullGlobal | GetNextParticleValid (G4int maxTries=100) |
virtual void | BeginOfRunAction (G4int numberOfEvents, G4bool batchMode) |
virtual const BDSParticleDefinition * | ParticleDefinition () const |
Access the beam particle definition. | |
virtual void | SetGeneratePrimariesOnly (G4bool generatePrimariesOnlyIn) |
virtual BDSParticleCoordsFull | GetNextParticleLocal () |
G4bool | UseCurvilinearTransform () const |
Access whether there's a finite S offset and therefore we're using a CL transform. | |
virtual void | RecreateAdvanceToEvent (G4int eventOffset) |
G4bool | BeamParticleIsAnIon () const |
Access whether the beam particle is an ion or not. | |
virtual void | UpdateIonDefinition () |
G4bool | ParticleDefinitionHasBeenUpdated () const |
G4String | Name () const |
Distribution name. | |
G4int | CurrentBunchIndex () const |
Get the current bunch index for writing to output. | |
void | CalculateBunchIndex (G4int eventIndex) |
Calculate which bunch index we should be at given an event index. | |
Static Public Member Functions | |
static G4double | CalculateZp (G4double xp, G4double yp, G4double Zp0) |
Calculate zp safely based on other components. | |
static void | SetEmittances (const BDSParticleDefinition *beamParticle, const GMAD::Beam &beam, G4double &emittGeometricX, G4double &emittGeometricY, G4double &emittNormalisedX, G4double &emittNormalisedY) |
Protected Member Functions | |
BDSParticleCoordsFullGlobal | ApplyTransform (const BDSParticleCoordsFull &localIn) const |
void | ApplyTilt (BDSParticleCoordsFull &localIn) const |
Apply a rotation about unitZ for the local coordinates according to member variable tilt. | |
void | ApplyBunchTiming (BDSParticleCoordsFullGlobal &localIn) const |
Add on the offset in T for the current bunch number (i*bunchPeriod). | |
BDSParticleCoordsFullGlobal | ApplyCurvilinearTransform (const BDSParticleCoordsFull &localIn) const |
Calculate the global coordinates from curvilinear coordinates of a beam line. | |
Protected Attributes | |
G4String | name |
Name of distribution. | |
G4bool | useCurvilinear |
Whether to ignore z and use s and transform for curvilinear coordinates. | |
BDSParticleDefinition * | particleDefinition |
Particle definition for bunch - this class owns it. | |
G4bool | particleDefinitionHasBeenUpdated |
G4bool | finiteTilt |
G4bool | generatePrimariesOnly |
G4double | X0 |
Centre of distributions. | |
G4double | Y0 |
Centre of distributions. | |
G4double | Z0 |
Centre of distributions. | |
G4double | S0 |
Centre of distributions. | |
G4double | T0 |
Centre of distributions. | |
G4double | Xp0 |
Centre of distributions. | |
G4double | Yp0 |
Centre of distributions. | |
G4double | Zp0 |
Centre of distributions. | |
G4double | E0 |
Centre of distributions. | |
G4double | P0 |
central momentum | |
G4double | tilt |
Centre of distributions. | |
G4double | sigmaT |
Centre of distributions. | |
G4double | sigmaP |
Centre of distributions. | |
G4double | sigmaE |
Centre of distributions. | |
G4double | sigmaEk |
Centre of distributions. | |
bool | useBunchTiming |
Bunch offset in time parameters. | |
G4int | currentBunchIndex |
Bunch offset in time parameters. | |
G4int | eventsPerBunch |
Bunch offset in time parameters. | |
G4double | bunchPeriod |
Bunch offset in time parameters. | |
G4bool | finiteSigmaE |
Flags to ignore random number generator in case of no finite E or T. | |
G4bool | finiteSigmaT |
Flags to ignore random number generator in case of no finite E or T. | |
Private Attributes | |
G4Transform3D | beamlineTransform |
Transform that beam line starts with that will also be applied to coordinates. | |
G4double | beamlineS |
Beamline initial S position. | |
G4double | mass2 |
Cache of mass squared as required to convert from p to E. | |
const BDSBeamline * | beamline |
A reference to the fully constructed beamline that's lazily instantiated. | |
Friends | |
class | BDSPrimaryGeneratorFileHEPMC |
Make BDSPrimaryGeneratorFileHEPMC a friend so it can use the protected ApplyTransform function. | |
class | BDSPrimaryGeneratorFileSampler |
The base class for bunch distribution generators.
After instantiation of a class, use SetOptions(), then CheckParmeters(), then Initialise().
Definition at line 46 of file BDSBunch.hh.
BDSBunch::BDSBunch | ( | ) |
Definition at line 50 of file BDSBunch.cc.
|
explicit |
Definition at line 54 of file BDSBunch.cc.
|
virtual |
Definition at line 77 of file BDSBunch.cc.
|
protected |
Add on the offset in T for the current bunch number (i*bunchPeriod).
Definition at line 316 of file BDSBunch.cc.
References bunchPeriod, and currentBunchIndex.
Referenced by ApplyTransform().
|
protected |
Calculate the global coordinates from curvilinear coordinates of a beam line.
Definition at line 322 of file BDSBunch.cc.
References beamline, BDSParticleCoordsFullGlobal::beamlineIndex, BDSAcceleratorModel::BeamlineMain(), generatePrimariesOnly, BDSBeamline::GetGlobalEuclideanTransform(), and S0.
Referenced by ApplyTransform().
|
protected |
Apply a rotation about unitZ for the local coordinates according to member variable tilt.
Definition at line 304 of file BDSBunch.cc.
References tilt.
Referenced by GetNextParticle().
|
protected |
Apply either the curvilinear transform if we're using curvilinear coordinates or just apply the general beam line offset in global coordinates to the 'local' curvilinear coordinates.
Definition at line 292 of file BDSBunch.cc.
References ApplyBunchTiming(), ApplyCurvilinearTransform(), BDSParticleCoords::ApplyTransform(), beamlineTransform, useBunchTiming, and useCurvilinear.
Referenced by GetNextParticle(), BDSPrimaryGeneratorFileHEPMC::HepMC2G4(), and BDSPrimaryGeneratorFileSampler::ReadSingleEvent().
|
inline |
Access whether the beam particle is an ion or not.
Definition at line 119 of file BDSBunch.hh.
References BDSParticleDefinition::IsAnIon(), and particleDefinition.
Referenced by BDSPrimaryGeneratorAction::BDSPrimaryGeneratorAction().
|
virtual |
An action that is called at the beginning of a run when we know the number of events that'll be generated. By default this is nothing, but can be used to calculate sample mean offsets in some derived classes.
Reimplemented in BDSBunchFileBased, and BDSBunchGaussian.
Definition at line 285 of file BDSBunch.cc.
Referenced by BDSIM::GeneratePrimariesOnly().
void BDSBunch::CalculateBunchIndex | ( | G4int | eventIndex | ) |
Calculate which bunch index we should be at given an event index.
Definition at line 215 of file BDSBunch.cc.
References currentBunchIndex, eventsPerBunch, and useBunchTiming.
Referenced by BDSPrimaryGeneratorAction::GeneratePrimaries(), and RecreateAdvanceToEvent().
|
static |
Calculate zp safely based on other components.
Definition at line 367 of file BDSBunch.cc.
Referenced by BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchSixTrack::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), and SetOptions().
|
virtual |
Check the parameters for the given bunch distribution and exit if they're problematic or unphysical.
Reimplemented in BDSBunchBox, BDSBunchCircle, BDSBunchComposite, BDSBunchCompositeSDE, BDSBunchEShell, BDSBunchEventGenerator, BDSBunchHalo, BDSBunchHaloFlatSigma, BDSBunchRing, BDSBunchSquare, BDSBunchTwiss, and BDSBunchUserFile< T >.
Definition at line 223 of file BDSBunch.cc.
References sigmaE, and sigmaT.
Referenced by BDSBunchBox::CheckParameters(), BDSBunchCircle::CheckParameters(), BDSBunchComposite::CheckParameters(), BDSBunchCompositeSDE::CheckParameters(), BDSBunchEShell::CheckParameters(), BDSBunchEventGenerator::CheckParameters(), BDSBunchHalo::CheckParameters(), BDSBunchHaloFlatSigma::CheckParameters(), BDSBunchRing::CheckParameters(), BDSBunchSquare::CheckParameters(), BDSBunchTwiss::CheckParameters(), and BDSBunchUserFile< T >::CheckParameters().
|
inline |
Get the current bunch index for writing to output.
Definition at line 148 of file BDSBunch.hh.
References currentBunchIndex.
Referenced by BDSPrimaryGeneratorAction::GeneratePrimaries().
|
inlinevirtual |
A hint of whether we expect to require and extended particle set (ie pions, kaons, muons).
Reimplemented in BDSBunchUserFile< T >.
Definition at line 80 of file BDSBunch.hh.
Referenced by BDSIM::Initialise().
BDSParticleCoordsFullGlobal BDSBunch::GetNextParticle | ( | ) |
Main interface. Calls GetNextParticleLocal() and then applies the curvilinear transform if required.
Definition at line 262 of file BDSBunch.cc.
References ApplyTilt(), ApplyTransform(), finiteTilt, GetNextParticleLocal(), and particleDefinitionHasBeenUpdated.
Referenced by BDSBunchUserFile< T >::GetNextParticleValid(), and GetNextParticleValid().
|
virtual |
Each derived class can override this default method of reference position. If S0 > 0 or derived class changes member bool 'curvilinear' z0 will be treated as S and the global z0 be calculated.
Reimplemented in BDSBunchBox, BDSBunchCircle, BDSBunchComposite, BDSBunchCompositeSDE, BDSBunchEShell, BDSBunchGaussian, BDSBunchHalo, BDSBunchHaloFlatSigma, BDSBunchPtc, BDSBunchRing, BDSBunchSixTrack, BDSBunchSixTrackLink, BDSBunchSphere, BDSBunchSquare, and BDSBunchUserFile< T >.
Definition at line 272 of file BDSBunch.cc.
References E0, S0, T0, X0, Xp0, Y0, Yp0, Z0, and Zp0.
Referenced by BDSLinkPrimaryGeneratorAction::GeneratePrimaries(), GetNextParticle(), BDSBunchComposite::GetNextParticleLocal(), BDSBunchCompositeSDE::GetNextParticleLocal(), BDSPrimaryGeneratorFileHEPMC::HepMC2G4(), and BDSPrimaryGeneratorFileSampler::ReadSingleEvent().
|
virtual |
Interface to allow multiple calls until a safe particle is generated. This will repeatedly call GetNextParticle() until a particle is generated where the total energy is greater than the rest mass. This can be overridden by derived classes if they do not wish this behaviour. This may throw an exception if the maximum number of attempts (maxTries) is exceeded.
Reimplemented in BDSBunchUserFile< T >.
Definition at line 234 of file BDSBunch.cc.
References GetNextParticle(), BDSParticleDefinition::Mass(), particleDefinition, and particleDefinitionHasBeenUpdated.
Referenced by BDSPrimaryGeneratorAction::GeneratePrimaries(), and BDSIM::GeneratePrimariesOnly().
|
virtual |
Any initialisation - to be used after SetOptions, then CheckParameters.
Reimplemented in BDSBunchPtc, and BDSBunchUserFile< T >.
Definition at line 231 of file BDSBunch.cc.
|
inline |
Distribution name.
Definition at line 145 of file BDSBunch.hh.
References name.
Referenced by BDSIM::Initialise(), BDSBunchComposite::SetOptions(), and BDSBunchCompositeSDE::SetOptions().
|
inlinevirtual |
Access the beam particle definition.
Reimplemented in BDSBunchSixTrackLink.
Definition at line 96 of file BDSBunch.hh.
References particleDefinition.
Referenced by BDSLinkPrimaryGeneratorAction::GeneratePrimaries(), BDSPrimaryGeneratorAction::GeneratePrimaries(), BDSIM::GeneratePrimariesOnly(), BDSIM::Initialise(), and BDSIMLink::Initialise().
|
inline |
Whether the particle definition has been updated since the last call to GetNextParticle() or GetNextParticleValid().
Definition at line 129 of file BDSBunch.hh.
References particleDefinitionHasBeenUpdated.
Referenced by BDSBunchComposite::GetNextParticleLocal(), and BDSBunchCompositeSDE::GetNextParticleLocal().
|
virtual |
When recreating events, it's possible that setting the seed state may not be sufficient for the bunch to get the right distribution. This is true when the bunch coordinates are based on an external source of data i.e. user bunch file. This default method allows such a distribution to advance to the correct event number. Updates the bunch index by default.
Reimplemented in BDSBunchPtc, and BDSBunchUserFile< T >.
Definition at line 280 of file BDSBunch.cc.
References CalculateBunchIndex().
Referenced by BDSPrimaryGeneratorAction::BDSPrimaryGeneratorAction(), and BDSBunchUserFile< T >::RecreateAdvanceToEvent().
|
static |
Work out whether either the geometric or normalised emittances are set and update the variables by reference with the values. Can throw exception if more than one set in either x and y.
Definition at line 175 of file BDSBunch.cc.
References BDS::ConflictingParametersSet(), GMAD::BeamBase::emitNX, GMAD::BeamBase::emitNY, GMAD::BeamBase::emitx, GMAD::BeamBase::emity, BDSParticleDefinition::Gamma(), BDS::IsFinite(), and BDS::NBeamParametersSet().
Referenced by BDSBunchHalo::SetOptions(), BDSBunchHaloFlatSigma::SetOptions(), and BDSBunchTwiss::SetOptions().
|
virtual |
Set the flag to whether we're only generating primaries only. This sets the member variable generatePrimariesOnly which skips trying to perform a curvilinear transform if true. i.e. if we're generating primaries only, there's no beam line.
Reimplemented in BDSBunchComposite, and BDSBunchCompositeSDE.
Definition at line 289 of file BDSBunch.cc.
References generatePrimariesOnly.
Referenced by BDSBunchComposite::SetGeneratePrimariesOnly(), and BDSBunchCompositeSDE::SetGeneratePrimariesOnly().
|
virtual |
Extract and set the relevant options from the beam definition. The distribution type is explicitly required as this function may be used inside a nested bunch distribution. This argument is for the most part ignored, but there's no way to have a default for it. Also, some classes can cover multiple input distributions so need to know which one they're meant to be.
Reimplemented in BDSBunchBox, BDSBunchComposite, BDSBunchCompositeSDE, BDSBunchEShell, BDSBunchFileBased, BDSBunchGaussian, BDSBunchHalo, BDSBunchHaloFlatSigma, BDSBunchPtc, BDSBunchRing, BDSBunchSigmaMatrix, BDSBunchSixTrack, BDSBunchSquare, BDSBunchTwiss, BDSBunchUserFile< T >, BDSBunchCircle, and BDSBunchEventGenerator.
Definition at line 82 of file BDSBunch.cc.
References beamlineS, beamlineTransform, BDSParticleDefinition::Beta(), GMAD::BeamBase::bunchFrequency, bunchPeriod, GMAD::BeamBase::bunchPeriod, CalculateZp(), BDS::ConflictingParametersSet(), E0, eventsPerBunch, GMAD::BeamBase::eventsPerBunch, finiteSigmaE, finiteSigmaT, finiteTilt, BDSGlobalConstants::Instance(), BDS::IsFinite(), BDSParticleDefinition::KineticEnergy(), BDSParticleDefinition::Momentum(), BDS::NBeamParametersSet(), P0, particleDefinition, S0, GMAD::BeamBase::S0, sigmaE, GMAD::BeamBase::sigmaE, sigmaEk, sigmaP, sigmaT, GMAD::BeamBase::sigmaT, T0, GMAD::BeamBase::T0, tilt, GMAD::BeamBase::tilt, BDSParticleDefinition::TotalEnergy(), useBunchTiming, useCurvilinear, X0, GMAD::BeamBase::X0, Xp0, GMAD::BeamBase::Xp0, Y0, GMAD::BeamBase::Y0, Yp0, GMAD::BeamBase::Yp0, Z0, GMAD::BeamBase::Z0, Zp0, and GMAD::BeamBase::Zp0.
Referenced by BDSIMLink::Initialise(), BDSBunchBox::SetOptions(), BDSBunchComposite::SetOptions(), BDSBunchCompositeSDE::SetOptions(), BDSBunchEShell::SetOptions(), BDSBunchFileBased::SetOptions(), BDSBunchGaussian::SetOptions(), BDSBunchHalo::SetOptions(), BDSBunchHaloFlatSigma::SetOptions(), BDSBunchRing::SetOptions(), BDSBunchSixTrack::SetOptions(), BDSBunchSquare::SetOptions(), and BDSBunchCircle::SetOptions().
|
virtual |
Update the Geant4 Particle Definition inside particleDefinition member in the case it's an ion. This can only be done later one once the run has started. Since the particle definition is kept here in the bunch this interface allows control over it being updated.
Reimplemented in BDSBunchSixTrackLink.
Definition at line 382 of file BDSBunch.cc.
References BDSIonDefinition::A(), BDSIonDefinition::ExcitationEnergy(), BDS::FixGeant105ThreshholdsForParticle(), BDSParticleDefinition::IonDefinition(), BDSParticleDefinition::IsAnIon(), particleDefinition, BDSParticleDefinition::UpdateG4ParticleDefinition(), and BDSIonDefinition::Z().
Referenced by BDSPrimaryGeneratorAction::GeneratePrimaries().
|
inline |
Access whether there's a finite S offset and therefore we're using a CL transform.
Definition at line 109 of file BDSBunch.hh.
References useCurvilinear.
Referenced by BDSPrimaryGeneratorAction::GeneratePrimaries().
|
friend |
Make BDSPrimaryGeneratorFileHEPMC a friend so it can use the protected ApplyTransform function.
Definition at line 54 of file BDSBunch.hh.
|
friend |
Definition at line 55 of file BDSBunch.hh.
|
mutableprivate |
A reference to the fully constructed beamline that's lazily instantiated.
Definition at line 223 of file BDSBunch.hh.
Referenced by ApplyCurvilinearTransform().
|
private |
Beamline initial S position.
Definition at line 219 of file BDSBunch.hh.
Referenced by SetOptions().
|
private |
Transform that beam line starts with that will also be applied to coordinates.
Definition at line 217 of file BDSBunch.hh.
Referenced by ApplyTransform(), and SetOptions().
|
protected |
Bunch offset in time parameters.
Definition at line 192 of file BDSBunch.hh.
Referenced by ApplyBunchTiming(), and SetOptions().
|
protected |
Bunch offset in time parameters.
Definition at line 190 of file BDSBunch.hh.
Referenced by ApplyBunchTiming(), CalculateBunchIndex(), and CurrentBunchIndex().
|
protected |
Centre of distributions.
Definition at line 179 of file BDSBunch.hh.
Referenced by GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSixTrack::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), BDSBunchGaussian::PreGenerateEvents(), and SetOptions().
|
protected |
Bunch offset in time parameters.
Definition at line 191 of file BDSBunch.hh.
Referenced by CalculateBunchIndex(), and SetOptions().
|
protected |
Flags to ignore random number generator in case of no finite E or T.
Definition at line 207 of file BDSBunch.hh.
Referenced by BDSBunchGaussian::GetNextParticleLocalCoords(), SetOptions(), BDSBunchGaussian::SetOptions(), and BDSBunchSigmaMatrix::SetOptions().
|
protected |
Flags to ignore random number generator in case of no finite E or T.
Definition at line 208 of file BDSBunch.hh.
Referenced by BDSBunchGaussian::GetNextParticleLocalCoords(), SetOptions(), BDSBunchGaussian::SetOptions(), and BDSBunchSigmaMatrix::SetOptions().
|
protected |
Flag of whether to apply beam rotation.
Definition at line 205 of file BDSBunch.hh.
Referenced by GetNextParticle(), and SetOptions().
|
protected |
Whether we're only generating the primaries only and therefore there's no beamline to get a transform from and we shouldn't try.
Definition at line 213 of file BDSBunch.hh.
Referenced by ApplyCurvilinearTransform(), and SetGeneratePrimariesOnly().
|
private |
Cache of mass squared as required to convert from p to E.
Definition at line 220 of file BDSBunch.hh.
|
protected |
Name of distribution.
Definition at line 168 of file BDSBunch.hh.
Referenced by Name(), BDSBunchComposite::SetOptions(), and BDSBunchCompositeSDE::SetOptions().
|
protected |
|
protected |
Particle definition for bunch - this class owns it.
Definition at line 199 of file BDSBunch.hh.
Referenced by BeamParticleIsAnIon(), BDSBunchUserFile< T >::GetNextParticleLocal(), GetNextParticleValid(), ParticleDefinition(), SetOptions(), BDSBunchSixTrackLink::UpdateGeant4ParticleDefinition(), and UpdateIonDefinition().
|
protected |
Whether the particle definition has been updated since last call to GetNextParticle() or GetNextParticleValid().
Definition at line 203 of file BDSBunch.hh.
Referenced by GetNextParticle(), BDSBunchComposite::GetNextParticleLocal(), BDSBunchCompositeSDE::GetNextParticleLocal(), BDSBunchSixTrackLink::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), GetNextParticleValid(), and ParticleDefinitionHasBeenUpdated().
|
protected |
Centre of distributions.
Definition at line 174 of file BDSBunch.hh.
Referenced by ApplyCurvilinearTransform(), GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), and SetOptions().
|
protected |
Centre of distributions.
Definition at line 184 of file BDSBunch.hh.
Referenced by CheckParameters(), BDSBunchEShell::GetNextParticleLocal(), SetOptions(), BDSBunchGaussian::SetOptions(), BDSBunchSigmaMatrix::SetOptions(), and BDSBunchTwiss::SetOptions().
|
protected |
|
protected |
Centre of distributions.
Definition at line 183 of file BDSBunch.hh.
Referenced by SetOptions(), and BDSBunchTwiss::SetOptions().
|
protected |
Centre of distributions.
Definition at line 182 of file BDSBunch.hh.
Referenced by CheckParameters(), SetOptions(), BDSBunchGaussian::SetOptions(), BDSBunchSigmaMatrix::SetOptions(), and BDSBunchTwiss::SetOptions().
|
protected |
Centre of distributions.
Definition at line 175 of file BDSBunch.hh.
Referenced by BDSBunchEventGenerator::AcceptParticle(), GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSixTrack::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), BDSBunchGaussian::PreGenerateEvents(), SetOptions(), and BDSBunchGaussian::SetOptions().
|
protected |
Centre of distributions.
Definition at line 181 of file BDSBunch.hh.
Referenced by ApplyTilt(), and SetOptions().
|
protected |
Bunch offset in time parameters.
Definition at line 189 of file BDSBunch.hh.
Referenced by ApplyTransform(), CalculateBunchIndex(), and SetOptions().
|
protected |
Whether to ignore z and use s and transform for curvilinear coordinates.
Definition at line 196 of file BDSBunch.hh.
Referenced by ApplyTransform(), BDSBunchUserFile< T >::ParseFileFormat(), SetOptions(), and UseCurvilinearTransform().
|
protected |
Centre of distributions.
Definition at line 171 of file BDSBunch.hh.
Referenced by BDSBunchEventGenerator::AcceptParticle(), GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::PreGenerateEvents(), SetOptions(), and BDSBunchGaussian::SetOptions().
|
protected |
Centre of distributions.
Definition at line 176 of file BDSBunch.hh.
Referenced by BDSBunchEventGenerator::AcceptParticle(), GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::PreGenerateEvents(), BDSBunchEventGenerator::ReferenceBeamMomentumOffset(), SetOptions(), BDSBunchGaussian::SetOptions(), and BDSBunchEventGenerator::SetOptions().
|
protected |
Centre of distributions.
Definition at line 172 of file BDSBunch.hh.
Referenced by BDSBunchEventGenerator::AcceptParticle(), GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::PreGenerateEvents(), SetOptions(), and BDSBunchGaussian::SetOptions().
|
protected |
Centre of distributions.
Definition at line 177 of file BDSBunch.hh.
Referenced by BDSBunchEventGenerator::AcceptParticle(), GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::PreGenerateEvents(), BDSBunchEventGenerator::ReferenceBeamMomentumOffset(), SetOptions(), BDSBunchGaussian::SetOptions(), and BDSBunchEventGenerator::SetOptions().
|
protected |
Centre of distributions.
Definition at line 173 of file BDSBunch.hh.
Referenced by GetNextParticleLocal(), BDSBunchBox::GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSphere::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchUserFile< T >::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), BDSBunchGaussian::PreGenerateEvents(), and SetOptions().
|
protected |
Centre of distributions.
Definition at line 178 of file BDSBunch.hh.
Referenced by GetNextParticleLocal(), BDSBunchCircle::GetNextParticleLocal(), BDSBunchEShell::GetNextParticleLocal(), BDSBunchHalo::GetNextParticleLocal(), BDSBunchHaloFlatSigma::GetNextParticleLocal(), BDSBunchPtc::GetNextParticleLocal(), BDSBunchRing::GetNextParticleLocal(), BDSBunchSixTrack::GetNextParticleLocal(), BDSBunchSquare::GetNextParticleLocal(), BDSBunchGaussian::GetNextParticleLocalCoords(), BDSBunchGaussian::PreGenerateEvents(), and SetOptions().