ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/


///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// Class with TOF reconstruction parameters                                  //
//                                                                           //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////


#include "AliLog.h"

#include "AliTOFRecoParam.h"

ClassImp(AliTOFRecoParam)

//_____________________________________________________________________________
AliTOFRecoParam::AliTOFRecoParam():
  AliDetectorRecoParam(),       
  fTimeZero(kFALSE),       
  fTimeZerofromT0(kFALSE),       
  fTimeZerofromTOF(kFALSE),       
  fTimeWalkCorr(kFALSE),       
  fApplyPbPbCuts(kFALSE),       
  fWindowSizeMaxY(50.),
  fWindowSizeMaxZ(35.),
  fWindowScaleFact(5.),
  fDistanceCut(3.),
  fSensRadius(379.5),
  fStepSize(0.1),
  fMaxChi2(10.),
  fMaxChi2TRD(150.),
  fTimeResolution(80.),
  fTimeNSigma(5.),
  fMaxDeltaTime(2),
  fStartTimeType(1)// 1 -> AliESDpid::kTOF_T0
{
  //
  // constructor
  //
  SetNameTitle("TOF","TOF");
}
//_____________________________________________________________________________
AliTOFRecoParam::AliTOFRecoParam(const AliTOFRecoParam &p):
  AliDetectorRecoParam(p),       
  fTimeZero(p.fTimeZero),       
  fTimeZerofromT0(p.fTimeZerofromT0),       
  fTimeZerofromTOF(p.fTimeZerofromTOF),       
  fTimeWalkCorr(p.fTimeWalkCorr),       
  fApplyPbPbCuts(p.fApplyPbPbCuts),       
  fWindowSizeMaxY(p.fWindowSizeMaxY),
  fWindowSizeMaxZ(p.fWindowSizeMaxZ),
  fWindowScaleFact(p.fWindowScaleFact),
  fDistanceCut(p.fDistanceCut),
  fSensRadius(p.fSensRadius),
  fStepSize(p.fStepSize),
  fMaxChi2(p.fMaxChi2),
  fMaxChi2TRD(p.fMaxChi2TRD),
  fTimeResolution(p.fTimeResolution),
  fTimeNSigma(p.fTimeNSigma),
  fMaxDeltaTime(p.fMaxDeltaTime),
  fStartTimeType(p.fStartTimeType)
 { 
  //copy Ctor


}
//_____________________________________________________________________________
AliTOFRecoParam& AliTOFRecoParam::operator=(const AliTOFRecoParam &p)
{
  //
  // assign. operator
  //

  if (this == &p)
    return *this;
  
  AliDetectorRecoParam::operator=(p);
  fTimeZero=p.fTimeZero;       
  fTimeZerofromT0=p.fTimeZerofromT0;
  fTimeZerofromTOF=p.fTimeZerofromTOF;       
  fTimeWalkCorr=p.fTimeWalkCorr;       
  fApplyPbPbCuts=p.fApplyPbPbCuts;       
  fWindowSizeMaxY=p.fWindowSizeMaxY;
  fWindowSizeMaxZ=p.fWindowSizeMaxZ;
  fDistanceCut=p.fDistanceCut;
  fWindowScaleFact=p.fWindowScaleFact;
  fStepSize=p.fStepSize;
  fSensRadius=p.fSensRadius;
  fMaxChi2=p.fMaxChi2;
  fMaxChi2TRD=p.fMaxChi2TRD;
  fTimeResolution=p.fTimeResolution;
  fTimeNSigma=p.fTimeNSigma;   
  fMaxDeltaTime=p.fMaxDeltaTime;
  fStartTimeType=p.fStartTimeType;
  return *this;
}
//_____________________________________________________________________________
AliTOFRecoParam::~AliTOFRecoParam() 
{
  //
  // destructor
  //  
}

//_____________________________________________________________________________
AliTOFRecoParam *AliTOFRecoParam::GetPbPbparam(){
  //
  // set default reconstruction parameters for PbPb.
  //
  AliTOFRecoParam *param = new AliTOFRecoParam();
  param->fApplyPbPbCuts = kTRUE;
  param->fWindowScaleFact = 5.;
  param->fDistanceCut = 3.;
  param->fMaxDeltaTime = 2;
  return param;
}

//_____________________________________________________________________________
AliTOFRecoParam *AliTOFRecoParam::GetPPparam(){
  //
  // set default reconstruction parameters for PP.
  //
  AliTOFRecoParam *param = new AliTOFRecoParam();
  param->fApplyPbPbCuts = kFALSE;
  param->fWindowScaleFact = 5.;
  param->fDistanceCut = 10.;
  param->fMaxDeltaTime = 2;
  return param;
}

