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.                  *
 **************************************************************************/

/* $Id$ */ 

// AliFlowTrackSimple:
// A simple track class to the the AliFlowEventSimple for flow analysis
//
//
// author: N. van der Kolk (kolk@nikhef.nl)
// mods: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch)

#include "TObject.h"
#include "TParticle.h"
#include "TParticlePDG.h"
#include "AliFlowTrackSimple.h"
#include "TRandom.h"
#include "TMath.h"

ClassImp(AliFlowTrackSimple)

//-----------------------------------------------------------------------
AliFlowTrackSimple::AliFlowTrackSimple():
  TObject(),
  fEta(0),
  fPt(0),
  fPhi(0),
  fTrackWeight(1.),
  fCharge(0),
  fMass(-1),
  fPOItype(0),
  fSubEventBits(0),
  fID(-1)
{
  //constructor 
}

//-----------------------------------------------------------------------
AliFlowTrackSimple::AliFlowTrackSimple(Double_t phi, Double_t eta, Double_t pt, Double_t weight, Int_t charge, Double_t mass):
  TObject(),
  fEta(eta),
  fPt(pt),
  fPhi(phi),
  fTrackWeight(weight),
  fCharge(charge),
  fMass(mass),
  fPOItype(0),
  fSubEventBits(0),
  fID(-1)
{
  //constructor 
}

//-----------------------------------------------------------------------
AliFlowTrackSimple::AliFlowTrackSimple( TParticle* p ):
  TObject(),
  fEta(p->Eta()),
  fPt(p->Pt()),
  fPhi(p->Phi()),
  fTrackWeight(1.),
  fCharge(0),
  fMass(-1),
  fPOItype(0),
  fSubEventBits(0),
  fID(-1)
{
  //ctor
  TParticlePDG* ppdg = p->GetPDG();
  fCharge = TMath::Nint(ppdg->Charge()/3.0);
  fMass = ppdg->Mass();
}

//-----------------------------------------------------------------------
void AliFlowTrackSimple::Set(TParticle* p)
{
  //set from a TParticle
  fEta = p->Eta();
  fPt = p->Pt();
  fPhi = p->Phi();
  fTrackWeight = 1.;
  TParticlePDG* ppdg = p->GetPDG();
  fCharge = TMath::Nint(ppdg->Charge()/3.0);
  fMass = ppdg->Mass();
}

//-----------------------------------------------------------------------
AliFlowTrackSimple::AliFlowTrackSimple(const AliFlowTrackSimple& aTrack):
  TObject(aTrack),
  fEta(aTrack.fEta),
  fPt(aTrack.fPt),
  fPhi(aTrack.fPhi),
  fTrackWeight(aTrack.fTrackWeight),
  fCharge(aTrack.fCharge),
  fMass(aTrack.fMass),
  fPOItype(aTrack.fPOItype),
  fSubEventBits(aTrack.fSubEventBits),
  fID(aTrack.fID)
{
  //copy constructor 
}

//-----------------------------------------------------------------------
AliFlowTrackSimple* AliFlowTrackSimple::Clone(const char* /*option*/) const
{
  //clone "constructor"
  return new AliFlowTrackSimple(*this);
}

//-----------------------------------------------------------------------
AliFlowTrackSimple& AliFlowTrackSimple::operator=(const AliFlowTrackSimple& aTrack)
{
  //assignment
  if (&aTrack==this) return *this; //handle self assignmnet
  fEta = aTrack.fEta;
  fPt = aTrack.fPt;
  fPhi = aTrack.fPhi;
  fTrackWeight = aTrack.fTrackWeight;
  fCharge = aTrack.fCharge;
  fMass = aTrack.fMass;
  fPOItype = aTrack.fPOItype;
  fSubEventBits = aTrack.fSubEventBits;
  fID = aTrack.fID;

  return *this;
}

