lcsim/src/org/lcsim/recon/pfa/identifier
diff -u -r1.4 -r1.5
--- LocalHelixExtrapolator.java 20 Jun 2008 18:59:02 -0000 1.4
+++ LocalHelixExtrapolator.java 8 Jul 2008 16:49:35 -0000 1.5
@@ -380,6 +380,8 @@
private Hep3Vector extendToBarrelLayer(int layer, Vector<Double> barrel_layering_r, double barrel_zmin, double barrel_zmax )
{
+ if (!m_barrelValid && !m_endcapValid) { return null; }
+
double dphi = (m_track_phi0 - m_track_phi1);
while (dphi < -Math.PI) { dphi += 2.0*Math.PI; }
while (dphi > Math.PI) { dphi -= 2.0*Math.PI; }
@@ -451,6 +453,8 @@
private Hep3Vector extendToEndcapLayer(int layer, Vector<Double> endcap_layering_z, double endcap_rmin, double endcap_rmax )
{
+ if (!m_barrelValid && !m_endcapValid) { return null; }
+
double dphi = (m_track_phi0 - m_track_phi1);
while (dphi < -Math.PI) { dphi += 2.0*Math.PI; }
while (dphi > Math.PI) { dphi -= 2.0*Math.PI; }
@@ -480,9 +484,9 @@
/** Assumes extrapolation has already been done. */
public Hep3Vector extendToECALLayer(int layer) {
if (m_barrelValid) {
- return extendToBarrelLayer(layer, m_ECAL_barrel_layering_r, m_ECAL_barrel_zmin, m_ECAL_barrel_zmax);
+ return extendToECALBarrelLayer(layer);
} else if (m_endcapValid) {
- return extendToEndcapLayer(layer, m_ECAL_endcap_layering_z, m_ECAL_endcap_rmin, m_ECAL_endcap_rmax);
+ return extendToECALEndcapLayer(layer);
} else {
// No solution
return null;
@@ -492,12 +496,29 @@
/** Assumes extrapolation has already been done. */
public Hep3Vector extendToHCALLayer(int layer) {
if (m_barrelValid) {
- return extendToBarrelLayer(layer, m_HCAL_barrel_layering_r, m_HCAL_barrel_zmin, m_HCAL_barrel_zmax);
+ return extendToHCALBarrelLayer(layer);
} else if (m_endcapValid) {
- return extendToEndcapLayer(layer, m_HCAL_endcap_layering_z, m_HCAL_endcap_rmin, m_HCAL_endcap_rmax);
+ return extendToHCALEndcapLayer(layer);
} else {
// No solution
return null;
}
}
+
+ /** Assumes extrapolation has already been done. */
+ public Hep3Vector extendToECALBarrelLayer(int layer) {
+ return extendToBarrelLayer(layer, m_ECAL_barrel_layering_r, m_ECAL_barrel_zmin, m_ECAL_barrel_zmax);
+ }
+ /** Assumes extrapolation has already been done. */
+ public Hep3Vector extendToECALEndcapLayer(int layer) {
+ return extendToEndcapLayer(layer, m_ECAL_endcap_layering_z, m_ECAL_endcap_rmin, m_ECAL_endcap_rmax);
+ }
+ /** Assumes extrapolation has already been done. */
+ public Hep3Vector extendToHCALBarrelLayer(int layer) {
+ return extendToBarrelLayer(layer, m_HCAL_barrel_layering_r, m_HCAL_barrel_zmin, m_HCAL_barrel_zmax);
+ }
+ /** Assumes extrapolation has already been done. */
+ public Hep3Vector extendToHCALEndcapLayer(int layer) {
+ return extendToEndcapLayer(layer, m_HCAL_endcap_layering_z, m_HCAL_endcap_rmin, m_HCAL_endcap_rmax);
+ }
}