1 #include "StL3Nuclei.h"
2 #include "StL3RareTrack.h"
3 #include "StEventTypes.h"
12 chargeToAccept = charge;
23 if (chargeToAccept==0)
25 else if (chargeToAccept<0 &&
track.chargesign()<0)
27 else if (chargeToAccept>0 &&
track.chargesign()>0)
32 if (abs(chargeToAccept)>1)
34 float dedxExp =
track.dedxExpected(minMass*0.939, theCharge);
35 dedxmin = 0.6 * dedxExp;
36 float dedx =
track.dedx();
41 dedxbad = 1.1 *
track.dedxExpected((minMass-1)*0.939, theCharge);
43 dedxbad = 1.1 *
track.dedxExpected(0.494, 1);
44 if (dedx>dedxmin && dedx>dedxbad)
48 float random_number = (float)rand()/(float)RAND_MAX;
50 if (random_number<0.005)
53 if (
track.p()>pcut[0] &&
track.p()<pcut[1] &&
track.npntfit()>20) pOK = 1;
55 iret = chargeOK*dedxOK*pOK;
58 void StL3Nuclei::Report(){
59 cout <<
"StL3Nuclei: charge = " << chargeToAccept << endl;
60 cout <<
"StL3Nuclei: mass >= " << minMass << endl;
61 cout <<
"StL3Nuclei: momentum > " << pcut << endl;