Commit in lcsim-contrib/src/main/java/org/lcsim/contrib/HansWenzel/DualCorrection on MAIN
DetectorConfiguration.java+71.1 -> 1.2
DualCorrection.java+15-851.5 -> 1.6
+22-85
2 modified files


lcsim-contrib/src/main/java/org/lcsim/contrib/HansWenzel/DualCorrection
DetectorConfiguration.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- DetectorConfiguration.java	15 Dec 2009 20:19:03 -0000	1.1
+++ DetectorConfiguration.java	15 Dec 2009 22:33:19 -0000	1.2
@@ -3,6 +3,13 @@
 /**
  *
  * @author wenzel
+ *
+ * This class is used to describe a specifc detector configuration as it is used to study
+ * properties of dual read out calorimetry.
+ * Calibration constants like energy scale for the ionization and cerenkov response as well
+ * as dual readout correction functions are associated with a unique detector configuration
+ * nd have to be obtained for different materials and physics lists.
+ * All correction function can be accessed via the DRFunctionFactory class.
  */
 public class DetectorConfiguration {
 

lcsim-contrib/src/main/java/org/lcsim/contrib/HansWenzel/DualCorrection
DualCorrection.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- DualCorrection.java	14 Dec 2009 21:53:15 -0000	1.5
+++ DualCorrection.java	15 Dec 2009 22:33:19 -0000	1.6
@@ -90,8 +90,20 @@
         dpsFactory = aida.analysisFactory().createDataPointSetFactory(aida.tree());
         functionFactory = aida.analysisFactory().createFunctionFactory(aida.tree());
         gauss = functionFactory.createFunctionByName("gauss", "G");
-        E_cor = Electron_digisCorrection();
-        C_cor = Cerenkov_digisCorrection();
+        DRFunctionFactory mapoff = DRFunctionFactory.getInstance();
+        DetectorConfiguration dc = new DetectorConfiguration("ccal02", "BGO", 7.13, 1.65, "Digis", 0.02, 0.02, "LCPhys");
+        if (mapoff.checkdc(dc)) {
+            E_cor = mapoff.getccFunction(dc);
+            C_cor = mapoff.getecFunction(dc);
+        } else {
+            System.exit(0);
+        }
+        DetectorConfiguration dc2 = new DetectorConfiguration("ccal02", "BGO", 7.13, 1.65, "Digis", 0.03, 0.03, "LCPhys");
+        if (mapoff.checkdc(dc)) {
+            System.out.println("Configuration dc2 does not exist");
+        } else {
+            System.out.println("Configuration dc2 does not exist");
+        }
         aida.profile1D("ratio", 20, 0.4, 1.);
         dlength = aida.histogramFactory().createCloud1D("dlength", "decay length combined ", 500000, "autoConvert = false");
         prof_combined = aida.histogramFactory().createProfile1D("ratio", "ratio combined", 20, 0.4, 1.);
@@ -130,8 +142,7 @@
                 Hep3Vector diff = VecOp.sub(end_point, start_point);
                 double decaylength = diff.magnitude();
                 dlength.fill(decaylength);
-                if (decaylength>500.)
-                {
+                if (decaylength > 500.) {
                     return;
                 }
 
@@ -389,85 +400,4 @@
         DecimalFormat twoDForm = new DecimalFormat("#.##");
         return Double.valueOf(twoDForm.format(d));
     }
-
-    IFunction Electron_Correction() {
-        IFunction ECor = functionFactory.createFunctionByName("ECor", "p1");
-        ECor.setParameter("p0", -1.9834e-3);
-        ECor.setParameter("p1", 1.0019);
-        return ECor;
-    }
-
-    IFunction Electron_digisCorrection() {
-        IFunction ECor = functionFactory.createFunctionByName("ECor", "p1");
-        ECor.setParameter("p0", 7.6521e-3);
-        ECor.setParameter("p1", 1.0046);
-        return ECor;
-    }
-
-    IFunction Electron_digisCorrection_PBWO() {
-        IFunction ECor = functionFactory.createFunctionByName("ECor", "p1");
-        ECor.setParameter("p0", 5.4245e-3);
-        ECor.setParameter("p1", 1.0042);
-        return ECor;
-    }
-
-    IFunction Electron_digisCorrection_ccal02_d15() {
-        IFunction ECor = functionFactory.createFunctionByName("ECor", "p1");
-        ECor.setParameter("p0", 0.0011773036183174157);
-        ECor.setParameter("p1", 1.0033318414417314);
-        return ECor;
-    }
-
-    IFunction Electron_digis_QGSP_BERT_Correction() {
-        IFunction ECor = functionFactory.createFunctionByName("ECor", "p1");
-        ECor.setParameter("p0", 7.6521e-3);
-        ECor.setParameter("p1", 1.0046);
-        return ECor;
-    }
-
-    IFunction Cerenkov_Correction() {
-        IFunction ECor = functionFactory.createFunctionByName("ECerenCor", "p1");
-        ECor.setParameter("p0", 7.9705);
-        ECor.setParameter("p1", 8858.5);
-        return ECor;
-    }
-
-    IFunction Cerenkov_digisCorrection() {
-        IFunction ECor = functionFactory.createFunctionByName("ECerenCor", "p1");
-        ECor.setParameter("p0", 8.5701e-3);
-        ECor.setParameter("p1", 7677.7);
-        return ECor;
-    }
-
-    IFunction Cerenkov_digisCorrection_ccal02_d15() {
-        IFunction ECor = functionFactory.createFunctionByName("ECerenCor", "p1");
-        ECor.setParameter("p0", 6.3057e-3);
-        ECor.setParameter("p1", 16584.);
-        return ECor;
-    }
-
-    IFunction Cerenkov_digis_QGSP_BERT_Correction() {
-        IFunction ECor = functionFactory.createFunctionByName("ECerenCor", "p1");
-        ECor.setParameter("p0", 8.5701e-3);
-        ECor.setParameter("p1", 7677.7);
-        return ECor;
-    }
-
-    IFunction Dual_Correction() {
-        IFunction ECor = functionFactory.createFunctionByName("DualCor", "p3");
-        ECor.setParameter("p0", 1.0900819852754733);
-        ECor.setParameter("p1", -1.72608413712137);
-        ECor.setParameter("p2", 2.602954159670887);
-        ECor.setParameter("p3", -1.0873650332172629);
-        return ECor;
-    }
-
-    IFunction Dual_Correction_new() {
-        IFunction ECor = functionFactory.createFunctionByName("DualCor_new", "p3");
-        ECor.setParameter("p0", 0.65191);
-        ECor.setParameter("p1", 0.37036);
-        ECor.setParameter("p2", -0.69285);
-        ECor.setParameter("p3", 0.62872);
-        return ECor;
-    }
 }
CVSspam 0.2.8