MUSIC unknown
Analysis for the MUSIC active-target ionization chamber
Loading...
Searching...
No Matches
TagEfficiency.hpp File Reference

The tag-efficiency correction, and its contract with the cross section. More...

#include "RegionCuts.hpp"
#include <Rtypes.h>
#include <TCutG.h>
#include <TString.h>
#include <map>
#include <vector>
Include dependency graph for TagEfficiency.hpp:

Go to the source code of this file.

Classes

struct  TagEfficiencyRecord
 One channel and strip's efficiency, as the cross section consumes it. More...
class  TagEfficiency
 The bootstrap method for measuring the tag efficiency. More...

Namespaces

namespace  TagEfficiencyStore
 Persistence for the efficiency records.

Functions

TString TagEfficiencyStore::Path ()
 Path to the store.
void TagEfficiencyStore::Write (const TString &channel, const std::vector< TagEfficiencyRecord > &records, const TString &method)
 Replace one channel's records, keeping every other channel's.
Bool_t TagEfficiencyStore::Load (const TString &channel, Int_t reac, TagEfficiencyRecord &record)
 Read one record.
TString TagEfficiencyStore::Method ()
 The method label stamped into the store.

Detailed Description

The tag-efficiency correction, and its contract with the cross section.

Whatever method produces it, the efficiency side hands the cross section one record per channel and reaction strip: the count it applies to, the fraction of true reactions at that strip that end up in that count, and the fraction counted one strip late instead.

The cross section then applies one formula,

N_true(r) = (n_counted(r) - migrate(r-1) * N_true(r-1)) / eff(r)

and never needs to know how the numbers were made. Change the method, keep the record, and the cross section keeps working.

Definition in file TagEfficiency.hpp.