87 ev.
getByLabel(
"g4SimHits",
"EcalHitsEB", simHitsBarrel);
93 ev.
getByLabel(
"g4SimHits",
"EcalHitsEE", simHitsEndcap);
124 file <<
", If[st, {RGBColor[0.5,0.5,0.5]";
126 for(TrackingParticleCollection::const_iterator simTrack = simTracks->begin();
127 simTrack!= simTracks->end();
132 simHits = simTrack->trackPSimHit();
137 for(std::vector<PSimHit>::const_iterator simHit = simHits.begin();
138 simHit!= simHits.end(); simHit++)
150 file <<
", Point[{" << p1.
x() <<
"," << p1.
y() <<
",(" << p1.
z() <<
"-zs)*mz}]"
152 file <<
", Text[StyleForm[\"s\", URL->\"SimHit | Ekin="
153 << simTrack->energy() - simTrack->mass()
154 <<
" GeV | parent: source="
155 << simTrack->parentVertex()->nSourceTracks()
156 <<
" daughter=" << simTrack->parentVertex()->nDaughterTracks()
158 << p1.
x() <<
"," << p1.
y() <<
",(" << p1.
z() <<
"-zs)*mz}, {1,1}]"
175 file <<
", If[sd, {RGBColor[0.6,0.6,0.6], ";
177 file <<
", If[sd, {RGBColor[0.8,0.8,0.8], ";
179 file <<
"Line[{{"<< p00.
x()<<
","<<p00.
y()<<
",("<<p00.
z()<<
"-zs)*mz}, "
180 <<
"{"<< p01.
x()<<
","<<p01.
y()<<
",("<<p01.
z()<<
"-zs)*mz}, "
181 <<
"{"<< p11.
x()<<
","<<p11.
y()<<
",("<<p11.
z()<<
"-zs)*mz}, "
182 <<
"{"<< p10.
x()<<
","<<p10.
y()<<
",("<<p10.
z()<<
"-zs)*mz}, "
183 <<
"{"<< p00.
x()<<
","<<p00.
y()<<
",("<<p00.
z()<<
"-zs)*mz}}]}]"
186 if(simHit == simHits.begin())
189 simTrack->vertex().y(),
190 simTrack->vertex().z());
194 if(simHit+1 != simHits.end())
206 if(simHit+1 == simHits.end())
215 for(edm::PCaloHitContainer::const_iterator
216 simHit = simHitsBarrel->begin();
217 simHit!= simHitsBarrel->end(); simHit++)
218 if(simHit->geantTrackId() ==
static_cast<int>(simTrack->g4Track_begin()->trackId()) &&
219 simHit->energy() > 0.060)
225 file <<
", Line[{{" << p.x()
227 <<
",(" << p.z() <<
"-zs)*mz}"
228 <<
", {" << cell->getPosition().x() <<
","
229 << cell->getPosition().y() <<
",("
230 << cell->getPosition().z() <<
"-zs)*mz}}]" << std::endl;
238 for(edm::PCaloHitContainer::const_iterator
239 simHit = simHitsEndcap->begin();
240 simHit!= simHitsEndcap->end(); simHit++)
241 if(simHit->geantTrackId() ==
static_cast<int>(simTrack->g4Track_begin()->trackId()) &&
242 simHit->energy() > 0.060)
248 file <<
", Line[{{" << p.x()
250 <<
",(" << p.z() <<
"-zs)*mz}"
251 <<
", {" << cell->getPosition().x() <<
","
252 << cell->getPosition().y() <<
",("
253 << cell->getPosition().z() <<
"-zs)*mz}}]" << std::endl;
static std::string getInfo(const DetId &id)
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
void printHelix(const GlobalPoint &p1, const GlobalPoint &p2, const GlobalVector &n2, std::ofstream &outFile, int charge)
virtual float length() const =0
std::vector< TrackingParticle > TrackingParticleCollection
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
virtual SubDetector subDetector() const =0
Which subdetector.
virtual const CaloCellGeometry * getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
const TrackerGeometry * theTracker
const CaloGeometry * theCaloGeometry
virtual const GeomDet * idToDet(DetId) const
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
const Bounds & bounds() const
T const * product() const
virtual const GeomDetUnit * idToDetUnit(DetId) const
Return the pointer to the GeomDetUnit corresponding to a given DetId.
const BoundPlane & surface() const
The nominal surface of the GeomDet.
virtual float width() const =0