ROOT logo
AliRoot » TPC » BASE » AliTPCParam

class AliTPCParam: public AliDetectorParam

Manager and of geomety  classes for set: TPC

!sectors are numbered from  0
!pad rows are numbered from 0

  12.6.   changed z relative
Origin:  Marian Ivanov, Uni. of Bratislava, ivanov@fmph.uniba.sk


Function Members (Methods)

public:
AliTPCParam()
virtual~AliTPCParam()
voidTObject::AbstractMethod(const char* method) const
voidAdjustCosSin(Int_t isec, Float_t& cos, Float_t& sin) const
Bool_tAdjustSectorRow(Int_t index, Int_t& sector, Int_t& row) const
virtual voidTObject::AppendPad(Option_t* option = "")
static Double_tBetheBlochAleph(Double_t bb, Int_t type = 0)
virtual voidTObject::Browse(TBrowser* b)
virtual Int_tCalcResponse(Float_t*, Int_t*, Int_t)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidCRTimePadtoYZ(Float_t&, Float_t&, const Float_t&, const Float_t&, Int_t, Int_t)
virtual voidCRXYZtoXYZ(Float_t*, const Int_t&, const Int_t&, Int_t) const
virtual voidCRYZtoTimePad(const Float_t&, const Float_t&, Float_t&, Float_t&, Int_t, Int_t)
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
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
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Bool_tAliDetectorParam::Get1DIndex(Int_t*, const Int_t*)
Float_tGetADCDynRange() const
Int_tGetADCSat() const
Float_tGetAngle(Int_t isec) const
virtual Float_t*AliDetectorParam::GetAnglesAccMomentum(Float_t* x, Int_t* index, Float_t* momentum, Float_t* angle)
Float_tGetAttCoef() const
static TVectorD*GetBetheBlochParamAlice()
TVectorD*GetBetheBlochParameters()
static TVectorD*GetBetheBlochParamNa49()
Float_tAliDetectorParam::GetBFiled()
Float_tGetChamberCenter(Int_t isec, Float_t* center = 0) const
Float_tGetChipGain() const
Float_tGetChipNorm() const
TGeoHMatrix*GetClusterMatrix(Int_t isec) const
virtual voidAliDetectorParam::GetClusterSize(Float_t*, Int_t*, Float_t*, Int_t, Float_t*)
Float_t*GetComposition()
Float_tGetDiffL() const
Float_tGetDiffT() const
virtual Option_t*TObject::GetDrawOption() const
Float_tGetDriftV() const
static Long_tTObject::GetDtorOnly()
Float_tGetEend() const
Float_tGetExp() const
Float_tGetFpot() const
TGraphErrors*GetGainSlopesHV() const
TGraphErrors*GetGainSlopesPT() const
Float_tGetGasGain() const
Float_tGetGateDelay() const
Int_tGetGeometryType() const
TGeoHMatrix*GetGlobalMatrix(Int_t isec) const
virtual const char*TObject::GetIconName() const
Int_tGetIndex(Int_t sector, Int_t row) const
Float_tGetInnerAngle() const
Float_tGetInnerAngleShift() const
Int_tGetInnerDummyWire() const
Float_tGetInnerFrameSpace() const
Int_tGetInnerNWires() const
Float_tGetInnerOffWire() const
Float_tGetInnerPadLength() const
Float_tGetInnerPadPitchLength() const
Float_tGetInnerPadPitchWidth() const
Float_tGetInnerPadWidth() const
Float_tGetInnerRadiusLow() const
Float_tGetInnerRadiusUp() const
Float_tGetInnerWireMount() const
Float_tGetInnerWWPitch() const
Float_tGetL1Delay() const
Float_tGetLastWireUp1() const
Double_tGetLowMaxY(Int_t irow) const
Float_tGetMaxDipVoltage() const
Float_tGetMaxFractionHVbad() const
Int_tGetMaxTBin() const
Float_tGetMaxVoltageDeviation() const
Bool_tGetMWPCReadout() const
virtual const char*TNamed::GetName() const
Int_tGetNCrossRows() const
virtual Bool_tAliDetectorParam::GetNDIndex(const Int_t*, Int_t*)
Int_tGetNInnerSector() const
Float_tGetNoise() const
Float_tGetNoiseNormFac() const
Float_tGetNominalVoltage(UInt_t i) const
Int_tGetNOuterSector() const
Int_tGetNPads(Int_t isector, Int_t irow) const
Int_tGetNPadsLow(Int_t irow) const
Int_tGetNPadsPerSegment(Int_t segmentID) const
Int_tGetNPadsUp(Int_t irow) const
Float_tGetNprim() const
Float_tAliDetectorParam::GetNPrimLoss()
Int_tGetNRow(Int_t isec) const
Int_tGetNRowLow() const
Int_tGetNRowsTotal() const
Int_tGetNRowUp() const
Int_tGetNRowUp1() const
Int_tGetNRowUp2() const
Int_tGetNSector() const
virtual Int_tGetNSegmentsTotal() const
UShort_tGetNTBinsBeforeL1() const
Float_tGetNTBinsL1() const
Float_tGetNtot() const
Float_tAliDetectorParam::GetNTotalLoss()
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
Float_tGetOmegaTau() const
virtual Option_t*TObject::GetOption() const
Int_tGetOuter1NWires() const
Float_tGetOuter1PadLength() const
Float_tGetOuter1PadPitchLength() const
Int_tGetOuter2NWires() const
Float_tGetOuter2PadLength() const
Float_tGetOuter2PadPitchLength() const
Float_tGetOuterAngle() const
Float_tGetOuterAngleShift() const
Int_tGetOuterDummyWire() const
Float_tGetOuterFrameSpace() const
Float_tGetOuterOffWire() const
Float_tGetOuterPadPitchWidth() const
Float_tGetOuterPadWidth() const
Float_tGetOuterRadiusLow() const
Float_tGetOuterRadiusUp() const
Float_tGetOuterWireMount() const
Float_tGetOuterWWPitch() const
Float_tGetOxyCont() const
Float_tGetPadCoupling() const
Float_tGetPadPitchLength(Int_t isector = 0, Int_t padrow = 0) const
Float_tGetPadPitchWidth(Int_t isector = 0) const
virtual Int_tGetPadRow(Float_t* xyz, Int_t* index) const
Float_tGetPadRowRadii(Int_t isec, Int_t irow) const
Float_tGetPadRowRadiiLow(Int_t irow) const
Float_tGetPadRowRadiiUp(Int_t irow) const
virtual Float_tAliDetectorParam::GetPrimaryLoss(Float_t*, Int_t*, Float_t*)
Int_t*GetResBin(Int_t i)
Float_t&GetResWeight(Int_t i)
Float_tGetRInnerFirstWire() const
Float_tGetRInnerLastWire() const
Float_tGetROuterFirstWire() const
Float_tGetROuterLastWire() const
Int_tGetSectorIndex(Float_t angle, Int_t row, Float_t z) const
virtual voidAliDetectorParam::GetSpaceResolution(Float_t*, Int_t*, Float_t*, Float_t, Int_t, Float_t*)
Bool_tGetStatus() const
Float_tGetTFWHM() const
virtual const char*TNamed::GetTitle() const
virtual Float_tAliDetectorParam::GetTotalLoss(Float_t*, Int_t*, Float_t*)
Float_tGetTotalNormFac() const
TGeoHMatrix*GetTrackingMatrix(Int_t isec) const
Float_tGetTSample() const
virtual UInt_tTObject::GetUniqueID() const
Double_tGetUpMaxY(Int_t irow) const
Float_tGetVoltageDipScanPeriod() const
Int_tGetWireSegment(Int_t sector, Int_t row) const
Float_tGetWmean() const
Float_tGetWWPitch(Int_t isector = 0) const
Float_tGetYInner(Int_t irow) const
Float_tGetYOuter(Int_t irow) const
Int_tGetZeroSup() const
Float_tGetZLength(Int_t sector = 0) const
virtual Float_tGetZOffset() const
Float_tGetZSigma() const
Float_tGetZWidth() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
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
Bool_tIsGeoRead()
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) 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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual Bool_tReadGeoMatrices()
virtual voidTObject::RecursiveRemove(TObject* obj)
static voidRegisterBBParam(TVectorD* param, Int_t position)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidSetADCDynRange(Float_t adcdynrange)
voidSetADCSat(Int_t adcsat)
voidSetAttCoef(Float_t AttCoef)
voidSetBetheBloch(TVectorD* v)
voidAliDetectorParam::SetBField(Float_t b)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetChipGain(Float_t ChipGain)
voidSetChipNorm(Float_t ChipNorm)
voidSetComposition(Float_t c1, Float_t c2, Float_t c3, Float_t c4, Float_t c5, Float_t c6)
virtual voidSetDefault()
voidSetDiffL(Float_t DiffL)
voidSetDiffT(Float_t DiffT)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
voidSetDriftV(Float_t DriftV)
static voidTObject::SetDtorOnly(void* obj)
voidSetEend(Float_t end)
voidSetExp(Float_t exp)
voidSetFpot(Float_t fpot)
voidSetGainSlopesHV(TGraphErrors* gainSlopesHV)
voidSetGainSlopesPT(TGraphErrors* gainSlopesPT)
voidSetGasGain(Float_t GasGain)
voidSetGateDelay(Float_t delay)
voidSetGeometryType(Int_t type)
voidSetInnerDummyWire(Int_t dummy)
voidSetInnerFrameSpace(Float_t frspace)
voidSetInnerNWires(Int_t nWires)
voidSetInnerOffWire(Float_t offset)
voidSetInnerPadLength(Float_t PadLength)
voidSetInnerPadPitchLength(Float_t PadPitchLength)
voidSetInnerPadPitchWidth(Float_t PadPitchWidth)
voidSetInnerPadWidth(Float_t PadWidth)
voidSetInnerRadiusLow(Float_t InnerRadiusLow)
voidSetInnerRadiusUp(Float_t InnerRadiusUp)
voidSetInnerWireMount(Float_t fmount)
voidSetInnerWWPitch(Float_t wwPitch)
voidSetL1Delay(Float_t delay)
voidSetLastWireUp1(Float_t wireUp1)
voidSetMaxDipVoltage(Float_t voltage)
voidSetMaxFractionHVbad(Float_t frac)
voidSetMaxTBin(Int_t maxtbin)
voidSetMaxVoltageDeviation(Float_t voltage)
voidSetMWPCReadout(Bool_t type)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNCrossRows(Int_t rows)
voidSetNoise(Float_t Noise)
voidSetNominalGainSlopes()
voidSetNominalVoltage(Float_t v, UInt_t i)
voidSetNprim(Float_t prim)
voidAliDetectorParam::SetNPrimLoss(Float_t loss)
voidSetNResponseMax(Int_t max)
voidSetNTBinsBeforeL1(UShort_t nbins)
voidSetNtot(Float_t ntot)
voidAliDetectorParam::SetNTotalLoss(Float_t loss)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetOmegaTau(Float_t OmegaTau)
voidSetOuter1NWires(Int_t nWires)
voidSetOuter1PadLength(Float_t PadLength)
voidSetOuter1PadPitchLength(Float_t PadPitchLength)
voidSetOuter2NWire(Int_t nWires)
voidSetOuter2PadLength(Float_t PadLength)
voidSetOuter2PadPitchLength(Float_t PadPitchLength)
voidSetOuterDummyWire(Int_t dummy)
voidSetOuterFrameSpace(Float_t frspace)
voidSetOuterOffWire(Float_t offset)
voidSetOuterPadPitchWidth(Float_t PadPitchWidth)
voidSetOuterPadWidth(Float_t PadWidth)
voidSetOuterRadiusLow(Float_t OuterRadiusLow)
voidSetOuterRadiusUp(Float_t OuterRadiusUp)
voidSetOuterWireMount(Float_t fmount)
voidSetOuterWWPitch(Float_t wwPitch)
voidSetOxyCont(Float_t OxyCont)
voidSetPadCoupling(Float_t PadCoupling)
voidSetResponseThreshold(Int_t threshold)
voidSetRInnerFirstWire(Float_t firstWire)
voidSetRInnerLastWire(Float_t lastWire)
voidSetROuterFirstWire(Float_t firstWire)
voidSetROuterLastWire(Float_t lastWire)
voidSetRowNLow(Int_t NRowLow)
voidSetRowNUp(Int_t NRowUp)
voidSetRowNUp1(Int_t NRowUp1)
voidSetRowNUp2(Int_t NRowUp2)
voidSetSectorAngles(Float_t innerangle, Float_t innershift, Float_t outerangle, Float_t outershift)
voidSetTFWHM(Float_t fwhm)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetTSample(Float_t TSample)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetVoltageDipScanPeriod(Float_t period)
voidSetWmean(Float_t wmean)
voidSetZeroSup(Int_t ZeroSup)
voidSetZLength(Float_t zlength)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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
TGeoHMatrix*Tracking2LocalMatrix(const TGeoHMatrix* geoMatrix, Int_t sector) const
virtual Bool_tTransform(Float_t* xyz, Int_t* index, Int_t* oindex)
Int_tTransform0to1(Float_t* xyz, Int_t* index) const
voidTransform1to2(Float_t* xyz, Int_t* index) const
voidTransform1to2Ideal(Float_t* xyz, Int_t* index) const
voidTransform2to1(Float_t* xyz, Int_t* index) const
voidTransform2to2(Float_t* xyz, Int_t* index, Int_t* oindex) const
Float_tTransform2to2NearestWire(Float_t* xyz, Int_t* index) const
Int_tTransform2to3(Float_t* xyz, Int_t* index) const
voidTransform2to5(Float_t* xyz, Int_t* index) const
virtual Int_tTransform2toPadRow(Float_t*, Int_t*) const
voidTransform3to4(Float_t* xyz, Int_t* index) const
voidTransform4to3(Float_t* xyz, Int_t* index) const
voidTransform4to8(Float_t* xyz, Int_t* index) const
voidTransform5to2(Float_t* xyz, Int_t* index) const
voidTransform6to8(Float_t* xyz, Int_t* index) const
voidTransform8to4(Float_t* xyz, Int_t* index) const
voidTransform8to6(Float_t* xyz, Int_t* index) const
virtual Bool_tUpdate()
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
virtual voidXYZtoCRXYZ(Float_t*, Int_t&, Int_t&, Int_t) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
Float_tfADCDynRangeinput dynamic range (mV)
Int_tfADCSatsaturation value of ADC (10 bits)
Float_tfAttCoefattachment coefitients
static TObjArray*fBBParamarray of the Bethe-Bloch parameters.
Float_tAliDetectorParam::fBFieldintensity of magnetic field
Bool_tfBMWPCReadoutindicate wire readout - kTRUE or GEM readout -kFALSE
TVectorD*fBetheBlochBethe-Bloch parametrization
Float_tfChipGainpreamp shaper constant
Float_tfChipNormpreamp shaper normalisation
TGeoHMatrix**fClusterMatrix![fNSector] transformation matrices of the cluster
Float_tfComposition[6]
Int_tfCurrentMax!current maximal dimension -calulated
Float_tfDiffLlongutudinal diffusion constant
Float_tfDiffTtangencial diffusion constant
Float_tfDriftVdrift velocity constant
Float_tfEendupper cutoff for de generation
Float_tfExpde = f(E) - energy loss parametrization
Float_tfFpotfirst ionisation potential
TGraphErrors*fGainSlopesHVgraph with the gain slope as function of HV - per chamber
TGraphErrors*fGainSlopesPTgraph with the gain slope as function of P/T - per chamber
Float_tfGasGaingas gain constant
Float_tfGateDelayDelay of L1 arrival for the TPC gate signal
Int_tfGeometryTypetype of geometry -0 straight rows
TGeoHMatrix**fGlobalMatrix![fNSector] fTrackingMatrix * fClusterMatrix
Float_tfInnerAngleopening angle of Inner sector
Float_tfInnerAngleShiftshift of first inner sector center to the 0
Int_tfInnerDummyWirenumber of wires without pad readout
Float_tfInnerFrameSpacespace for inner frame in the phi direction
Float_tfInnerOffWireoofset of first wire to the begining of the sector
Float_tfInnerPadLengthInner pad length
Float_tfInnerPadPitchLengthInner pad pitch length
Float_tfInnerPadPitchWidthInner pad pitch width
Float_tfInnerPadWidthInner pad width
Float_tfInnerRadiusLowlower radius of inner sector-IP
Float_tfInnerRadiusUpupper radius of inner sector-IP
Float_tfInnerWWPitchpitch between wires in inner sector - calculated
Float_tfInnerWireMountspace for wire mount, inner sector
Float_tfL1DelayDelay of L1 arrival for the TPC readout
Float_tfLastWireUp1position of the last wire in outer1 sector
Float_tfMaxDipVoltagemaximum voltage deviation from median before a dip event is marked
Float_tfMaxHVfractionBadmaximum fraction of bad HV entries (deviation from Median) before a chamber is marked bad
Int_tfMaxTBinmaximum time bin number
Float_tfMaxVoltageDeviationmaximum voltage deviation from nominal voltage before a chamber is masked
Int_tfNCrossRowsnumber of rows to crostalk calculation
Int_tfNInnerSectornumber of inner sectors -calculated
Int_tfNInnerWiresPerPadNumber of wires per pad
Int_tfNOuter1WiresPerPadNumber of wires per pad
Int_tfNOuter2WiresPerPadNumber of wires per pad
Int_tfNOuterSectornumber of outer sectors -calculated
Int_tfNPadsLow[600]Lower sector, number of pads per row -calculated
Int_tfNPadsUp[600]Upper sector, number of pads per row -calculated
Float_tAliDetectorParam::fNPrimLossnumber of produced primary electrons per cm
Int_tfNResponseMaxmaximal dimension of response
Int_tfNRowLownumber of pad rows per low sector -set
Int_tfNRowUpnumber of pad rows per sector up -calculated
Int_tfNRowUp1number of short pad rows per sector up -set
Int_tfNRowUp2number of long pad rows per sector up -set
Int_tfNSectortotal number of sectors -calculated
UShort_tfNTBinsBeforeL1Number of time bins before L1 arrival which are being read out
Float_tfNTBinsL1Overall L1 delay in time bins
Float_tAliDetectorParam::fNTotalLosstotal number of produced electrons per cm
TStringTNamed::fNameobject identifier
Float_tfNoisenoise sigma constant
Float_tfNoiseNormFacnormalisation factor to transform noise in electron to ADC channel
Float_tfNominalVoltage[72]nominal voltage in [V] per chamber
Float_tfNprimnumber of primary electrons/cm
Int_tfNtRowstotal number of rows in TPC -calculated
Float_tfNtottotal number of electrons/c (MIP)
Float_tfOmegaTauomega tau ExB coeficient
Float_tfOuter1PadLengthOuter pad length
Float_tfOuter1PadPitchLengthOuter pad pitch length
Float_tfOuter2PadLengthOuter pad length
Float_tfOuter2PadPitchLengthOuter pad pitch length
Float_tfOuterAngleopening angle of outer sector
Float_tfOuterAngleShiftshift of first sector center to the 0
Int_tfOuterDummyWirenumber of wires without pad readout
Float_tfOuterFrameSpacespace for outer frame in the phi direction
Float_tfOuterOffWireoofset of first wire to the begining of the sector
Float_tfOuterPadPitchWidthOuter pad pitch width
Float_tfOuterPadWidthOuter pad width
Float_tfOuterRadiusLowlower radius of outer sector-IP
Float_tfOuterRadiusUpupper radius of outer sector-IP
Float_tfOuterWWPitchpitch between wires in outer sector -calculated
Float_tfOuterWireMountspace for wire mount, outer sector
Float_tfOxyContoxygen content
Float_tfPadCouplingcoupling factor ration of anode signal
Float_tfPadRowLow[600]Lower sector, pad row radii -calculated
Float_tfPadRowUp[600]Upper sector, pad row radii -calculated
Float_tfRInnerFirstWireposition of the first wire -calculated
Float_tfRInnerLastWireposition of the last wire -calculated
Float_tfROuterFirstWireposition of the first wire -calulated
Float_tfROuterLastWireposition of the last wire -calculated
Int_t*fResponseBin!array with bins -calulated
Float_tfResponseThresholdthreshold for accepted response
Float_t*fResponseWeight!array with response -calulated
Float_t*fRotAngle[fNSector] sin and cos of rotation angles for
Float_tfTSamplesampling time
Float_tfTSigmawidth of the Preamp/Shaper function
TStringTNamed::fTitleobject title
Float_tfTotalNormFacfull normalisation factor - calculated
TGeoHMatrix**fTrackingMatrix![fNSector] transformation matrices of the tracking
Float_tfVoltageDipScanPeriodscanning period to detect a high volrage dip: event time stamp +- fVoltageDipScanPeriod [sec]
Float_tfWmeanmean energy for electron/ion pair
Float_tfYInner[600]Inner sector, wire-length
Float_tfYOuter[600]Outer sector, wire-length
Float_tfZLengthlength of the drift region of the TPC
Float_tfZWidthderived value calculated using TSample and driftw -computed
Int_tfZeroSupzero suppresion constant
Bool_tfbStatusindicates consistency of the data