//_____________________________________________________________________________
void AliTOFRecoParam::PrintParameters() const
{
  //
  // Printing of the used TOF reconstruction parameters
  //

  AliInfo(Form(" Use Time Zero info in Pid: %i", fTimeZero));
  AliInfo(Form(" Use Time Zero as determined by T0: %i", fTimeZerofromT0));
  AliInfo(Form(" Use Time Zero as determined from TOF: %i",
	       fTimeZerofromTOF));
  AliInfo(Form(" Correct for signal time walk in z: %i", fTimeWalkCorr));
  AliInfo(Form(" Apply high flux cuts: %i", fApplyPbPbCuts));

  AliInfo(Form(" Cluster search window - size, Y: %f cm", fWindowSizeMaxY));
  AliInfo(Form(" Cluster search window - size, Z: %f cm", fWindowSizeMaxZ));
  AliInfo(Form(" Cluster search window - scale factor: %f",
	       fWindowScaleFact));

  AliInfo(Form(" Cut on the closest approach distance: %f", fDistanceCut));
  AliInfo(Form(" Average radius of sensitive volumes: %f cm", fSensRadius));
  AliInfo(Form(" Propagation step size: %f cm", fStepSize));
  AliInfo(Form(" Maximum X2 track-tof clusters: %f", fMaxChi2));

  AliInfo(Form(" Maximum X2 track-tof clusters (TRD): %f", fMaxChi2TRD));
  AliInfo(Form(" Time resolution for responce function in PID: %f ps",
	       fTimeResolution));
  AliInfo(Form(" N-Sigma Range used for responce function in PID: %f",
	       fTimeNSigma));
  AliInfo(Form(" Max time difference between two (or more) time measurements"
	       " coming from two (or more) neighbouring pads"
	       " to define if they are coming from the same ionization event"
	       " or not: %2d bins -> %f ps",
	       fMaxDeltaTime, fMaxDeltaTime*AliTOFGeometry::TdcBinWidth()));

}
 AliTOFRecoParam.cxx:1
 AliTOFRecoParam.cxx:2
 AliTOFRecoParam.cxx:3
 AliTOFRecoParam.cxx:4
 AliTOFRecoParam.cxx:5
 AliTOFRecoParam.cxx:6
 AliTOFRecoParam.cxx:7
 AliTOFRecoParam.cxx:8
 AliTOFRecoParam.cxx:9
 AliTOFRecoParam.cxx:10
 AliTOFRecoParam.cxx:11
 AliTOFRecoParam.cxx:12
 AliTOFRecoParam.cxx:13
 AliTOFRecoParam.cxx:14
 AliTOFRecoParam.cxx:15
 AliTOFRecoParam.cxx:16
 AliTOFRecoParam.cxx:17
 AliTOFRecoParam.cxx:18
 AliTOFRecoParam.cxx:19
 AliTOFRecoParam.cxx:20
 AliTOFRecoParam.cxx:21
 AliTOFRecoParam.cxx:22
 AliTOFRecoParam.cxx:23
 AliTOFRecoParam.cxx:24
 AliTOFRecoParam.cxx:25
 AliTOFRecoParam.cxx:26
 AliTOFRecoParam.cxx:27
 AliTOFRecoParam.cxx:28
 AliTOFRecoParam.cxx:29
 AliTOFRecoParam.cxx:30
 AliTOFRecoParam.cxx:31
 AliTOFRecoParam.cxx:32
 AliTOFRecoParam.cxx:33
 AliTOFRecoParam.cxx:34
 AliTOFRecoParam.cxx:35
 AliTOFRecoParam.cxx:36
 AliTOFRecoParam.cxx:37
 AliTOFRecoParam.cxx:38
 AliTOFRecoParam.cxx:39
 AliTOFRecoParam.cxx:40
 AliTOFRecoParam.cxx:41
 AliTOFRecoParam.cxx:42
 AliTOFRecoParam.cxx:43
 AliTOFRecoParam.cxx:44
 AliTOFRecoParam.cxx:45
 AliTOFRecoParam.cxx:46
 AliTOFRecoParam.cxx:47
 AliTOFRecoParam.cxx:48
 AliTOFRecoParam.cxx:49
 AliTOFRecoParam.cxx:50
 AliTOFRecoParam.cxx:51
 AliTOFRecoParam.cxx:52
 AliTOFRecoParam.cxx:53
 AliTOFRecoParam.cxx:54
 AliTOFRecoParam.cxx:55
 AliTOFRecoParam.cxx:56
 AliTOFRecoParam.cxx:57
 AliTOFRecoParam.cxx:58
 AliTOFRecoParam.cxx:59
 AliTOFRecoParam.cxx:60
 AliTOFRecoParam.cxx:61
 AliTOFRecoParam.cxx:62
 AliTOFRecoParam.cxx:63
 AliTOFRecoParam.cxx:64
 AliTOFRecoParam.cxx:65
 AliTOFRecoParam.cxx:66
 AliTOFRecoParam.cxx:67
 AliTOFRecoParam.cxx:68
 AliTOFRecoParam.cxx:69
 AliTOFRecoParam.cxx:70
 AliTOFRecoParam.cxx:71
 AliTOFRecoParam.cxx:72
 AliTOFRecoParam.cxx:73
 AliTOFRecoParam.cxx:74
 AliTOFRecoParam.cxx:75
 AliTOFRecoParam.cxx:76
 AliTOFRecoParam.cxx:77
 AliTOFRecoParam.cxx:78
 AliTOFRecoParam.cxx:79
 AliTOFRecoParam.cxx:80
 AliTOFRecoParam.cxx:81
 AliTOFRecoParam.cxx:82
 AliTOFRecoParam.cxx:83
 AliTOFRecoParam.cxx:84
 AliTOFRecoParam.cxx:85
 AliTOFRecoParam.cxx:86
 AliTOFRecoParam.cxx:87
 AliTOFRecoParam.cxx:88
 AliTOFRecoParam.cxx:89
 AliTOFRecoParam.cxx:90
 AliTOFRecoParam.cxx:91
 AliTOFRecoParam.cxx:92
 AliTOFRecoParam.cxx:93
 AliTOFRecoParam.cxx:94
 AliTOFRecoParam.cxx:95
 AliTOFRecoParam.cxx:96
 AliTOFRecoParam.cxx:97
 AliTOFRecoParam.cxx:98
 AliTOFRecoParam.cxx:99
 AliTOFRecoParam.cxx:100
 AliTOFRecoParam.cxx:101
 AliTOFRecoParam.cxx:102
 AliTOFRecoParam.cxx:103
 AliTOFRecoParam.cxx:104
 AliTOFRecoParam.cxx:105
 AliTOFRecoParam.cxx:106
 AliTOFRecoParam.cxx:107
 AliTOFRecoParam.cxx:108
 AliTOFRecoParam.cxx:109
 AliTOFRecoParam.cxx:110
 AliTOFRecoParam.cxx:111
 AliTOFRecoParam.cxx:112
 AliTOFRecoParam.cxx:113
 AliTOFRecoParam.cxx:114
 AliTOFRecoParam.cxx:115
 AliTOFRecoParam.cxx:116
 AliTOFRecoParam.cxx:117
 AliTOFRecoParam.cxx:118
 AliTOFRecoParam.cxx:119
 AliTOFRecoParam.cxx:120
 AliTOFRecoParam.cxx:121
 AliTOFRecoParam.cxx:122
 AliTOFRecoParam.cxx:123
 AliTOFRecoParam.cxx:124
 AliTOFRecoParam.cxx:125
 AliTOFRecoParam.cxx:126
 AliTOFRecoParam.cxx:127
 AliTOFRecoParam.cxx:128
 AliTOFRecoParam.cxx:129
 AliTOFRecoParam.cxx:130
 AliTOFRecoParam.cxx:131
 AliTOFRecoParam.cxx:132
 AliTOFRecoParam.cxx:133
 AliTOFRecoParam.cxx:134
 AliTOFRecoParam.cxx:135
 AliTOFRecoParam.cxx:136
 AliTOFRecoParam.cxx:137
 AliTOFRecoParam.cxx:138
 AliTOFRecoParam.cxx:139
 AliTOFRecoParam.cxx:140
 AliTOFRecoParam.cxx:141
 AliTOFRecoParam.cxx:142
 AliTOFRecoParam.cxx:143
 AliTOFRecoParam.cxx:144
 AliTOFRecoParam.cxx:145
 AliTOFRecoParam.cxx:146
 AliTOFRecoParam.cxx:147
 AliTOFRecoParam.cxx:148
 AliTOFRecoParam.cxx:149
 AliTOFRecoParam.cxx:150
 AliTOFRecoParam.cxx:151
 AliTOFRecoParam.cxx:152
 AliTOFRecoParam.cxx:153
 AliTOFRecoParam.cxx:154
 AliTOFRecoParam.cxx:155
 AliTOFRecoParam.cxx:156
 AliTOFRecoParam.cxx:157
 AliTOFRecoParam.cxx:158
 AliTOFRecoParam.cxx:159
 AliTOFRecoParam.cxx:160
 AliTOFRecoParam.cxx:161
 AliTOFRecoParam.cxx:162
 AliTOFRecoParam.cxx:163
 AliTOFRecoParam.cxx:164
 AliTOFRecoParam.cxx:165
 AliTOFRecoParam.cxx:166
 AliTOFRecoParam.cxx:167
 AliTOFRecoParam.cxx:168
 AliTOFRecoParam.cxx:169
 AliTOFRecoParam.cxx:170
 AliTOFRecoParam.cxx:171
 AliTOFRecoParam.cxx:172
 AliTOFRecoParam.cxx:173
 AliTOFRecoParam.cxx:174
 AliTOFRecoParam.cxx:175
 AliTOFRecoParam.cxx:176
 AliTOFRecoParam.cxx:177
 AliTOFRecoParam.cxx:178
 AliTOFRecoParam.cxx:179
 AliTOFRecoParam.cxx:180
 AliTOFRecoParam.cxx:181