GRSISort
Created by P.C. Bender
Developement Team: P.C. Bender, R. Dunlop, V. Bildstein
An extension of the ROOT analysis Framework
TAngularCorrelation Class Reference

An angular correlation class

Definition at line 18 of file TAngularCorrelation.h.

Public Member Functions

 TAngularCorrelation ()
 
 ~TAngularCorrelation () override
 
Int_t AssignGroupMaps (std::vector< Int_t > &group, std::vector< Double_t > &groupangles)
 
Bool_t CheckGroupAngles (std::vector< Double_t > &groupangles)
 
Bool_t CheckGroups (std::vector< Int_t > &group)
 
Bool_t CheckMaps (Bool_t fold, Bool_t group)
 
Bool_t CheckModifiedHistogram (TH1 *hst)
 
void ClearModifiedMaps ()
 
TH2D * Create2DSlice (THnSparse *hst, Double_t min, Double_t max, Bool_t fold, Bool_t group)
 
TH2D * Create2DSlice (TObjArray *hstarray, Double_t min, Double_t max, Bool_t fold, Bool_t group)
 
TGraphAsymmErrors * CreateGraphFromHst (TH1 *hst, Bool_t fold, Bool_t group)
 
TGraphAsymmErrors * CreateGraphFromHst ()
 
void DisplayDiagnostics (TCanvas *c_diag)
 
TH1D * DivideByWeights (TH1 *hst, Bool_t fold, Bool_t group)
 
TH1D * FitSlices (TH2 *hst, TPeak *peak, Bool_t visualization)
 
Int_t GenerateGroupMaps (std::vector< Int_t > &arraynumbers, std::vector< Int_t > &distances, std::vector< Int_t > &group, std::vector< Double_t > &groupangles)
 
Int_t GenerateMaps (std::vector< Int_t > &arraynumbers, std::vector< Int_t > &distances)
 
Int_t GenerateMaps (Int_t detectors, Int_t distance)
 
std::vector< Double_t > GenerateModifiedAngles (Bool_t fold, Bool_t group)
 
std::vector< Int_t > GenerateModifiedIndices (Bool_t fold, Bool_t group)
 
Int_t GenerateModifiedMaps (Bool_t fold, Bool_t group)
 
std::vector< Int_t > GenerateModifiedWeights (std::vector< Int_t > &modindices, std::vector< Int_t > &weights)
 
TH1D * Get1DSlice (Int_t index)
 
Double_t GetAngleFromIndex (Int_t index)
 
Int_t GetAngularIndex (Int_t arraynum1, Int_t arraynum2)
 
TH1D * GetCentroidHst ()
 
TH1D * GetChi2Hst ()
 
TH1D * GetFWHMHst ()
 
Double_t GetGroupAngleFromIndex (Int_t gindex)
 
Int_t GetGroupFromIndex (Int_t index)
 
TH1D * GetIndexCorrelation ()
 
Double_t GetModifiedAngleFromIndex (Int_t modindex)
 
Int_t GetModifiedIndex (Int_t index)
 
Int_t GetModifiedWeight (Int_t modindex)
 
Int_t GetNumGroups ()
 
Int_t GetNumModIndices ()
 
TPeakGetPeak (Int_t index)
 
Double_t GetWeightFromIndex (Int_t index)
 
Int_t GetWeightsSize ()
 
TH1D * IntegralSlices (TH2 *hst, Double_t min, Double_t max)
 
TH2D * Modify2DSlice (TH2 *hst, Bool_t fold, Bool_t group)
 
void PrintAngleMap ()
 
void PrintGroupAngleMap ()
 
void PrintGroupIndexMap ()
 
void PrintIndexMap ()
 
void PrintModifiedAngleMap ()
 
void PrintModifiedConditions ()
 
void PrintModifiedIndexMap ()
 
void PrintModifiedWeights ()
 
void PrintWeights ()
 
void ScaleSingleIndex (TH1 *hst, Int_t index, Double_t factor)
 
void Set1DSlice (Int_t index, TH1D *slice)
 
void SetIndexCorrelation (TH1D *hst)
 
void SetPeak (Int_t index, TPeak *peak)
 
void UpdateDiagnostics ()
 
void UpdateIndexCorrelation ()
 
void UpdatePeak (Int_t index, TPeak *peak)
 

Static Public Member Functions

static std::vector< Double_t > GenerateAngleMap (std::vector< Int_t > &arraynumbers, std::vector< Int_t > &distances)
 
static std::vector< Double_t > GenerateFoldedAngles (std::vector< Double_t > &anglemap)
 