Class Charts

Inheritance Chart:
TNamed
AliDetectorParam
AliTPCParam
AliTPCParamSR

Function documentation

AliTPCParam()
constructor sets the default parameters

~AliTPCParam()
destructor deletes some dynamicaly alocated variables

Int_t Transform0to1(Float_t* xyz, Int_t* index) const
 calculates sector number (index[1], undefined on input)
 xyz intact

Bool_t Transform(Float_t* xyz, Int_t* index, Int_t* oindex)
transformation from input coodination system to output coordination system
Int_t GetPadRow(Float_t* xyz, Int_t* index) const
calculates pad row of point xyz - transformation to system 8 (digit system)

void SetSectorAngles(Float_t innerangle, Float_t innershift, Float_t outerangle, Float_t outershift)
 set opening angles
Float_t GetInnerAngle() const
return angle
Float_t GetInnerAngleShift() const
return angle
Float_t GetOuterAngle() const
return angle
Float_t GetOuterAngleShift() const
return angle
Int_t GetIndex(Int_t sector, Int_t row) const
give index of the given sector and pad row
no control if the sectors and rows  are reasonable !!!

Bool_t AdjustSectorRow(Int_t index, Int_t& sector, Int_t& row) const
return sector and padrow for given index
if index is reasonable returns true else return false