//----------------------------------------------------------------------- 
AliFlowTrackSimple::~AliFlowTrackSimple()
{
  //destructor
  
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::ResolutionPt(Double_t res)
{
  //smear the pt by a gaussian with sigma=res
  fPt += gRandom->Gaus(0.,res);
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::AddV1( Double_t v1,
                                Double_t reactionPlaneAngle,
                                Double_t precisionPhi,
                                Int_t maxNumberOfIterations )
{
  //afterburner, adds v1, uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0+2.0*v1*TMath::Sin(fPhi-reactionPlaneAngle);
    fp = 1.0+2.0*v1*TMath::Cos(fPhi-reactionPlaneAngle); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::AddV2( Double_t v2,
                                Double_t reactionPlaneAngle,
                                Double_t precisionPhi,
                                Int_t maxNumberOfIterations )
{
  //afterburner, adds v2, uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0+v2*TMath::Sin(2.*(fPhi-reactionPlaneAngle));
    fp = 1.0+2.0*v2*TMath::Cos(2.*(fPhi-reactionPlaneAngle)); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::AddV3( Double_t v3,
                                Double_t reactionPlaneAngle,
                                Double_t precisionPhi,
                                Int_t maxNumberOfIterations )
{
  //afterburner, adds v3, uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0+2./3.*v3*TMath::Sin(3.*(fPhi-reactionPlaneAngle));
    fp = 1.0+2.0*v3*TMath::Cos(3.*(fPhi-reactionPlaneAngle)); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::AddV4( Double_t v4,
                                Double_t reactionPlaneAngle,
                                Double_t precisionPhi,
                                Int_t maxNumberOfIterations )
{
  //afterburner, adds v4, uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0+0.5*v4*TMath::Sin(4.*(fPhi-reactionPlaneAngle));
    fp = 1.0+2.0*v4*TMath::Cos(4.*(fPhi-reactionPlaneAngle)); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//----------------------------------------------------------------------- 
void AliFlowTrackSimple::AddV5( Double_t v5,
                                Double_t reactionPlaneAngle,
                                Double_t precisionPhi,
                                Int_t maxNumberOfIterations )
{
  //afterburner, adds v4, uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0+0.4*v5*TMath::Sin(5.*(fPhi-reactionPlaneAngle));
    fp = 1.0+2.0*v5*TMath::Cos(5.*(fPhi-reactionPlaneAngle)); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//______________________________________________________________________________
void AliFlowTrackSimple::AddFlow( Double_t v1,
                                  Double_t v2,
                                  Double_t v3,
                                  Double_t v4,
                                  Double_t v5,
                                  Double_t rp1,
                                  Double_t rp2,
                                  Double_t rp3,
                                  Double_t rp4,
                                  Double_t rp5,
                                  Double_t precisionPhi,
                                  Int_t maxNumberOfIterations )
{
  //afterburner, adds v1,v2,v4 uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0
        +2.0*  v1*TMath::Sin(    fPhi-rp1)
        +      v2*TMath::Sin(2.*(fPhi-rp2))
        +2./3.*v3*TMath::Sin(3.*(fPhi-rp3))
        +0.5*  v4*TMath::Sin(4.*(fPhi-rp4))
        +0.4*  v5*TMath::Sin(5.*(fPhi-rp5))
        ;
    fp =  1.0
         +2.0*(
           +v1*TMath::Cos(    fPhi-rp1)
           +v2*TMath::Cos(2.*(fPhi-rp2))
           +v3*TMath::Cos(3.*(fPhi-rp3))
           +v4*TMath::Cos(4.*(fPhi-rp4))
           +v5*TMath::Cos(5.*(fPhi-rp5))
         ); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//______________________________________________________________________________
void AliFlowTrackSimple::AddFlow( Double_t v1,
                                  Double_t v2,
                                  Double_t v3,
                                  Double_t v4,
                                  Double_t v5,
                                  Double_t rp,
                                  Double_t precisionPhi,
                                  Int_t maxNumberOfIterations )
{
  //afterburner, adds v1,v2,v4 uses Newton-Raphson iteration
  AddFlow(v1,v2,v3,v4,v5,rp,rp,rp,rp,rp,precisionPhi,maxNumberOfIterations);
}

//______________________________________________________________________________
void AliFlowTrackSimple::AddFlow( Double_t v1,
                                  Double_t v2,
                                  Double_t v3,
                                  Double_t v4,
                                  Double_t reactionPlaneAngle,
                                  Double_t precisionPhi,
                                  Int_t maxNumberOfIterations )
{
  //afterburner, adds v1,v2,v4 uses Newton-Raphson iteration
  Double_t phi0=fPhi;
  Double_t f=0.;
  Double_t fp=0.;
  Double_t phiprev=0.;

  for (Int_t i=0; i<maxNumberOfIterations; i++)
  {
    phiprev=fPhi; //store last value for comparison
    f =  fPhi-phi0
        +2.0*  v1*TMath::Sin(    fPhi-reactionPlaneAngle)
        +      v2*TMath::Sin(2.*(fPhi-reactionPlaneAngle))
        +2./3.*v3*TMath::Sin(3.*(fPhi-reactionPlaneAngle))
        +0.5*  v4*TMath::Sin(4.*(fPhi-reactionPlaneAngle))
        ;
    fp =  1.0
         +2.0*(
           +v1*TMath::Cos(    fPhi-reactionPlaneAngle)
           +v2*TMath::Cos(2.*(fPhi-reactionPlaneAngle))
           +v3*TMath::Cos(3.*(fPhi-reactionPlaneAngle))
           +v4*TMath::Cos(4.*(fPhi-reactionPlaneAngle))
         ); //first derivative
    fPhi -= f/fp;
    if (TMath::AreEqualAbs(phiprev,fPhi,precisionPhi)) break;
  }
}

//______________________________________________________________________________
void AliFlowTrackSimple::Print( Option_t* /*option*/ ) const
{
  //print stuff
  printf("Phi: %.3f, Eta: %+.3f, Pt: %.3f, weight: %.3f",fPhi,fEta,fPt,fTrackWeight);
  if (InRPSelection()) printf(", RP");
  if (InPOISelection()) printf(", POI");
  for (Int_t i=0; i<2; i++)
  {
    if (InSubevent(i)) printf(", subevent %i",i);
  }
  printf("\n");
}

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