+ new((*array)[j++]) AliAlignObjParams(symname.Data(),
+ dvoluid,
+ smdx, smdy, smdz, dpsi, dtheta, dphi, kFALSE);
+ }
+ // Apply objects for TOF supermodules
+ Int_t smCounter=0;
+ for (Int_t isect=0; isect<nSMTOF; isect++) {
+ AliAlignObjParams* smobj = (AliAlignObjParams*)array->UncheckedAt(smCounter++);
+ //Info(macroname,Form("Applying object for sector %d ",isect));
+ if ( !smobj->ApplyToGeometry() )
+ Fatal(macroname,Form("application of full misalignment object for sector %d failed!",isect));
+
+ }
+
+ //Produce objects for TOF strips (same sigmas as for residual misalignment)
+ AliGeomManager::ELayerID idTOF = AliGeomManager::kTOF;
+ Int_t strId=-1;
+
+ Double_t sdx=0., sdy=0., sdz=0., sdpsi=0., sdtheta=0., sdphi=0.;
+ //TRandom *rnds = new TRandom(4357);
+ sigmatr = 0.1; // max shift in cm w.r.t. local ideal RS
+
+ Int_t nstrA=15;
+ Int_t nstrB=19;
+ Int_t nstrC=19;
+ Int_t nSectors=18;
+ Int_t nStrips=nstrA+2*nstrB+2*nstrC;
+ Double_t cuty=0., cutz=0., cut=3*sigmatr;
+
+ for (Int_t isect = 0; isect < nSectors; isect++) {
+ for (Int_t istr = 1; istr <= nStrips; istr++) {
+ switch (istr) {
+ case 25:
+ case 29:
+ case 63:
+ case 67:
+ cuty = sigmatr*0.6;
+ sdy = AliMathBase::TruncatedGaus(0., sigmatr, cut, cuty);
+ sdz = AliMathBase::TruncatedGaus(0., sigmatr, cut);
+ strId++;
+ break;
+ /*
+ case 38:
+ cuty = sigmatr*2.5;
+ cutz = sigmatr*2.5;
+ sdy = AliMathBase::TruncatedGaus(0., sigmatr, cut, cuty);
+ sdz = AliMathBase::TruncatedGaus(0., sigmatr, cut, cutz);
+ strId++;
+ break;
+ case 54:
+ cuty = sigmatr*2.5;
+ cutz = sigmatr*2.5;
+ sdy = AliMathBase::TruncatedGaus(0., sigmatr, cut, cuty);
+ sdz = AliMathBase::TruncatedGaus(0., sigmatr, cutz, cut);
+ strId++;
+ break;
+ */
+ default:
+ sdy = AliMathBase::TruncatedGaus(0., sigmatr, cut);
+ sdz = AliMathBase::TruncatedGaus(0., sigmatr, cut);
+ strId++;
+ break;
+ }
+
+ if ((isect==13 || isect==14 || isect==15) && (istr >= 39 && istr <= 53)) continue;
+ new((*array)[j++]) AliAlignObjParams(AliGeomManager::SymName(idTOF,strId),
+ AliGeomManager::LayerToVolUID(idTOF,strId),
+ sdx, sdy, sdz, sdpsi, sdtheta, sdphi, kFALSE);
+ }