class HMdcTrackParam: public HMdcLineParam

_HADES_CLASS_DESCRIPTION


  HMdcTrackParam

    Class keep track fit parameters


Function Members (Methods)

public:
HMdcTrackParam()
HMdcTrackParam(const HMdcTrackParam&)
virtual~HMdcTrackParam()
voidTObject::AbstractMethod(const char* method) const
voidaddTimeOffsetDer1(TMatrixD& grad2)
voidaddTimeOffsetDer2(TMatrixD& grad2)
voidaddToFunct(Double_t add, Double_t wt)
voidHMdcLineParam::addToParam(Int_t ip, Double_t add)
voidHMdcLineParam::addToParam(Int_t ip1, Double_t add1, Int_t ip2, Double_t add2)
voidaddToSumsDevWt(Int_t mod, Double_t dev, Double_t wtNorm)
voidaddToTOffsetDer(Int_t m, Int_t k, Double_t add)
voidaddToTOffsetErr(Int_t m, Double_t* dTdA, Double_t wtNorm)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Double_tcalcChi2PerDF(Int_t nGWires = 0)
voidcalcTimeOffsets(Int_t tofFlag)
voidcalcTimeOffsetsErr()
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
voidclearFunct()
voidclearTOffsetDer()
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
Bool_tHMdcLineParam::compare(const HMdcLineParam& tp, Double_t* lim)
Bool_tHMdcLineParam::compare(const HMdcLineParam& tp, Double_t* lim, Double_t fac)
virtual voidTObject::Copy(TObject& object) const
voidcopyAllParam(const HMdcTrackParam& tp)
voidcopyLine(HMdcTrackParam& tp)
voidcopyNewParam(const HMdcTrackParam& tp)
voidcopyNMods(HMdcTrackParam& p)
voidHMdcLineParam::copyParam(const HMdcLineParam& lp)
voidcopyParAndAdd(const HMdcTrackParam& tp, Int_t ip, Double_t add)
voidcopyParAndAdd(const HMdcTrackParam& tp, Int_t ip1, Double_t add1, Int_t ip2, Double_t add2)
voidcopyPlanes(HMdcTrackParam& p)
voidcopyTimeOffsets(const HMdcTrackParam& tp)
voidcorrectMinTimeOffsets(Double_t minTos)
Double_tHMdcLineParam::dDirXdX1() const
Double_tHMdcLineParam::dDirXdX2() const
Double_tHMdcLineParam::dDirYdY1() const
Double_tHMdcLineParam::dDirYdY2() const
Double_tHMdcLineParam::dDirZdX1() const
Double_tHMdcLineParam::dDirZdX2() const
Double_tHMdcLineParam::dDirZdY1() const
Double_tHMdcLineParam::dDirZdY2() const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
Double_tHMdcLineParam::dX() const
Double_tHMdcLineParam::dY() const
Double_tHMdcLineParam::dZ() const
Double_tHMdcLineParam::dZ1dX1() const
Double_tHMdcLineParam::dZ1dY1() const
Double_tHMdcLineParam::dZ2dX2() const
Double_tHMdcLineParam::dZ2dY2() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
voidfillClusFit(HMdcClusFit* fClusFit) const
voidfillErrorsMatr(TMatrixD& matrH)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Double_tfunctional() const
Double_tgetChi2() const
const HGeomVector&HMdcLineParam::getDir() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
HSymMat4&getErrMatr()
Double_t*getErrTimeOffset()
HMdcPlane*HMdcLineParam::getFirstPlane()
const HMdcPointOnPlane&HMdcLineParam::getFisrtPoint() const
virtual const char*TObject::GetIconName() const
Int_tgetIterNumb() const
Int_tHMdcLineParam::getMod() const
virtual const char*TObject::GetName() const
Double_tgetNormFunctional() const
Int_tgetNumOfGoodWires() const
Int_tgetNumParam() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Float_tgetParErr(Int_t i) const
Double_tHMdcLineParam::getPhiDeg() const
Double_tHMdcLineParam::getPhiRad() const
Int_tHMdcLineParam::getSec() const
HMdcPlane*HMdcLineParam::getSecondPlane()
const HMdcPointOnPlane&HMdcLineParam::getSecondPoint() const
Double_tgetSumWeight() const
Double_tgetSumWtNorm(Int_t m) const
Double_tHMdcLineParam::getThetaDeg() const
Double_tHMdcLineParam::getThetaRad() const
Double_t*getTimeOffset()
Double_tgetTimeOffset(Int_t m) const
voidgetTimeOffsetDer(Double_t* der)
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
voidincIterNumb()
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Double_tisFunctRelChangLess(Double_t lim) const
Short_tisMdcTimeOffsetFixed(Int_t m) const
Bool_tTObject::IsOnHeap() const
Short_tisSegTimeOffsetFixed(Int_t s) const
virtual Bool_tTObject::IsSortable() const
Short_tisTrackTimeOffsetFixed() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
Double_toldFunctional() const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
HMdcTrackParam&operator()(const HMdcTrackParam& tp, Int_t ip, Double_t add)
HMdcTrackParam&operator()(const HMdcTrackParam& tp, Int_t ip1, Double_t add1, Int_t ip2, Double_t add2)
Bool_toperator<(const HMdcTrackParam& f) const
Bool_toperator<(Double_t f) const
HMdcTrackParam&operator=(const HMdcTrackParam&)
Bool_toperator>(const HMdcTrackParam& f) const
Bool_toperator>(Double_t f) const
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
voidprintErrors()
voidprintFunctChange(const Char_t* title = 0) const
voidprintParam(const Char_t* title = 0) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
voidsaveFunct()
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidHMdcLineParam::setCoorSys(Int_t s, Int_t m = -1)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidHMdcLineParam::setFirstPlane(HMdcPlane* fp)
voidsetFixedTimeOffset(Double_t o1, Double_t o2, Double_t o3, Double_t o4)
voidsetIterNumb(Int_t it = 0)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetOldFunct(HMdcTrackParam& par)
voidsetOneSecData()
voidHMdcLineParam::setParam(const HGeomVector& point, const HGeomVector& dir)
voidHMdcLineParam::setParam(Int_t ip, Double_t val)
voidHMdcLineParam::setParam(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2)
voidHMdcLineParam::setScParam(const Double_t* v1, Double_t s, const Double_t* v2)
voidHMdcLineParam::setScParam(const HMdcLineParam& tp, const Double_t* v1, Double_t s, const Double_t* v2)
voidHMdcLineParam::setSecondPlane(HMdcPlane* sp)
voidHMdcLineParam::setSegmentLine(Double_t r, Double_t z, Double_t theta, Double_t phi)
voidsetTimeOffsets(Double_t* tos, Int_t size = 4)
voidsetTwoSecData()
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
Bool_ttestParameters(Double_t tosMin, Double_t tosMax)
voidHMdcLineParam::transFrom(const HGeomTransform* tr, Int_t sec = -3, Int_t mod = -3)
voidHMdcLineParam::transTo(const HGeomTransform* tr, Int_t sec = -3, Int_t mod = -3)
voidunfixTimeOffset()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
Double_tHMdcLineParam::x1() const
Double_tHMdcLineParam::x2() const
Double_tHMdcLineParam::y1() const
Double_tHMdcLineParam::y2() const
Double_tHMdcLineParam::z1() const
Double_tHMdcLineParam::z2() const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
Double_tcalcTosErr()
Double_tcalcTosErr(Int_t m)
Double_tcalcTosErr(Int_t m1, Int_t m2)
Double_tcalcTosErr(Double_t sc1, Double_t sc2, Double_t erri2)

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Double_tchi2perDF=funct/(numOfGoodWires-nParam+1)
Double_tdTdPar[4][8][nParam!][nMod]
HGeomVectorHMdcLineParam::dirLine direction
HSymMat4errMatrMatrix of errors
Double_terrTimeOffset[8]errors of time offsets for each MDC in sec.
Double_tfunctfunctional
Short_tisTmoffFixedif bit 0-7 eq.1 timeOffset for mdc is fixed
Int_titerNumbnumber of iteration
Int_tHMdcLineParam::modline in coor.sys. of this module
Int_tnMods=4 - normal data; =8 - cosmic two sectors
Int_tnParamnumber of parameters
Int_tnumOfGoodWiresnumber of wires passed fit
Double_toldFunctprevious value of functional
HMdcPointOnPlaneHMdcLineParam::point1First point on the line
HMdcPointOnPlaneHMdcLineParam::point2Second point on the line
Double_tsDev[8]For timeOffset calculation.
Double_tsWht[8][4] - for each module.
Int_tHMdcLineParam::secline in coor.sys. of this sector
Double_tsumWeightsum of weights
Double_ttimeOffset[8]time offsets for each MDC in sec.
Int_ttimeOffsetFlag1 - calc. time offset for each MDC

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HMdcTrackParam(const HMdcTrackParam& )
void copyNewParam(const HMdcTrackParam& tp)
void copyParAndAdd(const HMdcTrackParam& tp, Int_t ip, Double_t add)
void copyParAndAdd(const HMdcTrackParam& tp, Int_t ip1, Double_t add1, Int_t ip2, Double_t add2)
void clearFunct(void)
void calcTimeOffsets(Int_t tofFlag)
 tofFlag=1 - calcul. timeOffsets for each Mdc
 tofFlag=2 - calcul. timeOffsets for each segment
 else      - calcul. one timeOffset for all mdc's
