34 int referenceParticlePDGIn = 11,
35 double referenceKineticEnergyIn = 100,
36 double relativeEnergyCutIn = 0.01,
38 int referenceIonChargeIn = 1,
39 bool batchModeIn =
true);
42 int referenceParticlePDGIn = 11,
43 double referenceKineticEnergyIn = 100,
44 double relativeEnergyCutIn = 0.01,
46 int referenceIonChargeIn = 1,
47 bool batchModeIn =
true);
67 std::string GetBDSIMConfigFile() {
return bdsimConfigFile;}
68 int GetReferenceParticlePDG() {
return referenceParticlePDG;}
69 double GetReferenceParticleKineticEnergy() {
return referenceKineticEnergy;}
70 double GetRelativeEnergyCut() {
return relativeEnergyCut;}
71 int GetSeed() {
return seed;}
72 int GetReferenceIonCharge() {
return referenceIonCharge;}
73 bool GetBatchMode() {
return batchMode;}
74 double GetMinimumKineticEnergy() {
return minimumKineticEnergy;}
76 void SetNoNeutralParticles(
bool val) { noNeutralParticles = val; }
77 bool GetNoNeutralParticles()
const {
return noNeutralParticles; }
80 BDSIMLink* GetBDSIMLink() {
return linkBDSIM;}
85 void AddParticle(
double x,
double y,
double px,
double py,
86 double ct,
double deltap,
double chi,
87 double chargeRatio,
double s,
88 int trackid,
int pdgid);
90 void AddParticle(
double x,
double y,
double px,
double py,
91 double pz,
double t,
double s,
92 int trackid,
int pdgid);
93 void AddParticles(std::vector<double> &x, std::vector<double> &y,
94 std::vector<double> &px, std::vector<double> &py,
95 std::vector<double> &ct, std::vector<double> &deltap,
96 std::vector<double> &chi, std::vector<double> &chargeRatio,
97 std::vector<double> &s, std::vector<int> &trackid,
98 std::vector<int> &pdgid);
99 void AddParticles(std::vector<double> &x, std::vector<double> &y,
100 std::vector<double> &px, std::vector<double> &py,
101 std::vector<double> &pz, std::vector<double> &t,
102 std::vector<double> &s, std::vector<int> &trackid,
103 std::vector<int> &pdgid);
108 G4ParticleDefinition* GetParticleDefinition(
int pdgid);
110 double GetParticlePDGMass(
int pdgid);
112 double GetParticlePDGCharge(
int pdgid);
122 std::vector<bool>& GetParticleActiveState() {
return particleActiveState; }
128 int referenceParticlePDGIn = 11,
129 double referenceKineticEnergyIn = 100,
130 double relativeEnergyCutIn = 0.01,
132 int referenceIonChargeIn = 1,
133 bool batchModeIn =
true);
137 int referenceParticlePDGIn = 11,
138 double referenceKineticEnergyIn = 100,
139 double relativeEnergyCutIn = 0.01,
141 int referenceIonChargeIn = 1,
142 bool batchModeIn =
true);
153 std::string bdsimConfigFile;
154 int referenceParticlePDG;
155 double referenceKineticEnergy;
156 double relativeEnergyCut;
158 int referenceIonCharge;
162 bool noNeutralParticles =
true;
165 double minimumKineticEnergy;
168 G4ParticleTable *g4particle_table;
169 G4IonTable *g4ion_table;
179 std::vector<bool> particleActiveState;
Wrapper for particle definition.