8 #include "TClonesArray.h" 
   10 #include "TLorentzVector.h" 
   27 extern "C" void initia_(
double* she, 
int* an, 
int* zn, 
int* hn);
 
   36   fMom.SetXYZ(0.,0.,0.);
 
   50   fMom.SetXYZ(0.,0.,0.);
 
   57   if(strcmp(fFileName,
"12C")==0){
 
   58     std::cout<<
" 12C + Xi- --> 13BLL "<<std::endl;
 
   62   } 
else if(strcmp(fFileName,
"13C")==0){
 
   63     std::cout<<
" 13C + Xi- --> 14BLL "<<std::endl;
 
   67   } 
else if(strcmp(fFileName,
"10B")==0){
 
   68     std::cout<<
" 10B + Xi- --> 11BeLL "<<std::endl;
 
   72   } 
else if(strcmp(fFileName,
"11B")==0){
 
   73     std::cout<<
" 11B + Xi- --> 12BeLL "<<std::endl;
 
   77   } 
else if(strcmp(fFileName,
"9Be")==0){
 
   78     std::cout<<
" 9Be + Xi- --> 10LiLL "<<std::endl;
 
  104    fPx.clear();fPy.clear();fPz.clear();
 
  105    A.clear();
Z.clear();H.clear();
 
  106    fMass.clear();fEx.clear();
 
  112   cout<<
" npart razhyp "<<npart<<endl;
 
  131       fPx.push_back(
v.Px()/1000);
 
  132       fPy.push_back(
v.Py()/1000);
 
  133       fPz.push_back(
v.Pz()/1000);
 
  145       fPx.push_back(vN.Px()/1000);
 
  146       fPy.push_back(vN.Py()/1000);
 
  147       fPz.push_back(vN.Pz()/1000);
 
  148       fMass.push_back(
frag_.GM[
i]);
 
  160      fPx.push_back(
frag_.PXs[
i]/1000);
 
  161      fPy.push_back(
frag_.PYs[
i]/1000);
 
  162      fPz.push_back(
frag_.PZs[
i]/1000);
 
  163      fMass.push_back(
frag_.GM[
i]);
 
  176         else fPid.push_back(1000000000+10000000*
frag_.HG[
i]+10000* 
frag_.ZG[
i] +10 * 
frag_.AG[
i]);
 
  182           fPid.push_back(2112);
 
  194           fPid.push_back(3122);
 
  203    cout<<
" after gamma emision npart razhyp "<<fPx.size()<<endl;
 
  228   if(ion>1000000000&&(ion<1010000000))
 
  234       cout<<
" ion charge "<<ZI<<
" "<<AI<<
" "<<L<<endl;
 
  238 if((ion>1010000000||ion>1020000000))
 
  246     cout<<L<<
" hypernuclei charge "<<ZI<<
" "<<AI<<
" "<<L<<endl;
 
  251 if(ion==2212){AI=1;ZI=1;L=0;}
 
  252 if(ion==2112){AI=1;ZI=0;L=0;}
 
  253 if(ion==3122){AI=1;ZI=0;L=1;}
 
  254 if(ion==22){AI=0;ZI=0;L=0;}
 
  262   Double_t Mex,Pgam,Xgam,Ygam,Zgam,EL,PLmag;
 
  265   TLorentzVector 
res,PNlab,resLab;
 
  274   Pgam = ((Mex*Mex) - (mass*mass))/(2*Mex);
 
  277   Xgam= Ygam = Zgam = 0.;
 
  280   rd.Sphere(Xgam,Ygam,Zgam,Pgam);
 
  290   res.SetPxPyPzE(Xgam,Ygam,Zgam,Pgam);
 
  295   PNlab.SetPxPyPzE(PL.X(),PL.Y(),PL.Z(),EL);
 
  298   res.Boost(PL.X()/EL,PL.Y()/EL,PL.Z()/EL);
 
  311   Double_t Mex,Pgam,Xgam,Ygam,Zgam,EL,PLmag;
 
  312   TLorentzVector result,PNlab,resLab;
 
  322   Pgam = ((Mex*Mex) - (mass*mass))/(2*Mex);
 
  325    Xgam= Ygam = Zgam = 0.;
 
  327   rd.Sphere(Xgam,Ygam,Zgam,-Pgam);
 
  336   result.SetPxPyPzE(Xgam,Ygam,Zgam, 
TMath::Sqrt((Pgam*Pgam) + (mass*mass)));
 
  341   PNlab.SetPxPyPzE(PL.X(),PL.Y(),PL.Z(),EL);
 
  344   result.Boost(PL.X()/EL,PL.Y()/EL,PL.Z()/EL);
 
  355   E= 
TMath::Sqrt(TMath::Power(mass,2)+TMath::Power(P.Mag()/1000.,2));
 
void initia_(double *she, int *an, int *zn, int *hn)
void GetFragment(Int_t primGen)
static T Sqrt(const T &x)
TLorentzVector GetPgCMSLab(float mass, float &Delta, TVector3 &PL, TRandom &rd)
void razhyp_gen__(double *shell)
void GetAZH(Int_t ion, Int_t &AI, Int_t &ZI, Int_t &L)
void GetData(Int_t tr, TVector3 &p, Int_t &pid, Double_t &mass)
search fragment in event 
TLorentzVector GetPNuCMSLab(float mass, float &Delta, TVector3 &PL, TRandom &rd)
Double_t GetEtot(Float_t mass, TVector3 P)