+//__________________________________________________________________
+Float_t
+AliFMDCalibFaker::MakeNoise(Char_t ring, UShort_t str) const
+{
+ const UShort_t innerN = 512;
+ const UShort_t outerN = 256;
+ const UShort_t innerCut = 350;
+ const UShort_t outerCut = 190;
+ const Float_t innerBase = 1.2;
+ const Float_t outerBase = 2.1;
+ const Float_t innerInc = 0.5;
+ const Float_t outerInc = 0.8;
+ Float_t cut, base, inc, n;
+ switch (ring) {
+ case 'I':
+ cut = innerCut; base = innerBase; inc = innerInc; n = innerN; break;
+ case 'O':
+ cut = outerCut; base = outerBase; inc = outerInc; n = outerN; break;
+ default:
+ return -1;
+ }
+ Float_t bare = base + (str < cut ?
+ str / cut * inc :
+ inc - (str - cut) / (n - cut) * inc);
+ return bare + gRandom->Uniform(-.07, .07);
+}
+