Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
272 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
#include "FTFPCMS_BERT_HP_EMM.h" | ||
#include "SimG4Core/PhysicsLists/interface/CMSEmStandardPhysicsLPM.h" | ||
#include "SimG4Core/PhysicsLists/interface/CMSThermalNeutrons.h" | ||
#include "FWCore/MessageLogger/interface/MessageLogger.h" | ||
|
||
#include "G4DecayPhysics.hh" | ||
#include "G4EmExtraPhysics.hh" | ||
#include "G4IonPhysics.hh" | ||
#include "G4StoppingPhysics.hh" | ||
#include "G4HadronElasticPhysicsHP.hh" | ||
#include "G4HadronElasticPhysics.hh" | ||
#include "G4NeutronTrackingCut.hh" | ||
#include "G4HadronicProcessStore.hh" | ||
|
||
#include "G4DataQuestionaire.hh" | ||
#include "G4HadronPhysicsFTFP_BERT_HP.hh" | ||
|
||
FTFPCMS_BERT_HP_EMM::FTFPCMS_BERT_HP_EMM(const edm::ParameterSet & p) | ||
: PhysicsList(p) { | ||
|
||
G4DataQuestionaire it(photon); | ||
|
||
int ver = p.getUntrackedParameter<int>("Verbosity",0); | ||
bool emPhys = p.getUntrackedParameter<bool>("EMPhysics",true); | ||
bool hadPhys = p.getUntrackedParameter<bool>("HadPhysics",true); | ||
bool tracking= p.getParameter<bool>("TrackingCut"); | ||
bool thermal = p.getUntrackedParameter<bool>("ThermalNeutrons"); | ||
double timeLimit = p.getParameter<double>("MaxTrackTime")*CLHEP::ns; | ||
edm::LogInfo("PhysicsList") << "You are using the simulation engine: " | ||
<< "FTFP_BERT_HP_EMM \n Flags for EM Physics " | ||
<< emPhys << ", for Hadronic Physics " | ||
<< hadPhys << " and tracking cut " << tracking | ||
<< " t(ns)= " << timeLimit/CLHEP::ns | ||
<< " ThermalNeutrons: " << thermal; | ||
|
||
if (emPhys) { | ||
// EM Physics | ||
RegisterPhysics( new CMSEmStandardPhysicsLPM(ver)); | ||
|
||
// Synchroton Radiation & GN Physics | ||
G4EmExtraPhysics* gn = new G4EmExtraPhysics(ver); | ||
RegisterPhysics(gn); | ||
} | ||
|
||
// Decays | ||
this->RegisterPhysics( new G4DecayPhysics(ver) ); | ||
|
||
if (hadPhys) { | ||
G4HadronicProcessStore::Instance()->SetVerbose(ver); | ||
|
||
// Hadron Elastic scattering | ||
RegisterPhysics( new G4HadronElasticPhysicsHP(ver)); | ||
|
||
// Hadron Physics | ||
RegisterPhysics( new G4HadronPhysicsFTFP_BERT_HP(ver)); | ||
|
||
// Stopping Physics | ||
RegisterPhysics( new G4StoppingPhysics(ver)); | ||
|
||
// Ion Physics | ||
RegisterPhysics( new G4IonPhysics(ver)); | ||
|
||
// Neutron tracking cut | ||
if (tracking) { | ||
G4NeutronTrackingCut* ncut= new G4NeutronTrackingCut(ver); | ||
ncut->SetTimeLimit(timeLimit); | ||
RegisterPhysics(ncut); | ||
} | ||
if(thermal) { | ||
RegisterPhysics(new CMSThermalNeutrons(ver)); | ||
} | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#ifndef SimG4Core_PhysicsLists_FTFPCMS_BERT_HP_EMM_H | ||
#define SimG4Core_PhysicsLists_FTFPCMS_BERT_HP_EMM_H | ||
|
||
#include "SimG4Core/Physics/interface/PhysicsList.h" | ||
#include "FWCore/ParameterSet/interface/ParameterSet.h" | ||
|
||
class FTFPCMS_BERT_HP_EMM: public PhysicsList { | ||
|
||
public: | ||
FTFPCMS_BERT_HP_EMM(const edm::ParameterSet & p); | ||
}; | ||
|
||
#endif | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
#include "FTFPCMS_INCLXX_EMM.h" | ||
#include "SimG4Core/PhysicsLists/interface/CMSEmStandardPhysicsLPM.h" | ||
#include "FWCore/MessageLogger/interface/MessageLogger.h" | ||
|
||
#include "G4DecayPhysics.hh" | ||
#include "G4EmExtraPhysics.hh" | ||
#include "G4IonINCLXXPhysics.hh" | ||
#include "G4StoppingPhysics.hh" | ||
#include "G4HadronElasticPhysics.hh" | ||
#include "G4NeutronTrackingCut.hh" | ||
#include "G4HadronicProcessStore.hh" | ||
|
||
#include "G4DataQuestionaire.hh" | ||
#include "G4HadronPhysicsINCLXX.hh" | ||
|
||
FTFPCMS_INCLXX_EMM::FTFPCMS_INCLXX_EMM(const edm::ParameterSet & p) | ||
: PhysicsList(p) { | ||
|
||
G4DataQuestionaire it(photon); | ||
|
||
int ver = p.getUntrackedParameter<int>("Verbosity",0); | ||
bool emPhys = p.getUntrackedParameter<bool>("EMPhysics",true); | ||
bool hadPhys = p.getUntrackedParameter<bool>("HadPhysics",true); | ||
bool tracking= p.getParameter<bool>("TrackingCut"); | ||
double timeLimit = p.getParameter<double>("MaxTrackTime")*CLHEP::ns; | ||
edm::LogInfo("PhysicsList") << "You are using the simulation engine: " | ||
<< "FTFP_INCLXX_EMM \n Flags for EM Physics " | ||
<< emPhys << ", for Hadronic Physics " | ||
<< hadPhys << " and tracking cut " << tracking | ||
<< " t(ns)= " << timeLimit/CLHEP::ns; | ||
|
||
if (emPhys) { | ||
// EM Physics | ||
RegisterPhysics( new CMSEmStandardPhysicsLPM(ver)); | ||
|
||
// Synchroton Radiation & GN Physics | ||
G4EmExtraPhysics* gn = new G4EmExtraPhysics(ver); | ||
RegisterPhysics(gn); | ||
} | ||
|
||
// Decays | ||
this->RegisterPhysics( new G4DecayPhysics(ver) ); | ||
|
||
if (hadPhys) { | ||
G4HadronicProcessStore::Instance()->SetVerbose(ver); | ||
|
||
// Hadron Elastic scattering | ||
RegisterPhysics( new G4HadronElasticPhysics(ver)); | ||
|
||
// Hadron Physics | ||
RegisterPhysics( new G4HadronPhysicsINCLXX(ver,true,false,true)); | ||
|
||
// Stopping Physics | ||
RegisterPhysics( new G4StoppingPhysics(ver)); | ||
|
||
// Ion Physics | ||
RegisterPhysics( new G4IonINCLXXPhysics(ver)); | ||
|
||
// Neutron tracking cut | ||
if (tracking) { | ||
G4NeutronTrackingCut* ncut= new G4NeutronTrackingCut(ver); | ||
ncut->SetTimeLimit(timeLimit); | ||
RegisterPhysics(ncut); | ||
} | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#ifndef SimG4Core_PhysicsLists_FTFPCMS_INCLXX_EMM_H | ||
#define SimG4Core_PhysicsLists_FTFPCMS_INCLXX_EMM_H | ||
|
||
#include "SimG4Core/Physics/interface/PhysicsList.h" | ||
#include "FWCore/ParameterSet/interface/ParameterSet.h" | ||
|
||
class FTFPCMS_INCLXX_EMM: public PhysicsList { | ||
|
||
public: | ||
FTFPCMS_INCLXX_EMM(const edm::ParameterSet & p); | ||
}; | ||
|
||
#endif | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
#include "FTFPCMS_INCLXX_HP_EMM.h" | ||
#include "SimG4Core/PhysicsLists/interface/CMSEmStandardPhysicsLPM.h" | ||
#include "SimG4Core/PhysicsLists/interface/CMSThermalNeutrons.h" | ||
#include "FWCore/MessageLogger/interface/MessageLogger.h" | ||
|
||
#include "G4DecayPhysics.hh" | ||
#include "G4EmExtraPhysics.hh" | ||
#include "G4IonINCLXXPhysics.hh" | ||
#include "G4StoppingPhysics.hh" | ||
#include "G4HadronElasticPhysicsHP.hh" | ||
#include "G4HadronElasticPhysics.hh" | ||
#include "G4NeutronTrackingCut.hh" | ||
#include "G4HadronicProcessStore.hh" | ||
|
||
#include "G4DataQuestionaire.hh" | ||
#include "G4HadronPhysicsINCLXX.hh" | ||
|
||
FTFPCMS_INCLXX_HP_EMM::FTFPCMS_INCLXX_HP_EMM(const edm::ParameterSet & p) | ||
: PhysicsList(p) { | ||
|
||
G4DataQuestionaire it(photon); | ||
|
||
int ver = p.getUntrackedParameter<int>("Verbosity",0); | ||
bool emPhys = p.getUntrackedParameter<bool>("EMPhysics",true); | ||
bool hadPhys = p.getUntrackedParameter<bool>("HadPhysics",true); | ||
bool tracking= p.getParameter<bool>("TrackingCut"); | ||
bool thermal = p.getUntrackedParameter<bool>("ThermalNeutrons"); | ||
double timeLimit = p.getParameter<double>("MaxTrackTime")*CLHEP::ns; | ||
edm::LogInfo("PhysicsList") << "You are using the simulation engine: " | ||
<< "FTFP_INCLXX_HP_EMM \n Flags for EM Physics " | ||
<< emPhys << ", for Hadronic Physics " | ||
<< hadPhys << " and tracking cut " << tracking | ||
<< " t(ns)= " << timeLimit/CLHEP::ns | ||
<< " ThermalNeutrons: " << thermal; | ||
|
||
if (emPhys) { | ||
// EM Physics | ||
RegisterPhysics( new CMSEmStandardPhysicsLPM(ver)); | ||
|
||
// Synchroton Radiation & GN Physics | ||
G4EmExtraPhysics* gn = new G4EmExtraPhysics(ver); | ||
RegisterPhysics(gn); | ||
} | ||
|
||
// Decays | ||
this->RegisterPhysics( new G4DecayPhysics(ver) ); | ||
|
||
if (hadPhys) { | ||
G4HadronicProcessStore::Instance()->SetVerbose(ver); | ||
|
||
// Hadron Elastic scattering | ||
RegisterPhysics( new G4HadronElasticPhysicsHP(ver)); | ||
|
||
// Hadron Physics | ||
RegisterPhysics( new G4HadronPhysicsINCLXX(ver,true,true,true)); | ||
|
||
// Stopping Physics | ||
RegisterPhysics( new G4StoppingPhysics(ver)); | ||
|
||
// Ion Physics | ||
RegisterPhysics( new G4IonINCLXXPhysics(ver)); | ||
|
||
// Neutron tracking cut | ||
if (tracking) { | ||
G4NeutronTrackingCut* ncut= new G4NeutronTrackingCut(ver); | ||
ncut->SetTimeLimit(timeLimit); | ||
RegisterPhysics(ncut); | ||
} | ||
if(thermal) { | ||
RegisterPhysics(new CMSThermalNeutrons(ver)); | ||
} | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#ifndef SimG4Core_PhysicsLists_FTFPCMS_INCLXX_HP_EMM_H | ||
#define SimG4Core_PhysicsLists_FTFPCMS_INCLXX_HP_EMM_H | ||
|
||
#include "SimG4Core/Physics/interface/PhysicsList.h" | ||
#include "FWCore/ParameterSet/interface/ParameterSet.h" | ||
|
||
class FTFPCMS_INCLXX_HP_EMM: public PhysicsList { | ||
|
||
public: | ||
FTFPCMS_INCLXX_HP_EMM(const edm::ParameterSet & p); | ||
}; | ||
|
||
#endif | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters