CbmRoot
CbmLitFieldApproximationQaReport Class Reference

Creates field QA report. More...

#include <CbmLitFieldApproximationQaReport.h>

Inheritance diagram for CbmLitFieldApproximationQaReport:
[legend]
Collaboration diagram for CbmLitFieldApproximationQaReport:
[legend]

Public Member Functions

 CbmLitFieldApproximationQaReport ()
 Constructor. More...
 
virtual ~CbmLitFieldApproximationQaReport ()
 Destructor. More...
 
void Create (CbmHistManager *histManager, const std::string &outputDir)
 Main function which creates report data. More...
 
void Create (const std::string &fileName, const std::string &outputDir)
 Main function which creates report data. More...
 
TH1 * H1 (const std::string &name) const
 Return pointer to TH1 histogram. More...
 
TH2 * H2 (const std::string &name) const
 Return pointer to TH2 histogram. More...
 
TH3 * H3 (const std::string &name) const
 Return pointer to TH3 histogram. More...
 
CbmHistManagerHM () const
 Return pointer to Histogram manager. More...
 
void DrawH1ByPattern (const std::string &histNamePattern)
 Select by pattern TH1 histograms and draw each histogram on separate canvas. More...
 
void DrawH1ByPattern (const std::string &histNamePattern, std::string(*labelFormatter)(const std::string &, const CbmHistManager *))
 Select by pattern TH1 histograms and draw all histograms on the same canvas. More...
 
void DrawH2ByPattern (const std::string &histNamePattern, HistScale logx=kLinear, HistScale logy=kLinear, HistScale logz=kLinear, const std::string &drawOpt="")
 Select by pattern TH2 histograms and draw each histogram on separate canvas. More...
 
const CbmReportElementR () const
 Accessor to CbmReportElement object. User has to write the report using available tags from CbmReportElement class. More...
 
std::ostream & Out () const
 All text output goes to this stream. More...
 
void SetReportName (const std::string &name)
 
void SetReportTitle (const std::string &title)
 
void SetOutputDir (const std::string &outputDir)
 
const std::string & GetReportName () const
 
const std::string & GetReportTitle () const
 
const std::string & GetOutputDir () const
 

Protected Member Functions

void Draw (Option_t *)
 Inherited from TObject. This method is implemented in order to avoid warnings. More...
 
void CreateReports ()
 Create all available report types. More...
 
TCanvas * CreateCanvas (const char *name, const char *title, Int_t ww, Int_t wh)
 Create canvas and put it to vector of TCanvases. Canvases created with this function will be automatically saved to image and printed in the report. More...
 
void SaveCanvasesAsImages () const
 Save all canvases to images. More...
 
void WriteCanvases () const
 Write canvases to file. More...
 
void PrintCanvases () const
 Print images created from canvases in the report. More...
 

Private Member Functions

virtual void Create ()
 Inherited from CbmSimulationReport. More...
 
virtual void Draw ()
 Inherited from CbmSimulationReport. More...
 
void DrawSlices (const std::string &component, const std::string &opt)
 Draw canvas with histograms for each approximated slice. More...
 
void DrawApr (const std::string &err)
 Draw comparison for different polynomial orders for each slice. More...
 
std::string PrintSummaryTable ()
 Return string with summary table for field QA. More...
 
void CreateReportElement (ReportType reportType)
 Create concrete CbmReportElement instance based on report type. More...
 
void DeleteReportElement ()
 Delete report element. Normally should be called at the end of Create function. More...
 

Private Attributes

CbmHistManagerfHM
 
std::string fReportName
 
std::string fReportTitle
 
std::string fOutputDir
 
ReportType fReportType
 
CbmReportElementfR
 
std::ostream * fOut
 
std::vector< TCanvas * > fCanvases
 

Detailed Description

Creates field QA report.

Author
Andrey Lebedev andre.nosp@m.y.le.nosp@m.bedev.nosp@m.@gsi.nosp@m..de
Date
2011

Definition at line 20 of file CbmLitFieldApproximationQaReport.h.

Constructor & Destructor Documentation

◆ CbmLitFieldApproximationQaReport()

CbmLitFieldApproximationQaReport::CbmLitFieldApproximationQaReport ( )

Constructor.

Definition at line 28 of file CbmLitFieldApproximationQaReport.cxx.

References CbmReport::SetReportName().

◆ ~CbmLitFieldApproximationQaReport()

CbmLitFieldApproximationQaReport::~CbmLitFieldApproximationQaReport ( )
virtual

Destructor.

Definition at line 32 of file CbmLitFieldApproximationQaReport.cxx.

Member Function Documentation

◆ Create() [1/3]

◆ Create() [2/3]

void CbmSimulationReport::Create ( CbmHistManager histManager,
const std::string &  outputDir 
)
inherited

Main function which creates report data.

