Commit in lcsim/src/org/lcsim/contrib/uiowa on MAIN
ShowerPointFinder.java+12-91.9 -> 1.10
add boundary condition

lcsim/src/org/lcsim/contrib/uiowa
ShowerPointFinder.java 1.9 -> 1.10
diff -u -r1.9 -r1.10
--- ShowerPointFinder.java	6 Sep 2008 23:48:43 -0000	1.9
+++ ShowerPointFinder.java	22 Oct 2008 01:14:58 -0000	1.10
@@ -112,16 +112,19 @@
 		    Hep3Vector curpos = new BasicHep3Vector(curx,cury,curz);
 		    double curlayer = curid.getLayer();
 		    String cursubdetName = curhit.getSubdetector().getName();
-		    //use geometric information and layer number to find cur hit
-		    boolean EcalToHcal= lastlayer == 30 && curp > p && curid.getLayer() == 0;
-		    boolean InSide = (curp > p || curlayer > lastlayer) && nearIDs.contains(curhit.getCellID());
-		    boolean EndToBarrelEcal = (curid.getLayer()==0 && cursubdetName == "EMBarrel") && lastsubdetName=="EMEndcap";
-                    boolean EndToBarrelHcal = (curid.getLayer()==0 && cursubdetName == "HADBarrel") && lastsubdetName=="HADEndcap";
-		    if(debug){
-			if(EndToBarrelEcal || EndToBarrelHcal) System.out.println("This is a boundary condition");
-		    }				
+                    //use geometric information and layer number to find cur hit
+                    // Inside Sub detector -> 0)
+                    // ECal Barrel -> 1) HCal Barrel or 2) HCal Endcap
+                    // ECal Endcap -> 3) HCal Endcap or 4) Ecal Barrel
+                    // HCal Endcap -> 5) HCal Barrel
+		    boolean InSide = (curlayer > lastlayer) && cursubdetName.contains(lastsubdetName) && nearIDs.contains(curhit.getCellID()); // 0)
+                    boolean EcalToHcalBarrel= (curid.getLayer()==0 && cursubdetName.contains("HADBarrel")) && lastsubdetName.contains("EMBarrel"); // 1) ECal Barrel -> HCal Barrel
+                    boolean BarrelEcalToEndHcal = (curid.getLayer()==0 && cursubdetName.contains("HADEndcap")) && lastsubdetName.contains("EMBarrel"); //2) ECal Barrel -> HCal Endcap (There is no way to HCal Barrel directly from ECal Endcap
+                    boolean EcalToHcalEndcap= (curid.getLayer()==0 && cursubdetName.contains("HADEndcap")) && lastsubdetName.contains("EMEndcap"); // 3) ECal Endcap -> HCal Endcap
+		    boolean EndToBarrelEcal = (curid.getLayer()==0 && cursubdetName.contains("EMBarrel")) && lastsubdetName.contains("EMEndcap"); // 4) ECal Endcap -> ECal Barrel 
+                    boolean EndToBarrelHcal = (curid.getLayer()==0 && cursubdetName.contains("HADBarrel")) && lastsubdetName.contains("HADEndcap"); // 5) HCal Endcap -> HCal Barrel
 
-		    if(EcalToHcal || InSide || EndToBarrelEcal || EndToBarrelHcal ){
+		    if(InSide || EcalToHcalBarrel || BarrelEcalToEndHcal || EcalToHcalEndcap || EndToBarrelEcal || EndToBarrelHcal){
 			Hep3Vector cur = VecOp.sub(curpos, last0);
 			Hep3Vector curUnit = VecOp.unit(cur);
 			Hep3Vector last = null;
CVSspam 0.2.8