void SetDefault()
set default parameters

const static  Int_t kMaxRows=600;

sector default parameters

Bool_t Update()
 update some calculated parameter which must be updated after changing "base"
 parameters
 for example we can change size of pads and according this recalculate number
 of pad rows, number of of pads in given row ....

void CleanGeoMatrices()
 clean geo matrices

Bool_t ReadGeoMatrices()
 read geo matrixes

TGeoHMatrix * Tracking2LocalMatrix(const TGeoHMatrix* geoMatrix, Int_t sector) const
 make local to tracking matrix

Bool_t GetStatus() const
get information about object consistency
Int_t GetNRowLow() const
get the number of pad rows in low sector
Int_t GetNRowUp() const
get the number of pad rows in up sector
Int_t GetNRowUp1() const
get the number of pad rows in up1 sector
Int_t GetNRowUp2() const
get the number of pad rows in up2 sector
Float_t GetPadRowRadiiLow(Int_t irow) const
get the pad row (irow) radii
Float_t GetPadRowRadiiUp(Int_t irow) const
get the pad row (irow) radii
Int_t GetNPadsLow(Int_t irow) const
get the number of pads in row irow
Int_t GetNPadsUp(Int_t irow) const
get the number of pads in row irow
Int_t GetWireSegment(Int_t sector, Int_t row) const
 Get Anode wire segment index IROC --> 4 segments in [0,3], 7 segments OROC[4,10]

 To  be speed-up using caching lookup table

