Author: [log in to unmask] Date: Wed May 6 06:41:23 2015 New Revision: 2918 Log: modified for spring 2015 running from test run for use in no pile up studies Modified: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/EcalEdepToTriggerConverterDriver.java Modified: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/EcalEdepToTriggerConverterDriver.java ============================================================================= --- java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/EcalEdepToTriggerConverterDriver.java (original) +++ java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/EcalEdepToTriggerConverterDriver.java Wed May 6 06:41:23 2015 @@ -15,9 +15,18 @@ /** - * - * @version $Id: HPSEcalRawConverterDriver.java,v 1.2 2012/05/03 00:17:54 - * phansson Exp $ + * This file can be used on Monte Carlo and excludes pile up. This makes + * it useful to study sampling fractions and energy resolution when firing single + * energy particles at the detector. This file takes the geant4 energy deposition, + * and converts it to uits of FADC using the pulse integral value and gain (amplitude). + * The amplitude can include noise if desired. This value is then compared to the + * readout/trigger thresholds in FADC. Finally,this value is converted back into GeV + * energy output which can be used for clustering, etc. + * + * Original author for test run: + * @author phansson + * Modified from test run to Spring 2015 running: + * @author Holly Szumila <[log in to unmask]> */ public class EcalEdepToTriggerConverterDriver extends Driver { @@ -30,16 +39,16 @@ private String readoutCollection = "EcalCalHits"; private String triggerCollection = "EcalTriggerHits"; private boolean applyBadCrystalMap = true; - private double tp = 14.0; + private double tp = 6.95; //14.0 for test run; private final double readoutPeriod = 4.0; - private final int readoutThreshold = 50; - private final int triggerThreshold = 80; + private final int readoutThreshold = 12;//FADC units; 50 for test run; + private final int triggerThreshold = 12;//FADC units; 80; private int truncateScale = 128; - private final double pulseIntegral = tp * Math.E / readoutPeriod; + private final double pulseIntegral = tp * Math.E * Math.E /(2*readoutPeriod);//tp * Math.E / readoutPeriod (test run); private final double gainScale = 1.0; //gain miscalibration factor private double _gain = -1.0; //constant gain, activated if >0 private boolean addNoise = false; - private final double pePerMeV = 2.0; //photoelectrons per MeV, used to calculate noise + private final double pePerMeV = 32.8; //photoelectrons per MeV, used to calculate noise public EcalEdepToTriggerConverterDriver() { }