Author: [log in to unmask] Date: Fri Aug 7 15:03:01 2015 New Revision: 3353 Log: adding fee filter for calibrations Added: java/branches/HPSJAVA-ECALGAINCALIB/recon/src/main/java/org/hps/recon/filtering/FEEFilterDriver.java java/branches/HPSJAVA-ECALGAINCALIB/steering-files/src/main/resources/org/hps/steering/users/baltzell/EngRun2015EcalOnly_GainFile_FilterFEE.lcsim Added: java/branches/HPSJAVA-ECALGAINCALIB/recon/src/main/java/org/hps/recon/filtering/FEEFilterDriver.java ============================================================================= --- java/branches/HPSJAVA-ECALGAINCALIB/recon/src/main/java/org/hps/recon/filtering/FEEFilterDriver.java (added) +++ java/branches/HPSJAVA-ECALGAINCALIB/recon/src/main/java/org/hps/recon/filtering/FEEFilterDriver.java Fri Aug 7 15:03:01 2015 @@ -0,0 +1,23 @@ +package org.hps.recon.filtering; + +import org.lcsim.event.Cluster; +import org.lcsim.event.EventHeader; +import org.lcsim.util.Driver; + +public class FEEFilterDriver extends Driver +{ + public void process(EventHeader event) { + + if (!event.hasCollection(Cluster.class, "EcalClusters")) + throw new Driver.NextEventException(); + + for (Cluster cc : event.get(Cluster.class,"EcalClusters")) + { + if (cc.getEnergy() > 0.6) + { + return; + } + } + throw new Driver.NextEventException(); + } +} Added: java/branches/HPSJAVA-ECALGAINCALIB/steering-files/src/main/resources/org/hps/steering/users/baltzell/EngRun2015EcalOnly_GainFile_FilterFEE.lcsim ============================================================================= --- java/branches/HPSJAVA-ECALGAINCALIB/steering-files/src/main/resources/org/hps/steering/users/baltzell/EngRun2015EcalOnly_GainFile_FilterFEE.lcsim (added) +++ java/branches/HPSJAVA-ECALGAINCALIB/steering-files/src/main/resources/org/hps/steering/users/baltzell/EngRun2015EcalOnly_GainFile_FilterFEE.lcsim Fri Aug 7 15:03:01 2015 @@ -0,0 +1,122 @@ +<?xml version="1.0" encoding="UTF-8"?> +<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd"> +<!-- + Offline reconstruction for 2015 (engineering run with SVT+ECal) data. + @author Sho Uemura <[log in to unmask]> +--> + <execute> + <driver name="EventMarkerDriver"/> + <!--<driver name="RawTrackerHitSensorSetup"/>--> + <!--<driver name="RawTrackerHitFitterDriver" />--> + <!--<driver name="TrackerHitDriver"/>--> + <!--<driver name="HelicalTrackHitDriver"/>--> + <!--<driver name="TrackerReconDriver"/>--> + <driver name="EcalRunningPedestal"/> + <driver name="EcalRawConverter" /> + <driver name="ReconClusterer" /> + <driver name="FEEFilterDriver" /> + <driver name="GTPOnlineClusterer" /> + <!--<driver name="CopyCluster" />--> + <!--<driver name="ReconParticle" />--> + <!--<driver name="TrackDataDriver" />--> + <!--<driver name="GBLDriver"/>--> + <driver name="LCIOWriter"/> + <driver name="CleanupDriver"/> + </execute> + <drivers> + <driver name="FEEFilterDriver" type="org.lcsim.recon.filtering.FEEFilterDriver"> + </driver> + <driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver"> + <eventInterval>1000</eventInterval> + </driver> + <driver name="RawTrackerHitSensorSetup" type="org.lcsim.recon.tracking.digitization.sisim.config.RawTrackerHitSensorSetup"> + <readoutCollections>SVTRawTrackerHits</readoutCollections> + </driver> + <driver name="RawTrackerHitFitterDriver" type="org.hps.recon.tracking.RawTrackerHitFitterDriver"> + <fitAlgorithm>Pileup</fitAlgorithm> + <useTimestamps>false</useTimestamps> + <correctTimeOffset>true</correctTimeOffset> + <correctT0Shift>true</correctT0Shift> + <useTruthTime>false</useTruthTime> + <subtractTOF>true</subtractTOF> + <subtractTriggerTime>true</subtractTriggerTime> + <correctChanT0>true</correctChanT0> + <debug>false</debug> + </driver> + <driver name="TrackerHitDriver" type="org.hps.recon.tracking.DataTrackerHitDriver"> + <neighborDeltaT>8.0</neighborDeltaT> + </driver> + <driver name="HelicalTrackHitDriver" type="org.hps.recon.tracking.HelicalTrackHitDriver"> + <debug>false</debug> + <clusterTimeCut>12.0</clusterTimeCut> + <maxDt>16.0</maxDt> + <clusterAmplitudeCut>400.0</clusterAmplitudeCut> + </driver> + <driver name="TrackerReconDriver" type="org.hps.recon.tracking.TrackerReconDriver"> + <strategyResource>HPS-Full.xml</strategyResource> + <debug>false</debug> + <rmsTimeCut>8.0</rmsTimeCut> + </driver> + <driver name="GBLDriver" type="org.hps.recon.tracking.gbl.GBLOutputDriver"> + <debug>0</debug> + <isMC>false</isMC> + <gblFileName></gblFileName> + </driver> + <driver name="EcalRunningPedestal" type="org.hps.recon.ecal.EcalRunningPedestalDriver"> + <logLevel>CONFIG</logLevel> + <minLookbackEvents>5</minLookbackEvents> + <maxLookbackEvents>40</maxLookbackEvents> + </driver> + <driver name="EcalRawConverter" type="org.hps.recon.ecal.EcalRawConverterDriver"> + <ecalCollectionName>EcalCalHits</ecalCollectionName> + <use2014Gain>false</use2014Gain> + <useTimestamps>false</useTimestamps> + <useTruthTime>false</useTruthTime> + <useRunningPedestal>true</useRunningPedestal> + <useTimeWalkCorrection>false</useTimeWalkCorrection> + <emulateFirmware>true</emulateFirmware> + <emulateMode7>true</emulateMode7> + <leadingEdgeThreshold>12</leadingEdgeThreshold> + <nsa>100</nsa> + <nsb>20</nsb> + <nPeak>3</nPeak> + <useFit>true</useFit> + <fixShapeParameter>true</fixShapeParameter> + <gainFile>ecalGains.txt</gainFile> + </driver> + <driver name="ReconClusterer" type="org.hps.recon.ecal.cluster.ReconClusterDriver"> + <logLevel>WARNING</logLevel> + <outputClusterCollectionName>EcalClusters</outputClusterCollectionName> + <hitEnergyThreshold>0.0075</hitEnergyThreshold> + <seedEnergyThreshold>0.050</seedEnergyThreshold> + <clusterEnergyThreshold>0.100</clusterEnergyThreshold> + <minTime>0.0</minTime> + <timeWindow>25.0</timeWindow> + <useTimeCut>true</useTimeCut> + <writeRejectedHitCollection>false</writeRejectedHitCollection> + </driver> + <driver name="GTPOnlineClusterer" type="org.hps.recon.ecal.cluster.ClusterDriver"> + <logLevel>WARNING</logLevel> + <clustererName>GTPOnlineClusterer</clustererName> + <outputClusterCollectionName>EcalClustersGTP</outputClusterCollectionName> + <!-- seedMinEnergy --> + <cuts>0.100</cuts> + </driver> + <driver name="CopyCluster" type="org.hps.recon.ecal.cluster.CopyClusterCollectionDriver"> + <inputCollectionName>EcalClusters</inputCollectionName> + <outputCollectionName>EcalClustersCorr</outputCollectionName> + <storeHits>true</storeHits> + </driver> + <driver name="ReconParticle" type="org.hps.recon.particle.HpsReconParticleDriver"> + <ecalClusterCollectionName>EcalClustersCorr</ecalClusterCollectionName> + </driver> + <driver name="TrackDataDriver" type="org.hps.recon.tracking.TrackDataDriver" /> + <driver name="LCIOWriter" type="org.lcsim.util.loop.LCIODriver"> + <outputFilePath>${outputFile}.slcio</outputFilePath> + </driver> + <driver name="CleanupDriver" type="org.lcsim.recon.tracking.digitization.sisim.config.ReadoutCleanupDriver"/> + <driver name="AidaSaveDriver" type="org.lcsim.job.AidaSaveDriver"> + <outputFileName>${outputFile}.root</outputFileName> + </driver> + </drivers> +</lcsim>