static std::vector< Int_t > GenerateFoldedIndices (std::vector< Double_t > &folds, std::vector< Double_t > &anglemap)
 
static std::map< Int_t, std::map< Int_t, Int_t > > GenerateIndexMap (std::vector< Int_t > &arraynumbers, std::vector< Int_t > &distances, std::vector< Double_t > &anglemap)
 
static std::vector< Int_t > GenerateWeights (std::vector< Int_t > &arraynumbers, std::vector< Int_t > &distances, std::map< Int_t, std::map< Int_t, Int_t >> &indexmap)
 

Private Attributes

std::map< Int_t, TH1D * > f1DSlices
 
std::vector< Double_t > fAngleMap
 
TH1D * fCentroid {nullptr}
 
TH1D * fChi2 {nullptr}
 
Bool_t fFolded
 
TH1D * fFWHM {nullptr}
 
std::vector< Double_t > fGroupAngles
 
Bool_t fGrouped
 
std::vector< Int_t > fGroups
 
TH1D * fIndexCorrelation
 
std::map< Int_t, std::map< Int_t, Int_t > > fIndexMap
 
Int_t fIndexMapSize
 
std::vector< Double_t > fModifiedAngles
 
std::vector< Int_t > fModifiedIndices
 
std::vector< Int_t > fModifiedWeights
 
Int_t fNumIndices {0}
 
std::map< Int_t, TPeak * > fPeaks
 
std::vector< Int_t > fWeights
 

#include <TAngularCorrelation.h>

+ Inheritance diagram for TAngularCorrelation:
+ Collaboration diagram for TAngularCorrelation:

Constructor & Destructor Documentation

◆ ~TAngularCorrelation()

TAngularCorrelation::~TAngularCorrelation ( )
override

Angular correlation default destructor

Definition at line 31 of file TAngularCorrelation.cxx.

References fIndexCorrelation.

◆ TAngularCorrelation()

TAngularCorrelation::TAngularCorrelation ( )

Angular correlation default constructor

Definition at line 20 of file TAngularCorrelation.cxx.

Member Function Documentation

◆ AssignGroupMaps()

Int_t TAngularCorrelation::AssignGroupMaps ( std::vector< Int_t > &  group,
std::vector< Double_t > &  groupangles 
)

Assigns maps for Grouped Angular Indexes Including group angle versus group index and angular index versus group index

Parameters
[in]groupVector (user input)
[in]groupanglesVector (user input)

Definition at line 1421 of file TAngularCorrelation.cxx.

References CheckGroupAngles(), CheckGroups(), fGroupAngles, fGroups, and GetNumGroups().

Referenced by GenerateGroupMaps().

◆ CheckGroupAngles()

Bool_t TAngularCorrelation::CheckGroupAngles ( std::vector< Double_t > &  groupangles)

Check angles for groups

Parameters
[in]groupanglesvector (user input)

This function is called by GenerateGroupMaps()

Definition at line 1199 of file TAngularCorrelation.cxx.

References GetNumGroups().

Referenced by AssignGroupMaps().

◆ CheckGroups()

Bool_t TAngularCorrelation::CheckGroups ( std::vector< Int_t > &  group)

Check Groups for Angular Indexes

Parameters
[in]groupvector of assigned groups for angular indexes (this is user input)

This function is called by GenerateGroupMaps()

Definition at line 1144 of file TAngularCorrelation.cxx.

References fNumIndices.

Referenced by AssignGroupMaps().

◆ CheckMaps()

Bool_t TAngularCorrelation::CheckMaps ( Bool_t  fold,
Bool_t  group 
)

Checks that maps are consistent with each other need to input whether the angles are folded, grouped, or folded and grouped

Definition at line 701 of file TAngularCorrelation.cxx.

References fAngleMap, fModifiedAngles, fModifiedWeights, and fWeights.

◆ CheckModifiedHistogram()

Bool_t TAngularCorrelation::CheckModifiedHistogram ( TH1 *  hst)

Compares 1D histogram to current AC modified settings

Parameters
[in]hsthistogram

Definition at line 1767 of file TAngularCorrelation.cxx.

References GetNumModIndices(), and PrintModifiedConditions().

Referenced by CreateGraphFromHst(), and DivideByWeights().

◆ ClearModifiedMaps()

void TAngularCorrelation::ClearModifiedMaps ( )

Clears the modified arrays

Definition at line 1555 of file TAngularCorrelation.cxx.

References fModifiedAngles, fModifiedIndices, and fModifiedWeights.

