Precalibrated Ion Beam Identification Detector Simulation 1.0
A pilot study detector simulation, written in C++ with Geant4.
MyPhysicsList.icc
Go to the documentation of this file.
00001 
00002 #include "globals.hh"
00003 #include "G4ParticleDefinition.hh"
00004 #include "G4ParticleWithCuts.hh"
00005 #include "G4ProcessManager.hh"
00006 #include "G4ProcessVector.hh"
00007 #include "G4ParticleTypes.hh"
00008 #include "G4ParticleTable.hh"
00009 
00010 #include "G4Material.hh"
00011 #include "G4MaterialTable.hh"
00012 #include "G4ios.hh"
00013 #include <iomanip>   
00014 
00015 #include "G4DecayPhysics.hh"
00016 #include "G4EmStandardPhysics.hh"
00017 #include "G4EmExtraPhysics.hh"
00018 #include "G4IonPhysics.hh"
00019 #include "G4RadioactiveDecayPhysics.hh"
00020 #include "G4QStoppingPhysics.hh"
00021 #include "G4HadronElasticPhysics.hh"
00022 #include "G4NeutronTrackingCut.hh"
00023 #include "G4EmStandardFysik.hh"
00024 
00025 #include "G4DataQuestionaire.hh"
00026 #include "HadronPhysicsQGSP_BERT.hh"
00027 
00028 template<class T> MyPhysicsList<T>::MyPhysicsList(G4int ver):  T()
00029 {
00030 
00031   G4DataQuestionaire it(photon);
00032   G4cout << "APAAPAAPA"<<G4endl;
00033   G4cout <<G4endl;
00034 
00035   this->defaultCutValue = 0.7*mm;  
00036   this->SetVerboseLevel(ver);
00037 
00038   // EM Physics
00039   this->RegisterPhysics( new G4EmStandardPhysics(ver));
00040 
00041   // Synchroton Radiation & GN Physics
00042   this->RegisterPhysics( new G4EmExtraPhysics("extra EM"));
00043 
00044   // Decays
00045   this->RegisterPhysics( new G4DecayPhysics("decay",ver) );
00046 
00047    // Hadron Elastic scattering
00048   this-> RegisterPhysics( new G4HadronElasticPhysics("elastic",ver,false));
00049 
00050   // Hadron Physics
00051    G4bool quasiElastic;
00052   this->RegisterPhysics( new HadronPhysicsQGSP_BERT("hadron",quasiElastic=true));
00053 
00054   // Stopping Physics
00055   this->RegisterPhysics( new G4QStoppingPhysics("stopping"));
00056 
00057   // Ion Physics
00058   this->RegisterPhysics( new G4IonPhysics("ion"));
00059   
00060   // Neutron tracking cut
00061   this->RegisterPhysics( new G4NeutronTrackingCut("Neutron tracking cut", ver));
00062 
00063   // Radioactive decay physics
00064   this->RegisterPhysics(new G4RadioactiveDecayPhysics(5));
00065 
00066 }
00067 
00068 template<class T> MyPhysicsList<T>::~MyPhysicsList()
00069 {
00070 }
00071 
00072 template<class T> void MyPhysicsList<T>::SetCuts()
00073 {
00074   if (this->verboseLevel >1){
00075     G4cout << "QGSP_BERT::SetCuts:";
00076   }  
00077   //  " G4VUserPhysicsList::SetCutsWithDefault" method sets 
00078   //   the default cut value for all particle types 
00079 
00080   this->SetCutsWithDefault();   
00081   
00082 //  if (this->verboseLevel >0)
00083 //    G4VUserPhysicsList::DumpCutValuesTable();  
00084 }
00085 
00086 
00087 
00088 // 2002 by J.P. Wellisch
 All Classes Files Functions Variables Defines

Back to the main page of the Precalibrated Ion Beam Identification Detector project

Created by Rikard Lundmark