Int_t GetNPadsPerSegment(Int_t segmentID) const
 Get the number of pads in a given anode wire segment

 check if the given segment index is OK
 To be done (if needed) - cache the lookup table

Float_t GetYInner(Int_t irow) const
Float_t GetYOuter(Int_t irow) const
Int_t GetSectorIndex(Float_t angle, Int_t row, Float_t z) const
 returns the sector index
 takes as input the angle, index of the pad row and z position
Float_t GetChamberCenter(Int_t isec, Float_t* center = 0) const
 returns the default radial position
 of the readout chambers
void SetNominalGainSlopes()
 Setting the nominal TPC gain slopes
 Nominal values were obtained as a mena values foe 2010,2011, and 2012 data
 Differntial values can be provided per year

TVectorD * GetBetheBlochParamNa49()
  Parameters of the BB for the Aleph parametrization AliMathBase::BetheBlochAleph
  Na49 parameters were used as first set of parameters for ALICE simulation
  (see TPC TDR for details)
TVectorD * GetBetheBlochParamAlice()

  Parameters of the BB for the Aleph parametrization AliMathBase::BetheBlochAleph
  Na49 parameters were used as first set of parameters for ALICE simulation
  Second set was obtained from ALICE 2009-2013 data taking
  (see TPC TDR for details)