Non virtual interface pattern is used here. User always creates simulation report using this public non virtual method. In order to configure concrete report generation class user has to implement protected Create() method.

Parameters
[in]histManagerPointer to histogram manager for which report is created.
[in]outputDirPath to directory for output results.

Referenced by CbmStsDigitizeQa::Finish(), CbmLitRadLengthQa::Finish(), CbmLitClusteringQa::Finish(), CbmLitTrackingQa::Finish(), CbmLitTofQa::Finish(), CbmLitFitQa::Finish(), CbmLitFieldQa::Init(), and CbmLitFieldApproximationQa::Init().

◆ Create() [3/3]

void CbmSimulationReport::Create ( const std::string &  fileName,
const std::string &  outputDir 
)
inherited

Main function which creates report data.

Same pattern is used here.

Parameters
[in]fileNameName of the file with histograms.
[in]outputDirPath to directory for output results.

◆ CreateCanvas()

TCanvas * CbmReport::CreateCanvas ( const char *  name,
const char *  title,
Int_t  ww,
Int_t  wh 
)
protectedinherited

Create canvas and put it to vector of TCanvases. Canvases created with this function will be automatically saved to image and printed in the report.

Definition at line 82 of file CbmReport.cxx.

References CbmReport::fCanvases.

Referenced by CbmAnaJpsiReport::Draw(), CbmAnaJpsiSuperEventReport::Draw(), CbmAnaJpsiReport::Draw2DCut(), CbmStsDigitizeQaReport::Draw2dHistograms(), CbmLitTrackingQaReport::DrawAccAndRec(), CbmLitTrackingQaStudyReport::DrawAccAndRec(), CbmAnaJpsiReport::DrawAnalysisStepsH1(), CbmAnaJpsiReport::DrawAnalysisStepsH2(), DrawApr(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), CbmAnaJpsiReport::DrawBgSource2D(), CbmAnaJpsiSuperEventReport::DrawComparison(), CbmAnaJpsiReport::DrawCutH1(), CbmLitRadLengthQaReport::DrawDetector(), CbmLitTrackingQaReport::DrawEfficiency(), CbmLitTrackingQaStudyReport::DrawEfficiency(), CbmLitTrackingQaReport::DrawEfficiencyHistos(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmLitTrackingQaReport::DrawHitsHistos(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmAnaJpsiSuperEventReport::DrawMinvDiffPtBins(), CbmAnaJpsiReport::DrawMinvMismatchesAll(), CbmAnaJpsiSuperEventReport::DrawMinvMismatchPt(), CbmAnaJpsiReport::DrawMinvSAndBgAllSteps(), CbmAnaJpsiSuperEventReport::DrawMinvSignalBg(), CbmAnaJpsiReport::DrawMomEffAllSteps(), CbmAnaJpsiReport::DrawMomMcVsRec(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmAnaJpsiSuperEventReport::DrawPairSource(), CbmAnaJpsiReport::DrawPairSource(), CbmLitTrackingQaReport::DrawPionSuppression(), CbmAnaJpsiReport::DrawPtYEfficiencyAll(), CbmLitFitQaReport::DrawResidualAndPullHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), CbmAnaDielectronStudyReportAll::DrawSBgMinv(), CbmAnaJpsiReport::DrawSignalMinv(), DrawSlices(), CbmLitFitQaReport::DrawTrackMomentumAtVertex(), CbmLitFitQaReport::DrawTrackParams(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), CbmLitFitQaReport::DrawTrackParamsAtVertex(), CbmLitTrackingQaReport::DrawYPt(), CbmLitTofQaReport::FitHistograms(), CbmAnaJpsiSuperEventReport::SignalOverBgAllSteps(), and CbmAnaJpsiReport::SignalOverBgAllSteps().

◆ CreateReportElement()

void CbmReport::CreateReportElement ( ReportType  reportType)
privateinherited

Create concrete CbmReportElement instance based on report type.

Parameters
[in]reportTypeType of the report to be produced.

Definition at line 36 of file CbmReport.cxx.

References CbmReport::fOut, CbmReport::fR, CbmReport::fReportName, CbmReport::fReportType, CbmReport::GetOutputDir(), kCoutReport, kHtmlReport, kLatexReport, and kTextReport.

Referenced by CbmReport::CreateReports().

◆ CreateReports()

void CbmReport::CreateReports ( )
protectedinherited

◆ DeleteReportElement()

void CbmReport::DeleteReportElement ( )
privateinherited

Delete report element. Normally should be called at the end of Create function.

Definition at line 55 of file CbmReport.cxx.

Referenced by CbmReport::CreateReports().

◆ Draw() [1/2]

void CbmLitFieldApproximationQaReport::Draw ( )
privatevirtual

Inherited from CbmSimulationReport.

Implements CbmReport.

Definition at line 97 of file CbmLitFieldApproximationQaReport.cxx.

References DrawApr(), DrawSlices(), and SetDefaultDrawStyle().

◆ Draw() [2/2]

void CbmReport::Draw ( Option_t *  )
inlineprotectedinherited

Inherited from TObject. This method is implemented in order to avoid warnings.

Definition at line 87 of file CbmReport.h.

◆ DrawApr()

void CbmLitFieldApproximationQaReport::DrawApr ( const std::string &  err)
private

Draw comparison for different polynomial orders for each slice.

Parameters
[in]err"rel" for relative errors or "abs" for absolute errors.

Definition at line 149 of file CbmLitFieldApproximationQaReport.cxx.

References CbmReport::CreateCanvas(), DrawH1(), Cbm::FindAndReplace(), CbmHistManager::G2Vector(), CbmReport::GetReportName(), CbmHistManager::H1(), CbmHistManager::H1Vector(), CbmSimulationReport::HM(), i, kLinear, kLog, CbmDrawingOptions::LineWidth(), CbmDrawingOptions::MarkerSize(), max(), min(), and Cbm::Split().

Referenced by Draw().

◆ DrawH1ByPattern() [1/2]

void CbmSimulationReport::DrawH1ByPattern ( const std::string &  histNamePattern)
inherited

Select by pattern TH1 histograms and draw each histogram on separate canvas.

Parameters
[in]histNamePatternName pattern for histogram.

Referenced by CbmStsDigitizeQaReport::Draw(), CbmLitTofQaReport::Draw(), CbmLitClusteringQaReport::Draw(), and CbmLitRadLengthQaReport::DrawDetectorStation().

◆ DrawH1ByPattern() [2/2]

void CbmSimulationReport::DrawH1ByPattern ( const std::string &  histNamePattern,
std::string(*)(const std::string &, const CbmHistManager *)  labelFormatter 
)
inherited

Select by pattern TH1 histograms and draw all histograms on the same canvas.

Parameters
[in]histNamePatternName pattern for histogram.

◆ DrawH2ByPattern()

void CbmSimulationReport::DrawH2ByPattern ( const std::string &  histNamePattern,
HistScale  logx = kLinear,
HistScale  logy = kLinear,
HistScale  logz = kLinear,
const std::string &  drawOpt = "" 
)
inherited

Select by pattern TH2 histograms and draw each histogram on separate canvas.

Parameters
[in]histNamePatternName pattern for histogram.
[in]logxSpecify logarithmic or linear scale for X axis.
[in]logySpecify logarithmic or linear scale for Y axis.
[in]logzSpecify logarithmic or linear scale for Z axis.
[in]drawOptOther drawing options (see ROOT documentation for details).

Definition at line 81 of file CbmSimulationReport.cxx.

References CbmReport::CreateCanvas(), DrawH2(), CbmReport::GetReportName(), CbmHistManager::H2Vector(), and CbmSimulationReport::HM().

Referenced by CbmLitTofQaReport::Draw(), CbmLitClusteringQaReport::Draw(), CbmLitRadLengthQaReport::DrawDetectorStation(), and CbmLitClusteringQaReport::DrawResidualsAndPulls().

◆ DrawSlices()

void CbmLitFieldApproximationQaReport::DrawSlices ( const std::string &  component,
const std::string &  opt 
)
private

Draw canvas with histograms for each approximated slice.

Parameters
[in]vDefines field component (BX, BY, BZ, MOD).
[in]optDrawing option: "grid" to plot results for grid creator "apr" to plot results for field fitter.

Definition at line 114 of file CbmLitFieldApproximationQaReport.cxx.

References CbmReport::CreateCanvas(), DrawGraph2D(), DrawH1(), DrawH2(), Cbm::FindAndReplace(), CbmHistManager::G2(), CbmHistManager::G2Vector(), CbmReport::GetReportName(), CbmHistManager::H1(), CbmHistManager::H2(), CbmSimulationReport::HM(), i, m, and Cbm::Split().

Referenced by Draw().

◆ GetOutputDir()

const std::string& CbmReport::GetOutputDir ( ) const
inlineinherited

◆ GetReportName()

◆ GetReportTitle()

const std::string& CbmReport::GetReportTitle ( ) const
inlineinherited

Definition at line 65 of file CbmReport.h.

References CbmReport::fReportTitle.

◆ H1()

◆ H2()

◆ H3()

TH3* CbmSimulationReport::H3 ( const std::string &  name) const
inlineinherited

Return pointer to TH3 histogram.

Parameters
[in]nameName of histogram.
Returns
pointer to TH3 histogram.

Definition at line 87 of file CbmSimulationReport.h.

References CbmHistManager::H3(), and CbmSimulationReport::HM().

◆ HM()

CbmHistManager* CbmSimulationReport::HM ( ) const
inlineinherited

Return pointer to Histogram manager.

Definition at line 92 of file CbmSimulationReport.h.

References CbmSimulationReport::fHM.

Referenced by CbmLitClusteringQaReport::CalculateEfficiencyHistos(), CbmLitTrackingQaReport::CalculateEfficiencyHistos(), CbmLitTrackingQaReport::CalculatePionSuppressionHistos(), CbmStsDigitizeQaReport::Create(), CbmLitTrackingQaReport::Create(), CbmLitClusteringQaReport::Create(), CbmAnaJpsiReport::Draw(), CbmLitTofQaReport::Draw(), CbmStsDigitizeQaReport::Draw2dHistograms(), CbmLitTrackingQaReport::DrawAccAndRec(), DrawApr(), CbmLitRadLengthQaReport::DrawDetector(), CbmLitTrackingQaReport::DrawEfficiency(), CbmLitTrackingQaReport::DrawEfficiencyHistos(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmLitTrackingQaReport::DrawHitsHistos(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmLitTrackingQaReport::DrawPionSuppression(), CbmLitFitQaReport::DrawResidualAndPullHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), DrawSlices(), CbmLitFitQaReport::DrawTrackMomentumAtVertex(), CbmLitFitQaReport::DrawTrackParams(), CbmLitFitQaReport::DrawTrackParamsAtVertex(), CbmLitTrackingQaReport::DrawYPt(), CbmLitTrackingQaReport::FillGlobalTrackVariants(), CbmLitTofQaReport::FitHistograms(), CbmSimulationReport::H1(), CbmSimulationReport::H2(), CbmSimulationReport::H3(), CbmLitTrackingQaReport::PrintNofGhosts(), CbmLitTrackingQaReport::PrintNofObjects(), CbmLitClusteringQaReport::PrintNofObjects(), CbmLitTrackingQaReport::PrintPionSuppression(), CbmLitFitQaReport::PrintResAndPullRow(), CbmLitTrackingQaReport::PrintTrackHits(), CbmLitTrackingQaReport::PrintTrackingEfficiency(), CbmLitClusteringQaReport::ScaleAndShrinkHistograms(), CbmStsDigitizeQaReport::ScaleHistograms(), and CbmAnaJpsiReport::SignalOverBgAllSteps().

◆ Out()

◆ PrintCanvases()

◆ PrintSummaryTable()

std::string CbmLitFieldApproximationQaReport::PrintSummaryTable ( )
private

Return string with summary table for field QA.

Returns
String with summary table for field QA.

Definition at line 42 of file CbmLitFieldApproximationQaReport.cxx.

Referenced by Create().

◆ R()

◆ SaveCanvasesAsImages()

void CbmReport::SaveCanvasesAsImages ( ) const
protectedinherited

Save all canvases to images.

Definition at line 91 of file CbmReport.cxx.

References CbmReport::fCanvases, CbmReport::GetOutputDir(), i, and Cbm::SaveCanvasAsImage().

Referenced by CbmReport::CreateReports().

◆ SetOutputDir()

void CbmReport::SetOutputDir ( const std::string &  outputDir)
inlineinherited

Definition at line 61 of file CbmReport.h.

References CbmReport::fOutputDir.

◆ SetReportName()

◆ SetReportTitle()

void CbmReport::SetReportTitle ( const std::string &  title)
inlineinherited

◆ WriteCanvases()

void CbmReport::WriteCanvases ( ) const
protectedinherited

Write canvases to file.

Definition at line 101 of file CbmReport.cxx.

References CbmReport::fCanvases, CbmReport::GetOutputDir(), and i.

Member Data Documentation

◆ fCanvases

std::vector<TCanvas*> CbmReport::fCanvases
privateinherited

◆ fHM

CbmHistManager* CbmSimulationReport::fHM
privateinherited

Definition at line 123 of file CbmSimulationReport.h.

Referenced by CbmSimulationReport::HM().

◆ fOut

std::ostream* CbmReport::fOut
mutableprivateinherited

Definition at line 135 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement(), and CbmReport::Out().

◆ fOutputDir

std::string CbmReport::fOutputDir
privateinherited

Definition at line 132 of file CbmReport.h.

Referenced by CbmReport::GetOutputDir(), and CbmReport::SetOutputDir().

◆ fR

CbmReportElement* CbmReport::fR
privateinherited

Definition at line 134 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement(), and CbmReport::R().

◆ fReportName

std::string CbmReport::fReportName
privateinherited

◆ fReportTitle

std::string CbmReport::fReportTitle
privateinherited

Definition at line 131 of file CbmReport.h.

Referenced by CbmReport::GetReportTitle(), and CbmReport::SetReportTitle().

◆ fReportType

ReportType CbmReport::fReportType
privateinherited

Definition at line 133 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement().


The documentation for this class was generated from the following files: