#include "hmetamatchpar.h" |
HMetaMatchPar
class description - source file - inheritance tree (.pdf)
public:
HMetaMatchPar(const char* name = "MetaMatchPar", const char* title = "Meta match parameters", const char* context = "MetaMatchProductionCuts")
HMetaMatchPar(const HMetaMatchPar&)
~HMetaMatchPar()
static TClass* Class()
virtual void clear()
virtual Bool_t getParams(HParamList*)
Float_t getRichIPUQualityCut(Int_t s)
Float_t getRichIPUSigmaPhi(Int_t s)
Float_t getRichIPUSigmaPhiOffset(Int_t s)
Float_t getRichIPUThetaMaxCut(Int_t s)
Float_t getRichIPUThetaMinCut(Int_t s)
Float_t getRichQualityCut(Int_t s)
Float_t getRichSigmaPhi(Int_t s)
Float_t getRichSigmaPhiOffset(Int_t s)
Float_t getRichThetaMaxCut(Int_t s)
Float_t getRichThetaMinCut(Int_t s)
Float_t getShowerQualityCut(Int_t s)
Float_t getShowerSigmaXMdc(Int_t s)
Float_t getShowerSigmaXOffset(Int_t s)
Float_t getShowerSigmaYMdc(Int_t s)
Float_t getShowerSigmaYOffset(Int_t s)
Float_t getTofQualityCut(Int_t s)
Float_t getTofSigmaX(Int_t s)
Float_t getTofSigmaXOffset(Int_t s)
Float_t getTofSigmaY(Int_t s)
Float_t getTofSigmaYOffset(Int_t s)
virtual Bool_t init(HParIo*, Int_t* set = 0)
virtual TClass* IsA() const
HMetaMatchPar& operator=(const HMetaMatchPar&)
virtual void putParams(HParamList*)
void setRichIPUQualityCut(Float_t v, Int_t s)
void setRichIPUSigmaPhi(Float_t v, Int_t s)
void setRichIPUSigmaPhiOffset(Float_t v, Int_t s)
void setRichIPUThetaMaxCut(Float_t v, Int_t s)
void setRichIPUThetaMinCut(Float_t v, Int_t s)
void setRichQualityCut(Float_t v, Int_t s)
void setRichSigmaPhi(Float_t v, Int_t s)
void setRichSigmaPhiOffset(Float_t v, Int_t s)
void setRichThetaMaxCut(Float_t v, Int_t s)
void setRichThetaMinCut(Float_t v, Int_t s)
void setShowerQualityCut(Float_t v, Int_t s)
void setShowerSigmaXMdc(Float_t v, Int_t s)
void setShowerSigmaXOffset(Float_t v, Int_t s)
void setShowerSigmaYMdc(Float_t v, Int_t s)
void setShowerSigmaYOffset(Float_t v, Int_t s)
void setTofQualityCut(Float_t v, Int_t s)
void setTofSigmaX(Float_t v, Int_t s)
void setTofSigmaXOffset(Float_t v, Int_t s)
void setTofSigmaY(Float_t v, Int_t s)
void setTofSigmaYOffset(Float_t v, Int_t s)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
virtual Int_t write(HParIo*)
protected:
TArrayF richThetaMinCut lower limit of delta theta cut in RICH MDC matching
TArrayF richThetaMaxCut upper limit of delta theta cut in RICH MDC matching
TArrayF richSigmaPhi sigma phi of RICH MDC matching
TArrayF richSigmaPhiOffset phi-offset for sigma in RICH MDC matching
TArrayF richQualityCut cut for quality RICH MDC matching
TArrayF richIPUThetaMinCut lower limit of delta theta cut in RICHIPU MDC matching
TArrayF richIPUThetaMaxCut upper limit of delta theta cut in RICHIPU MDC matching
TArrayF richIPUSigmaPhi sigma phi of RICHIPU MDC matching
TArrayF richIPUSigmaPhiOffset phi-offset for sigma in RICHIPU MDC matching
TArrayF richIPUQualityCut cut for quality RICHIPU MDC matching
TArrayF showerSigmaXMdc sigma of MDC segment cross point of SHOWER
TArrayF showerSigmaYMdc sigma of MDC segment cross point of SHOWER
TArrayF showerSigmaXOffset x-offset for sigma in MDC SHOWER matching
TArrayF showerSigmaYOffset y-offset for sigma in MDC SHOWER matching
TArrayF showerQualityCut cut for quality of MDC SHOWER matching
TArrayF tofSigmaX sigma (x-dir) of MDC TOF matching
TArrayF tofSigmaY sigma (y-dir) of MDC TOF matching
TArrayF tofSigmaXOffset x-offset for sigma in MDC TOF matching
TArrayF tofSigmaYOffset y-offset for sigma in MDC TOF matching
TArrayF tofQualityCut cut for quality of MDC TOF matching
HMetaMatchPar
Parameter container for HMetaMatchF
Rich:
Tr - angle theta of ring from HRichHit (in degree) in lab.coor.sys.
Pr - angle phi of ring from HRichHit (in degree) in lab.coor.sys.
Tm - angle theta of ring from HRichHit (in degree) in lab.coor.sys.
Pm - angle phi of ring from HRichHit (in degree) in lab.coor.sys.
SigmaTheta= (richThetaMaxCut - richThetaMinCut)/2.
Toffset = (richThetaMinCut + richThetaMaxCut)/2.
qualityRich =
sqrt[((Pr - Pm - richSigmaPhiOffset)*sin(Tm)/richSigmaPhi)^2 +
((Tr - Tm - Toffset)/SigmaTheta)^2]
Condition of RICH MDC matching: qualityRich < richQualityCut
Parameters preparation (for each sector):
From distribution of (Tr-Tm) to get
window "richThetaMinCut" - "richThetaMaxCut".
From distribution of (Pr-Pm) to get (by Gaus approximation for example)
"richSigmaPhiOffset" (mean of approximation).
From distribution of (Pr-Pm-richSigmaPhiOffset)*sin(Tm) to get
"richSigmaPhi" (sigma of this distr.).
Select "richQualityCut", for example 1.0.
RichIPU:
Tr - angle theta of ring from HRichHitIPU (in degree) in lab.coor.sys.
Pr - angle phi of ring from HRichHitIPU (in degree) in lab.coor.sys.
Tm - angle theta of ring from HRichHitIPU (in degree) in lab.coor.sys.
Pm - angle phi of ring from HRichHitIPU (in degree) in lab.coor.sys.
SigmaTheta= (richIPUThetaMaxCut - richIPUThetaMinCut)/2.
Toffset = (richIPUThetaMinCut + richIPUThetaMaxCut)/2.
qualityRichIPU =
sqrt[((Pr - Pm - richIPUSigmaPhiOffset)*sin(Tm)/richIPUSigmaPhi)^2 +
((Tr - Tm - Toffset)/SigmaTheta)^2]
Condition of RICHIPU MDC matching: qualityIPURich < richIPUQualityCut
Parameters preparation (for each sector):
From distribution of (Tr-Tm) to get
window "richIPUThetaMinCut" - "richIPUThetaMaxCut".
From distribution of (Pr-Pm) to get (by Gaus approximation for
example) "richIPUSigmaPhiOffset" (mean of this distr.).
From distribution of (Pr-Pm-richIPUSigmaPhiOffset)*sin(Tm) to get
"richIPUSigmaPhi" (sigma of this distr.).
Select "richIPUQualityCut", for example 1.0
Shower:
Xs,Ys - shower hit position in coordinate system of shower module
dXs,dYs - hit position errors (== HShowerHit::getSigmaX(), getSigmaY())
Xm,Ym - mdc segment cross point with shower module in coordinate system
of corresponding shower module
qualityShower =
sqrt[((Xs - Xm - showerSigmaXOffset)/sqrt(dXs^2 + showerSigmaXMdc^2))^2 +
((Ys - Ym - showerSigmaYOffset)/sqrt(dYs^2 + showerSigmaYMdc^2))^2]
Condition of SHOWER MDC matching: qualityShower < showerQualityCut
Parameters preparation (for each sector):
From distribution of (Xs-Xm) to get "showerSigmaXOffset"
(mean of this distr.).
From distribution of (Xs-Xm-showerSigmaXOffset)/dXs (!) to get
sigma of this distribution.
If sigma > 1. to calculate "showerSigmaXMdc" = sqrt(sigma^2 - 1.),
otherwise set "showerSigmaXMdc" = 0.
From distribution of (Ys-Ym) to get "showerSigmaYOffset".
From distribution of (Ys-Ym-showerSigmaYOffset)/dYs (!) to get
sigma of this distribution.
If sigma > 1. to calculate "showerSigmaYMdc" = sqrt(sigma^2 - 1.),
otherwise set "showerSigmaYMdc" = 0.
Select "showerQualityCut", for example 5.0 (five sigmas cut).
Tof:
Xt,Yt - toh hit (or tof cluster position in coordinate system of tof module
Xm,Ym - mdc segment cross point with tof module in coordinate system
of corresponding tof module
qualityTof = sqrt[ ((Xt - Xm - tofSigmaXOffset)/tofSigmaX)^2 +
((Yt - Ym - tofSigmaYOffset)/tofSigmaY)^2 ]
Condition of TOF MDC matching: qualityTof < tofQualityCut
Parameters preparation (for each sector):
From distribution of (Xt-Xm) to get "tofSigmaX" (sigma of this distr.)
and "tofSigmaXOffset" (mean of this distr).
From distribution of (Yt-Ym) to get "tofSigmaY" (sigma of this distr.)
and "tofSigmaYOffset" (mean of this distr).
Select "tofQualityCut", for example 5.0 (five sigmas cut).
HMetaMatchPar(const char* name,
const char* title,
const char* context)
: HParCond(name,title,context)
constructor
Bool_t init(HParIo* inp,Int_t* set)
initializes the container from an input
Int_t write(HParIo* output)
writes the container to an output
void clear(void)
all parameters are initialized with 0.
void putParams(HParamList* l)
puts all parameters to the parameter list, which is used by the io
Bool_t getParams(HParamList* l)
gets all parameters from the parameter list, which is used by the io
Inline Functions
void ~HMetaMatchPar()
Float_t getRichThetaMinCut(Int_t s)
Float_t getRichThetaMaxCut(Int_t s)
Float_t getRichSigmaPhi(Int_t s)
Float_t getRichSigmaPhiOffset(Int_t s)
Float_t getRichQualityCut(Int_t s)
Float_t getRichIPUThetaMinCut(Int_t s)
Float_t getRichIPUThetaMaxCut(Int_t s)
Float_t getRichIPUSigmaPhi(Int_t s)
Float_t getRichIPUSigmaPhiOffset(Int_t s)
Float_t getRichIPUQualityCut(Int_t s)
Float_t getShowerSigmaXMdc(Int_t s)
Float_t getShowerSigmaYMdc(Int_t s)
Float_t getShowerSigmaXOffset(Int_t s)
Float_t getShowerSigmaYOffset(Int_t s)
Float_t getShowerQualityCut(Int_t s)
Float_t getTofSigmaX(Int_t s)
Float_t getTofSigmaY(Int_t s)
Float_t getTofSigmaXOffset(Int_t s)
Float_t getTofSigmaYOffset(Int_t s)
Float_t getTofQualityCut(Int_t s)
void setRichThetaMinCut(Float_t v, Int_t s)
void setRichThetaMaxCut(Float_t v, Int_t s)
void setRichSigmaPhi(Float_t v, Int_t s)
void setRichSigmaPhiOffset(Float_t v, Int_t s)
void setRichQualityCut(Float_t v, Int_t s)
void setRichIPUThetaMinCut(Float_t v, Int_t s)
void setRichIPUThetaMaxCut(Float_t v, Int_t s)
void setRichIPUSigmaPhi(Float_t v, Int_t s)
void setRichIPUSigmaPhiOffset(Float_t v, Int_t s)
void setRichIPUQualityCut(Float_t v, Int_t s)
void setShowerSigmaXMdc(Float_t v, Int_t s)
void setShowerSigmaYMdc(Float_t v, Int_t s)
void setShowerSigmaXOffset(Float_t v, Int_t s)
void setShowerSigmaYOffset(Float_t v, Int_t s)
void setShowerQualityCut(Float_t v, Int_t s)
void setTofSigmaX(Float_t v, Int_t s)
void setTofSigmaY(Float_t v, Int_t s)
void setTofSigmaXOffset(Float_t v, Int_t s)
void setTofSigmaYOffset(Float_t v, Int_t s)
void setTofQualityCut(Float_t v, Int_t s)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
HMetaMatchPar HMetaMatchPar(const HMetaMatchPar&)
HMetaMatchPar& operator=(const HMetaMatchPar&)
Last update: 24/11/2004 by V. Pechenov
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.