Double_t BetheBlochAleph(Double_t bb, Int_t type = 0)
  GetBetheBloch retur values for the parametrs regieter at poition type
  Used for visualization and comparison purposes
void RegisterBBParam(TVectorD* param, Int_t position)


Int_t * GetResBin(Int_t i)
return response bin i  - bin given by  padrow [0] pad[1] timebin[2]
Float_t & GetResWeight(Int_t i)
return  weight of response bin i
void AdjustCosSin(Int_t isec, Float_t& cos, Float_t& sin) const
set cosinus and sinus of rotation angles for sector isec

Float_t GetAngle(Int_t isec) const
return rotation angle of given sector

void Transform1to2Ideal(Float_t* xyz, Int_t* index) const
transformation to rotated coordinates
we must have information about sector!
rotate to given sector
 ideal frame
void Transform1to2(Float_t* xyz, Int_t* index) const
transformation to rotated coordinates
we must have information about sector!
rotate to given sector
void Transform2to1(Float_t* xyz, Int_t* index) const
transformation from  rotated coordinates to global coordinates

void Transform2to2(Float_t* xyz, Int_t* index, Int_t* oindex) const
transform rotated coordinats of one sector to rotated
coordinates relative to another sector
Float_t Transform2to2NearestWire(Float_t* xyz, Int_t* index) const
 asigns the x-position of the closest wire to xyz[0], return the
 electron to closest wire distance

