Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:56:27

0001 /** \file LaserOpticalPhysics.cc
0002  *  Custom Physics to activate optical processes for the simulation of the Laser
0003  * Alignment System
0004  *
0005  *  $Date: 2010/08/02 13:09:56 $
0006  *  $Revision: 1.11 $
0007  *  \author Maarten Thomas
0008  */
0009 
0010 #include "Alignment/LaserAlignmentSimulation/interface/LaserOpticalPhysicsList.h"
0011 #include "Alignment/LaserAlignmentSimulation/plugins/LaserOpticalPhysics.h"
0012 
0013 #include "G4HadronPhysicsQGSP_FTFP_BERT.hh"
0014 
0015 #include "SimG4Core/Physics/interface/PhysicsListFactory.h"
0016 
0017 #include "G4EmStandardPhysics_option1.hh"
0018 #include "G4DecayPhysics.hh"
0019 #include "G4EmExtraPhysics.hh"
0020 #include "G4HadronElasticPhysics.hh"
0021 #include "G4HadronicProcessStore.hh"
0022 #include "G4IonPhysics.hh"
0023 #include "G4StoppingPhysics.hh"
0024 
0025 LaserOpticalPhysics::LaserOpticalPhysics(const edm::ParameterSet &p) : PhysicsList(p) {
0026   int ver = p.getUntrackedParameter<int>("Verbosity", 0);
0027   std::cout << "You are using the simulation engine: QGSP together with "
0028                "optical physics"
0029             << std::endl;
0030 
0031   // EM Physics
0032   RegisterPhysics(new G4EmStandardPhysics_option1(ver));
0033   // Synchroton Radiation & GN Physics
0034   RegisterPhysics(new G4EmExtraPhysics(ver));
0035   // Decays
0036   RegisterPhysics(new G4DecayPhysics(ver));
0037   // Hadron Elastic scattering
0038   G4HadronicProcessStore::Instance()->SetVerbose(ver);
0039   RegisterPhysics(new G4HadronElasticPhysics(ver));
0040   // Hadron Physics
0041   RegisterPhysics(new G4HadronPhysicsQGSP_FTFP_BERT(ver));
0042   // Stopping Physics
0043   RegisterPhysics(new G4StoppingPhysics(ver));
0044   // Ion Physics
0045   RegisterPhysics(new G4IonPhysics(ver));
0046   // Optical physics
0047   RegisterPhysics(new LaserOpticalPhysicsList("optical"));
0048 }
0049 
0050 // define the custom physics list
0051 
0052 DEFINE_PHYSICSLIST(LaserOpticalPhysics);