Print

Print


Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/SteveMagill on MAIN
DReCalibHitDriver.java+78added 1.1


lcsim-contrib/src/main/java/org/lcsim/contrib/SteveMagill
DReCalibHitDriver.java added at 1.1
diff -N DReCalibHitDriver.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ DReCalibHitDriver.java	12 Aug 2009 18:34:11 -0000	1.1
@@ -0,0 +1,78 @@
+package org.lcsim.contrib.SteveMagill;
+
+import org.lcsim.util.*;
+import org.lcsim.recon.cluster.util.*;
+import org.lcsim.digisim.DigiSimDriver;
+import org.lcsim.digisim.SimCalorimeterHitsDriver;
+import org.lcsim.util.hitmap.HitListToHitMapDriver;
+import org.lcsim.util.hitmap.HitMapToHitListDriver;
+import org.lcsim.event.util.CreateFinalStateMCParticleList;
+import org.lcsim.event.util.JetDriver;
+import org.lcsim.recon.cluster.nn.*;
+import hep.physics.jet.*;
+
+public class DReCalibHitDriver extends Driver
+{
+       
+   public DReCalibHitDriver()
+   {
+       
+//  use DIGISIM - makes threshold and timing cuts from steering file CCAL001.steer
+       add(new CalHitMapDriver());
+       DigiSimDriver digi = new DigiSimDriver();
+       String dsteer = ("C:\\LC Data\\CCAL002M10.steer");
+       digi.setSteeringFile(dsteer);
+       add(digi);
+       add(new SimCalorimeterHitsDriver());
+
+//  check # of MC particle contribution to hits for both scintillator and cerenkov hits
+//  uses IDDecoder, so need to use subdetector collections
+       MCContribHitDriver mcconthits = new MCContribHitDriver();
+       String singsc = ("SingMCScHits");
+       String multisc = ("MultiMCScHits");
+       String singch = ("SingMCChHits");
+       String multich = ("MultiMCChHits");
+       String[] scmcollnames = {"Edep_EcalBarrDigiHits","Edep_HcalBarrDigiHits","Edep_EcalEndcapDigiHits","Edep_HcalEndcapDigiHits"};
+       String[] chmcollnames = {"Ceren_EcalBarrDigiHits","Ceren_HcalBarrDigiHits","Ceren_EcalEndcapDigiHits","Ceren_HcalEndcapDigiHits"};
+       mcconthits.setScHitNames(scmcollnames);
+       mcconthits.setChHitNames(chmcollnames);
+       mcconthits.setOutSingScHitName(singsc);
+       mcconthits.setOutMultiScHitName(multisc);
+       mcconthits.setOutSingChHitName(singch);
+       mcconthits.setOutMultiChHitName(multich);
+       add(mcconthits);
+
+//  Make a list of MCParticles to be considered - this gets final states from generator
+//  eventually replace with Perfect DR objects for each simulated detector
+       CreateFinalStateMCParticleList cfs = new CreateFinalStateMCParticleList("Gen");
+       String fname = ("MCFSParticles");
+       cfs.setCollectionName(fname);
+       add(cfs);
+
+//  check MC for qqbar M and E and make MC Particle jets if generated this way
+       MCqqbarME mcme = new MCqqbarME();
+       String mcrpname = ("MCFSRecoParticles");
+       mcme.setMCParticleName(fname);
+       mcme.setMCRecoParticleName(mcrpname);
+       add(mcme);
+
+//  get tracks from MC for now, eventually get from reconstructed track list
+//  need tracks for some algorithms
+       MCFSTrackDriver ptrack = new MCFSTrackDriver();
+       String tnames = ("PerfectTracks");
+       ptrack.setMCFSNames(fname);
+       ptrack.setTrackNames(tnames);
+       add(ptrack);
+
+//  make some histos of cal hits
+       CALHitHistDriver ccalhits = new CALHitHistDriver();
+       String[] sccollnames = {"Edep_EcalBarrDigiHits","Edep_HcalBarrDigiHits","Edep_EcalEndcapDigiHits","Edep_HcalEndcapDigiHits"};
+       String[] chcollnames = {"Ceren_EcalBarrDigiHits","Ceren_HcalBarrDigiHits","Ceren_EcalEndcapDigiHits","Ceren_HcalEndcapDigiHits"};
+//       String[] sccollnames = {"Edep_EcalBarrHits","Edep_HcalBarrHits"};
+//       String[] chcollnames = {"Ceren_EcalBarrHits","Ceren_HcalBarrHits"};
+       ccalhits.setScHitNames(sccollnames);
+       ccalhits.setChHitNames(chcollnames);
+       ccalhits.setMCRecoPName(mcrpname);
+       add(ccalhits);
+   }
+}
CVSspam 0.2.8