Int_t Transform2to3(Float_t* xyz, Int_t* index) const
calulates coresponding pad row number, sets index[2] for straight rows
does not change xyz[] information
valid only for straight row

void Transform3to4(Float_t* xyz, Int_t* index) const
valid only for straight rows straight rows
calculate xyz[0] position relative to given index

void Transform4to3(Float_t* xyz, Int_t* index) const
valid only for straight rows
transforms  relative xyz[0] to the global one within given sector

void Transform2to5(Float_t* xyz, Int_t* index) const
transform [x,y,z] to [r,phi,z]

void Transform5to2(Float_t* xyz, Int_t* index) const
transform [r,rphi,z] to [x,y,z]

void Transform4to8(Float_t* xyz, Int_t* index) const
transform xyz coordinates to 'digit' coordinates

void Transform8to4(Float_t* xyz, Int_t* index) const
transforms 'digit' coordinates to xyz coordinates

void Transform6to8(Float_t* xyz, Int_t* index) const
transforms cylindrical xyz coordinates to 'digit' coordinates

void Transform8to6(Float_t* xyz, Int_t* index) const
transforms 'digit' coordinates to cylindrical xyz coordinates

Float_t GetZLength(Int_t sector = 0) const
AliTPCParam()

ALITPCParam object to be possible change
geometry and some other parameters of TPC
used by AliTPC and AliTPCSector
Int_t Transform2toPadRow(Float_t* , Int_t* ) const
transform 'digit' coordinata to dr,f coordinata
{return 0;}
void XYZtoCRXYZ(Float_t* , Int_t& , Int_t& , Int_t ) const
return pad row of point xyz - xyz is given in coordinate system -(given by index)
output system is 3 for straight row and 7 for cylindrical row
{;}
void CRTimePadtoYZ(Float_t& , Float_t& , const Float_t& , const Float_t& , Int_t , Int_t )
transform global position to the position relative to the sector padrow
if option=0  X calculate absolute            calculate sector
if option=1  X           absolute            use input sector
if option=2  X           relative to pad row calculate sector
if option=3  X           relative            use input sector
transform relative position  to the gloabal position
{;}
Int_t CalcResponse(Float_t* , Int_t* , Int_t )
transform position in digit  units (time slices and pads)  to "normal"
units (cm)
transform position in cm to position in digit unit
{return 0;}
Int_t GetNSegmentsTotal() const
{return fNtRows;}
Double_t GetLowMaxY(Int_t irow) const
{return irow*0.;}
Double_t GetUpMaxY(Int_t irow) const
additional geometrical function - for Belikov
{return irow*0;}
void SetInnerRadiusLow(Float_t InnerRadiusLow)
  void GetChamberPos(Int_t isec, Float_t* xyz) const;
  void GetChamberRot(Int_t isec, Float_t* angles) const;

set sector parameters

{ fInnerRadiusLow=InnerRadiusLow;}
void SetOuterRadiusLow(Float_t OuterRadiusLow)
{ fOuterRadiusLow=OuterRadiusLow;}
void SetInnerRadiusUp(Float_t InnerRadiusUp)
{ fInnerRadiusUp= InnerRadiusUp;}
void SetOuterRadiusUp(Float_t OuterRadiusUp)
{ fOuterRadiusUp= OuterRadiusUp;}
void SetInnerFrameSpace(Float_t frspace)
{fInnerFrameSpace = frspace;}
void SetOuterFrameSpace(Float_t frspace)
{fOuterFrameSpace = frspace;}
void SetInnerWireMount(Float_t fmount)
{fInnerWireMount = fmount;}
void SetOuterWireMount(Float_t fmount)
{fOuterWireMount = fmount;}
void SetZLength(Float_t zlength)
{fZLength = zlength;}
void SetGeometryType(Int_t type)
 pad rows geometry

{fGeometryType = type;}
void SetRowNLow(Int_t NRowLow)
{fNRowLow = NRowLow;}
void SetRowNUp1(Int_t NRowUp1)
{fNRowUp1 = NRowUp1 ;}
void SetRowNUp2(Int_t NRowUp2)
{fNRowUp2 = NRowUp2 ;}
void SetRowNUp(Int_t NRowUp)
set wire parameters

{fNRowUp = NRowUp ;}
void SetInnerNWires(Int_t nWires)
void SetInnerDummyWire(Int_t dummy)
{fInnerDummyWire = dummy;}
void SetInnerOffWire(Float_t offset)
{fInnerOffWire =offset;}
void SetOuter1NWires(Int_t nWires)
void SetOuter2NWire(Int_t nWires)
void SetOuterDummyWire(Int_t dummy)
{fOuterDummyWire = dummy;}
void SetOuterOffWire(Float_t offset)
{fOuterOffWire =offset;}
void SetInnerWWPitch(Float_t wwPitch)
{fInnerWWPitch = wwPitch;}
void SetRInnerFirstWire(Float_t firstWire)
{fRInnerFirstWire = firstWire;}
void SetRInnerLastWire(Float_t lastWire)
{fRInnerLastWire = lastWire;}
void SetOuterWWPitch(Float_t wwPitch)
{fOuterWWPitch = wwPitch;}
void SetLastWireUp1(Float_t wireUp1)
{fLastWireUp1 = wireUp1;}
void SetROuterFirstWire(Float_t firstWire)
{fROuterFirstWire = firstWire;}
void SetROuterLastWire(Float_t lastWire)
set pad parameter

