69 if(
nullptr == theInstance) {
72 if(
nullptr == theInstance) {
75 theInstance = &manager;
96G4EmParameters::G4EmParameters()
106 emSaturation =
nullptr;
118void G4EmParameters::Initialise()
120 lossFluctuation =
true;
121 buildCSDARange =
false;
124 cutAsFinalRange =
false;
126 lateralDisplacement =
true;
127 lateralDisplacementAlg96 =
true;
128 muhadLateralDisplacement =
false;
129 useAngGeneratorForIonisation =
false;
130 useMottCorrection =
false;
136 fSamplingTable =
false;
137 fPolarisation =
false;
138 fMuDataFromFile =
false;
142 minKinEnergy = 0.1*CLHEP::keV;
143 maxKinEnergy = 100.0*CLHEP::TeV;
144 maxKinEnergyCSDA = 1.0*CLHEP::GeV;
145 max5DEnergyForMuPair = 0.0;
146 lowestElectronEnergy = 1.0*CLHEP::keV;
147 lowestMuHadEnergy = 1.0*CLHEP::keV;
148 lowestTripletEnergy = 1.0*CLHEP::MeV;
151 bremsTh = bremsMuHadTh = maxKinEnergy;
153 factorForAngleLimit = 1.0;
154 thetaLimit = CLHEP::pi;
155 energyLimit = 100.0*CLHEP::MeV;
157 rangeFactorMuHad = 0.2;
161 lambdaLimit = 1.0*CLHEP::mm;
178 if(IsLocked()) {
return; }
179 lossFluctuation = val;
184 return lossFluctuation;
189 if(IsLocked()) {
return; }
190 buildCSDARange = val;
195 return buildCSDARange;
200 if(IsLocked()) {
return; }
211 if(IsLocked()) {
return; }
222 if(IsLocked()) {
return; }
223 cutAsFinalRange = val;
228 return cutAsFinalRange;
233 if(IsLocked()) {
return; }
244 if(IsLocked()) {
return; }
250 return fCParameters->
Fluo();
255 if(IsLocked()) {
return; }
266 if(IsLocked()) {
return; }
272 return fCParameters->
Auger();
277 if(IsLocked()) {
return; }
283 return fCParameters->
Auger();
288 if(IsLocked()) {
return; }
294 return fCParameters->
Pixe();
299 if(IsLocked()) {
return; }
310 if(IsLocked()) {
return; }
311 lateralDisplacement = val;
316 return lateralDisplacement;
321 if(IsLocked()) {
return; }
322 lateralDisplacementAlg96 = val;
327 return lateralDisplacementAlg96;
332 if(IsLocked()) {
return; }
333 muhadLateralDisplacement = val;
338 return muhadLateralDisplacement;
343 if(IsLocked()) {
return; }
344 useAngGeneratorForIonisation = val;
349 return useAngGeneratorForIonisation;
354 if(IsLocked()) {
return; }
355 useMottCorrection = val;
360 return useMottCorrection;
365 if(IsLocked()) {
return; }
376 if(IsLocked()) {
return; }
382 return fPolarisation;
388#ifdef G4MULTITHREADED
395#ifdef G4MULTITHREADED
407 if(IsLocked()) {
return; }
418 if(IsLocked()) {
return; }
425 return fCParameters->
DNAFast();
430 if(IsLocked()) {
return; }
442 if(IsLocked()) {
return; }
454 if(IsLocked()) {
return; }
468 if(emSaturation != ptr) {
477 return fMuDataFromFile;
487 if(IsLocked()) {
return; }
498 if(IsLocked()) {
return; }
499 fSamplingTable = val;
504 return fSamplingTable;
509 if(IsLocked()) {
return; }
521 if(IsLocked()) {
return; }
522 if(val > 0.0 && val < 1.0) {
526 ed <<
"Value of MinSubRange is out of range (0 - 1): " << val
539 if(IsLocked()) {
return; }
540 if(val > 1.e-3*eV && val < maxKinEnergy) {
542 nbins = nbinsPerDecade*
G4lrint(std::log10(maxKinEnergy/minKinEnergy));
545 ed <<
"Value of MinKinEnergy - is out of range: " << val/MeV
546 <<
" MeV is ignored";
558 if(IsLocked()) {
return; }
559 if(val > std::max(minKinEnergy,9.99*MeV) && val < 1.e+7*TeV) {
561 nbins = nbinsPerDecade*
G4lrint(std::log10(maxKinEnergy/minKinEnergy));
564 ed <<
"Value of MaxKinEnergy is out of range: "
565 << val/GeV <<
" GeV is ignored; allowed range 10 MeV - 1.e+7 TeV";
577 if(IsLocked()) {
return; }
578 if(val > minKinEnergy && val <= 100*TeV) {
579 maxKinEnergyCSDA = val;
582 ed <<
"Value of MaxKinEnergyCSDA is out of range: "
583 << val/GeV <<
" GeV is ignored; allowed range "
584 << minKinEnergy <<
" MeV - 100 TeV";
591 return maxKinEnergyCSDA;
596 if(IsLocked()) {
return; }
597 if(val >= 0.0) { lowestElectronEnergy = val; }
602 return lowestElectronEnergy;
607 if(IsLocked()) {
return; }
608 if(val >= 0.0) { lowestMuHadEnergy = val; }
613 return lowestMuHadEnergy;
618 if(IsLocked()) {
return; }
619 if(val > 0.0) { lowestTripletEnergy = val; }
624 return lowestTripletEnergy;
629 if(IsLocked()) {
return; }
630 if(val >= 0.0) { maxNIELEnergy = val; }
635 return maxNIELEnergy;
640 if(IsLocked()) {
return; }
641 if(val > 0.0) { max5DEnergyForMuPair = val; }
646 return max5DEnergyForMuPair;
651 if(IsLocked()) {
return; }
652 if(val > 0.0 && val < 0.5) {
656 ed <<
"Value of linLossLimit is out of range: " << val
669 if(IsLocked()) {
return; }
674 ed <<
"Value of bremsstrahlung threshold is out of range: "
675 << val/GeV <<
" GeV is ignored";
687 if(IsLocked()) {
return; }
692 ed <<
"Value of bremsstrahlung threshold is out of range: "
693 << val/GeV <<
" GeV is ignored";
705 if(IsLocked()) {
return; }
706 if(val > 0.0 && val < 1.0) {
710 ed <<
"Value of lambda factor is out of range: " << val
723 if(IsLocked()) {
return; }
725 factorForAngleLimit = val;
728 ed <<
"Value of factor for enegry limit is out of range: "
729 << val <<
" is ignored";
736 return factorForAngleLimit;
741 if(IsLocked()) {
return; }
742 if(val >= 0.0 && val <= pi) {
746 ed <<
"Value of polar angle limit is out of range: "
747 << val <<
" is ignored";
759 if(IsLocked()) {
return; }
764 ed <<
"Value of msc energy limit is out of range: "
765 << val <<
" is ignored";
777 if(IsLocked()) {
return; }
778 if(val > 0.0 && val < 1.0) {
782 ed <<
"Value of rangeFactor is out of range: "
783 << val <<
" is ignored";
795 if(IsLocked()) {
return; }
796 if(val > 0.0 && val < 1.0) {
797 rangeFactorMuHad = val;
800 ed <<
"Value of rangeFactorMuHad is out of range: "
801 << val <<
" is ignored";
808 return rangeFactorMuHad;
813 if(IsLocked()) {
return; }
818 ed <<
"Value of geomFactor is out of range: "
819 << val <<
" is ignored";
831 if(IsLocked()) {
return; }
836 ed <<
"Value of safetyFactor is out of range: "
837 << val <<
" is ignored";
849 if(IsLocked()) {
return; }
854 ed <<
"Value of lambdaLimit is out of range: "
855 << val <<
" is ignored";
867 if(IsLocked()) {
return; }
872 ed <<
"Value of skin is out of range: "
873 << val <<
" is ignored";
885 if(IsLocked()) {
return; }
890 ed <<
"Value of factorScreen is out of range: "
891 << val <<
" is ignored";
903 if(IsLocked()) {
return; }
909 if(IsLocked()) {
return; }
915 if(IsLocked()) {
return; }
921 if(IsLocked()) {
return; }
932 if(IsLocked()) {
return; }
933 if(val >= 5 && val < 10000000) {
935 nbinsPerDecade =
G4lrint(nbins/std::log10(maxKinEnergy/minKinEnergy));
938 ed <<
"Value of number of bins is out of range: "
939 << val <<
" is ignored";
951 if(IsLocked()) {
return; }
952 if(val >= 5 && val < 1000000) {
953 nbinsPerDecade = val;
954 nbins = nbinsPerDecade*
G4lrint(std::log10(maxKinEnergy/minKinEnergy));
957 ed <<
"Value of number of bins per decade is out of range: "
958 << val <<
" is ignored";
965 return nbinsPerDecade;
970 if(IsLocked()) {
return; }
972 workerVerbose = std::min(workerVerbose, verbose);
982 if(IsLocked()) {
return; }
988 return workerVerbose;
993 if(IsLocked()) {
return; }
1004 if(IsLocked()) {
return; }
1005 mscStepLimitMuHad = val;
1010 return mscStepLimitMuHad;
1015 if(IsLocked()) {
return; }
1027 if(IsLocked()) {
return; }
1028 nucFormfactor = val;
1033 return nucFormfactor;
1038 if(IsLocked()) {
return; }
1050 if(IsLocked()) {
return; }
1061 if(IsLocked()) {
return; }
1072 if(IsLocked()) {
return; }
1083 if(IsLocked()) {
return; }
1101 if(IsLocked()) {
return; }
1102 fBParameters->
AddPAIModel(particle, region, type);
1122 if(IsLocked()) {
return; }
1133 if(IsLocked()) {
return; }
1134 fCParameters->
AddDNA(region, type);
1150 if(IsLocked()) {
return; }
1166 if(IsLocked() && !gener) {
return; }
1174 if(IsLocked()) {
return; }
1182 if(IsLocked()) {
return; }
1192 if(IsLocked() && !gener) {
return; }
1202 if(IsLocked()) {
return; }
1223 if(IsLocked()) {
return; }
1233 if(IsLocked()) {
return; }
1239 if(IsLocked()) {
return; }
1250 if(IsLocked()) {
return; }
1266 G4int prec = os.precision(5);
1267 os <<
"=======================================================================" <<
"\n";
1268 os <<
"====== Electromagnetic Physics Parameters ========" <<
"\n";
1269 os <<
"=======================================================================" <<
"\n";
1270 os <<
"LPM effect enabled " <<flagLPM <<
"\n";
1271 os <<
"Spline of EM tables enabled " <<spline <<
"\n";
1272 os <<
"Enable creation and use of sampling tables " <<fSamplingTable <<
"\n";
1273 os <<
"Apply cuts on all EM processes " <<applyCuts <<
"\n";
1274 os <<
"Use integral approach for tracking " <<integral <<
"\n";
1275 os <<
"Use general process " <<gener <<
"\n";
1276 os <<
"Enable linear polarisation for gamma " <<fPolarisation <<
"\n";
1277 os <<
"Enable sampling of quantum entanglement "
1279 os <<
"X-section factor for integral approach " <<lambdaFactor <<
"\n";
1280 os <<
"Min kinetic energy for tables "
1282 os <<
"Max kinetic energy for tables "
1284 os <<
"Number of bins in tables " <<nbins <<
"\n";
1285 os <<
"Number of bins per decade of a table " <<nbinsPerDecade <<
"\n";
1286 os <<
"Verbose level " <<verbose <<
"\n";
1287 os <<
"Verbose level for worker thread " <<workerVerbose <<
"\n";
1288 os <<
"Bremsstrahlung energy threshold above which \n"
1289 <<
" primary e+- is added to the list of secondary "
1291 os <<
"Bremsstrahlung energy threshold above which primary\n"
1292 <<
" muon/hadron is added to the list of secondary "
1294 os <<
"Lowest triplet kinetic energy "
1295 <<
G4BestUnit(lowestTripletEnergy,
"Energy") <<
"\n";
1296 os <<
"Enable sampling of gamma linear polarisation " <<fPolarisation <<
"\n";
1297 os <<
"5D gamma conversion model type " <<tripletConv <<
"\n";
1298 os <<
"5D gamma conversion model on isolated ion " <<onIsolated <<
"\n";
1299 if(max5DEnergyForMuPair>0.0) {
1300 os <<
"5D gamma conversion limit for muon pair "
1301 << max5DEnergyForMuPair/CLHEP::GeV <<
" GeV\n";
1303 os <<
"Livermore data directory "
1306 os <<
"=======================================================================" <<
"\n";
1307 os <<
"====== Ionisation Parameters ========" <<
"\n";
1308 os <<
"=======================================================================" <<
"\n";
1309 os <<
"Step function for e+- "
1312 os <<
"Step function for muons/hadrons "
1315 os <<
"Step function for light ions "
1318 os <<
"Step function for general ions "
1321 os <<
"Lowest e+e- kinetic energy "
1322 <<
G4BestUnit(lowestElectronEnergy,
"Energy") <<
"\n";
1323 os <<
"Lowest muon/hadron kinetic energy "
1324 <<
G4BestUnit(lowestMuHadEnergy,
"Energy") <<
"\n";
1325 os <<
"Fluctuations of dE/dx are enabled " <<lossFluctuation <<
"\n";
1326 os <<
"Use ICRU90 data " << fICRU90 <<
"\n";
1327 os <<
"Use built-in Birks satuaration " << birks <<
"\n";
1328 os <<
"Build CSDA range enabled " <<buildCSDARange <<
"\n";
1329 os <<
"Use cut as a final range enabled " <<cutAsFinalRange <<
"\n";
1330 os <<
"Enable angular generator interface "
1331 <<useAngGeneratorForIonisation <<
"\n";
1332 os <<
"Factor of cut reduction for sub-cutoff method " << minSubRange <<
"\n";
1333 os <<
"Max kinetic energy for CSDA tables "
1334 <<
G4BestUnit(maxKinEnergyCSDA,
"Energy") <<
"\n";
1335 os <<
"Max kinetic energy for NIEL computation "
1336 <<
G4BestUnit(maxNIELEnergy,
"Energy") <<
"\n";
1337 os <<
"Linear loss limit " <<linLossLimit <<
"\n";
1338 os <<
"Read data from file for e+e- pair production by mu " <<fMuDataFromFile <<
"\n";
1340 os <<
"=======================================================================" <<
"\n";
1341 os <<
"====== Multiple Scattering Parameters ========" <<
"\n";
1342 os <<
"=======================================================================" <<
"\n";
1343 os <<
"Type of msc step limit algorithm for e+- " <<mscStepLimit <<
"\n";
1344 os <<
"Type of msc step limit algorithm for muons/hadrons " <<mscStepLimitMuHad <<
"\n";
1345 os <<
"Msc lateral displacement for e+- enabled " <<lateralDisplacement <<
"\n";
1346 os <<
"Msc lateral displacement for muons and hadrons " <<muhadLateralDisplacement <<
"\n";
1347 os <<
"Urban msc model lateral displacement alg96 " <<lateralDisplacementAlg96 <<
"\n";
1348 os <<
"Range factor for msc step limit for e+- " <<rangeFactor <<
"\n";
1349 os <<
"Range factor for msc step limit for muons/hadrons " <<rangeFactorMuHad <<
"\n";
1350 os <<
"Geometry factor for msc step limitation of e+- " <<geomFactor <<
"\n";
1351 os <<
"Safety factor for msc step limit for e+- " <<safetyFactor <<
"\n";
1352 os <<
"Skin parameter for msc step limitation of e+- " <<skin <<
"\n";
1353 os <<
"Lambda limit for msc step limit for e+- " <<lambdaLimit/CLHEP::mm <<
" mm\n";
1354 os <<
"Use Mott correction for e- scattering " << useMottCorrection <<
"\n";
1355 os <<
"Factor used for dynamic computation of angular \n"
1356 <<
" limit between single and multiple scattering " << factorForAngleLimit <<
"\n";
1357 os <<
"Fixed angular limit between single \n"
1358 <<
" and multiple scattering "
1359 << thetaLimit/CLHEP::rad <<
" rad\n";
1360 os <<
"Upper energy limit for e+- multiple scattering "
1361 << energyLimit/CLHEP::MeV <<
" MeV\n";
1362 os <<
"Type of electron single scattering model " <<fSStype <<
"\n";
1363 os <<
"Type of nuclear form-factor " <<nucFormfactor <<
"\n";
1364 os <<
"Screening factor " <<factorScreen <<
"\n";
1365 os <<
"=======================================================================" <<
"\n";
1367 if(fCParameters->
Fluo()) {
1368 os <<
"====== Atomic Deexcitation Parameters ========" <<
"\n";
1369 os <<
"=======================================================================" <<
"\n";
1370 os <<
"Fluorescence enabled " <<fCParameters->
Fluo() <<
"\n";
1371 os <<
"Fluorescence Bearden data files enabled "
1373 os <<
"Auger electron cascade enabled "
1374 <<fCParameters->
Auger() <<
"\n";
1375 os <<
"PIXE atomic de-excitation enabled " <<fCParameters->
Pixe() <<
"\n";
1376 os <<
"De-excitation module ignores cuts "
1378 os <<
"Type of PIXE cross section for hadrons "
1380 os <<
"Type of PIXE cross section for e+- "
1382 os <<
"=======================================================================" <<
"\n";
1385 os <<
"====== DNA Physics Parameters ========" <<
"\n";
1386 os <<
"=======================================================================" <<
"\n";
1387 os <<
"Use fast sampling in DNA models "
1388 << fCParameters->
DNAFast() <<
"\n";
1389 os <<
"Use Stationary option in DNA models "
1391 os <<
"Use DNA with multiple scattering of e- "
1393 os <<
"Use DNA e- solvation model type "
1395 os <<
"=======================================================================" <<
"\n";
1402#ifdef G4MULTITHREADED
1406#ifdef G4MULTITHREADED
1417G4bool G4EmParameters::IsLocked()
const
std::ostream & operator<<(std::ostream &os, const G4EmParameters &par)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
#define G4MUTEX_INITIALIZER
#define G4MUTEXLOCK(mutex)
#define G4MUTEXUNLOCK(mutex)
G4GLOB_DLL std::ostream G4cout
void SetAuger(G4bool val)
void SetDeexActiveRegion(const G4String ®ion, G4bool fdeex, G4bool fauger, G4bool fpixe)
void SetLivermoreDataDir(const G4String &)
void SetDNAFast(G4bool val)
G4bool DNAStationary() const
void SetDeexcitationIgnoreCut(G4bool val)
const std::vector< G4String > & TypesDNA() const
G4bool BeardenFluoDir() const
void SetDNAElectronMsc(G4bool val)
const G4String & LivermoreDataDir()
const std::vector< G4String > & RegionsMicroElec() const
G4bool DeexcitationIgnoreCut() const
const G4String & PIXECrossSectionModel()
void DefineRegParamForDeex(G4VAtomDeexcitation *) const
G4DNAModelSubType DNAeSolvationSubType() const
void AddDNA(const G4String ®ion, const G4String &type)
void SetDNAStationary(G4bool val)
void SetDNAeSolvationSubType(G4DNAModelSubType val)
const G4String & PIXEElectronCrossSectionModel()
void SetBeardenFluoDir(G4bool val)
void SetPIXECrossSectionModel(const G4String &)
G4bool DNAElectronMsc() const
const std::vector< G4String > & RegionsDNA() const
void SetPIXEElectronCrossSectionModel(const G4String &)
void AddMicroElec(const G4String ®ion)
void SetEmSaturation(G4EmSaturation *)
void SetBeardenFluoDir(G4bool val)
void DefineRegParamForLoss(G4VEnergyLossProcess *) const
void SetLambdaFactor(G4double val)
void SetMinEnergy(G4double val)
void SetLowestElectronEnergy(G4double val)
void SetBuildCSDARange(G4bool val)
void SetStepFunctionLightIons(G4double v1, G4double v2)
void SetEnablePolarisation(G4bool val)
void AddDNA(const G4String ®ion, const G4String &type)
G4bool LateralDisplacementAlg96() const
void FillStepFunction(const G4ParticleDefinition *, G4VEnergyLossProcess *) const
void SetNumberOfBinsPerDecade(G4int val)
static G4EmParameters * Instance()
void SetDirectionalSplittingTarget(const G4ThreeVector &v)
G4bool BeardenFluoDir() const
G4DNAModelSubType DNAeSolvationSubType() const
G4bool RetrieveMuDataFromFile() const
G4int NumberOfBins() const
G4double MscMuHadRangeFactor() const
void SetGeneralProcessActive(G4bool val)
void SetDNAFast(G4bool val)
void SetMscSafetyFactor(G4double val)
G4bool EnablePolarisation() const
void SetLateralDisplacementAlg96(G4bool val)
void SetFactorForAngleLimit(G4double val)
const G4String & PIXECrossSectionModel()
const G4String & PIXEElectronCrossSectionModel()
G4double MaxNIELEnergy() const
void SetRetrieveMuDataFromFile(G4bool v)
void SetDirectionalSplitting(G4bool v)
const G4String & LivermoreDataDir()
G4bool OnIsolated() const
void SetMscMuHadRangeFactor(G4double val)
G4bool DNAElectronMsc() const
G4double MinKinEnergy() const
G4int NumberOfBinsPerDecade() const
G4bool BuildCSDARange() const
G4double MscThetaLimit() const
G4bool LossFluctuation() const
G4double MuHadBremsstrahlungTh() const
void AddPAIModel(const G4String &particle, const G4String ®ion, const G4String &type)
void SetDNAStationary(G4bool val)
void SetDNAElectronMsc(G4bool val)
const std::vector< G4String > & TypesPhysics() const
void SetMaxEnergyFor5DMuPair(G4double val)
G4double GetDirectionalSplittingRadius()
void SetLinearLossLimit(G4double val)
void SetMscThetaLimit(G4double val)
G4int GetConversionType() const
G4MscStepLimitType MscMuHadStepLimitType() const
G4double MscEnergyLimit() const
void ActivateSecondaryBiasing(const G4String &name, const G4String ®ion, G4double factor, G4double energyLimit)
G4bool BirksActive() const
G4bool DNAStationary() const
void SetSubCutoff(G4bool val, const G4String ®ion="")
const std::vector< G4String > & RegionsPAI() const
void SetLossFluctuations(G4bool val)
void SetDeexActiveRegion(const G4String ®ion, G4bool fdeex, G4bool fauger, G4bool fpixe)
G4bool UseCutAsFinalRange() const
void SetPIXEElectronCrossSectionModel(const G4String &)
void SetLowestTripletEnergy(G4double val)
void SetMuHadLateralDisplacement(G4bool val)
G4EmSaturation * GetEmSaturation()
void SetDNAeSolvationSubType(G4DNAModelSubType val)
void SetQuantumEntanglement(G4bool v)
void DefineRegParamForEM(G4VEmProcess *) const
void ActivateForcedInteraction(const G4String &procname, const G4String ®ion, G4double length, G4bool wflag)
void ActivateAngularGeneratorForIonisation(G4bool val)
void SetScreeningFactor(G4double val)
void SetNuclearFormfactorType(G4NuclearFormfactorType val)
void SetStepFunction(G4double v1, G4double v2)
void SetLateralDisplacement(G4bool val)
G4bool QuantumEntanglement() const
void SetWorkerVerbose(G4int val)
void SetUseCutAsFinalRange(G4bool val)
void SetDeexcitationIgnoreCut(G4bool val)
void SetBirksActive(G4bool val)
G4double ScreeningFactor() const
G4bool UseMottCorrection() const
void SetMuHadBremsstrahlungTh(G4double val)
G4double MinSubRange() const
const std::vector< G4String > & ParticlesPAI() const
const std::vector< G4String > & RegionsPhysics() const
void DefineRegParamForDeex(G4VAtomDeexcitation *) const
void SetStepFunctionMuHad(G4double v1, G4double v2)
G4double MscSafetyFactor() const
void SetAugerCascade(G4bool val)
void SetVerbose(G4int val)
G4int WorkerVerbose() const
void SetMscGeomFactor(G4double val)
void SetMscLambdaLimit(G4double val)
void SetMscSkin(G4double val)
void SetApplyCuts(G4bool val)
const std::vector< G4String > & TypesDNA() const
G4MscStepLimitType MscStepLimitType() const
void SetEnableSamplingTable(G4bool val)
const std::vector< G4String > & RegionsDNA() const
void SetLivermoreDataDir(const G4String &)
G4double BremsstrahlungTh() const
void SetMaxNIELEnergy(G4double val)
void SetStepFunctionIons(G4double v1, G4double v2)
void SetMaxEnergyForCSDARange(G4double val)
G4bool AugerCascade() const
G4eSingleScatteringType SingleScatteringType() const
G4bool DeexcitationIgnoreCut() const
void SetProcessBiasingFactor(const G4String &procname, G4double val, G4bool wflag)
G4double MscGeomFactor() const
void SetMscMuHadStepLimitType(G4MscStepLimitType val)
void SetMscStepLimitType(G4MscStepLimitType val)
void AddPhysics(const G4String ®ion, const G4String &type)
void SetMscEnergyLimit(G4double val)
void SetBremsstrahlungTh(G4double val)
void SetAuger(G4bool val)
G4bool GetDirectionalSplitting() const
G4double MaxKinEnergy() const
G4bool UseICRU90Data() const
void SetDirectionalSplittingRadius(G4double r)
void SetConversionType(G4int val)
G4bool LateralDisplacement() const
void SetUseICRU90Data(G4bool val)
G4bool MuHadLateralDisplacement() const
void SetOnIsolated(G4bool val)
G4bool EnableSamplingTable() const
void StreamInfo(std::ostream &os) const
G4double MscLambdaLimit() const
void SetPIXECrossSectionModel(const G4String &)
void SetIntegral(G4bool val)
G4ThreeVector GetDirectionalSplittingTarget() const
void SetUseMottCorrection(G4bool val)
void AddMicroElec(const G4String ®ion)
const std::vector< G4String > & RegionsMicroElec() const
G4double MaxEnergyFor5DMuPair() const
G4double MaxEnergyForCSDARange() const
void SetLowestMuHadEnergy(G4double val)
const std::vector< G4String > & TypesPAI() const
G4bool UseAngularGeneratorForIonisation() const
void SetMaxEnergy(G4double val)
G4double LinearLossLimit() const
void SetNumberOfBins(G4int val)
G4NuclearFormfactorType NuclearFormfactorType() const
G4double LowestMuHadEnergy() const
G4double MscRangeFactor() const
G4double LambdaFactor() const
G4double FactorForAngleLimit() const
void SetSpline(G4bool val)
void SetMinSubRange(G4double val)
void SetSingleScatteringType(G4eSingleScatteringType val)
G4double LowestTripletEnergy() const
G4double LowestElectronEnergy() const
void SetMscRangeFactor(G4double val)
G4bool GeneralProcessActive() const
void InitialiseG4Saturation()
static G4NistManager * Instance()
const G4ApplicationState & GetCurrentState() const
static G4StateManager * GetStateManager()