Referenced by GenerateModifiedAngles().

◆ Create2DSlice() [1/2]

TH2D * TAngularCorrelation::Create2DSlice ( THnSparse *  hst,
Double_t  min,
Double_t  max,
Bool_t  fold = kFALSE,
Bool_t  group = kFALSE 
)

Create energy-gated 2D histogram of energy vs. angular index

Parameters
[in]hstThree-dimensional histogram of angular index vs. energy vs. energy
[in]minMinimum of energy gate
[in]maxMaximum of energy gate
[in]foldSwitch for turning folding on
[in]groupSwitch for turning grouping on (not yet implemented)

Projects out the events with one energy between min and max X-axis of returned histogram is second energy Y-axis of returned histogram is angular index (or the group number if group = kTRUE)

Definition at line 49 of file TAngularCorrelation.cxx.

References Modify2DSlice().

◆ Create2DSlice() [2/2]

TH2D * TAngularCorrelation::Create2DSlice ( TObjArray *  hstarray,
Double_t  min,
Double_t  max,
Bool_t  fold = kFALSE,
Bool_t  group = kFALSE 
)

Create energy-gated 2D histogram of energy vs. angular index

Parameters
[in]hstarrayTObjArray of TH2 energy vs. energy plots for each angular index
[in]minMinimum of energy gate
[in]maxMaximum of energy gate
[in]foldSwitch for turning folding on
[in]groupSwitch for turning grouping on (not yet implemented)

Assumes that the index of the TObjArray is the angular index

Projects out the events with one energy between min and max X-axis of returned histogram is second energy Y-axis of returned histogram is angular index

Definition at line 106 of file TAngularCorrelation.cxx.

References Modify2DSlice().

◆ CreateGraphFromHst() [1/2]

TGraphAsymmErrors * TAngularCorrelation::CreateGraphFromHst ( TH1 *  hst,
Bool_t  fold,
Bool_t  group 
)

Creates graph of counts vs. cos(theta) from histogram of counts vs. angular index

Parameters
[in]hstOne-dimensional histogram of angular index vs. counts
[in]foldboolean to select whether angles are folded at 90 degree
[in]groupboolean to select whether angles are grouped

Definition at line 605 of file TAngularCorrelation.cxx.

References CheckModifiedHistogram(), fAngleMap, fFolded, fGrouped, fModifiedAngles, and GenerateModifiedMaps().

◆ CreateGraphFromHst() [2/2]

TGraphAsymmErrors* TAngularCorrelation::CreateGraphFromHst ( )
inline

Definition at line 114 of file TAngularCorrelation.h.

References CreateGraphFromHst(), and fIndexCorrelation.

Referenced by CreateGraphFromHst().

◆ DisplayDiagnostics()

void TAngularCorrelation::DisplayDiagnostics ( TCanvas *  c_diag)

Definition at line 1878 of file TAngularCorrelation.cxx.

References GetCentroidHst(), GetChi2Hst(), GetFWHMHst(), and GetIndexCorrelation().

Referenced by FitSlices().

◆ DivideByWeights()

TH1D * TAngularCorrelation::DivideByWeights ( TH1 *  hst,
Bool_t  fold,
Bool_t  group 
)

Divides histogram by weights listed in weight array

Parameters
[in]hsthistogram
[in]foldboolean indicating whether or not to fold the indices
[in]groupboolean indicating whether or not to group the indices

Definition at line 1810 of file TAngularCorrelation.cxx.

References CheckModifiedHistogram(), fFolded, fGrouped, fModifiedWeights, GenerateModifiedMaps(), GetModifiedWeight(), GetWeightFromIndex(), and GetWeightsSize().

◆ FitSlices()

TH1D * TAngularCorrelation::FitSlices ( TH2 *  hst,
TPeak peak,
Bool_t  visualization = kTRUE 
)

Create 1D histogram of counts vs. angular index

Parameters
[in]hstTwo-dimensional histogram of angular index vs. energy
[in]peakTPeak template used to fit one dimensional histograms
[in]visualizationBoolean to select whether to draw on a canvas

For each bin (angular index), fits one-dimensional projection with given TPeak and returns a TH1D with x-axis of angular index and a y-axis of TPeak area for that angular index.

Definition at line 383 of file TAngularCorrelation.cxx.

References DisplayDiagnostics(), fCentroid, fChi2, fFWHM, fIndexCorrelation, TPeak::Fit(), Get1DSlice(), TPeak::GetArea(), TPeak::GetAreaErr(), TPeak::GetCentroid(), GetPeak(), TPeak::InitParams(), Set1DSlice(), TPeak::SetLogLikelihoodFlag(), SetPeak(), and UpdateDiagnostics().