{fROuterLastWire = lastWire;}
void SetInnerPadPitchLength(Float_t PadPitchLength)
{ fInnerPadPitchLength=PadPitchLength;}
void SetInnerPadPitchWidth(Float_t PadPitchWidth)
{ fInnerPadPitchWidth = PadPitchWidth;}
void SetInnerPadLength(Float_t PadLength)
{ fInnerPadLength=PadLength;}
void SetInnerPadWidth(Float_t PadWidth)
{ fInnerPadWidth=PadWidth;}
void SetOuter1PadPitchLength(Float_t PadPitchLength)
{ fOuter1PadPitchLength=PadPitchLength;}
void SetOuter2PadPitchLength(Float_t PadPitchLength)
{ fOuter2PadPitchLength=PadPitchLength;}
void SetOuterPadPitchWidth(Float_t PadPitchWidth)
{ fOuterPadPitchWidth = PadPitchWidth;}
void SetOuter1PadLength(Float_t PadLength)
{ fOuter1PadLength=PadLength;}
void SetOuter2PadLength(Float_t PadLength)
{ fOuter2PadLength=PadLength;}
void SetOuterPadWidth(Float_t PadWidth)
{ fOuterPadWidth=PadWidth;}
void SetMWPCReadout(Bool_t type)
{fBMWPCReadout = type;}
void SetNCrossRows(Int_t rows)
set gas paremeters

{fNCrossRows = rows;}
void SetDiffT(Float_t DiffT)
{ fDiffT= DiffT;}
void SetDiffL(Float_t DiffL)
{ fDiffL=DiffL;}
void SetGasGain(Float_t GasGain)
{ fGasGain=GasGain;}
void SetDriftV(Float_t DriftV)
{ fDriftV= DriftV;}
void SetOmegaTau(Float_t OmegaTau)
{ fOmegaTau=OmegaTau;}
void SetAttCoef(Float_t AttCoef)
{ fAttCoef=AttCoef;}
void SetOxyCont(Float_t OxyCont)
{ fOxyCont=OxyCont;}
void SetGainSlopesHV(TGraphErrors* gainSlopesHV)
{ fGainSlopesHV=gainSlopesHV;}
void SetGainSlopesPT(TGraphErrors* gainSlopesPT)
{ fGainSlopesPT=gainSlopesPT;}
void SetComposition(Float_t c1, Float_t c2, Float_t c3, Float_t c4, Float_t c5, Float_t c6)
void SetFpot(Float_t fpot)
{fFpot=fpot;}
void SetNprim(Float_t prim)
{fNprim=prim;}
void SetNtot(Float_t ntot)
{fNtot=ntot;}
void SetWmean(Float_t wmean)
{fWmean=wmean;}
void SetExp(Float_t exp)
{fExp=exp;}
void SetEend(Float_t end)
{fEend=end;}
void SetBetheBloch(TVectorD* v)
void SetPadCoupling(Float_t PadCoupling)
set electronivc parameters

{ fPadCoupling=PadCoupling;}
void SetZeroSup(Int_t ZeroSup)
{ fZeroSup=ZeroSup;}
void SetNoise(Float_t Noise)
{ fNoise= Noise;}
void SetChipGain(Float_t ChipGain)
{ fChipGain= ChipGain;}
void SetChipNorm(Float_t ChipNorm)
{ fChipNorm= ChipNorm;}
void SetTSample(Float_t TSample)
{ fTSample=TSample;}
void SetTFWHM(Float_t fwhm)
{ fTSigma=fwhm/2.35;}
void SetMaxTBin(Int_t maxtbin)
{ fMaxTBin = maxtbin;}
void SetADCSat(Int_t adcsat)
{ fADCSat = adcsat;}
void SetADCDynRange(Float_t adcdynrange)
 High voltage parameters

{fADCDynRange = adcdynrange;}
void SetNominalVoltage(Float_t v, UInt_t i)
{if (i<72) fNominalVoltage[i]=v;}
void SetMaxVoltageDeviation(Float_t voltage)
void SetMaxDipVoltage(Float_t voltage)
{ fMaxDipVoltage=voltage; }
void SetMaxFractionHVbad(Float_t frac)
void SetVoltageDipScanPeriod(Float_t period)
set response  parameters

void SetNResponseMax(Int_t max)
{ fNResponseMax = max;}
void SetResponseThreshold(Int_t threshold)
set L1 parameters
{fResponseThreshold = threshold;}
void SetGateDelay(Float_t delay)
{fGateDelay = delay;}
void SetL1Delay(Float_t delay)
{fL1Delay = delay;}
void SetNTBinsBeforeL1(UShort_t nbins)
get sector parameters

{fNTBinsBeforeL1 = nbins;}
Float_t GetInnerRadiusLow() const
{return fInnerRadiusLow;}
Float_t GetInnerRadiusUp() const
{return fInnerRadiusUp;}
Float_t GetOuterRadiusLow() const
{return fOuterRadiusLow;}
Float_t GetOuterRadiusUp() const
{return fOuterRadiusUp;}
Float_t GetInnerFrameSpace() const
Float_t GetOuterFrameSpace() const
Float_t GetInnerWireMount() const
{return fInnerWireMount;}
Float_t GetOuterWireMount() const
{return fOuterWireMount;}
Int_t GetNInnerSector() const
{return fNInnerSector;}
Int_t GetNOuterSector() const
{return fNOuterSector;}
Int_t GetNSector() const
{return fNSector;}
Int_t GetGeometryType() const
{return fGeometryType;}
Int_t GetInnerNWires() const
get wires parameter

