181 if (particleName ==
"gamma") {
188 }
else if (particleName ==
"e-") {
195 }
else if (particleName ==
"e+") {
204 }
else if( particleName ==
"mu+" ||
205 particleName ==
"mu-" ) {
213 }
else if( particleName ==
"GenericIon" ) {
378 theElasticProcess->
RegisterMe(theElasticModel);
386 if (particleName ==
"pi+") {
391 theInelasticProcess->
RegisterMe(theTheoModel);
393 }
else if (particleName ==
"pi-") {
398 theInelasticProcess->
RegisterMe(theTheoModel);
400 }
else if (particleName ==
"kaon+") {
405 theInelasticProcess->
RegisterMe(theTheoModel);
408 else if (particleName ==
"kaon0S") {
413 theInelasticProcess->
RegisterMe(theTheoModel);
416 else if (particleName ==
"kaon0L") {
421 theInelasticProcess->
RegisterMe(theTheoModel);
424 else if (particleName ==
"kaon-") {
429 theInelasticProcess->
RegisterMe(theTheoModel);
432 else if (particleName ==
"proton") {
437 theInelasticProcess->
RegisterMe(theTheoModel);
440 else if (particleName ==
"anti_proton") {
444 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
447 }
else if (particleName ==
"neutron") {
455 theInelasticProcess->
RegisterMe(theTheoModel);
461 theFissionProcess->
RegisterMe(theFissionModel);
467 theCaptureProcess->
RegisterMe(theCaptureModel);
470 }
else if (particleName ==
"anti_neutron") {
474 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
477 }
else if (particleName ==
"lambda") {
482 theInelasticProcess->
RegisterMe(theTheoModel);
485 else if (particleName ==
"anti_lambda") {
489 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
492 else if (particleName ==
"sigma+") {
497 theInelasticProcess->
RegisterMe(theTheoModel);
500 else if (particleName ==
"sigma-") {
505 theInelasticProcess->
RegisterMe(theTheoModel);
508 else if (particleName ==
"anti_sigma+") {
512 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
515 else if (particleName ==
"anti_sigma-") {
519 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
522 else if (particleName ==
"xi0") {
527 theInelasticProcess->
RegisterMe(theTheoModel);
530 else if (particleName ==
"xi-") {
535 theInelasticProcess->
RegisterMe(theTheoModel);
538 else if (particleName ==
"anti_xi0") {
542 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
545 else if (particleName ==
"anti_xi-") {
549 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
552 else if (particleName ==
"deuteron") {
556 theInelasticProcess->
RegisterMe(binaryCascade);
563 else if (particleName ==
"triton") {
567 theInelasticProcess->
RegisterMe(binaryCascade);
574 else if (particleName ==
"alpha") {
578 theInelasticProcess->
RegisterMe(binaryCascade);
585 }
else if (particleName ==
"omega-") {
590 theInelasticProcess->
RegisterMe(theTheoModel);
593 }
else if (particleName ==
"anti_omega-") {
597 theInelasticProcess->
RegisterMe(antiBHighEnergyModel);
632 G4cout <<
"B03PhysicsList::SetCuts:";
646 for (
G4int i = 0; i < npw; i++){
656 pmanager->
AddProcess(theParallelWorldScoringProcess);
676 G4cout <<
" Preparing Importance Sampling with GhostWorld "
683 static G4bool first =
true;
692 #ifdef G4MULTITHREADED
695 G4cout <<
" Running in singlethreaded mode!!! " <<
G4endl;
void SetWorld(const G4VPhysicalVolume *world)
void ConstructAllBosons()
virtual G4bool IsApplicable(const G4ParticleDefinition &)
void SetFragmentationModel(G4VStringFragmentation *aModel)
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
Definition of the B03PhysicsList class.
void SetMinEForMultiFrag(G4double anE)
void SetParallel(G4bool paraflag)
static void ConstructParticle()
static void ConstructParticle()
static void ConstructParticle()
G4ProcessManager * GetProcessManager() const
virtual const G4VPhysicalVolume * GetParallelWorldVolumePointer() const
const G4String & GetParticleName() const
void SetHighEnergyGenerator(G4VHighEnergyGenerator *const value)
static void ConstructParticle()
void RegisterMe(G4HadronicInteraction *a)
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
virtual void ConstructGeneral()
G4GLOB_DLL std::ostream G4cout
static void ConstructParticle()
virtual void ConstructProcess()
virtual void ConstructLeptHad()
virtual void AddProcess()
void SetFermiModel(G4VFermiBreakUp *ptr)
void SetVerboseLevel(G4int value)
G4int AddProcess(G4VProcess *aProcess, G4int ordAtRestDoIt=ordInActive, G4int ordAlongSteptDoIt=ordInActive, G4int ordPostStepDoIt=ordInActive)
void SetParallelWorld(G4String parallelWorldName)
void SetMultiFragmentation(G4VMultiFragmentation *ptr)
void SetProcessOrdering(G4VProcess *aProcess, G4ProcessVectorDoItIndex idDoIt, G4int ordDoIt=ordDefault)
void ConstructAllLeptons()
static void ConstructParticle()
virtual void ConstructHad()
void ConstructAllShortLiveds()
G4bool IsShortLived() const
void ConstructAllBaryons()
void SetCutsWithDefault()
static G4IStore * GetInstance()
virtual void ConstructEM()
void SetProcessOrderingToLast(G4VProcess *aProcess, G4ProcessVectorDoItIndex idDoIt)
void ConstructAllMesons()
void SetMaxAandZForFermiBreakUp(G4int anA, G4int aZ)
virtual void ConstructParticle()
void SetEvaporation(G4VEvaporation *ptr)
void SetMaxEnergy(const G4double anEnergy)
void SetDeExcitation(G4VPreCompoundModel *ptr)
void SetTransport(G4VIntraNuclearTransportModel *const value)
G4GeometrySampler * fGeomSampler
G4double GetPDGCharge() const
#define theParticleIterator
virtual void PrepareImportanceSampling(G4VIStore *istore, const G4VImportanceAlgorithm *ialg)
std::vector< G4String > fParaWorldName
virtual ~B03PhysicsList()