Print

Print


Author: [log in to unmask]
Date: Tue Feb 24 08:15:31 2015
New Revision: 2181

Log:
cleaning up

Modified:
    java/trunk/tracking/src/main/java/org/hps/recon/tracking/gbl/HpsGblRefitter.java

Modified: java/trunk/tracking/src/main/java/org/hps/recon/tracking/gbl/HpsGblRefitter.java
 =============================================================================
--- java/trunk/tracking/src/main/java/org/hps/recon/tracking/gbl/HpsGblRefitter.java	(original)
+++ java/trunk/tracking/src/main/java/org/hps/recon/tracking/gbl/HpsGblRefitter.java	Tue Feb 24 08:15:31 2015
@@ -18,6 +18,7 @@
 import org.hps.recon.tracking.gbl.matrix.Matrix;
 import org.hps.recon.tracking.gbl.matrix.SymMatrix;
 import org.hps.recon.tracking.gbl.matrix.Vector;
+import org.lcsim.constants.Constants;
 import org.lcsim.event.EventHeader;
 import org.lcsim.event.GenericObject;
 import org.lcsim.event.LCRelation;
@@ -92,26 +93,19 @@
     protected void process(EventHeader event)
     {
         Hep3Vector bfieldvec = event.getDetector().getFieldMap().getField(new BasicHep3Vector(0., 0., 1.));
+        
         double bfield = bfieldvec.y();
-        double bfac = 0.0002998 * bfield;
+        //double bfac = 0.0002998 * bfield;
+        double bfac = Constants.fieldConversion * bfield;
+        
         // get the tracks
-//        List<Track> tracks = null;
-        if (event.hasCollection(Track.class, trackCollectionName)) {
-//            tracks = event.get(Track.class, trackCollectionName);
-            if (_debug) {
-//                System.out.printf("%s: Event %d has %d tracks\n", this.getClass().getSimpleName(), event.getEventNumber(), tracks.size());
-            }
-        } else {
+        if (!event.hasCollection(Track.class, trackCollectionName)) {
             if (_debug) {
                 System.out.printf("%s: No tracks in Event %d \n", this.getClass().getSimpleName(), event.getEventNumber());
             }
             return;
         }
-//        System.out.println("Tracks from event " + event.getRunNumber());
-//        for (Track t : tracks) {
-//            System.out.println(t);
-//            System.out.println(t.getTrackStates().get(0));
-//        }
+
         //get the relations to the GBLtracks
         if (!event.hasItem(track2GblTrackRelationName)) {
             System.out.println("Need Relations " + track2GblTrackRelationName);
@@ -123,6 +117,7 @@
             return;
         }
 
+        
         List<LCRelation> track2GblTrackRelations = event.get(LCRelation.class, track2GblTrackRelationName);
         //need a map of GBLTrackData keyed on the Generic object from which it created
         Map<GenericObject, GBLTrackData> gblObjMap = new HashMap<GenericObject, GBLTrackData>();
@@ -156,22 +151,12 @@
                 stripsGblMap.get(gblT).add(sd);
             }
         }
-
+        
+                // loop over the tracks and do the GBL fit
         List<FittedGblTrajectory> trackFits = new ArrayList<FittedGblTrajectory>();
         int trackNum = 0;
+        logger.info("Trying to fit " + stripsGblMap.size() + " tracks");
         for (GBLTrackData t : stripsGblMap.keySet()) {
-            
-            if(Math.cos(t.getDoubleVal(GBLDOUBLE.PERTHETA))>0) {
-                //if(_debug) 
-                        logger.info(" top track");
-                        continue;
-                        
-            } else {
-                logger.info(" bot track");
-                
-            }
-            
-            
             FittedGblTrajectory traj = fit(stripsGblMap.get(t), bfac);
             ++trackNum;
             if(traj!=null) {
@@ -185,7 +170,15 @@
                 if(_debug) System.out.printf("%s: GBL fit failed.\n",getClass().getSimpleName());                
             }
         }
-        if(_debug) System.out.printf("%s: Save %d/%d GBL fitted tracks in this event.\n",getClass().getSimpleName(),trackFits.size(), trackNum);    
+        
+        logger.info(event.get(Track.class, trackCollectionName).size() + " tracks in collection \"" + trackCollectionName + "\"");
+        logger.info(gblObjMap.size() + " tracks in gblObjMap");
+        logger.info(gblToSeedMap.size() + " tracks in gblToSeedMap");
+        logger.info(stripsGblMap.size() + " tracks in stripsGblMap");
+        logger.info(trackFits.size() + " fitted GBL tracks before adding to event");
+        
+
+
         
         _makeTracks.Process(event, trackFits, bfield);
 
@@ -428,42 +421,9 @@
              for(int i=0; i < milleParameters.size(); ++i) {
                  logders += labGlobal.get(i) + "\t" + addDer.get(0, i) + "\n";
              }
-             logger.info("\n"+ logders);
-             
+             logger.fine("\n"+ logders);
             
-            /*
-            ##### 
-            ## Calculate global derivatives for this point
-            # track direction in tracking/global frame
-            tDirGlobal = np.array( [ [cosPhi * cosLambda, sinPhi * cosLambda, sinLambda] ] )        
-            # Cross-check that the input is consistent
-            if( np.linalg.norm( tDirGlobal - strip.tDir) > 0.00001):
-            print 'ERROR: tDirs are not consistent!'
-            sys.exit(1)
-            # rotate track direction to measurement frame          
-            tDirMeas = np.dot( tDirGlobal, np.array([strip.u, strip.v, strip.w]) )
-            #tDirMeas = utils.rotateGlToMeas(strip,tDirGlobal)
-            normalMeas = np.dot( strip.w , np.array([strip.u, strip.v, strip.w]) ) 
-            #normalMeas = utils.rotateGlToMeas(strip,strip.w) 
-            # non-measured directions 
-            vmeas = 0.
-            wmeas = 0.
-            # calculate and add derivatives to point
-            glDers = utils.globalDers(strip.layer,strip.meas,vmeas,wmeas,tDirMeas,normalMeas)
-            ders = glDers.getDers(track.isTop())
-            labGlobal = ders['labels']
-            addDer = ders['ders']
-            if debug:
-            print 'global derivatives:'
-            print labGlobal
-            print addDer
-            point.addGlobals(labGlobal, addDer)
-            ##### 
-
-            */
-            
-            
-            logger.info("uRes " + strip.getId() + " uRes " + uRes + " pred (" + strip.getTrackPos().x() + "," + strip.getTrackPos().y() + "," + strip.getTrackPos().z() + ") s(3D) " + strip.getPath3D());
+             logger.fine("uRes " + strip.getId() + " uRes " + uRes + " pred (" + strip.getTrackPos().x() + "," + strip.getTrackPos().y() + "," + strip.getTrackPos().z() + ") s(3D) " + strip.getPath3D());
             
             //go to next point
             s += step;
@@ -500,7 +460,7 @@
             aCovariance.print(6, 4);
         }
 
-        logger.info("locPar " + aCorrection.toString());
+        logger.fine("locPar " + aCorrection.toString());
         
 //	// write to MP binary file
         if (writeMilleBinary) {