3 modified files
lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
diff -u -r1.1 -r1.2
--- StrategyBasedFilter.java 17 Jul 2008 00:52:39 -0000 1.1
+++ StrategyBasedFilter.java 17 Jul 2008 17:55:27 -0000 1.2
@@ -6,8 +6,8 @@
package org.lcsim.contrib.seedtracker.strategybuilder;
import org.lcsim.contrib.seedtracker.SeedStrategy;
-import org.lcsim.contrib.seedtracker.diagnostic.FakeHelixFit;
import org.lcsim.event.MCParticle;
+import org.lcsim.fit.helicaltrack.HelixParamCalculator;
/**
*A filter based on the cutoff values in a SeedStrategy.
@@ -18,7 +18,7 @@
double pt;
double dca;
double z0;
- double b = 5;
+ double b = 5.0;
public StrategyBasedFilter(SeedStrategy strategy){
pt = strategy.getMinPT();
dca = strategy.getMaxDCA();
@@ -30,11 +30,11 @@
b = b_field;
}
public boolean passes(MCParticle p) {
- FakeHelixFit fake = new FakeHelixFit(p, b);
+ HelixParamCalculator calc = new HelixParamCalculator(p, b);
return (
- Math.abs(fake.dca()) < dca &&
- Math.abs(fake.z0()) < z0 &&
- Math.sqrt(p.getPX()*p.getPX() + p.getPY()*p.getPY()) > pt
+ Math.abs(calc.getDCA()) < dca &&
+ Math.abs(calc.getZ0()) < z0 &&
+ calc.getMCTransverseMomentum() > pt
);
}
lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
diff -u -r1.2 -r1.3
--- RunStrategyBuilder.java 17 Jul 2008 00:52:39 -0000 1.2
+++ RunStrategyBuilder.java 17 Jul 2008 17:55:27 -0000 1.3
@@ -115,6 +115,12 @@
}
}
+ File file = new File(filename);
+ if (!file.exists()) {
+ System.out.println("Cannot find data file "+file.toString()+". Exiting. ");
+ System.exit(7);
+ }
+
if(verbose){
System.out.println("Starting... Reading Geometry");
@@ -122,7 +128,6 @@
try {
- File file = new File(filename);
LCSimLoop loop = new LCSimLoop();
loop.setLCIORecordSource(file);
loop.add( builder );
lcsim/src/org/lcsim/contrib/seedtracker/strategybuilder
diff -u -r1.2 -r1.3
--- StrategyBuilder.java 17 Jul 2008 00:52:39 -0000 1.2
+++ StrategyBuilder.java 17 Jul 2008 17:55:27 -0000 1.3
@@ -5,6 +5,8 @@
package org.lcsim.contrib.seedtracker.strategybuilder;
+import hep.physics.vec.BasicHep3Vector;
+import hep.physics.vec.Hep3Vector;
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
@@ -58,22 +60,16 @@
private List<Set<DumbLayer>> setlist = new ArrayList<Set<DumbLayer>>();
private String detectorName;
private IParticleFilter filter;
+ private Hep3Vector ip = new BasicHep3Vector(0.,0.,0.);
- @Override
- protected void startOfData(){
- //Use default filter if none is specified
- if (filter==null){
- filter = new StrategyBasedFilter(prototype);
- }
-
- }
@Override
protected void process(EventHeader event){
super.process(event);
+
if (verbose) System.out.println("Processing event "+event.getEventNumber());
//Build MC Map from SimTrackerHits
@@ -299,6 +295,14 @@
@Override
protected void detectorChanged(Detector detector){
detectorName = detector.getDetectorName();
+
+ //if no filter defined, use StrategyBasedFilter
+ if (filter==null){
+ filter = new StrategyBasedFilter(prototype);
+ double b = detector.getFieldMap().getField(ip).z();
+ ((StrategyBasedFilter) filter).setBField(b);
+ }
+
}
CVSspam 0.2.8