Belle II Software  release-05-02-19
WireEfficiencyAlgorithm.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Henrikas Svidras, Makoto Uchida *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <TEfficiency.h>
14 #include <calibration/CalibrationAlgorithm.h>
15 #include <framework/database/DBObjPtr.h>
16 
17 #include <cdc/dbobjects/CDCGeometry.h>
18 #include <cdc/dbobjects/CDCBadWires.h>
19 
20 #include "string"
21 
22 namespace Belle2 {
27  namespace CDC {
31  class WireEfficiencyAlgorithm: public CalibrationAlgorithm {
32  public:
37 
39  void setHistFileName(const std::string& name) {m_outputFileName = "histWireEff_" + name + ".root";}
40  protected:
42  EResult calibrate() override;
46  void detectBadWires();
48  double chiTest(TGraphAsymmErrors* graph1, TGraphAsymmErrors* graph2, double minVale, double maxValue);
49  private:
50  TList* m_efficiencyList = new TList();
51  std::string m_outputFileName = "wire_efficiencies.root";
54  };
55 
56 
57  }
59 }
Belle2::CDCBadWires
Database object for bad wires.
Definition: CDCBadWires.h:37
Belle2::CDC::WireEfficiencyAlgorithm::m_outputFileName
std::string m_outputFileName
name of the output file
Definition: WireEfficiencyAlgorithm.h:59
Belle2::CDC::WireEfficiencyAlgorithm::WireEfficiencyAlgorithm
WireEfficiencyAlgorithm()
Constructor.
Definition: WireEfficiencyAlgorithm.cc:35
Belle2::CDC::WireEfficiencyAlgorithm::calibrate
EResult calibrate() override
Run algo on data.
Definition: WireEfficiencyAlgorithm.cc:231
Belle2::CDC::WireEfficiencyAlgorithm::buildEfficiencies
bool buildEfficiencies()
create 2D TEfficiency for each wire and return True if more than 1000 entries
Definition: WireEfficiencyAlgorithm.cc:43
Belle2::CDC::WireEfficiencyAlgorithm::m_badWireList
CDCBadWires * m_badWireList
BadWireList that willbe built.
Definition: WireEfficiencyAlgorithm.h:61
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::CDC::WireEfficiencyAlgorithm::m_cdcGeo
DBObjPtr< CDCGeometry > m_cdcGeo
Geometry of CDC.
Definition: WireEfficiencyAlgorithm.h:60
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::CDC::WireEfficiencyAlgorithm::~WireEfficiencyAlgorithm
~WireEfficiencyAlgorithm()
Destructor.
Definition: WireEfficiencyAlgorithm.h:44
Belle2::CalibrationAlgorithm::EResult
EResult
The result of calibration.
Definition: CalibrationAlgorithm.h:50
Belle2::CDC::WireEfficiencyAlgorithm::chiTest
double chiTest(TGraphAsymmErrors *graph1, TGraphAsymmErrors *graph2, double minVale, double maxValue)
chitest
Definition: WireEfficiencyAlgorithm.cc:200
Belle2::CDC::WireEfficiencyAlgorithm::detectBadWires
void detectBadWires()
detects bad wires.
Definition: WireEfficiencyAlgorithm.cc:106
Belle2::CDC::WireEfficiencyAlgorithm::setHistFileName
void setHistFileName(const std::string &name)
Set name for histogram output.
Definition: WireEfficiencyAlgorithm.h:47