Author: [log in to unmask]
Date: Thu Oct 22 16:15:03 2015
New Revision: 3882
Log:
Added ability to disable SVT test for pair process analysis so that it can be used for Monte Carlo.
Modified:
java/trunk/users/src/main/java/org/hps/users/kmccarty/TriggerProcessAnalysisDriver.java
Modified: java/trunk/users/src/main/java/org/hps/users/kmccarty/TriggerProcessAnalysisDriver.java
=============================================================================
--- java/trunk/users/src/main/java/org/hps/users/kmccarty/TriggerProcessAnalysisDriver.java (original)
+++ java/trunk/users/src/main/java/org/hps/users/kmccarty/TriggerProcessAnalysisDriver.java Thu Oct 22 16:15:03 2015
@@ -21,6 +21,7 @@
import org.lcsim.util.aida.AIDA;
public class TriggerProcessAnalysisDriver extends Driver {
+ private boolean checkSVT = false;
private int eventsProcessed = 0;
private int møllersProcessed = 0;
private int tridentsProcessed = 0;
@@ -110,16 +111,19 @@
@Override
public void process(EventHeader event) {
// Check whether the SVT was active in this event and, if so,
- // skip it.
- final String[] flagNames = { "svt_bias_good", "svt_burstmode_noise_good", "svt_position_good" };
- boolean svtGood = true;
- for(int i = 0; i < flagNames.length; i++) {
- int[] flag = event.getIntegerParameters().get(flagNames[i]);
- if(flag == null || flag[0] == 0) {
- svtGood = false;
- }
- }
- if(!svtGood) { return; }
+ // skip it. This can be disabled through the steering file for
+ // Monte Carlo data, where the "SVT" is always active.
+ if(checkSVT) {
+ final String[] flagNames = { "svt_bias_good", "svt_burstmode_noise_good", "svt_position_good" };
+ boolean svtGood = true;
+ for(int i = 0; i < flagNames.length; i++) {
+ int[] flag = event.getIntegerParameters().get(flagNames[i]);
+ if(flag == null || flag[0] == 0) {
+ svtGood = false;
+ }
+ }
+ if(!svtGood) { return; }
+ }
// Track the number of events with good SVT.
eventsProcessed++;
@@ -141,6 +145,9 @@
// Get cluster-track matched top/bottom pairs.
List<ReconstructedParticle[]> gblMatchedPairs = getTopBottomTracksGBL(trackList);
List<ReconstructedParticle[]> ctMatchedPairs = getTopBottomTracksCTMatched(trackList);
+
+ System.out.println("CTM Pairs :: " + ctMatchedPairs.size());
+ System.out.println("GBL Pairs :: " + gblMatchedPairs.size());
// Get the trident and Møller tracks for the matched track
// and cluster pair condition sets.
@@ -270,6 +277,10 @@
trgblPSumCoplanarity.fill(VecOp.add(pair[0].getMomentum(), pair[1].getMomentum()).magnitude(),
getCalculatedCoplanarity(new Track[] { pair[0].getTracks().get(0), pair[1].getTracks().get(0) }));
}
+ }
+
+ public void setCheckSVT(boolean state) {
+ checkSVT = state;
}
/**
|