Float_t GetInnerWWPitch() const
{return fInnerWWPitch;}
Int_t GetInnerDummyWire() const
{return fInnerDummyWire;}
Float_t GetInnerOffWire() const
{return fInnerOffWire;}
Float_t GetRInnerFirstWire() const
Float_t GetRInnerLastWire() const
{return fRInnerLastWire;}
Int_t GetOuter1NWires() const
Int_t GetOuter2NWires() const
Float_t GetOuterWWPitch() const
{return fOuterWWPitch;}
Int_t GetOuterDummyWire() const
{return fOuterDummyWire;}
Float_t GetOuterOffWire() const
{return fOuterOffWire;}
Float_t GetLastWireUp1() const
{return fLastWireUp1;}
Float_t GetROuterFirstWire() const
Float_t GetROuterLastWire() const
{return fROuterLastWire;}
Float_t GetWWPitch(Int_t isector = 0) const
Float_t GetInnerPadPitchLength() const
get pad  parameters

Float_t GetInnerPadPitchWidth() const
Float_t GetInnerPadLength() const
{return fInnerPadLength;}
Float_t GetInnerPadWidth() const
{return fInnerPadWidth;}
Float_t GetOuter1PadPitchLength() const
Float_t GetOuter2PadPitchLength() const
Float_t GetOuterPadPitchWidth() const
Float_t GetOuter1PadLength() const
Float_t GetOuter2PadLength() const
Float_t GetOuterPadWidth() const
{return fOuterPadWidth;}
Bool_t GetMWPCReadout() const
{return fBMWPCReadout;}
Int_t GetNCrossRows() const
{return fNCrossRows;}
Float_t GetPadPitchWidth(Int_t isector = 0) const
Float_t GetPadPitchLength(Int_t isector = 0, Int_t padrow = 0) const
Int_t GetNRow(Int_t isec) const
{return ((isec<fNInnerSector) ? fNRowLow:fNRowUp);}
Int_t GetNRowsTotal() const
{return fNtRows;}
Float_t GetPadRowRadii(Int_t isec, Int_t irow) const
Int_t GetNPads(Int_t isector, Int_t irow) const
TGeoHMatrix * GetTrackingMatrix(Int_t isec) const
TGeoHMatrix * GetClusterMatrix(Int_t isec) const
TGeoHMatrix * GetGlobalMatrix(Int_t isec) const
Bool_t IsGeoRead()
get GAS parameters

{ return fGlobalMatrix!=0;}
Float_t GetDiffT() const
{return fDiffT;}
Float_t GetDiffL() const
{return fDiffL;}
Float_t GetGasGain() const
{return fGasGain;}
Float_t GetDriftV() const
{return fDriftV;}
Float_t GetOmegaTau() const
{return fOmegaTau;}
Float_t GetAttCoef() const
{return fAttCoef;}
Float_t GetOxyCont() const
{return fOxyCont;}
TGraphErrors * GetGainSlopesHV() const
{ return fGainSlopesHV;}
TGraphErrors * GetGainSlopesPT() const
{ return fGainSlopesPT;}
Float_t* GetComposition()
{return fComposition;}
Float_t GetFpot() const
{return fFpot;}
Float_t GetNprim() const
{return fNprim;}
Float_t GetNtot() const
{return fNtot;}
Float_t GetWmean() const
{return fWmean;}
Float_t GetExp() const
{return fExp;}
Float_t GetEend() const
{return fEend;}
TVectorD* GetBetheBlochParameters()
{return fBetheBloch;}
Float_t GetPadCoupling() const
get Electronic parameters

{return fPadCoupling;}
Int_t GetZeroSup() const
{return fZeroSup;}
Float_t GetNoise() const
{return fNoise;}
Float_t GetChipGain() const
{return fChipGain;}
Float_t GetChipNorm() const
{return fChipNorm;}
Float_t GetTSample() const
{return fTSample;}
Float_t GetZWidth() const
{return fZWidth;}
Float_t GetTFWHM() const
{return fTSigma*2.35;}
Float_t GetZSigma() const
{return fTSigma*fDriftV;}
Float_t GetZOffset() const
{return 3*fTSigma*fDriftV;}
Int_t GetMaxTBin() const
{return fMaxTBin;}
Int_t GetADCSat() const
{return fADCSat;}
Float_t GetADCDynRange() const
{return fADCDynRange;}
Float_t GetTotalNormFac() const
{return fTotalNormFac;}
Float_t GetNoiseNormFac() const
 High voltage parameters

{return fNoiseNormFac;}
Float_t GetNominalVoltage(UInt_t i) const
{return (i<72)?fNominalVoltage[i]:0;}
Float_t GetMaxVoltageDeviation() const
Float_t GetMaxDipVoltage() const
{ return fMaxDipVoltage; }
Float_t GetMaxFractionHVbad() const
{ return fMaxHVfractionBad; }
Float_t GetVoltageDipScanPeriod() const
Float_t GetGateDelay() const
return  weight of response bin i
 get L1 data
{return fGateDelay;}
Float_t GetL1Delay() const
{return fL1Delay;}
UShort_t GetNTBinsBeforeL1() const
{return fNTBinsBeforeL1;}
Float_t GetNTBinsL1() const
{return fNTBinsL1;}
AliTPCParam & operator=(const AliTPCParam& )