◆ GenerateAngleMap()

std::vector< Double_t > TAngularCorrelation::GenerateAngleMap ( std::vector< Int_t > &  arraynumbers,
std::vector< Int_t > &  distances 
)
static

Creates map of angular index vs. opening angle.

Parameters
[in]arraynumbersVector of array numbers used in this experiment
[in]distancesVector of detector distances for those array numbers

Definition at line 934 of file TAngularCorrelation.cxx.

References TGriffin::GetPosition().

Referenced by GenerateGroupMaps(), and GenerateMaps().

◆ GenerateFoldedAngles()

std::vector< Double_t > TAngularCorrelation::GenerateFoldedAngles ( std::vector< Double_t > &  anglemap)
static

Generate Folded Angles gives angles out for each folded index in radians

Parameters
[in]anglemap(can be for grouped or ungrouped anglular indexes)

This function is called by GenerateMaps() and GenerateGroupMaps()

Definition at line 1225 of file TAngularCorrelation.cxx.

Referenced by GenerateModifiedAngles().

◆ GenerateFoldedIndices()

std::vector< Int_t > TAngularCorrelation::GenerateFoldedIndices ( std::vector< Double_t > &  folds,
std::vector< Double_t > &  anglemap 
)
static

Generated Folded Indexes

Parameters
[in]foldsvector of the folded angles
[in]anglemapvector of the unfolded angles

This function is called by GenerateMaps() and by GenerateGroupMaps()

Definition at line 1281 of file TAngularCorrelation.cxx.

Referenced by GenerateModifiedIndices().

◆ GenerateGroupMaps()

Int_t TAngularCorrelation::GenerateGroupMaps ( std::vector< Int_t > &  arraynumbers,
std::vector< Int_t > &  distances,
std::vector< Int_t > &  group,
std::vector< Double_t > &  groupangles 
)

Creates maps for Grouped Angular Indexes Including group angle versus group index and angular index versus group index

Parameters
[in]arraynumbersVector of array numbers used in this experiment
[in]distancesVector of detector distances for those array numbers
[in]groupVector (user input)
[in]groupanglesVector (user input)

Definition at line 1378 of file TAngularCorrelation.cxx.

References AssignGroupMaps(), fAngleMap, fIndexMap, fIndexMapSize, fNumIndices, fWeights, GenerateAngleMap(), GenerateIndexMap(), and GenerateWeights().

◆ GenerateIndexMap()

std::map< Int_t, std::map< Int_t, Int_t > > TAngularCorrelation::GenerateIndexMap ( std::vector< Int_t > &  arraynumbers,
std::vector< Int_t > &  distances,
std::vector< Double_t > &  anglemap 
)
static

Creates map of angle pair vs. angular index

