Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

updated gen/sim dataset based on TrackingParticle and CaloParticle for 12_3_0_pre6 #66

Draft
wants to merge 19 commits into
base: master
Choose a base branch
from
18 changes: 18 additions & 0 deletions Configuration/Generator/python/MultiParticlePFGun50_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDProducer("FlatEtaRangeGunProducer",
PGunParameters = cms.PSet(
PartID = cms.vint32([11, -11, 13, -13, 15, -15, 211, -211, 22, 130, -130, 111, -111]),
MinEta = cms.double(-4.5),
MaxEta = cms.double(4.5),
MinPhi = cms.double(-3.14159265359),
MaxPhi = cms.double(3.14159265359),
MinE = cms.double(1.0),
MaxE = cms.double(1000.0),
nParticles = cms.int32(50),
exactShoot = cms.bool(False),
randomShoot = cms.bool(True),
),
AddAntiParticle = cms.bool(False),
debug=cms.untracked.bool(True),
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms
generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.),
MinPt = cms.double(1.),
ParticleID = cms.vint32(11),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(4.5),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-4.5),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single electron pt 1 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)

Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import FWCore.ParameterSet.Config as cms
generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.),
MinPt = cms.double(1.),
ParticleID = cms.vint32(22),
AddAntiParticle = cms.bool(False), # false in pythia6 version but photons are their own anti-particle
MaxEta = cms.double(4.5),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-4.5),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single gamma pt 1 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
18 changes: 18 additions & 0 deletions Configuration/Generator/python/SingleMuPlusFlatPt0p7To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(-13),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(3.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-3.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single muminus pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
18 changes: 18 additions & 0 deletions Configuration/Generator/python/SingleNeutronFlatPt0p7To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(2112),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(5.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-5.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single neutron pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
18 changes: 18 additions & 0 deletions Configuration/Generator/python/SinglePi0Pt1To1000_pythia8_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
ParticleID = cms.vint32(111),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(4.5),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-4.5),
MinPt = cms.double(1),
MinPhi = cms.double(-3.14159265359), ## in radians
MaxPt = cms.double(1000.0)
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single pi0 E 10'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
18 changes: 18 additions & 0 deletions Configuration/Generator/python/SinglePiMinusFlatPt0p7To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(-211),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(5.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-5.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single piminus pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
18 changes: 18 additions & 0 deletions Configuration/Generator/python/SinglePiPlusFlatPt0p7To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(211),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(5.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-5.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single piplus pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(-2212),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(5.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-5.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single protonminus pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import FWCore.ParameterSet.Config as cms

generator = cms.EDFilter("Pythia8PtGun",
PGunParameters = cms.PSet(
MaxPt = cms.double(1000.0),
MinPt = cms.double(0.7),
ParticleID = cms.vint32(2212),
AddAntiParticle = cms.bool(False),
MaxEta = cms.double(5.0),
MaxPhi = cms.double(3.14159265359),
MinEta = cms.double(-5.0),
MinPhi = cms.double(-3.14159265359) ## in radians
),
Verbosity = cms.untracked.int32(0), ## set to 1 (or greater) for printouts
psethack = cms.string('single protonplus pt 0.7 to 1000'),
firstRun = cms.untracked.uint32(1),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
27 changes: 27 additions & 0 deletions Configuration/Generator/python/SingleTauFlatPt1To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import FWCore.ParameterSet.Config as cms
from Configuration.Generator.Pythia8CommonSettings_cfi import *

generator = cms.EDFilter("Pythia8PtGun",
pythia8CommonSettingsBlock,
PGunParameters = cms.PSet(
ParticleID = cms.vint32(-15),
AddAntiParticle = cms.bool(False),
MinPhi = cms.double(-3.14159265359),
MaxPhi = cms.double(3.14159265359),
MinPt = cms.double(1.0),
MaxPt = cms.double(1000.000),
MinEta = cms.double(-4.5),
MaxEta = cms.double(4.5)
),
pythiaTauJets = cms.vstring(
'ParticleDecays:sophisticatedTau = 2',
'ParticleDecays:tauPolarization = 0',
"15:onMode = off",
"15:onIfAny = 211 -211 321 -321" # turn on if there is a charged k or pi in the decay products
),
parameterSets = cms.vstring(
'pythia8CommonSettings',
'pythiaTauJets'
),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
27 changes: 27 additions & 0 deletions Configuration/Generator/python/SingleTauMinusFlatPt1To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import FWCore.ParameterSet.Config as cms
from Configuration.Generator.Pythia8CommonSettings_cfi import *

generator = cms.EDFilter("Pythia8PtGun",
pythia8CommonSettingsBlock,
PGunParameters = cms.PSet(
ParticleID = cms.vint32(-15),
AddAntiParticle = cms.bool(False),
MinPhi = cms.double(-3.14159265359),
MaxPhi = cms.double(3.14159265359),
MinPt = cms.double(2.0),
MaxPt = cms.double(1000.000),
MinEta = cms.double(-5.0),
MaxEta = cms.double(5.0)
),
pythiaTauJets = cms.vstring(
'ParticleDecays:sophisticatedTau = 2',
'ParticleDecays:tauPolarization = 0',
"15:onMode = off",
"15:onIfAny = 211 -211 321 -321" # turn on if there is a charged k or pi in the decay products
),
parameterSets = cms.vstring(
'pythia8CommonSettings',
'pythiaTauJets'
),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
27 changes: 27 additions & 0 deletions Configuration/Generator/python/SingleTauPlusFlatPt1To1000_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import FWCore.ParameterSet.Config as cms
from Configuration.Generator.Pythia8CommonSettings_cfi import *

generator = cms.EDFilter("Pythia8PtGun",
pythia8CommonSettingsBlock,
PGunParameters = cms.PSet(
ParticleID = cms.vint32(15),
AddAntiParticle = cms.bool(False),
MinPhi = cms.double(-3.14159265359),
MaxPhi = cms.double(3.14159265359),
MinPt = cms.double(2.0),
MaxPt = cms.double(1000.000),
MinEta = cms.double(-5.0),
MaxEta = cms.double(5.0)
),
pythiaTauJets = cms.vstring(
'ParticleDecays:sophisticatedTau = 2',
'ParticleDecays:tauPolarization = 0',
"15:onMode = off",
"15:onIfAny = 211 -211 321 -321" # turn on if there is a charged k or pi in the decay products
),
parameterSets = cms.vstring(
'pythia8CommonSettings',
'pythiaTauJets'
),
PythiaParameters = cms.PSet(parameterSets = cms.vstring())
)
46 changes: 46 additions & 0 deletions IOMC/ParticleGuns/interface/FlatEtaRangeGunProducer.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Particle gun that can be positioned in space given ranges in rho, z and phi.
*/

#ifndef IOMC_PARTICLEGUN_FlatEtaRangeGunProducer_H
#define IOMC_PARTICLEGUN_FlatEtaRangeGunProducer_H

#include "FWCore/Framework/interface/one/EDProducer.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Framework/interface/EventSetup.h"
#include "FWCore/Framework/interface/Run.h"

#include "IOMC/ParticleGuns/interface/FlatRandomEGunProducer.h"
#include "HepMC/GenEvent.h"
#include "HepPDT/ParticleDataTable.hh"

namespace edm {

class FlatEtaRangeGunProducer : public FlatRandomEGunProducer {
public:
FlatEtaRangeGunProducer(const ParameterSet&);

private:
void produce(Event&, const EventSetup&) override;

protected:
// the number of particles to shoot
int nParticles_;

// flag that denotes that exactly the particles defined by fPartIds should be shot, with that order and quantity
bool exactShoot_;

// flag that denotes whether a random number of particles in the range [1, fNParticles] is shot
bool randomShoot_;

const std::vector<double> discreteEnergies_;

double minDr_;

// debug flag
bool debug_;
};

} // namespace edm

#endif // IOMC_PARTICLEGUN_FlatEtaRangeGunProducer_H
2 changes: 1 addition & 1 deletion IOMC/ParticleGuns/interface/FlatRandomEGunProducer.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ namespace edm {

void produce(Event& e, const EventSetup& es) override;

private:
protected:
// data members

double fMinE;
Expand Down
Loading