Double_t getSumWtNorm(Int_t m) const
 Return sum of weight/errTdcTime^2 for all valid wires
void correctMinTimeOffsets(Double_t minTos)
 if timeOffset[m]<minTos timeOffset[m]=minTos
void addToTOffsetErr(Int_t m, Double_t* dTdA, Double_t wtNorm)
void clearTOffsetDer(void)
void getTimeOffsetDer(Double_t* der)
void addTimeOffsetDer1(TMatrixD& grad2)
void addTimeOffsetDer2(TMatrixD& grad2)
void calcTimeOffsetsErr(void)
Double_t calcTosErr(Int_t m)
Double_t calcTosErr(Int_t m1, Int_t m2)
Double_t calcTosErr(Int_t m)
void fillErrorsMatr(TMatrixD& matrH)
Double_t calcChi2PerDF(Int_t nGWires = 0)
void printParam(const Char_t* title = 0) const
void printFunctChange(const Char_t* title = 0) const
void printErrors(void)
void fillClusFit(HMdcClusFit* fClusFit) const
Bool_t testParameters(Double_t tosMin, Double_t tosMax)
void setFixedTimeOffset(Double_t o1, Double_t o2, Double_t o3, Double_t o4)
void setTimeOffsets(Double_t* tos, Int_t size = 4)
void copyPlanes(HMdcTrackParam& p)
void copyAllParam(const HMdcTrackParam& tp)
void copyLine(HMdcTrackParam& tp)
void copyTimeOffsets(const HMdcTrackParam& tp)
Float_t getParErr(Int_t i) const
HMdcTrackParam& operator()(const HMdcTrackParam& tp, Int_t ip, Double_t add)
HMdcTrackParam& operator()(const HMdcTrackParam& tp, Int_t ip1, Double_t add1, Int_t ip2, Double_t add2)
Double_t isFunctRelChangLess(Double_t lim) const
HMdcTrackParam(const HMdcTrackParam& )
~HMdcTrackParam(void)
{}
void setOneSecData(void)
{nMods = 4;}
void setTwoSecData(void)
{nMods = 8;}
void copyNMods(HMdcTrackParam& p)
{nMods = p.nMods;}
void setIterNumb(Int_t it = 0)
{iterNumb=it;}
void incIterNumb(void)
{iterNumb++;}
Int_t getIterNumb(void)
{return iterNumb;}
Int_t getNumParam(void)
{return nParam;}
void setOldFunct(HMdcTrackParam& par)
{oldFunct=par.funct;}
void saveFunct(void)
{oldFunct=funct;}
void addToSumsDevWt(Int_t mod, Double_t dev, Double_t wtNorm)
Double_t* getTimeOffset(Int_t m) const
{return timeOffset;}
Double_t getTimeOffset(Int_t m) const
{return timeOffset[m];}
Short_t isMdcTimeOffsetFixed(Int_t m) const
{return (isTmoffFixed>>m)&1;}
Short_t isSegTimeOffsetFixed(Int_t s) const
{return (isTmoffFixed>>(s*2))&3;}
Short_t isTrackTimeOffsetFixed(void)
{return isTmoffFixed ? 1:0;}
void addToTOffsetDer(Int_t m, Int_t k, Double_t add)
{dTdPar[k][m]+=add;}
void addToFunct(Double_t add, Double_t wt)
{funct+=add; sumWeight+=wt;}
Double_t getSumWeight(void)
{return sumWeight;}
Double_t* getErrTimeOffset(void)
{return errTimeOffset;}
HSymMat4& getErrMatr(void)
{return errMatr;}
Double_t functional(void)
{return funct;}
Double_t getNormFunctional(void)
{return funct/sumWeight;}
Double_t oldFunctional(void)
{return oldFunct;}
Int_t getNumOfGoodWires(void)
{return numOfGoodWires;}
Double_t getChi2(void)
{return chi2perDF;}
void unfixTimeOffset(void)
{isTmoffFixed=0;}
Double_t calcTosErr(Int_t m)

Last change: Sat May 22 13:04:09 2010
Last generated: 2010-05-22 13:04

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.