ECALELF  d6718b6cc30d69f18fde9018c5ae12f9d80bd7a5
Typedefs | Functions
ZFitter.cpp File Reference

General program for Z fit (monitoring, calibration validation) More...

#include <iostream>
#include <fstream>
#include <cstdio>
#include <cstdlib>
#include <stdexcept>
#include <memory>
#include <boost/program_options.hpp>
#include <TChain.h>
#include <TStopwatch.h>
#include <TFriendElement.h>
#include <RooMinuit.h>
#include <RooGaussian.h>
#include <RooStats/MetropolisHastings.h>
#include "RooBinning.h"
#include <RooMultiVarGaussian.h>
#include "Math/Minimizer.h"
#include <TPRegexp.h>
#include <RooFormulaVar.h>
#include <RooPullVar.h>
#include <TMatrixDSym.h>
#include <TRandom3.h>
#include <queue>

Typedefs

typedef std::shared_ptr< TChain > pTChain_t
 type to hold TChain Pointers
 
typedef std::map< TString,
pTChain_t
chain_map_t
 map that associates the name of the tree and the pointer to the chain
 
typedef std::map< TString,
chain_map_t
tag_chain_map_t
 map that associates the name of the tag to the chain_map_t More...
 

Functions

std::vector< TString > ReadRegionsFromFile (TString fileName)
 
void UpdateFriends (tag_chain_map_t &tagChainMap, TString regionsFileNameTag)
 
void MergeSamples (tag_chain_map_t &tagChainMap, TString regionsFileNameTag, TString tag="s")
 

Detailed Description

General program for Z fit (monitoring, calibration validation)

The aim of the program is to provide a common interface to all the Z fitting algorithms reading and combining in the proper way the configuration files.

Todo:
  • remove commonCut from category name and add it in the ZFit_class in order to not repeate the cut
  • make alpha fitting more generic (look for alphaName)
  • Implement the iterative Et dependent scale corrections

ZFitter options:

Typedef Documentation

typedef std::map< TString, chain_map_t > tag_chain_map_t

map that associates the name of the tag to the chain_map_t

the logic is better described in Validation config files

Function Documentation

std::vector<TString> ReadRegionsFromFile ( TString  fileName)

Function parsing the region files

Return values
vectorof strings, each string is the name of one region
void UpdateFriends ( tag_chain_map_t tagChainMap,
TString  regionsFileNameTag 
)

This function reassociates the chains as friends of the "selected" tree.

This function should be run when new chains or files are added to the tagChainMap.

Referenced by MergeSamples().

void MergeSamples ( tag_chain_map_t tagChainMap,
TString  regionsFileNameTag,
TString  tag = "s" 
)
Parameters
tagChainMapmap of all the tags declared in the validation config file
tagname of the new tag created by the function, all the existent tags with name starting with b tag are merged in the new tag

A new tagChain with name=tag is added to the tagChainMap. All the tagChains with tag starting with tag are merged After the merging the friend list is updated by UpdateFriends

References UpdateFriends().