ROOT logo
//
// This class contains the secondary correction and the double hit
// correction used in low-flux events.
//
#include "AliFMDCorrVertexBias.h"
#include <TBrowser.h>
#include <TH2D.h>
#include <AliLog.h>
#include <iostream>

//____________________________________________________________________
AliFMDCorrVertexBias::AliFMDCorrVertexBias()
  : fVertexArray(), 
    fVertexAxis(0,0,0)
{
  // 
  // Default constructor 
  //
  fVertexArray.SetOwner(kTRUE);
  fVertexArray.SetName("rings");
  fVertexAxis.SetName("vtxAxis");
  fVertexAxis.SetTitle("v_{z} [cm]");
  
}
//____________________________________________________________________
AliFMDCorrVertexBias::AliFMDCorrVertexBias(const AliFMDCorrVertexBias& o)
  : TObject(o), 
    fVertexArray(o.fVertexArray), 
    fVertexAxis(o.fVertexAxis.GetNbins(), o.fVertexAxis.GetXmin(), 
		o.fVertexAxis.GetXmax())
{
  // 
  // Copy constructor 
  // 
  // Parameters:
  //    o Object to copy from 
  //
  fVertexAxis.SetName("vtxAxis");
  fVertexAxis.SetTitle("v_{z} [cm]");
}
//____________________________________________________________________
AliFMDCorrVertexBias::~AliFMDCorrVertexBias()
{
  //
  // Destructor 
  // 
  //
  fVertexArray.Clear();
}
//____________________________________________________________________
AliFMDCorrVertexBias&
AliFMDCorrVertexBias::operator=(const AliFMDCorrVertexBias& o)
{
  // 
  // Assignment operator 
  // 
  // Parameters:
  //    o Object to assign from 
  // 
  // Return:
  //    Reference to this object 
  //
  fVertexArray        = o.fVertexArray;
  SetVertexAxis(o.fVertexAxis);

  return *this;
}
//____________________________________________________________________
TH2D*
AliFMDCorrVertexBias::GetCorrection(Char_t r, Double_t v) const
{
  // 
  // Get the vertex bias correction @f$ b_{v}@f$ 
  // 
  // Parameters:
  //    r  Ring type (I or O)
  //    v  Primary interaction point @f$z@f$ coordinate
  // 
  // Return:
  //    The correction @f$ b_{v}@f$ 
  //
  Int_t b = FindVertexBin(v);
  if (b <= 0) return 0;
  return GetCorrection(r, UShort_t(b));
}
//____________________________________________________________________
TH2D*
AliFMDCorrVertexBias::GetCorrection(Char_t r, UShort_t b) const
{
  // 
  // Get the vertex bias correction @f$ b_{v}@f$ 
  // 
  // Parameters:
  //    r  Ring type (I or O)
  //    b  Bin corresponding to the primary interaction point 
  //           @f$z@f$ coordinate (1 based)
  // 
  // Return:
  //    The correction @f$ b_{v}@f$ 
  //
  TObjArray* vertexarray = GetVertexArray(b);
  if (!vertexarray) return 0;

  Int_t idx = -1;
  switch (r) { 
  case 'i': case 'I': idx = 0; break;
  case 'o': case 'O': idx = 1; break;
  }
  if (idx < 0) {
    AliWarning(Form("Unknown ting type %c, not one of [iIoO]", r));
    return 0;
  }

  TObject* o = vertexarray->At(idx);
  if (!o) { 
    AliWarning(Form("No vertex bias found for ring type %c in vertex bin %d",
		    r,b));
    return 0;
  }
  return static_cast<TH2D*>(o);
}
  
