seg->GetPadCxz(yn, yp, xt, zt);
//cout<<yn<<" "<<yp<<" "<<xt<<" "<<zt<<endl;
- if (TMath::Abs(xt)<hwSSD+0.01)
- if (TMath::Abs(zt)<hlSSD+0.01*(neg[j].GetNd()+pos[i].GetNd())) {
- negativepair[i*10+cnegative[i]] =j; //index
- positivepair[j*10+cpositive[j]] =i;
- cnegative[i]++; //counters
- cpositive[j]++;
- fgPairs[i*nn+j]=100;
+ if (TMath::Abs(xt)<hwSSD)
+ if (TMath::Abs(zt)<hlSSD) {
+ Int_t in = i*10+cnegative[i];
+ Int_t ip = j*10+cpositive[j];
+ if ((in < 10*np) && (ip < 10*nn)) {
+ negativepair[in] =j; //index
+ positivepair[ip] =i;
+ cnegative[i]++; //counters
+ cpositive[j]++;
+ fgPairs[i*nn+j]=100;
+ }
+ else
+ AliError(Form("Index out of range: ip=%d, in=%d",ip,in));
}
}
}
- //
+ /* //
// try to recover points out of but close to the module boundaries
//
for (Int_t i=0; i<np; i++) {
// tag 1Dcluster (eventually will produce low quality recpoint)
if (cnegative[i]==0) pos[i].SetNd(100); // not available pair
if (cpositive[j]==0) neg[j].SetNd(100); // not available pair
- negativepair[i*10+cnegative[i]] =j; //index
- positivepair[j*10+cpositive[j]] =i;
- cnegative[i]++; //counters
- cpositive[j]++;
- fgPairs[i*nn+j]=100;
+ Int_t in = i*10+cnegative[i];
+ Int_t ip = j*10+cpositive[j];
+ if ((in < 10*np) && (ip < 10*nn)) {
+ negativepair[in] =j; //index
+ positivepair[ip] =i;
+ cnegative[i]++; //counters
+ cpositive[j]++;
+ fgPairs[i*nn+j]=100;
+ }
+ else
+ AliError(Form("Index out of range: ip=%d, in=%d",ip,in));
}
}
}
+ */
//
Float_t lp[6];
milab[3]=(((ip<<10) + j)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
milab[3]=(((ip<<10) + in)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[in].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
- AliITSRecPoint * cl2;
+ AliITSRecPoint * cl2;
if(clusters){
cl2 = new (cl[ncl]) AliITSRecPoint(milab,lp,info);
milab[3]=(((ip2<<10) + in)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip2].GetNd(),neg[in].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
milab[3]=(((ip<<10) + jn)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[jn].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
milab[3]=(((ip<<10) + jn2)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[jn2].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
milab[3]=(((ip<<10) + j)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
milab[3]=(((ip<<10) + j)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[ip].GetNd(),neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
Float_t xt, zt;
seg->GetPadCxz(yn, yp, xt, zt);
- if (TMath::Abs(xt)<hwSSD+0.01)
- if (TMath::Abs(zt)<hlSSD+0.01*(neg[j].GetNd()+pos[i].GetNd())) {
+ if (TMath::Abs(xt)<hwSSD)
+ if (TMath::Abs(zt)<hlSSD) {
xbest=xt; zbest=zt;
qbest=0.5*(pos[i].GetQ()+neg[j].GetQ());
milab[3]=(((i<<10) + j)<<10) + idet; // pos|neg|det
Int_t info[3] = {pos[i].GetNd(),neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
// out-of-diagonal element of covariance matrix
if( (info[0]==1) && (info[1]==1) ) lp[5]=-0.00012;
else if ( (info[0]>1) && (info[1]>1) ) {
- lp[2]=0.0016*0.0016; //SigmaY2
- lp[3]=0.08*0.08; //SigmaZ2
- lp[5]=-0.00006;
+ lp[2]=2.63e-06; // 0.0016*0.0016; //SigmaY2
+ lp[3]=0.0065; // 0.08*0.08; //SigmaZ2
+ lp[5]=-6.48e-05;
}
else {
- lp[3]=0.093*0.093;
- if (info[0]==1) { lp[5]=-0.00014;}
- else { lp[2]=0.0017*0.0017; lp[5]=-0.00004;}
+ lp[2]=4.80e-06; // 0.00219*0.00219
+ lp[3]=0.0093; // 0.0964*0.0964;
+ if (info[0]==1) {
+ lp[5]=-0.00014;
+ }
+ else {
+ lp[2]=2.79e-06; // 0.0017*0.0017;
+ lp[3]=0.00935; // 0.967*0.967;
+ lp[5]=-4.32e-05;
+ }
}
AliITSRecPoint * cl2;
//----------
// bad Pstrip is crossing the Nside 1Dcluster -> create recpoint
//
- if ( (TMath::Abs(xt)<hwSSD+0.01) && (TMath::Abs(zt)<hlSSD+0.01) ) {
+ if ( (TMath::Abs(xt)<hwSSD) && (TMath::Abs(zt)<hlSSD) ) {
Double_t loc[3]={xt,0.,zt},trk[3]={0.,0.,0.};
mT2L->MasterToLocal(loc,trk);
lp[0]=trk[1];
milab[3]=( (i<<10) << 10 ) + idet; // pos|neg|det
Int_t info[3] = {pos[i].GetNd(),0,fNlayer[fModule]};
- // out-of-diagonal element of covariance matrix
- if (info[0]==1) lp[5]=0.0065;
- else lp[5]=0.0093;
-
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
lp[5]=-0.00012; // out-of-diagonal element of covariance matrix
-
+ if (info[0]>1) {
+ lp[2]=4.80e-06;
+ lp[3]=0.0093;
+ lp[5]=0.00014;
+ }
+
AliITSRecPoint * cl2;
if(clusters){
cl2 = new (cl[ncl]) AliITSRecPoint(milab,lp,info);
//----------
// bad Nstrip is crossing the Pside 1Dcluster -> create recpoint
//
- if ( (TMath::Abs(xt)<hwSSD+0.01) && (TMath::Abs(zt)<hlSSD+0.01) ) {
+ if ( (TMath::Abs(xt)<hwSSD) && (TMath::Abs(zt)<hlSSD) ) {
Double_t loc[3]={xt,0.,zt},trk[3]={0.,0.,0.};
mT2L->MasterToLocal(loc,trk);
lp[0]=trk[1];
milab[3]=( j << 10 ) + idet; // pos|neg|det
Int_t info[3]={0,(Int_t)neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0022*0.0022; //SigmaY2
- lp[3]=0.110*0.110; //SigmaZ2
+ lp[2]=4.968e-06; // 0.00223*0.00223; //SigmaY2
+ lp[3]=0.012; // 0.110*0.110; //SigmaZ2
lp[5]=-0.00012; // out-of-diagonal element of covariance matrix
+ if (info[0]>1) {
+ lp[2]=2.79e-06;
+ lp[3]=0.00935;
+ lp[5]=-4.32e-05;
+ }
AliITSRecPoint * cl2;
if(clusters){
else yP = yN - (7.6/1.9);
seg->GetPadCxz(yP, yN, xt, zt);
- if ( (TMath::Abs(xt)<hwSSD+0.01) && (TMath::Abs(zt)<hlSSD+0.01) ) {
+ if ( (TMath::Abs(xt)<hwSSD) && (TMath::Abs(zt)<hlSSD) ) {
Double_t loc[3]={xt,0.,zt},trk[3]={0.,0.,0.};
mT2L->MasterToLocal(loc,trk);
lp[0]=trk[1];
milab[3]=( (i<<10) << 10 ) + idet; // pos|neg|det
Int_t info[3] = {(Int_t)pos[i].GetNd(),0,fNlayer[fModule]};
- lp[2]=0.031*0.031; //SigmaY2
- lp[3]=1.15*1.15; //SigmaZ2
- lp[5]=-0.036;
-
+ lp[2]=0.00098; // 0.031*0.031; //SigmaY2
+ lp[3]=1.329; // 1.15*1.15; //SigmaZ2
+ lp[5]=-0.0359;
+ if(info[0]>1) lp[2]=0.00097;
+
AliITSRecPoint * cl2;
if(clusters){
cl2 = new (cl[ncl]) AliITSRecPoint(milab,lp,info);
else yN = yP + (7.6/1.9);
seg->GetPadCxz(yP, yN, xt, zt);
- if ( (TMath::Abs(xt)<hwSSD+0.01) && (TMath::Abs(zt)<hlSSD+0.01) ) {
+ if ( (TMath::Abs(xt)<hwSSD) && (TMath::Abs(zt)<hlSSD) ) {
Double_t loc[3]={xt,0.,zt},trk[3]={0.,0.,0.};
mT2L->MasterToLocal(loc,trk);
lp[0]=trk[1];
milab[3]=( j << 10 ) + idet; // pos|neg|det
Int_t info[3] = {0,(Int_t)neg[j].GetNd(),fNlayer[fModule]};
- lp[2]=0.0085*0.0085; //SigmaY2
- lp[3]=1.15*1.15; //SigmaZ2
- lp[5]=0.0093;
+ lp[2]=7.27e-05; // 0.0085*0.0085; //SigmaY2
+ lp[3]=1.33; // 1.15*1.15; //SigmaZ2
+ lp[5]=0.00931;
+ if(info[1]>1) lp[2]=6.91e-05;
AliITSRecPoint * cl2;
if(clusters){
delete [] positivepair;
}
+