| 17 |
float pfaeta3_(int*,float*); |
float pfaeta3_(int*,float*); |
| 18 |
float pfaeta4_(int*,float*); |
float pfaeta4_(int*,float*); |
| 19 |
float pfaetal_(int*,float*); |
float pfaetal_(int*,float*); |
| 20 |
|
float digsat_(int*); |
| 21 |
int npfastrips_(int*,float*); |
int npfastrips_(int*,float*); |
| 22 |
|
|
| 23 |
} |
} |
| 408 |
* @param ncog Number of strips to evaluate COG. |
* @param ncog Number of strips to evaluate COG. |
| 409 |
* If ncog=0, the COG of the cluster is evaluated according to the cluster multiplicity (defined by the inclusion cut). |
* If ncog=0, the COG of the cluster is evaluated according to the cluster multiplicity (defined by the inclusion cut). |
| 410 |
* If ncog>0, the COG is evaluated using ncog strips, even if they have a negative signal (according to G.Landi) |
* If ncog>0, the COG is evaluated using ncog strips, even if they have a negative signal (according to G.Landi) |
| 411 |
|
* |
| 412 |
|
* (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster) |
| 413 |
*/ |
*/ |
| 414 |
Float_t TrkCluster::GetCOG(Int_t ncog){ |
Float_t TrkCluster::GetCOG(Int_t ncog){ |
| 415 |
|
|
| 416 |
int ic = 1; |
int ic = 1; |
| 417 |
GetLevel1Struct(); |
// GetLevel1Struct(); //Elena: dangerous... |
| 418 |
return cog_(&ncog,&ic); |
return cog_(&ncog,&ic); |
| 419 |
|
|
| 420 |
}; |
}; |
| 458 |
* @param angle Projected (effective) angle between particle track and detector plane. |
* @param angle Projected (effective) angle between particle track and detector plane. |
| 459 |
* @landi flag to apply Landi correction |
* @landi flag to apply Landi correction |
| 460 |
* Implemented values of neta are 2,3,4. If neta=0, ETA2, ETA3 and ETA4 are applied according to the angle. |
* Implemented values of neta are 2,3,4. If neta=0, ETA2, ETA3 and ETA4 are applied according to the angle. |
| 461 |
|
* (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster) |
| 462 |
*/ |
*/ |
| 463 |
Float_t TrkCluster::GetETA(Int_t neta, float angle, bool landi){ |
Float_t TrkCluster::GetETA(Int_t neta, float angle, bool landi){ |
| 464 |
|
|
| 473 |
|
|
| 474 |
float ax = angle; |
float ax = angle; |
| 475 |
int ic = 1; |
int ic = 1; |
| 476 |
GetLevel1Struct(); |
//GetLevel1Struct(); //Elena: dangerous... |
| 477 |
if( neta == 0 && !landi) return pfaeta_(&ic,&ax); |
if( neta == 0 && !landi) return pfaeta_(&ic,&ax); |
| 478 |
else if(neta == 0 && landi ) return pfaetal_(&ic,&ax); |
else if(neta == 0 && landi ) return pfaetal_(&ic,&ax); |
| 479 |
else if(neta == 2 ) return pfaeta2_(&ic,&ax); |
else if(neta == 2 ) return pfaeta2_(&ic,&ax); |
| 485 |
}; |
}; |
| 486 |
|
|
| 487 |
/** |
/** |
| 488 |
|
* Evaluates the cluster position, in pitch units, relative to the strip |
| 489 |
|
* with the maximum signal (TrkCluster::maxs), by applying the digital |
| 490 |
|
* algorithm for saturated clusters. |
| 491 |
|
* |
| 492 |
|
* @return The cluster position (0 also if if no saturated strip is found). |
| 493 |
|
* |
| 494 |
|
* (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster) |
| 495 |
|
*/ |
| 496 |
|
Float_t TrkCluster::GetDigSat() { |
| 497 |
|
|
| 498 |
|
// GetLevel1Struct(); //Elena: dangerous... |
| 499 |
|
int ic = 1; |
| 500 |
|
return digsat_(&ic); |
| 501 |
|
|
| 502 |
|
} |
| 503 |
|
|
| 504 |
|
/** |
| 505 |
* Evaluates the cluster position, in pitch unit, relative to the strip with |
* Evaluates the cluster position, in pitch unit, relative to the strip with |
| 506 |
* the maximum signal (TrkCluster::maxs), by applying the PFA set as default (see TrkParams). |
* the maximum signal (TrkCluster::maxs), by applying the PFA set as default (see TrkParams). |
| 507 |
* @param angle Projected (effective) angle between particle track and detector plane. |
* @param angle Projected (effective) angle between particle track and detector plane. |
| 529 |
* according to the p.f.a. |
* according to the p.f.a. |
| 530 |
* It returns 0 when the COG is used (in this case the number of strip used |
* It returns 0 when the COG is used (in this case the number of strip used |
| 531 |
* equals the multiplicity). |
* equals the multiplicity). |
| 532 |
|
* (NB TrkCluster::GetLevel1Struct() showld be called first, in order to fill the F77 level1 common with this single cluster) |
| 533 |
*/ |
*/ |
| 534 |
Int_t TrkCluster::GetPFAstrips(float angle){ |
Int_t TrkCluster::GetPFAstrips(float angle){ |
| 535 |
|
|
| 536 |
float ax = angle; |
float ax = angle; |
| 537 |
int ic = 1; |
int ic = 1; |
| 538 |
GetLevel1Struct(); |
// GetLevel1Struct(); //Elena: dangerous... |
| 539 |
return npfastrips_(&ic,&ax); |
return npfastrips_(&ic,&ax); |
| 540 |
|
|
| 541 |
} |
} |