Parameters
[in]arraynumbersVector of array numbers used in this experiment
[in]distancesVector of detector distances for those array numbers
[in]anglemapAngle map (probably created with GenerateAngleMap

This function is called by GenerateMaps()

Definition at line 1084 of file TAngularCorrelation.cxx.

References TGriffin::GetPosition().

Referenced by GenerateGroupMaps(), and GenerateMaps().

◆ GenerateMaps() [1/2]

Int_t TAngularCorrelation::GenerateMaps ( std::vector< Int_t > &  arraynumbers,
std::vector< Int_t > &  distances 
)

Creates maps of angle pair vs. angular index and angular index vs. opening angle.

Parameters
[in]arraynumbersVector of array numbers used in this experiment
[in]distancesVector of detector distances for those array numbers

Definition at line 1315 of file TAngularCorrelation.cxx.

References fAngleMap, fIndexMap, fIndexMapSize, fNumIndices, fWeights, GenerateAngleMap(), GenerateIndexMap(), and GenerateWeights().

Referenced by GenerateMaps().

◆ GenerateMaps() [2/2]

Int_t TAngularCorrelation::GenerateMaps ( Int_t  detectors,
Int_t  distance 
)

Creates maps for typical GRIFFIN configurations

Parameters
[in]detectorsnumber of detectors
[in]distancedistance of detectors (in mm)

16 detectors: full array 15 detectors: full array less detector 13 12 detectors: upstream lampshade and corona, detectors 5-16 11 detectors: upstream lampshade and corona, less detector 13 8 detectors: corona only For more detailed configurations, please use GenerateMaps(std::vector<Int_t> &arraynumbers, std::vector<Int_t> &distances)

Definition at line 1448 of file TAngularCorrelation.cxx.

References GenerateMaps().

◆ GenerateModifiedAngles()

std::vector< Double_t > TAngularCorrelation::GenerateModifiedAngles ( Bool_t  fold,
Bool_t  group 
)

Generates modified angles

Parameters
[in]foldboolean indicating whether or not to fold the indices
[in]groupboolean indicating whether or not to group the indices

Definition at line 1568 of file TAngularCorrelation.cxx.

References ClearModifiedMaps(), fAngleMap, fFolded, fGroupAngles, fGrouped, fGroups, fNumIndices, GenerateFoldedAngles(), and GetNumGroups().

Referenced by GenerateModifiedMaps().

◆ GenerateModifiedIndices()

std::vector< Int_t > TAngularCorrelation::GenerateModifiedIndices ( Bool_t  fold,
Bool_t  group 
)

Generates modified indices

Parameters
[in]foldboolean indicating whether or not to fold the indices
[in]groupboolean indicating whether or not to group the indices

Definition at line 1505 of file TAngularCorrelation.cxx.

References fAngleMap, fFolded, fGroupAngles, fGrouped, fGroups, fModifiedAngles, fNumIndices, and GenerateFoldedIndices().

Referenced by GenerateModifiedMaps().

◆ GenerateModifiedMaps()

Int_t TAngularCorrelation::GenerateModifiedMaps ( Bool_t  fold,
Bool_t  group 
)

Creates maps for modified indices with some combination of folding or grouping

Parameters
[in]fold
[in]group

Definition at line 1351 of file TAngularCorrelation.cxx.

References fGroups, fModifiedAngles, fModifiedIndices, fModifiedWeights, fNumIndices, fWeights, GenerateModifiedAngles(), GenerateModifiedIndices(), and GenerateModifiedWeights().

Referenced by CreateGraphFromHst(), DivideByWeights(), and Modify2DSlice().

◆ GenerateModifiedWeights()

std::vector< Int_t > TAngularCorrelation::GenerateModifiedWeights ( std::vector< Int_t > &  modindices,
std::vector< Int_t > &  weights 
)

Creates map of modified weights vs. modified index

Parameters
[in]modindicesvector that converts angular index to modified index
[in]weightsvector of weights for angular index

This function is called by GenerateMaps() and GenerateGroupMaps()

Definition at line 1045 of file TAngularCorrelation.cxx.

Referenced by GenerateModifiedMaps().

◆ GenerateWeights()

std::vector< Int_t > TAngularCorrelation::GenerateWeights ( std::vector< Int_t > &  arraynumbers,
std::vector< Int_t > &  distances,
std::map< Int_t, std::map< Int_t, Int_t >> &  indexmap 
)
static

Creates map of weights vs. angular index

Parameters
[in]arraynumbersVector of array numbers used in this experiment
[in]distancesVector of detector distances for those array numbers
[in]indexmapIndex map (probably created with GenerateIndexMap)

The indices for the index map start from zero, so when using array numbers (which start from one) as input for those indices, you need to subtract one.

This function is called by GenerateMaps()

Definition at line 995 of file TAngularCorrelation.cxx.

Referenced by GenerateGroupMaps(), and GenerateMaps().

◆ Get1DSlice()

TH1D* TAngularCorrelation::Get1DSlice ( Int_t  index)
inline

Definition at line 60 of file TAngularCorrelation.h.

References f1DSlices.

Referenced by FitSlices(), and UpdatePeak().

◆ GetAngleFromIndex()

Double_t TAngularCorrelation::GetAngleFromIndex ( Int_t  index)
inline

Definition at line 65 of file TAngularCorrelation.h.

References fAngleMap.

Referenced by PrintAngleMap(), and PrintWeights().

◆ GetAngularIndex()

Int_t TAngularCorrelation::GetAngularIndex ( Int_t  arraynum1,
Int_t  arraynum2 
)

Get angular index from two array numbers

Parameters
[in]arraynum1first array number
[in]arraynum2second array number

Definition at line 678 of file TAngularCorrelation.cxx.

References fIndexMap.

Referenced by PrintIndexMap().

◆ GetCentroidHst()

TH1D* TAngularCorrelation::GetCentroidHst ( )
inline

Definition at line 57 of file TAngularCorrelation.h.

References fCentroid.

Referenced by DisplayDiagnostics(), and UpdateDiagnostics().

◆ GetChi2Hst()

TH1D* TAngularCorrelation::GetChi2Hst ( )
inline

Definition at line 56 of file TAngularCorrelation.h.

References fChi2.

Referenced by DisplayDiagnostics(), and UpdateDiagnostics().

◆ GetFWHMHst()

TH1D* TAngularCorrelation::GetFWHMHst ( )
inline

Definition at line 58 of file TAngularCorrelation.h.

References fFWHM.

Referenced by DisplayDiagnostics(), and UpdateDiagnostics().

◆ GetGroupAngleFromIndex()

Double_t TAngularCorrelation::GetGroupAngleFromIndex ( Int_t  gindex)
inline

Definition at line 78 of file TAngularCorrelation.h.

References fGroupAngles.

Referenced by PrintGroupAngleMap().

◆ GetGroupFromIndex()

Int_t TAngularCorrelation::GetGroupFromIndex ( Int_t  index)
inline

Definition at line 74 of file TAngularCorrelation.h.

References fGroups.

Referenced by PrintGroupIndexMap().

◆ GetIndexCorrelation()

TH1D* TAngularCorrelation::GetIndexCorrelation ( )
inline

◆ GetModifiedAngleFromIndex()

Double_t TAngularCorrelation::GetModifiedAngleFromIndex ( Int_t  modindex)
inline

Definition at line 90 of file TAngularCorrelation.h.

References fModifiedAngles.

Referenced by PrintModifiedAngleMap(), and PrintModifiedWeights().

◆ GetModifiedIndex()

Int_t TAngularCorrelation::GetModifiedIndex ( Int_t  index)
inline

Definition at line 82 of file TAngularCorrelation.h.

References fModifiedIndices.

Referenced by Modify2DSlice(), and PrintModifiedIndexMap().

◆ GetModifiedWeight()

Int_t TAngularCorrelation::GetModifiedWeight ( Int_t  modindex)
inline

Definition at line 86 of file TAngularCorrelation.h.

References fModifiedWeights.

Referenced by DivideByWeights(), and PrintModifiedWeights().

◆ GetNumGroups()

Int_t TAngularCorrelation::GetNumGroups ( )

Returns the number of groups

Definition at line 1165 of file TAngularCorrelation.cxx.

References fGroups.

Referenced by AssignGroupMaps(), CheckGroupAngles(), GenerateModifiedAngles(), and PrintGroupAngleMap().

◆ GetNumModIndices()

Int_t TAngularCorrelation::GetNumModIndices ( )

Returns the number of groups

Definition at line 1180 of file TAngularCorrelation.cxx.

References fModifiedIndices.

Referenced by CheckModifiedHistogram(), and Modify2DSlice().

◆ GetPeak()

TPeak * TAngularCorrelation::GetPeak ( Int_t  index)

Returns peak, if it exists

Parameters
[in]indexangular index

Definition at line 1753 of file TAngularCorrelation.cxx.

References fPeaks.

Referenced by FitSlices(), UpdateDiagnostics(), and UpdateIndexCorrelation().

◆ GetWeightFromIndex()

Double_t TAngularCorrelation::GetWeightFromIndex ( Int_t  index)
inline

Definition at line 70 of file TAngularCorrelation.h.

References fWeights.

Referenced by DivideByWeights(), and PrintWeights().

◆ GetWeightsSize()

Int_t TAngularCorrelation::GetWeightsSize ( )
inline

Definition at line 96 of file TAngularCorrelation.h.

References fWeights.

Referenced by DivideByWeights().

◆ IntegralSlices()

TH1D * TAngularCorrelation::IntegralSlices ( TH2 *  hst,
Double_t  min,
Double_t  max 
)

Create 1D histogram of counts vs. angular index

Parameters
[in]hstTwo-dimensional histogram of angular index vs. energy
[in]minMinimum of energy gate
[in]maxMaximum of energy gate

For each bin (angular index), projects out the total number of events within some energy range (given by min and max).

Definition at line 358 of file TAngularCorrelation.cxx.

References fIndexCorrelation.

◆ Modify2DSlice()

TH2D * TAngularCorrelation::Modify2DSlice ( TH2 *  hst,
Bool_t  fold,
Bool_t  group 
)

◆ PrintAngleMap()

void TAngularCorrelation::PrintAngleMap ( )

Prints map of angular index vs. opening angle

Definition at line 836 of file TAngularCorrelation.cxx.

References fAngleMap, and GetAngleFromIndex().

◆ PrintGroupAngleMap()

void TAngularCorrelation::PrintGroupAngleMap ( )

Prints map of group vs. group weight vs. average group angle

Definition at line 809 of file TAngularCorrelation.cxx.

References fGroupAngles, GetGroupAngleFromIndex(), and GetNumGroups().

◆ PrintGroupIndexMap()

void TAngularCorrelation::PrintGroupIndexMap ( )

Prints map of angular index vs. opening angle vs. group

Definition at line 781 of file TAngularCorrelation.cxx.

References fAngleMap, fGroups, and GetGroupFromIndex().

◆ PrintIndexMap()

void TAngularCorrelation::PrintIndexMap ( )

Prints map used to construct angular indices

Definition at line 726 of file TAngularCorrelation.cxx.

References fIndexMapSize, and GetAngularIndex().

◆ PrintModifiedAngleMap()

void TAngularCorrelation::PrintModifiedAngleMap ( )

Prints map of Folded index vs. opening angle

Definition at line 858 of file TAngularCorrelation.cxx.

References fModifiedAngles, and GetModifiedAngleFromIndex().

◆ PrintModifiedConditions()

void TAngularCorrelation::PrintModifiedConditions ( )

Prints current folding and grouping settings

Definition at line 1786 of file TAngularCorrelation.cxx.

References fFolded, and fGrouped.

Referenced by CheckModifiedHistogram().

◆ PrintModifiedIndexMap()

void TAngularCorrelation::PrintModifiedIndexMap ( )

Prints map of angular index vs. Folded Index.

Definition at line 909 of file TAngularCorrelation.cxx.

References fModifiedIndices, and GetModifiedIndex().

◆ PrintModifiedWeights()

void TAngularCorrelation::PrintModifiedWeights ( )

Prints map of Folded index vs. opening angle

Definition at line 881 of file TAngularCorrelation.cxx.

References fModifiedAngles, fModifiedWeights, GetModifiedAngleFromIndex(), and GetModifiedWeight().

◆ PrintWeights()

void TAngularCorrelation::PrintWeights ( )

Prints map of angular index vs. opening angle vs. weight

Definition at line 753 of file TAngularCorrelation.cxx.

References fAngleMap, fWeights, GetAngleFromIndex(), and GetWeightFromIndex().

◆ ScaleSingleIndex()

void TAngularCorrelation::ScaleSingleIndex ( TH1 *  hst,
Int_t  index,
Double_t  factor 
)

Updates index correlation based on peak array

Definition at line 1661 of file TAngularCorrelation.cxx.

◆ Set1DSlice()

void TAngularCorrelation::Set1DSlice ( Int_t  index,
TH1D *  slice 
)
inline

Definition at line 104 of file TAngularCorrelation.h.

References f1DSlices.

Referenced by FitSlices().

◆ SetIndexCorrelation()

void TAngularCorrelation::SetIndexCorrelation ( TH1D *  hst)
inline

Definition at line 99 of file TAngularCorrelation.h.

References fIndexCorrelation.

◆ SetPeak()

void TAngularCorrelation::SetPeak ( Int_t  index,
TPeak peak 
)
inline

Definition at line 103 of file TAngularCorrelation.h.

References fPeaks.

Referenced by FitSlices(), and UpdatePeak().

◆ UpdateDiagnostics()

void TAngularCorrelation::UpdateDiagnostics ( )

◆ UpdateIndexCorrelation()

void TAngularCorrelation::UpdateIndexCorrelation ( )

Updates index correlation based on peak array

Definition at line 1626 of file TAngularCorrelation.cxx.

References fPeaks, TPeak::GetArea(), TPeak::GetAreaErr(), GetIndexCorrelation(), and GetPeak().

Referenced by UpdatePeak().

◆ UpdatePeak()

void TAngularCorrelation::UpdatePeak ( Int_t  index,
TPeak peak 
)

Fits slice with new peak and updates the index correlation

Parameters
[in]indexangular index
[in]peakTpeak to be used for fitting

Definition at line 1717 of file TAngularCorrelation.cxx.

References TPeak::Fit(), Get1DSlice(), SetPeak(), UpdateDiagnostics(), and UpdateIndexCorrelation().

Member Data Documentation

◆ f1DSlices

std::map<Int_t, TH1D*> TAngularCorrelation::f1DSlices
private

array of TPeaks used to create fIndexCorrelations

Definition at line 27 of file TAngularCorrelation.h.

Referenced by Get1DSlice(), and Set1DSlice().

◆ fAngleMap

std::vector<Double_t> TAngularCorrelation::fAngleMap
private

◆ fCentroid

TH1D* TAngularCorrelation::fCentroid {nullptr}
private

1D plot of chi^2 vs. angular index

Definition at line 24 of file TAngularCorrelation.h.

Referenced by FitSlices(), and GetCentroidHst().

◆ fChi2

TH1D* TAngularCorrelation::fChi2 {nullptr}
private

1D plot of counts vs. angular index

Definition at line 23 of file TAngularCorrelation.h.

Referenced by FitSlices(), and GetChi2Hst().

◆ fFolded

Bool_t TAngularCorrelation::fFolded
private

array correlating group assignment with their average angles

Definition at line 40 of file TAngularCorrelation.h.

Referenced by CreateGraphFromHst(), DivideByWeights(), GenerateModifiedAngles(), GenerateModifiedIndices(), Modify2DSlice(), and PrintModifiedConditions().

◆ fFWHM

TH1D* TAngularCorrelation::fFWHM {nullptr}
private

1D plot of centroid vs. angular index

Definition at line 25 of file TAngularCorrelation.h.

Referenced by FitSlices(), and GetFWHMHst().

◆ fGroupAngles

std::vector<Double_t> TAngularCorrelation::fGroupAngles
private

array correlating angular index with group assignment

Definition at line 39 of file TAngularCorrelation.h.

Referenced by AssignGroupMaps(), GenerateModifiedAngles(), GenerateModifiedIndices(), GetGroupAngleFromIndex(), and PrintGroupAngleMap().

◆ fGrouped

Bool_t TAngularCorrelation::fGrouped
private

switch to indicate a folded correlation

Definition at line 41 of file TAngularCorrelation.h.

Referenced by CreateGraphFromHst(), DivideByWeights(), GenerateModifiedAngles(), GenerateModifiedIndices(), Modify2DSlice(), and PrintModifiedConditions().

◆ fGroups

std::vector<Int_t> TAngularCorrelation::fGroups
private

array correlating angular index with weight (number of detector pairs at that index)

Definition at line 38 of file TAngularCorrelation.h.

Referenced by AssignGroupMaps(), GenerateModifiedAngles(), GenerateModifiedIndices(), GenerateModifiedMaps(), GetGroupFromIndex(), GetNumGroups(), Modify2DSlice(), and PrintGroupIndexMap().

◆ fIndexCorrelation

TH1D* TAngularCorrelation::fIndexCorrelation
private

◆ fIndexMap

std::map<Int_t, std::map<Int_t, Int_t> > TAngularCorrelation::fIndexMap
private

array of 1D histograms used to create fIndexCorrelations

Definition at line 31 of file TAngularCorrelation.h.

Referenced by GenerateGroupMaps(), GenerateMaps(), and GetAngularIndex().

◆ fIndexMapSize

Int_t TAngularCorrelation::fIndexMapSize
private

number of angular indices

Definition at line 33 of file TAngularCorrelation.h.

Referenced by GenerateGroupMaps(), GenerateMaps(), and PrintIndexMap().

◆ fModifiedAngles

std::vector<Double_t> TAngularCorrelation::fModifiedAngles
private

◆ fModifiedIndices

std::vector<Int_t> TAngularCorrelation::fModifiedIndices
private

switch to indicate a grouped correlation

Definition at line 44 of file TAngularCorrelation.h.

Referenced by ClearModifiedMaps(), GenerateModifiedMaps(), GetModifiedIndex(), GetNumModIndices(), and PrintModifiedIndexMap().

◆ fModifiedWeights

std::vector<Int_t> TAngularCorrelation::fModifiedWeights
private

◆ fNumIndices

Int_t TAngularCorrelation::fNumIndices {0}
private

2D square array correlating array number pairs with angular index

Definition at line 32 of file TAngularCorrelation.h.

Referenced by CheckGroups(), GenerateGroupMaps(), GenerateMaps(), GenerateModifiedAngles(), GenerateModifiedIndices(), and GenerateModifiedMaps().

◆ fPeaks

std::map<Int_t, TPeak*> TAngularCorrelation::fPeaks
private

1D plot of FWHM vs. angular index

Definition at line 26 of file TAngularCorrelation.h.

Referenced by GetPeak(), SetPeak(), UpdateDiagnostics(), and UpdateIndexCorrelation().

◆ fWeights

std::vector<Int_t> TAngularCorrelation::fWeights
private

array correlating angular index with opening angle

Definition at line 35 of file TAngularCorrelation.h.

Referenced by CheckMaps(), GenerateGroupMaps(), GenerateMaps(), GenerateModifiedMaps(), GetWeightFromIndex(), GetWeightsSize(), and PrintWeights().