//____________________________________________________________________
Int_t
AliFMDCorrVertexBias::FindVertexBin(Double_t v) const
{
  // 
  // Find the vertex bin that corresponds to the passed vertex 
  // 
  // Parameters:
  //    vertex The interaction points @f$z@f$-coordinate 
  // 
  // Return:
  //    Vertex bin in @f$[1,N_{\mbox{vertex}}]@f$ or negative if 
  // out of range 
  //
  if (fVertexAxis.GetNbins() <= 0) { 
    AliWarning("No vertex array defined");
    return 0;
  }
  Int_t bin = const_cast<TAxis&>(fVertexAxis).FindBin(v);
  if (bin <= 0 || bin > fVertexAxis.GetNbins()) { 
    AliWarning(Form("vertex %+8.4f out of range [%+8.4f,%+8.4f]",
		    v, fVertexAxis.GetXmin(), fVertexAxis.GetXmax()));
    return 0;
  }
  return bin;
}
//____________________________________________________________________
TObjArray*
AliFMDCorrVertexBias::GetVertexArray(UShort_t v) const
{
  // 
  // Get the vertex array corresponding to the specified ring
  // 
  // Parameters:
  //    v vertex bin (1 based)
  // 
  // Return:
  //    Pointer to vertex array, or null in case of problems
  //
  if (v <= 0 || v > fVertexAxis.GetNbins()) {
    AliWarning(Form("vertex bin %d out of range [1,%d]",
		    v, fVertexAxis.GetNbins()));
    return 0;
  }
  
  TObject* o = fVertexArray.At(v-1);
  if (!o) { 
    AliWarning(Form("No array found for vertex bin %d", v));
    return 0;
  }

  return static_cast<TObjArray*>(o);
}
//____________________________________________________________________
TObjArray*
AliFMDCorrVertexBias::GetOrMakeVertexArray(UShort_t v)
{
  // 
  // Get the vertex array corresponding to the specified ring
  // 
  // Parameters:
  //    v vertex bin (1 based)
  // 
  // Return:
  //    Pointer to vertex array, or newly created container 
  //
  if (v <= 0 || v > fVertexAxis.GetNbins()) {
    AliWarning(Form("vertex bin %d out of range [1,%d]",
		    v, fVertexAxis.GetNbins()));
    return 0;
  }
    
  TObject* o = fVertexArray.At(v-1);
  if (!o) { 
    TObjArray* a = new TObjArray(fVertexAxis.GetNbins());
    a->SetName(Form("vertexbin%02d", v));
    a->SetOwner(kTRUE);
    fVertexArray.AddAtAndExpand(a, v-1);
    return a;
  }

  return static_cast<TObjArray*>(fVertexArray.At(v-1));
}

//____________________________________________________________________
Bool_t
AliFMDCorrVertexBias::SetCorrection(Char_t r, UShort_t b, TH2D*  h) 
{
  // 
  // Set the vertex bias correction @f$ b_{v}(\eta,\varphi)@f$ 
  // Note, that the object takes ownership of the passed pointer.
  // 
  // Parameters:
  //    r    Ring type (I or O)
  //    b    Bin corresponding to the primary interaction point 
  //             @f$z@f$ coordinate  (1 based)
  //    h    @f$ b_{v}(\eta,\varphi)@f$ 
  // 
  // Return:
  //    true if operation succeeded 
  //
  TObjArray* vertexarray = GetOrMakeVertexArray(b);
  if (!vertexarray) return false;
  

  Int_t idx = -1;
  switch (r) { 
  case 'i': case 'I': idx = 0; break;
  case 'o': case 'O': idx = 1; break;
  }
  if (idx < 0) {
    AliWarning(Form("Unknown ting type %c, not one of [iIoO]", r));
    return false;
  }
  h->SetName(Form("FMDX%c", r));
  h->SetTitle(Form("Vertex bias correction for %c rings "
		   "in vertex bin %d [%+8.4f,%+8.4f]", 
		   r, b, fVertexAxis.GetBinLowEdge(b), 
		   fVertexAxis.GetBinUpEdge(b)));
  h->SetXTitle("#eta");
  h->SetYTitle("#phi [radians]");
  h->SetZTitle("1/N_{t}#sum_{i}^{N_{tv}} N_{ch,i,primary} / "
	       "1/N_{v}#sum_{i}^{N_{v}} N_{ch,i,primary}");
  h->SetDirectory(0);
  h->SetStats(0);

  vertexarray->AddAtAndExpand(h, idx);
  return kTRUE;
}
//____________________________________________________________________
Bool_t
AliFMDCorrVertexBias::SetCorrection(Char_t r, Double_t v, TH2D*  h) 
{
  // 
  // Set the vertex bias correction @f$ b_{v}(\eta,\varphi)@f$.
  // Note, that the object takes ownership of the passed pointer.
  // 
  // Parameters:
  //    r    Ring type (I or O)
  //    v    Primary interaction point @f$z@f$ coordinate  
  //    h    @f$ b_{v}(\eta,\varphi)@f$ 
  // 
  // Return:
  //    true if operation succeeded 
  //
  Int_t b = FindVertexBin(v);
  if (b <= 0 || b > fVertexAxis.GetNbins()) { 
    AliWarning(Form("Vertex %+8.4f out of range [%+8.4f,%+8.4f]", 
		    v, fVertexAxis.GetXmin(), fVertexAxis.GetXmax()));
    return false;
  }
  return SetCorrection(r, UShort_t(b), h);
}
//____________________________________________________________________
void
AliFMDCorrVertexBias::Browse(TBrowser* b)
{
  // 
  // Browse this object in the browser
  // 
  // Parameters:
  //    b 
  //
  b->Add(&fVertexArray);
  b->Add(&fVertexAxis);
}
//____________________________________________________________________
void
AliFMDCorrVertexBias::Print(Option_t* option) const
{
  // 
  // Print this object 
  // 
  // Parameters:
  //    option 
  //  
  std::cout << "Vertex bias correction" << std::endl;
  fVertexArray.Print(option);
  fVertexAxis.Print(option);
}
    
