EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TpcSpaceChargeReconstructionHelper Class Reference

#include <fun4all_coresoftware/blob/master/offline/packages/tpccalib/TpcSpaceChargeReconstructionHelper.h>

Static Public Member Functions

static void extrapolate_z (TH3 *hin)
 z extrapolation
 
static std::tuple< double, double > get_zref_range (double r)
 get reference z range used for phi extrapolation normalization at a given radius
 
static void extrapolate_phi1 (TH3 *hin)
 first phi extrapolation
 
static void extrapolate_phi2 (TH3 *hin)
 second phi extrapolation
 
static std::tuple< TH3 *, TH3 * > split (TH3 *hin)
 separate positive and negative z histograms
 
static TH3 * copy_histogram (TH3 *hin, const TString &name)
 

Detailed Description

Definition at line 15 of file TpcSpaceChargeReconstructionHelper.h.

View newest version in sPHENIX GitHub at line 15 of file TpcSpaceChargeReconstructionHelper.h

Member Function Documentation

TH3 * TpcSpaceChargeReconstructionHelper::copy_histogram ( TH3 *  hin,
const TString &  name 
)
static

copy input histogram into output, with new name, while adding two "guarding bins" on each axis, with identical content and error as the first and last bin of the original histogram this is necessary for being able to call TH3->Interpolate() when using these histograms to correct for the space charge distortions. TODO: is this really necessary ? Possibly one could just use the bin content for the correction rather than using TH3->Interpolate, in which case the "guarding bins" would be unnecessary. Should check if it leads to a significant deterioration of the momentum resolution

Definition at line 255 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 255 of file TpcSpaceChargeReconstructionHelper.cc

References charm_jet_strange_helicity::bins, ir(), and phibins.

Referenced by TpcSpaceChargeMatrixInversion::calculate_distortions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void TpcSpaceChargeReconstructionHelper::extrapolate_phi1 ( TH3 *  hin)
static

first phi extrapolation

copy the full z dependence of reference sector to all other sectors, separately for positive and negative z, normalized by the measurement from provided micromegas, at the appropriate z

Definition at line 93 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 93 of file TpcSpaceChargeReconstructionHelper.cc

References kdfinder::abs(), get_zref_range(), ir(), M_PI, phi, and z.

Referenced by TpcSpaceChargeMatrixInversion::calculate_distortions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void TpcSpaceChargeReconstructionHelper::extrapolate_phi2 ( TH3 *  hin)
static

second phi extrapolation

for each r, z and phi bin, linearly extrapolate between neighbor phi sector measurements

Definition at line 153 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 153 of file TpcSpaceChargeReconstructionHelper.cc

References ir(), M_PI, phi, and square().

Referenced by TpcSpaceChargeMatrixInversion::calculate_distortions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void TpcSpaceChargeReconstructionHelper::extrapolate_z ( TH3 *  hin)
static

z extrapolation

interpolate between micromegas in the fully equiped sector

Definition at line 34 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 34 of file TpcSpaceChargeReconstructionHelper.cc

References ir(), square(), and z.

Referenced by TpcSpaceChargeMatrixInversion::calculate_distortions().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::tuple< double, double > TpcSpaceChargeReconstructionHelper::get_zref_range ( double  r)
static

get reference z range used for phi extrapolation normalization at a given radius

Definition at line 89 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 89 of file TpcSpaceChargeReconstructionHelper.cc

Referenced by extrapolate_phi1().

+ Here is the caller graph for this function:

std::tuple< TH3 *, TH3 * > TpcSpaceChargeReconstructionHelper::split ( TH3 *  hin)
static

separate positive and negative z histograms

split histograms in two, the first with negative z values only, the second with positive z values this must be done before adding guarding bins around each axis, in order to prevent artifacts during calls to Interpolate at the central membrane (z = 0)

Definition at line 203 of file TpcSpaceChargeReconstructionHelper.cc.

View newest version in sPHENIX GitHub at line 203 of file TpcSpaceChargeReconstructionHelper.cc

References Acts::UnitConstants::h.

Referenced by TpcSpaceChargeMatrixInversion::calculate_distortions().

+ Here is the caller graph for this function:


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