ROOT logo
/**************************************************************************
 * Copyright(c) 2007-2009, 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.                  *
 **************************************************************************/

/* $Id: */

///////////////////////////////////////////////////////////////////
//                                                               //
// Implementation of the class to store parameters of ITS        //
// response funcions for dE/dx based PID                         //
// Origin: F.Prino, Torino, prino@to.infn.it                     //
//                                                               //
///////////////////////////////////////////////////////////////////

#include <TFormula.h>
#include <TNamed.h>
#include <TMath.h>
#include "AliITSPidParams.h"

ClassImp(AliITSPidParams)

//______________________________________________________________________
AliITSPidParams::AliITSPidParams(Bool_t isMC):
TNamed("default",""),
  fSDDElecLandauWidth(0),
  fSDDElecGaussWidth(0),
  fSSDElecLandauWidth(0),
  fSSDElecGaussWidth(0),
  fSDDPionLandauWidth(0),
  fSDDPionGaussWidth(0),
  fSSDPionLandauWidth(0),
  fSSDPionGaussWidth(0),
  fSDDKaonLandauWidth(0),
  fSDDKaonGaussWidth(0),
  fSSDKaonLandauWidth(0),
  fSSDKaonGaussWidth(0),
  fSDDProtLandauWidth(0),
  fSDDProtGaussWidth(0),
  fSSDProtLandauWidth(0),
  fSSDProtGaussWidth(0)
{
  // default constructor
  if (isMC) InitMC();
  else InitData();
}
//______________________________________________________________________
AliITSPidParams::AliITSPidParams(Char_t * name, Bool_t isMC):
  TNamed(name,""),
  fSDDElecLandauWidth(0),
  fSDDElecGaussWidth(0),
  fSSDElecLandauWidth(0),
  fSSDElecGaussWidth(0),
  fSDDPionLandauWidth(0),
  fSDDPionGaussWidth(0),
  fSSDPionLandauWidth(0),
  fSSDPionGaussWidth(0),
  fSDDKaonLandauWidth(0),
  fSDDKaonGaussWidth(0),
  fSSDKaonLandauWidth(0),
  fSSDKaonGaussWidth(0),
  fSDDProtLandauWidth(0),
  fSDDProtGaussWidth(0),
  fSSDProtLandauWidth(0), 
  fSSDProtGaussWidth(0)
{
  // standard constructor
  if (isMC) InitMC();
  else InitData();
}
//______________________________________________________________________
AliITSPidParams::~AliITSPidParams(){
  //
  if(fSDDElecLandauWidth) delete fSDDElecLandauWidth;
  if(fSDDElecGaussWidth) delete fSDDElecGaussWidth;
  
  if(fSSDElecLandauWidth) delete fSSDElecLandauWidth;
  if(fSSDElecGaussWidth) delete fSSDElecGaussWidth;

  if(fSDDPionLandauWidth) delete fSDDPionLandauWidth;
  if(fSDDPionGaussWidth) delete fSDDPionGaussWidth;

  if(fSSDPionLandauWidth) delete fSSDPionLandauWidth;
  if(fSSDPionGaussWidth) delete fSSDPionGaussWidth;
  
  if(fSDDKaonLandauWidth) delete fSDDKaonLandauWidth;
  if(fSDDKaonGaussWidth) delete fSDDKaonGaussWidth;
  
  if(fSSDKaonLandauWidth) delete fSSDKaonLandauWidth;
  if(fSSDKaonGaussWidth) delete fSSDKaonGaussWidth;

  if(fSDDProtLandauWidth) delete fSDDProtLandauWidth;
  if(fSDDProtGaussWidth) delete fSDDProtGaussWidth;

  if(fSSDProtLandauWidth) delete fSSDProtLandauWidth;
  if(fSSDProtGaussWidth) delete fSSDProtGaussWidth;
}
//______________________________________________________________________
Double_t AliITSPidParams::BetheBloch(Double_t mom, Double_t mass, const Double_t *p) const{
 //
  // This is the empirical parameterization of the Bethe-Bloch formula.
  // It is normalized to 1 at the minimum.
  //
  // bg - beta*gamma
  // 
  Double_t bg = mom/mass;
  Double_t beta = bg/TMath::Sqrt(1.+ bg*bg);
  Double_t aa = TMath::Power(beta,p[3]);
  Double_t bb = TMath::Power(1./bg,p[4]);
  bb=TMath::Log(p[2]+bb);
  return (p[0]-aa-bb)*p[1]/aa;
}
//______________________________________________________________________
Double_t AliITSPidParams::ExtrapolateWidth(Double_t mom, Double_t x1, Double_t y1,Double_t x2, Double_t y2) const{
  //
  // This is a linear extrapolation of Landau width and Gaussian width 
  // for low momentum.
  
 Double_t slope = (y2-y1)/(x2-x1);
 return slope*mom+(y1-slope*x1);
}//______________________________________________________________________
void AliITSPidParams::InitMC(){
  // initialize TFormulas to Monte Carlo values (=p-p simulations PYTHIA+GEANT)
  // parameter values from LHC10d1 
  // MPV BetheBloch parameters;
  
  //sdd MC electrons parameters
  fSDDElecMPVBetheParams[0] = -0.0931934;
  fSDDElecMPVBetheParams[1] = 77.8422;
  fSDDElecMPVBetheParams[2] = -0.889085;
  fSDDElecMPVBetheParams[3] = -154.455;
  fSDDElecMPVBetheParams[4] = -0.000256076;
  
  //ssd MC electrons parameters
  fSSDElecMPVBetheParams[0] = -0.0989358;
  fSSDElecMPVBetheParams[1] = 77.8271;
  fSSDElecMPVBetheParams[2] = -0.900887;
  fSSDElecMPVBetheParams[3] =-1241.14;
  fSSDElecMPVBetheParams[4] = -0.0014204;
  
   // electrons 
  if(fSDDElecLandauWidth) delete fSDDElecLandauWidth;
  fSDDElecLandauWidth=new TFormula("fSDDElecLandauWidth","[0]/(x*x)+[1]");
  fSDDElecLandauWidth->SetParameters(-0.002702, 6.224960);

  if(fSDDElecGaussWidth) delete fSDDElecGaussWidth;
  fSDDElecGaussWidth=new TFormula("fSDDElecGaussWidth","[0]/(x*x)+[1]");
  fSDDElecGaussWidth->SetParameters(0.012402, 7.993106);

  if(fSSDElecLandauWidth) delete fSSDElecLandauWidth;
  fSSDElecLandauWidth=new TFormula("fSSDElecLandauWidth","[0]/(x*x)+[1]");
  fSSDElecLandauWidth->SetParameters(-0.002144, 6.231089);

  if(fSSDElecGaussWidth) delete fSSDElecGaussWidth;
  fSSDElecGaussWidth=new TFormula("fSSDElecGaussWidth","[0]/(x*x)+[1]");
  fSSDElecGaussWidth->SetParameters(0.014530, 6.217153);
  
  //sdd MC hadrons parameters
  fSDDHadronMPVBetheParams[0] = 1.13531;
  fSDDHadronMPVBetheParams[1] = -156.651;
  fSDDHadronMPVBetheParams[2] = 1.87562;
  fSDDHadronMPVBetheParams[3] = 0.45819;
  fSDDHadronMPVBetheParams[4] = 2.26506;
  
  //ssd MC hadrons parameters
  fSSDHadronMPVBetheParams[0] = -0.451908;
  fSSDHadronMPVBetheParams[1] = -55.4368;
  fSSDHadronMPVBetheParams[2] = 0.984636;
  fSSDHadronMPVBetheParams[3] = 0.97078;
  fSSDHadronMPVBetheParams[4] = 2.50883;

  // pions 
  if(fSDDPionLandauWidth) delete fSDDPionLandauWidth;
  fSDDPionLandauWidth=new TFormula("fSDDPionLandauWidth","[0]/(x*x)+[1]");
  fSDDPionLandauWidth->SetParameters(0.08026, 5.87922);

  if(fSDDPionGaussWidth) delete fSDDPionGaussWidth;
  fSDDPionGaussWidth=new TFormula("fSDDPionGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSDDPionGaussWidth->SetParameters(-0.090495, 7.705286);

  if(fSSDPionLandauWidth) delete fSSDPionLandauWidth;
  fSSDPionLandauWidth=new TFormula("fSSDPionLandauWidth","[0]/(x*x)+[1]");
  fSSDPionLandauWidth->SetParameters(0.083882, 5.823419);

  if(fSSDPionGaussWidth) delete fSSDPionGaussWidth;
  fSSDPionGaussWidth=new TFormula("fSSDPionGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSSDPionGaussWidth->SetParameters(-0.105218, 5.650956);

  // kaons
  if(fSDDKaonLandauWidth) delete fSDDKaonLandauWidth;
  fSDDKaonLandauWidth=new TFormula("fSDDKaonLandauWidth","[0]/(x*x)+[1]");
  fSDDKaonLandauWidth->SetParameters(1.430692, 5.581389);

  if(fSDDKaonGaussWidth) delete fSDDKaonGaussWidth;
  fSDDKaonGaussWidth=new TFormula("fSDDKaonGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSDDKaonGaussWidth->SetParameters(-1.6537, 8.071832);

  if(fSSDKaonLandauWidth) delete fSSDKaonLandauWidth;
  fSSDKaonLandauWidth=new TFormula("fSSDKaonLandauWidth","[0]/(x*x)+[1]");
  fSSDKaonLandauWidth->SetParameters(1.368824, 5.639291);

  if(fSSDKaonGaussWidth) delete fSSDKaonGaussWidth;
  fSSDKaonGaussWidth=new TFormula("fSSDKaonGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSSDKaonGaussWidth->SetParameters(-1.901858, 6.0932281);

  // protons
  if(fSDDProtLandauWidth) delete fSDDProtLandauWidth;
  fSDDProtLandauWidth=new TFormula("fSDDProtLandauWidth","[0]/(x*x)+[1]");
  fSDDProtLandauWidth->SetParameters(6.529418, 5.049098);

  if(fSDDProtGaussWidth) delete fSDDProtGaussWidth;
  fSDDProtGaussWidth=new TFormula("fSDDProtGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSDDProtGaussWidth->SetParameters(-9.360599, 11.318026);

  if(fSSDProtLandauWidth) delete fSSDProtLandauWidth;
  fSSDProtLandauWidth=new TFormula("fSSDProtLandauWidth","[0]/(x*x)+[1]");
  fSSDProtLandauWidth->SetParameters(6.419493, 4.925070);

  if(fSSDProtGaussWidth) delete fSSDProtGaussWidth;
  fSSDProtGaussWidth=new TFormula("fSSDProtGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSSDProtGaussWidth->SetParameters(-9.599064, 9.358656);
}
//______________________________________________________________________
void AliITSPidParams::InitData(){
  // initialize TFormulas to Real Data values (=p-p ALICE Experiment)
  // parameter values from LHC10b 
  // MPV BetheBloch parameters;
 
 //sdd data electrons parameters
  fSDDElecMPVBetheParams[0] = -0.130204;
  fSDDElecMPVBetheParams[1] = 75.1267;
  fSDDElecMPVBetheParams[2] = -0.889337;
  fSDDElecMPVBetheParams[3] = 388.372;
  fSDDElecMPVBetheParams[4] = 0.00134649;
  
  //ssd data electrons parameters
  fSSDElecMPVBetheParams[0] = -0.162773;
  fSSDElecMPVBetheParams[1] = 72.9393;
  fSSDElecMPVBetheParams[2] = -0.896944;
  fSSDElecMPVBetheParams[3] = 3233.02;
  fSSDElecMPVBetheParams[4] = 0.00146896;
  
   // electrons 
  if(fSDDElecLandauWidth) delete fSDDElecLandauWidth;
  fSDDElecLandauWidth=new TFormula("fSDDElecLandauWidth","[0]/(x*x)+[1]");
  fSDDElecLandauWidth->SetParameters(-0.002702, 6.224960);

  if(fSDDElecGaussWidth) delete fSDDElecGaussWidth;
  fSDDElecGaussWidth=new TFormula("fSDDElecGaussWidth","[0]/(x*x)+[1]");
  fSDDElecGaussWidth->SetParameters(0.012402, 7.993106);

  if(fSSDElecLandauWidth) delete fSSDElecLandauWidth;
  fSSDElecLandauWidth=new TFormula("fSSDElecLandauWidth","[0]/(x*x)+[1]");
  fSSDElecLandauWidth->SetParameters(-0.002144, 6.231089);

  if(fSSDElecGaussWidth) delete fSSDElecGaussWidth;
  fSSDElecGaussWidth=new TFormula("fSSDElecGaussWidth","[0]/(x*x)+[1]");
  fSSDElecGaussWidth->SetParameters(0.014530, 6.217153);
  
  //sdd data hadrons parameters
  fSDDHadronMPVBetheParams[0] = -18.1867;
  fSDDHadronMPVBetheParams[1] = -3.45806;
  fSDDHadronMPVBetheParams[2] =  2.23635;
  fSDDHadronMPVBetheParams[3] =  2.08328;
  fSDDHadronMPVBetheParams[4] = -1.92331;
 
  //ssd data hadrons parameters
  fSSDHadronMPVBetheParams[0] = -12.6459;
  fSSDHadronMPVBetheParams[1] = -4.84598;
  fSSDHadronMPVBetheParams[2] =  1.50253;
  fSSDHadronMPVBetheParams[3] =  2.08328;
  fSSDHadronMPVBetheParams[4] = -1.3719;
  
  // pions
  if(fSDDPionLandauWidth) delete fSDDPionLandauWidth;
  fSDDPionLandauWidth=new TFormula("fSDDPionLandauWidth","[0]/(x*x)+[1]");
  fSDDPionLandauWidth->SetParameters(0.07694, 5.468728);

  if(fSDDPionGaussWidth) delete fSDDPionGaussWidth;
  fSDDPionGaussWidth=new TFormula("fSDDPionGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSDDPionGaussWidth->SetParameters(-0.098209, 10.409441);

  if(fSSDPionLandauWidth) delete fSSDPionLandauWidth;
  fSSDPionLandauWidth=new TFormula("fSSDPionLandauWidth","[0]/(x*x)+[1]");
  fSSDPionLandauWidth->SetParameters(0.071602, 5.365442);

  if(fSSDPionGaussWidth) delete fSSDPionGaussWidth;
  fSSDPionGaussWidth=new TFormula("fSSDPionGaussWidth","[0]/(x*x)*TMath::Log(x)+[1]");
  fSSDPionGaussWidth->SetParameters(-0.098045, 7.617583);

  // kaons
  if(fSDDKaonLandauWidth) delete fSDDKaonLandauWidth;
  fSDDKaonLandauWidth=new TFormula("fSDDKaonLandauWidth","[0]/(x*x)+[1]");
  fSDDKaonLandauWidth->SetParameters(0.998191, 5.461668);

  if(fSDDKaonGaussWidth) delete fSDDKaonGaussWidth;
  fSDDKaonGaussWidth=new TFormula("fSDDKaonGaussWidth","[0]/(x*x)+[1]");
  fSDDKaonGaussWidth->SetParameters(1.629308, 9.851873);

  if(fSSDKaonLandauWidth) delete fSSDKaonLandauWidth;
  fSSDKaonLandauWidth=new TFormula("fSSDKaonLandauWidth","[0]/(x*x)+[1]");
  fSSDKaonLandauWidth->SetParameters(0.773113, 5.618683);

  if(fSSDKaonGaussWidth) delete fSSDKaonGaussWidth;
  fSSDKaonGaussWidth=new TFormula("fSSDKaonGaussWidth","[0]/(x*x)+[1]");
  fSSDKaonGaussWidth->SetParameters(1.510713, 6.862774);

  // protons
  if(fSDDProtLandauWidth) delete fSDDProtLandauWidth;
  fSDDProtLandauWidth=new TFormula("fSDDProtLandauWidth","[0]/(x*x)+[1]");
  fSDDProtLandauWidth->SetParameters(3.561429, 5.372105);

  if(fSDDProtGaussWidth) delete fSDDProtGaussWidth;
  fSDDProtGaussWidth=new TFormula("fSDDProtGaussWidth","[0]/(x*x)+[1]");
  fSDDProtGaussWidth->SetParameters(5.395926, 10.044613);

  if(fSSDProtLandauWidth) delete fSSDProtLandauWidth;
  fSSDProtLandauWidth=new TFormula("fSSDProtLandauWidth","[0]/(x*x)+[1]");
  fSSDProtLandauWidth->SetParameters(2.647428, 5.678460);

  if(fSSDProtGaussWidth) delete fSSDProtGaussWidth;
  fSSDProtGaussWidth=new TFormula("fSSDProtGaussWidth","[0]/(x*x)+[1]");
  fSSDProtGaussWidth->SetParameters(4.91025, 6.779763);
}
//_______________________________________________________________________
Double_t AliITSPidParams::GetLandauGausNormPdgCode(Double_t dedx, Int_t pdgCode, Double_t mom, Int_t lay) const {
  // Computes Landau Gauss convolution for given particle specie and given momentum in a given ITS layer
  if(TMath::Abs(pdgCode)==11) return GetLandauGausNorm(dedx,AliPID::kElectron,mom,lay);
  else if(TMath::Abs(pdgCode)==211) return GetLandauGausNorm(dedx,AliPID::kPion,mom,lay);
  else if(TMath::Abs(pdgCode)==321) return GetLandauGausNorm(dedx,AliPID::kKaon,mom,lay);
  else if(TMath::Abs(pdgCode)==2212) return GetLandauGausNorm(dedx,AliPID::kProton,mom,lay);
  else return 0.;
}
//_______________________________________________________________________
Double_t AliITSPidParams::GetLandauGausNorm(Double_t dedx, Int_t partType, Double_t mom, Int_t lay) const{
  // Computes Landau Gauss convolution for given particle specie and given momentum in a given ITS layer
  
  Double_t par[4];
  Bool_t isSet=kFALSE;
  if(partType==AliPID::kElectron){
    if(lay==3 || lay==4){
      par[0]=GetSDDElecLandauWidth(mom);
      par[1]=GetSDDElecMPV(mom);
      par[2]=GetSDDElecGaussWidth(mom);
      isSet=kTRUE;
    }
    else if(lay==5 || lay==6){
      par[0]=GetSSDElecLandauWidth(mom);
      par[1]=GetSSDElecMPV(mom);
      par[2]=GetSSDElecGaussWidth(mom);
      isSet=kTRUE;
    }
  }else if(partType==AliPID::kPion){
    if(lay==3 || lay==4){
      par[0]=GetSDDPionLandauWidth(mom);
      par[1]=GetSDDPionMPV(mom);
      par[2]=GetSDDPionGaussWidth(mom);
      isSet=kTRUE;
    }
    else if(lay==5 || lay==6){
      par[0]=GetSSDPionLandauWidth(mom);
      par[1]=GetSSDPionMPV(mom);
      par[2]=GetSSDPionGaussWidth(mom);
      isSet=kTRUE;
    }
  }else if(partType==AliPID::kKaon){
    if(lay==3 || lay==4){
      par[0]=GetSDDKaonLandauWidth(mom);
      par[1]=GetSDDKaonMPV(mom);
      par[2]=GetSDDKaonGaussWidth(mom);
      isSet=kTRUE;
    }
    else if(lay==5 || lay==6){
      par[0]=GetSSDKaonLandauWidth(mom);
      par[1]=GetSSDKaonMPV(mom);
      par[2]=GetSSDKaonGaussWidth(mom);
      isSet=kTRUE;
    }
  }else if(partType==AliPID::kProton){
    if(lay==3 || lay==4){
      par[0]=GetSDDProtLandauWidth(mom);
      par[1]=GetSDDProtMPV(mom);
      par[2]=GetSDDProtGaussWidth(mom);
      isSet=kTRUE;
    }
    else if(lay==5 || lay==6){
      par[0]=GetSSDProtLandauWidth(mom);
      par[1]=GetSSDProtMPV(mom);
      par[2]=GetSSDProtGaussWidth(mom);
      isSet=kTRUE;
    }
  }
  if(!isSet) return 0.;
  // Numeric constants
  const Double_t invsq2pi = 0.3989422804014;   // (2 pi)^(-1/2)
  const Double_t mpshift  = -0.22278298;       // Landau maximum location
  // Control constants
  const Double_t np = 100.0;      // number of convolution steps
  const Double_t sc =   5.0;      // convolution extends to +-sc Gaussian sigmas
  // Variables
  Double_t xx;
  Double_t mpc;
  Double_t fland;
  Double_t sum = 0.0;
  Double_t xlow,xupp;
  Double_t step;
  Double_t i;
  
  // MP shift correction
  mpc = par[1] - mpshift * par[0];
  // Range of convolution integral
  xlow = dedx - sc * par[2];
  xupp = dedx + sc * par[2];
  step = (xupp-xlow) / np;
  
  // Convolution integral of Landau and Gaussian by sum
  for(i=1.0; i<=np/2; i++) {
    xx = xlow + (i-.5) * step;
   
    fland = TMath::Landau(xx,mpc,par[0]) / par[0];
    sum += fland * TMath::Gaus(dedx,xx,par[2]);
    
    xx = xupp - (i-.5) * step;
    fland = TMath::Landau(xx,mpc,par[0]) / par[0];
    sum += fland * TMath::Gaus(dedx,xx,par[2]);
  }
  
  return (step * sum * invsq2pi / par[2]);
}

 AliITSPidParams.cxx:1
 AliITSPidParams.cxx:2
 AliITSPidParams.cxx:3
 AliITSPidParams.cxx:4
 AliITSPidParams.cxx:5
 AliITSPidParams.cxx:6
 AliITSPidParams.cxx:7
 AliITSPidParams.cxx:8
 AliITSPidParams.cxx:9
 AliITSPidParams.cxx:10
 AliITSPidParams.cxx:11
 AliITSPidParams.cxx:12
 AliITSPidParams.cxx:13
 AliITSPidParams.cxx:14
 AliITSPidParams.cxx:15
 AliITSPidParams.cxx:16
 AliITSPidParams.cxx:17
 AliITSPidParams.cxx:18
 AliITSPidParams.cxx:19
 AliITSPidParams.cxx:20
 AliITSPidParams.cxx:21
 AliITSPidParams.cxx:22
 AliITSPidParams.cxx:23
 AliITSPidParams.cxx:24
 AliITSPidParams.cxx:25
 AliITSPidParams.cxx:26
 AliITSPidParams.cxx:27
 AliITSPidParams.cxx:28
 AliITSPidParams.cxx:29
 AliITSPidParams.cxx:30
 AliITSPidParams.cxx:31
 AliITSPidParams.cxx:32
 AliITSPidParams.cxx:33
 AliITSPidParams.cxx:34
 AliITSPidParams.cxx:35
 AliITSPidParams.cxx:36
 AliITSPidParams.cxx:37
 AliITSPidParams.cxx:38
 AliITSPidParams.cxx:39
 AliITSPidParams.cxx:40
 AliITSPidParams.cxx:41
 AliITSPidParams.cxx:42
 AliITSPidParams.cxx:43
 AliITSPidParams.cxx:44
 AliITSPidParams.cxx:45
 AliITSPidParams.cxx:46
 AliITSPidParams.cxx:47
 AliITSPidParams.cxx:48
 AliITSPidParams.cxx:49
 AliITSPidParams.cxx:50
 AliITSPidParams.cxx:51
 AliITSPidParams.cxx:52
 AliITSPidParams.cxx:53
 AliITSPidParams.cxx:54
 AliITSPidParams.cxx:55
 AliITSPidParams.cxx:56
 AliITSPidParams.cxx:57
 AliITSPidParams.cxx:58
 AliITSPidParams.cxx:59
 AliITSPidParams.cxx:60
 AliITSPidParams.cxx:61
 AliITSPidParams.cxx:62
 AliITSPidParams.cxx:63
 AliITSPidParams.cxx:64
 AliITSPidParams.cxx:65
 AliITSPidParams.cxx:66
 AliITSPidParams.cxx:67
 AliITSPidParams.cxx:68
 AliITSPidParams.cxx:69
 AliITSPidParams.cxx:70
 AliITSPidParams.cxx:71
 AliITSPidParams.cxx:72
 AliITSPidParams.cxx:73
 AliITSPidParams.cxx:74
 AliITSPidParams.cxx:75
 AliITSPidParams.cxx:76
 AliITSPidParams.cxx:77
 AliITSPidParams.cxx:78
 AliITSPidParams.cxx:79
 AliITSPidParams.cxx:80
 AliITSPidParams.cxx:81
 AliITSPidParams.cxx:82
 AliITSPidParams.cxx:83
 AliITSPidParams.cxx:84
 AliITSPidParams.cxx:85
 AliITSPidParams.cxx:86
 AliITSPidParams.cxx:87
 AliITSPidParams.cxx:88
 AliITSPidParams.cxx:89
 AliITSPidParams.cxx:90
 AliITSPidParams.cxx:91
 AliITSPidParams.cxx:92
 AliITSPidParams.cxx:93
 AliITSPidParams.cxx:94
 AliITSPidParams.cxx:95
 AliITSPidParams.cxx:96
 AliITSPidParams.cxx:97
 AliITSPidParams.cxx:98
 AliITSPidParams.cxx:99
 AliITSPidParams.cxx:100
 AliITSPidParams.cxx:101
 AliITSPidParams.cxx:102
 AliITSPidParams.cxx:103
 AliITSPidParams.cxx:104
 AliITSPidParams.cxx:105
 AliITSPidParams.cxx:106
 AliITSPidParams.cxx:107
 AliITSPidParams.cxx:108
 AliITSPidParams.cxx:109
 AliITSPidParams.cxx:110
 AliITSPidParams.cxx:111
 AliITSPidParams.cxx:112
 AliITSPidParams.cxx:113
 AliITSPidParams.cxx:114
 AliITSPidParams.cxx:115
 AliITSPidParams.cxx:116
 AliITSPidParams.cxx:117
 AliITSPidParams.cxx:118
 AliITSPidParams.cxx:119
 AliITSPidParams.cxx:120
 AliITSPidParams.cxx:121
 AliITSPidParams.cxx:122
 AliITSPidParams.cxx:123
 AliITSPidParams.cxx:124
 AliITSPidParams.cxx:125
 AliITSPidParams.cxx:126
 AliITSPidParams.cxx:127
 AliITSPidParams.cxx:128
 AliITSPidParams.cxx:129
 AliITSPidParams.cxx:130
 AliITSPidParams.cxx:131
 AliITSPidParams.cxx:132
 AliITSPidParams.cxx:133
 AliITSPidParams.cxx:134
 AliITSPidParams.cxx:135
 AliITSPidParams.cxx:136
 AliITSPidParams.cxx:137
 AliITSPidParams.cxx:138
 AliITSPidParams.cxx:139
 AliITSPidParams.cxx:140
 AliITSPidParams.cxx:141
 AliITSPidParams.cxx:142
 AliITSPidParams.cxx:143
 AliITSPidParams.cxx:144
 AliITSPidParams.cxx:145
 AliITSPidParams.cxx:146
 AliITSPidParams.cxx:147
 AliITSPidParams.cxx:148
 AliITSPidParams.cxx:149
 AliITSPidParams.cxx:150
 AliITSPidParams.cxx:151
 AliITSPidParams.cxx:152
 AliITSPidParams.cxx:153
 AliITSPidParams.cxx:154
 AliITSPidParams.cxx:155
 AliITSPidParams.cxx:156
 AliITSPidParams.cxx:157
 AliITSPidParams.cxx:158
 AliITSPidParams.cxx:159
 AliITSPidParams.cxx:160
 AliITSPidParams.cxx:161
 AliITSPidParams.cxx:162
 AliITSPidParams.cxx:163
 AliITSPidParams.cxx:164
 AliITSPidParams.cxx:165
 AliITSPidParams.cxx:166
 AliITSPidParams.cxx:167
 AliITSPidParams.cxx:168
 AliITSPidParams.cxx:169
 AliITSPidParams.cxx:170
 AliITSPidParams.cxx:171
 AliITSPidParams.cxx:172
 AliITSPidParams.cxx:173
 AliITSPidParams.cxx:174
 AliITSPidParams.cxx:175
 AliITSPidParams.cxx:176
 AliITSPidParams.cxx:177
 AliITSPidParams.cxx:178
 AliITSPidParams.cxx:179
 AliITSPidParams.cxx:180
 AliITSPidParams.cxx:181
 AliITSPidParams.cxx:182
 AliITSPidParams.cxx:183
 AliITSPidParams.cxx:184
 AliITSPidParams.cxx:185
 AliITSPidParams.cxx:186
 AliITSPidParams.cxx:187
 AliITSPidParams.cxx:188
 AliITSPidParams.cxx:189
 AliITSPidParams.cxx:190
 AliITSPidParams.cxx:191
 AliITSPidParams.cxx:192
 AliITSPidParams.cxx:193
 AliITSPidParams.cxx:194
 AliITSPidParams.cxx:195
 AliITSPidParams.cxx:196
 AliITSPidParams.cxx:197
 AliITSPidParams.cxx:198
 AliITSPidParams.cxx:199
 AliITSPidParams.cxx:200
 AliITSPidParams.cxx:201
 AliITSPidParams.cxx:202
 AliITSPidParams.cxx:203
 AliITSPidParams.cxx:204
 AliITSPidParams.cxx:205
 AliITSPidParams.cxx:206
 AliITSPidParams.cxx:207
 AliITSPidParams.cxx:208
 AliITSPidParams.cxx:209
 AliITSPidParams.cxx:210
 AliITSPidParams.cxx:211
 AliITSPidParams.cxx:212
 AliITSPidParams.cxx:213
 AliITSPidParams.cxx:214
 AliITSPidParams.cxx:215
 AliITSPidParams.cxx:216
 AliITSPidParams.cxx:217
 AliITSPidParams.cxx:218
 AliITSPidParams.cxx:219
 AliITSPidParams.cxx:220
 AliITSPidParams.cxx:221
 AliITSPidParams.cxx:222
 AliITSPidParams.cxx:223
 AliITSPidParams.cxx:224
 AliITSPidParams.cxx:225
 AliITSPidParams.cxx:226
 AliITSPidParams.cxx:227
 AliITSPidParams.cxx:228
 AliITSPidParams.cxx:229
 AliITSPidParams.cxx:230
 AliITSPidParams.cxx:231
 AliITSPidParams.cxx:232
 AliITSPidParams.cxx:233
 AliITSPidParams.cxx:234
 AliITSPidParams.cxx:235
 AliITSPidParams.cxx:236
 AliITSPidParams.cxx:237
 AliITSPidParams.cxx:238
 AliITSPidParams.cxx:239
 AliITSPidParams.cxx:240
 AliITSPidParams.cxx:241
 AliITSPidParams.cxx:242
 AliITSPidParams.cxx:243
 AliITSPidParams.cxx:244
 AliITSPidParams.cxx:245
 AliITSPidParams.cxx:246
 AliITSPidParams.cxx:247
 AliITSPidParams.cxx:248
 AliITSPidParams.cxx:249
 AliITSPidParams.cxx:250
 AliITSPidParams.cxx:251
 AliITSPidParams.cxx:252
 AliITSPidParams.cxx:253
 AliITSPidParams.cxx:254
 AliITSPidParams.cxx:255
 AliITSPidParams.cxx:256
 AliITSPidParams.cxx:257
 AliITSPidParams.cxx:258
 AliITSPidParams.cxx:259
 AliITSPidParams.cxx:260
 AliITSPidParams.cxx:261
 AliITSPidParams.cxx:262
 AliITSPidParams.cxx:263
 AliITSPidParams.cxx:264
 AliITSPidParams.cxx:265
 AliITSPidParams.cxx:266
 AliITSPidParams.cxx:267
 AliITSPidParams.cxx:268
 AliITSPidParams.cxx:269
 AliITSPidParams.cxx:270
 AliITSPidParams.cxx:271
 AliITSPidParams.cxx:272
 AliITSPidParams.cxx:273
 AliITSPidParams.cxx:274
 AliITSPidParams.cxx:275
 AliITSPidParams.cxx:276
 AliITSPidParams.cxx:277
 AliITSPidParams.cxx:278
 AliITSPidParams.cxx:279
 AliITSPidParams.cxx:280
 AliITSPidParams.cxx:281
 AliITSPidParams.cxx:282
 AliITSPidParams.cxx:283
 AliITSPidParams.cxx:284
 AliITSPidParams.cxx:285
 AliITSPidParams.cxx:286
 AliITSPidParams.cxx:287
 AliITSPidParams.cxx:288
 AliITSPidParams.cxx:289
 AliITSPidParams.cxx:290
 AliITSPidParams.cxx:291
 AliITSPidParams.cxx:292
 AliITSPidParams.cxx:293
 AliITSPidParams.cxx:294
 AliITSPidParams.cxx:295
 AliITSPidParams.cxx:296
 AliITSPidParams.cxx:297
 AliITSPidParams.cxx:298
 AliITSPidParams.cxx:299
 AliITSPidParams.cxx:300
 AliITSPidParams.cxx:301
 AliITSPidParams.cxx:302
 AliITSPidParams.cxx:303
 AliITSPidParams.cxx:304
 AliITSPidParams.cxx:305
 AliITSPidParams.cxx:306
 AliITSPidParams.cxx:307
 AliITSPidParams.cxx:308
 AliITSPidParams.cxx:309
 AliITSPidParams.cxx:310
 AliITSPidParams.cxx:311
 AliITSPidParams.cxx:312
 AliITSPidParams.cxx:313
 AliITSPidParams.cxx:314
 AliITSPidParams.cxx:315
 AliITSPidParams.cxx:316
 AliITSPidParams.cxx:317
 AliITSPidParams.cxx:318
 AliITSPidParams.cxx:319
 AliITSPidParams.cxx:320
 AliITSPidParams.cxx:321
 AliITSPidParams.cxx:322
 AliITSPidParams.cxx:323
 AliITSPidParams.cxx:324
 AliITSPidParams.cxx:325
 AliITSPidParams.cxx:326
 AliITSPidParams.cxx:327
 AliITSPidParams.cxx:328
 AliITSPidParams.cxx:329
 AliITSPidParams.cxx:330
 AliITSPidParams.cxx:331
 AliITSPidParams.cxx:332
 AliITSPidParams.cxx:333
 AliITSPidParams.cxx:334
 AliITSPidParams.cxx:335
 AliITSPidParams.cxx:336
 AliITSPidParams.cxx:337
 AliITSPidParams.cxx:338
 AliITSPidParams.cxx:339
 AliITSPidParams.cxx:340
 AliITSPidParams.cxx:341
 AliITSPidParams.cxx:342
 AliITSPidParams.cxx:343
 AliITSPidParams.cxx:344
 AliITSPidParams.cxx:345
 AliITSPidParams.cxx:346
 AliITSPidParams.cxx:347
 AliITSPidParams.cxx:348
 AliITSPidParams.cxx:349
 AliITSPidParams.cxx:350
 AliITSPidParams.cxx:351
 AliITSPidParams.cxx:352
 AliITSPidParams.cxx:353
 AliITSPidParams.cxx:354
 AliITSPidParams.cxx:355
 AliITSPidParams.cxx:356
 AliITSPidParams.cxx:357
 AliITSPidParams.cxx:358
 AliITSPidParams.cxx:359
 AliITSPidParams.cxx:360
 AliITSPidParams.cxx:361
 AliITSPidParams.cxx:362
 AliITSPidParams.cxx:363
 AliITSPidParams.cxx:364
 AliITSPidParams.cxx:365
 AliITSPidParams.cxx:366
 AliITSPidParams.cxx:367
 AliITSPidParams.cxx:368
 AliITSPidParams.cxx:369
 AliITSPidParams.cxx:370
 AliITSPidParams.cxx:371
 AliITSPidParams.cxx:372
 AliITSPidParams.cxx:373
 AliITSPidParams.cxx:374
 AliITSPidParams.cxx:375
 AliITSPidParams.cxx:376
 AliITSPidParams.cxx:377
 AliITSPidParams.cxx:378
 AliITSPidParams.cxx:379
 AliITSPidParams.cxx:380
 AliITSPidParams.cxx:381
 AliITSPidParams.cxx:382
 AliITSPidParams.cxx:383
 AliITSPidParams.cxx:384
 AliITSPidParams.cxx:385
 AliITSPidParams.cxx:386
 AliITSPidParams.cxx:387
 AliITSPidParams.cxx:388
 AliITSPidParams.cxx:389
 AliITSPidParams.cxx:390
 AliITSPidParams.cxx:391
 AliITSPidParams.cxx:392
 AliITSPidParams.cxx:393
 AliITSPidParams.cxx:394
 AliITSPidParams.cxx:395
 AliITSPidParams.cxx:396
 AliITSPidParams.cxx:397
 AliITSPidParams.cxx:398
 AliITSPidParams.cxx:399
 AliITSPidParams.cxx:400
 AliITSPidParams.cxx:401
 AliITSPidParams.cxx:402
 AliITSPidParams.cxx:403
 AliITSPidParams.cxx:404
 AliITSPidParams.cxx:405
 AliITSPidParams.cxx:406
 AliITSPidParams.cxx:407
 AliITSPidParams.cxx:408
 AliITSPidParams.cxx:409
 AliITSPidParams.cxx:410
 AliITSPidParams.cxx:411
 AliITSPidParams.cxx:412
 AliITSPidParams.cxx:413
 AliITSPidParams.cxx:414
 AliITSPidParams.cxx:415
 AliITSPidParams.cxx:416
 AliITSPidParams.cxx:417
 AliITSPidParams.cxx:418
 AliITSPidParams.cxx:419
 AliITSPidParams.cxx:420
 AliITSPidParams.cxx:421
 AliITSPidParams.cxx:422
 AliITSPidParams.cxx:423
 AliITSPidParams.cxx:424
 AliITSPidParams.cxx:425
 AliITSPidParams.cxx:426
 AliITSPidParams.cxx:427
 AliITSPidParams.cxx:428
 AliITSPidParams.cxx:429
 AliITSPidParams.cxx:430
 AliITSPidParams.cxx:431
 AliITSPidParams.cxx:432
 AliITSPidParams.cxx:433
 AliITSPidParams.cxx:434
 AliITSPidParams.cxx:435
 AliITSPidParams.cxx:436
 AliITSPidParams.cxx:437
 AliITSPidParams.cxx:438
 AliITSPidParams.cxx:439
 AliITSPidParams.cxx:440