//____________________________________________________________________
//
// EOF
//
 AliFMDCorrVertexBias.cxx:1
 AliFMDCorrVertexBias.cxx:2
 AliFMDCorrVertexBias.cxx:3
 AliFMDCorrVertexBias.cxx:4
 AliFMDCorrVertexBias.cxx:5
 AliFMDCorrVertexBias.cxx:6
 AliFMDCorrVertexBias.cxx:7
 AliFMDCorrVertexBias.cxx:8
 AliFMDCorrVertexBias.cxx:9
 AliFMDCorrVertexBias.cxx:10
 AliFMDCorrVertexBias.cxx:11
 AliFMDCorrVertexBias.cxx:12
 AliFMDCorrVertexBias.cxx:13
 AliFMDCorrVertexBias.cxx:14
 AliFMDCorrVertexBias.cxx:15
 AliFMDCorrVertexBias.cxx:16
 AliFMDCorrVertexBias.cxx:17
 AliFMDCorrVertexBias.cxx:18
 AliFMDCorrVertexBias.cxx:19
 AliFMDCorrVertexBias.cxx:20
 AliFMDCorrVertexBias.cxx:21
 AliFMDCorrVertexBias.cxx:22
 AliFMDCorrVertexBias.cxx:23
 AliFMDCorrVertexBias.cxx:24
 AliFMDCorrVertexBias.cxx:25
 AliFMDCorrVertexBias.cxx:26
 AliFMDCorrVertexBias.cxx:27
 AliFMDCorrVertexBias.cxx:28
 AliFMDCorrVertexBias.cxx:29
 AliFMDCorrVertexBias.cxx:30
 AliFMDCorrVertexBias.cxx:31
 AliFMDCorrVertexBias.cxx:32
 AliFMDCorrVertexBias.cxx:33
 AliFMDCorrVertexBias.cxx:34
 AliFMDCorrVertexBias.cxx:35
 AliFMDCorrVertexBias.cxx:36
 AliFMDCorrVertexBias.cxx:37
 AliFMDCorrVertexBias.cxx:38
 AliFMDCorrVertexBias.cxx:39
 AliFMDCorrVertexBias.cxx:40
 AliFMDCorrVertexBias.cxx:41
 AliFMDCorrVertexBias.cxx:42
 AliFMDCorrVertexBias.cxx:43
 AliFMDCorrVertexBias.cxx:44
 AliFMDCorrVertexBias.cxx:45
 AliFMDCorrVertexBias.cxx:46
 AliFMDCorrVertexBias.cxx:47
 AliFMDCorrVertexBias.cxx:48
 AliFMDCorrVertexBias.cxx:49
 AliFMDCorrVertexBias.cxx:50
 AliFMDCorrVertexBias.cxx:51
 AliFMDCorrVertexBias.cxx:52
 AliFMDCorrVertexBias.cxx:53
 AliFMDCorrVertexBias.cxx:54
 AliFMDCorrVertexBias.cxx:55
 AliFMDCorrVertexBias.cxx:56
 AliFMDCorrVertexBias.cxx:57
 AliFMDCorrVertexBias.cxx:58
 AliFMDCorrVertexBias.cxx:59
 AliFMDCorrVertexBias.cxx:60
 AliFMDCorrVertexBias.cxx:61
 AliFMDCorrVertexBias.cxx:62
 AliFMDCorrVertexBias.cxx:63
 AliFMDCorrVertexBias.cxx:64
 AliFMDCorrVertexBias.cxx:65
 AliFMDCorrVertexBias.cxx:66
 AliFMDCorrVertexBias.cxx:67
 AliFMDCorrVertexBias.cxx:68
 AliFMDCorrVertexBias.cxx:69
 AliFMDCorrVertexBias.cxx:70
 AliFMDCorrVertexBias.cxx:71
 AliFMDCorrVertexBias.cxx:72
 AliFMDCorrVertexBias.cxx:73
 AliFMDCorrVertexBias.cxx:74
 AliFMDCorrVertexBias.cxx:75
 AliFMDCorrVertexBias.cxx:76
 AliFMDCorrVertexBias.cxx:77
 AliFMDCorrVertexBias.cxx:78
 AliFMDCorrVertexBias.cxx:79
 AliFMDCorrVertexBias.cxx:80
 AliFMDCorrVertexBias.cxx:81
 AliFMDCorrVertexBias.cxx:82
 AliFMDCorrVertexBias.cxx:83
 AliFMDCorrVertexBias.cxx:84
 AliFMDCorrVertexBias.cxx:85
 AliFMDCorrVertexBias.cxx:86
 AliFMDCorrVertexBias.cxx:87
 AliFMDCorrVertexBias.cxx:88
 AliFMDCorrVertexBias.cxx:89
 AliFMDCorrVertexBias.cxx:90
 AliFMDCorrVertexBias.cxx:91
 AliFMDCorrVertexBias.cxx:92
 AliFMDCorrVertexBias.cxx:93
 AliFMDCorrVertexBias.cxx:94
 AliFMDCorrVertexBias.cxx:95
 AliFMDCorrVertexBias.cxx:96
 AliFMDCorrVertexBias.cxx:97
 AliFMDCorrVertexBias.cxx:98
 AliFMDCorrVertexBias.cxx:99
 AliFMDCorrVertexBias.cxx:100
 AliFMDCorrVertexBias.cxx:101
 AliFMDCorrVertexBias.cxx:102
 AliFMDCorrVertexBias.cxx:103
 AliFMDCorrVertexBias.cxx:104
 AliFMDCorrVertexBias.cxx:105
 AliFMDCorrVertexBias.cxx:106
 AliFMDCorrVertexBias.cxx:107
 AliFMDCorrVertexBias.cxx:108
 AliFMDCorrVertexBias.cxx:109
 AliFMDCorrVertexBias.cxx:110
 AliFMDCorrVertexBias.cxx:111
 AliFMDCorrVertexBias.cxx:112
 AliFMDCorrVertexBias.cxx:113
 AliFMDCorrVertexBias.cxx:114
 AliFMDCorrVertexBias.cxx:115
 AliFMDCorrVertexBias.cxx:116
 AliFMDCorrVertexBias.cxx:117
 AliFMDCorrVertexBias.cxx:118
 AliFMDCorrVertexBias.cxx:119
 AliFMDCorrVertexBias.cxx:120
 AliFMDCorrVertexBias.cxx:121
 AliFMDCorrVertexBias.cxx:122
 AliFMDCorrVertexBias.cxx:123
 AliFMDCorrVertexBias.cxx:124
 AliFMDCorrVertexBias.cxx:125
 AliFMDCorrVertexBias.cxx:126
 AliFMDCorrVertexBias.cxx:127
 AliFMDCorrVertexBias.cxx:128
 AliFMDCorrVertexBias.cxx:129
 AliFMDCorrVertexBias.cxx:130
 AliFMDCorrVertexBias.cxx:131
 AliFMDCorrVertexBias.cxx:132
 AliFMDCorrVertexBias.cxx:133
 AliFMDCorrVertexBias.cxx:134
 AliFMDCorrVertexBias.cxx:135
 AliFMDCorrVertexBias.cxx:136
 AliFMDCorrVertexBias.cxx:137
 AliFMDCorrVertexBias.cxx:138
 AliFMDCorrVertexBias.cxx:139
 AliFMDCorrVertexBias.cxx:140
 AliFMDCorrVertexBias.cxx:141
 AliFMDCorrVertexBias.cxx:142
 AliFMDCorrVertexBias.cxx:143
 AliFMDCorrVertexBias.cxx:144
 AliFMDCorrVertexBias.cxx:145
 AliFMDCorrVertexBias.cxx:146
 AliFMDCorrVertexBias.cxx:147
 AliFMDCorrVertexBias.cxx:148
 AliFMDCorrVertexBias.cxx:149
 AliFMDCorrVertexBias.cxx:150
 AliFMDCorrVertexBias.cxx:151
 AliFMDCorrVertexBias.cxx:152
 AliFMDCorrVertexBias.cxx:153
 AliFMDCorrVertexBias.cxx:154
 AliFMDCorrVertexBias.cxx:155
 AliFMDCorrVertexBias.cxx:156
 AliFMDCorrVertexBias.cxx:157
 AliFMDCorrVertexBias.cxx:158
 AliFMDCorrVertexBias.cxx:159
 AliFMDCorrVertexBias.cxx:160
 AliFMDCorrVertexBias.cxx:161
 AliFMDCorrVertexBias.cxx:162
 AliFMDCorrVertexBias.cxx:163
 AliFMDCorrVertexBias.cxx:164
 AliFMDCorrVertexBias.cxx:165
 AliFMDCorrVertexBias.cxx:166
 AliFMDCorrVertexBias.cxx:167
 AliFMDCorrVertexBias.cxx:168
 AliFMDCorrVertexBias.cxx:169
 AliFMDCorrVertexBias.cxx:170
 AliFMDCorrVertexBias.cxx:171
 AliFMDCorrVertexBias.cxx:172
 AliFMDCorrVertexBias.cxx:173
 AliFMDCorrVertexBias.cxx:174
 AliFMDCorrVertexBias.cxx:175
 AliFMDCorrVertexBias.cxx:176
 AliFMDCorrVertexBias.cxx:177
 AliFMDCorrVertexBias.cxx:178
 AliFMDCorrVertexBias.cxx:179
 AliFMDCorrVertexBias.cxx:180
 AliFMDCorrVertexBias.cxx:181
 AliFMDCorrVertexBias.cxx:182
 AliFMDCorrVertexBias.cxx:183
 AliFMDCorrVertexBias.cxx:184
 AliFMDCorrVertexBias.cxx:185
 AliFMDCorrVertexBias.cxx:186
 AliFMDCorrVertexBias.cxx:187
 AliFMDCorrVertexBias.cxx:188
 AliFMDCorrVertexBias.cxx:189
 AliFMDCorrVertexBias.cxx:190
 AliFMDCorrVertexBias.cxx:191
 AliFMDCorrVertexBias.cxx:192
 AliFMDCorrVertexBias.cxx:193
 AliFMDCorrVertexBias.cxx:194
 AliFMDCorrVertexBias.cxx:195
 AliFMDCorrVertexBias.cxx:196
 AliFMDCorrVertexBias.cxx:197
 AliFMDCorrVertexBias.cxx:198
 AliFMDCorrVertexBias.cxx:199
 AliFMDCorrVertexBias.cxx:200
 AliFMDCorrVertexBias.cxx:201
 AliFMDCorrVertexBias.cxx:202
 AliFMDCorrVertexBias.cxx:203
 AliFMDCorrVertexBias.cxx:204
 AliFMDCorrVertexBias.cxx:205
 AliFMDCorrVertexBias.cxx:206
 AliFMDCorrVertexBias.cxx:207
 AliFMDCorrVertexBias.cxx:208
 AliFMDCorrVertexBias.cxx:209
 AliFMDCorrVertexBias.cxx:210
 AliFMDCorrVertexBias.cxx:211
 AliFMDCorrVertexBias.cxx:212
 AliFMDCorrVertexBias.cxx:213
 AliFMDCorrVertexBias.cxx:214
 AliFMDCorrVertexBias.cxx:215
 AliFMDCorrVertexBias.cxx:216
 AliFMDCorrVertexBias.cxx:217
 AliFMDCorrVertexBias.cxx:218
 AliFMDCorrVertexBias.cxx:219
 AliFMDCorrVertexBias.cxx:220
 AliFMDCorrVertexBias.cxx:221
 AliFMDCorrVertexBias.cxx:222
 AliFMDCorrVertexBias.cxx:223
 AliFMDCorrVertexBias.cxx:224
 AliFMDCorrVertexBias.cxx:225
 AliFMDCorrVertexBias.cxx:226
 AliFMDCorrVertexBias.cxx:227
 AliFMDCorrVertexBias.cxx:228
 AliFMDCorrVertexBias.cxx:229
 AliFMDCorrVertexBias.cxx:230
 AliFMDCorrVertexBias.cxx:231
 AliFMDCorrVertexBias.cxx:232
 AliFMDCorrVertexBias.cxx:233
 AliFMDCorrVertexBias.cxx:234
 AliFMDCorrVertexBias.cxx:235
 AliFMDCorrVertexBias.cxx:236
 AliFMDCorrVertexBias.cxx:237
 AliFMDCorrVertexBias.cxx:238
 AliFMDCorrVertexBias.cxx:239
 AliFMDCorrVertexBias.cxx:240
 AliFMDCorrVertexBias.cxx:241
 AliFMDCorrVertexBias.cxx:242
 AliFMDCorrVertexBias.cxx:243
 AliFMDCorrVertexBias.cxx:244
 AliFMDCorrVertexBias.cxx:245
 AliFMDCorrVertexBias.cxx:246
 AliFMDCorrVertexBias.cxx:247
 AliFMDCorrVertexBias.cxx:248
 AliFMDCorrVertexBias.cxx:249
 AliFMDCorrVertexBias.cxx:250
 AliFMDCorrVertexBias.cxx:251
 AliFMDCorrVertexBias.cxx:252
 AliFMDCorrVertexBias.cxx:253
 AliFMDCorrVertexBias.cxx:254
 AliFMDCorrVertexBias.cxx:255
 AliFMDCorrVertexBias.cxx:256
 AliFMDCorrVertexBias.cxx:257
 AliFMDCorrVertexBias.cxx:258
 AliFMDCorrVertexBias.cxx:259
 AliFMDCorrVertexBias.cxx:260
 AliFMDCorrVertexBias.cxx:261
 AliFMDCorrVertexBias.cxx:262
 AliFMDCorrVertexBias.cxx:263
 AliFMDCorrVertexBias.cxx:264
 AliFMDCorrVertexBias.cxx:265
 AliFMDCorrVertexBias.cxx:266
 AliFMDCorrVertexBias.cxx:267
 AliFMDCorrVertexBias.cxx:268
 AliFMDCorrVertexBias.cxx:269
 AliFMDCorrVertexBias.cxx:270
 AliFMDCorrVertexBias.cxx:271
 AliFMDCorrVertexBias.cxx:272
 AliFMDCorrVertexBias.cxx:273
 AliFMDCorrVertexBias.cxx:274
 AliFMDCorrVertexBias.cxx:275
 AliFMDCorrVertexBias.cxx:276
 AliFMDCorrVertexBias.cxx:277
 AliFMDCorrVertexBias.cxx:278
 AliFMDCorrVertexBias.cxx:279
 AliFMDCorrVertexBias.cxx:280
 AliFMDCorrVertexBias.cxx:281
 AliFMDCorrVertexBias.cxx:282
 AliFMDCorrVertexBias.cxx:283
 AliFMDCorrVertexBias.cxx:284
 AliFMDCorrVertexBias.cxx:285
 AliFMDCorrVertexBias.cxx:286
 AliFMDCorrVertexBias.cxx:287
 AliFMDCorrVertexBias.cxx:288
 AliFMDCorrVertexBias.cxx:289
 AliFMDCorrVertexBias.cxx:290
 AliFMDCorrVertexBias.cxx:291
 AliFMDCorrVertexBias.cxx:292
 AliFMDCorrVertexBias.cxx:293
 AliFMDCorrVertexBias.cxx:294
 AliFMDCorrVertexBias.cxx:295
 AliFMDCorrVertexBias.cxx:296
 AliFMDCorrVertexBias.cxx:297
 AliFMDCorrVertexBias.cxx:298
 AliFMDCorrVertexBias.cxx:299
 AliFMDCorrVertexBias.cxx:300
 AliFMDCorrVertexBias.cxx:301
 AliFMDCorrVertexBias.cxx:302
 AliFMDCorrVertexBias.cxx:303
 AliFMDCorrVertexBias.cxx:304
 AliFMDCorrVertexBias.cxx:305
 AliFMDCorrVertexBias.cxx:306
 AliFMDCorrVertexBias.cxx:307