90 if(isInitialised) {
return; }
99 if(theta == CLHEP::pi) {
115 isInitialised =
true;
126 if(name !=
"e-" && name !=
"e+" &&
127 name !=
"mu+" && name !=
"mu-" && name !=
"pi+" &&
158 emin = sqrt(p2 + mass*mass) - mass;
170 if(tetmin > 179.) { outFile <<
"ThetaMin(p)"; }
171 else { outFile << tetmin; }
172 outFile <<
" < Theta(degree) < 180";
174 if(q2Max <
DBL_MAX) { outFile <<
"; pLimit(GeV^1)= " << sqrt(q2Max)/GeV; }
183 " Coulomb scattering. Simulation of elastic scattering\n" <<
184 " events individually. May be used in combination with multiple\n" <<
185 " scattering, where Coulomb scattering is used for hard (large angle)\n" <<
186 " collisions and multiple scattering for soft collisions.";
G4bool IsApplicable(const G4ParticleDefinition &p) final
G4CoulombScattering(const G4String &name="CoulombScat")
void ProcessDescription(std::ostream &) const override
void StreamProcessInfo(std::ostream &outFile) const override
~G4CoulombScattering() override
G4double MinPrimaryEnergy(const G4ParticleDefinition *, const G4Material *) final
void InitialiseProcess(const G4ParticleDefinition *) override
static G4EmParameters * Instance()
G4double MinKinEnergy() const
G4double MscThetaLimit() const
G4double MaxKinEnergy() const
G4double FactorForAngleLimit() const
G4double GetInvA23() const
G4IonisParamMat * GetIonisation() const
const G4String & GetParticleType() const
G4double GetPDGMass() const
G4double GetPDGCharge() const
const G4String & GetParticleName() const
static G4Proton * Proton()
void SetPolarAngleLimit(G4double)
void SetHighEnergyLimit(G4double)
G4double LowEnergyLimit() const
G4double HighEnergyLimit() const
void SetLowEnergyLimit(G4double)
G4VEmModel * EmModel(size_t index=0) const
void SetBuildTableFlag(G4bool val)
void AddEmModel(G4int, G4VEmModel *, const G4Region *region=nullptr)
void SetEmModel(G4VEmModel *, G4int index=0)
void SetSecondaryParticle(const G4ParticleDefinition *p)
void SetSplineFlag(G4bool val)
void SetCrossSectionType(G4CrossSectionType val)
void ProcessDescription(std::ostream &outFile) const override
void SetStartFromNullFlag(G4bool val)
void SetVerboseLevel(G4int value)
void SetProcessSubType(G4int)