X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=EVGEN%2FAliGenGSIlib.cxx;h=8b9af912c77b0a7d7f0a36ccf758e60c4a3ee3d0;hb=74e2345aee494205e3397cfac95322df27997e53;hp=0057327635e487f3e1767fa0a6c34ac06d24aad6;hpb=b9d0a01d7a0723a09071b0b56200d72f59a9c2b6;p=u%2Fmrichter%2FAliRoot.git diff --git a/EVGEN/AliGenGSIlib.cxx b/EVGEN/AliGenGSIlib.cxx index 0057327635e..8b9af912c77 100644 --- a/EVGEN/AliGenGSIlib.cxx +++ b/EVGEN/AliGenGSIlib.cxx @@ -13,37 +13,7 @@ * provided "as is" without express or implied warranty. * **************************************************************************/ -/* -$Log$ -Revision 1.5.10.1 2002/06/10 14:57:41 hristov -Merged with v3-08-02 - -Revision 1.6 2002/04/16 15:53:19 morsch -Coding rule violations corrected. - -Revision 1.5 2001/05/15 15:43:23 morsch -Update of library for low mass resonances (Yiota Foka) - -Revision 1.4 2001/03/09 13:01:41 morsch -- enum constants for paramterisation type (particle family) moved to AliGen*lib.h -- use AliGenGSIlib::kUpsilon, AliGenPHOSlib::kEtaPrime to access the constants - -Revision 1.3 2000/12/21 16:24:06 morsch -Coding convention clean-up - -Revision 1.2 2000/11/30 07:12:50 alibrary -Introducing new Rndm and QA classes - -Revision 1.1 2000/06/15 08:48:43 morsch -AliGenGSIlib with parametersations for GSI physics simulation added (YF, MI) - -Revision 1.7 2000/05/02 08:12:13 morsch -Coding rule violations corrected. - -Revision 1.6 1999/09/29 09:24:14 fca -Introduction of the Copyright and cvs Log - -*/ +/* $Id$ */ ///////////////////////////////////////////////////////////////////////////// // // @@ -84,7 +54,7 @@ Int_t AliGenGSIlib::IpUpsilon(TRandom *) return 553; } -Double_t AliGenGSIlib::PtUpsilonFlat( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtUpsilonFlat( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -97,12 +67,12 @@ Double_t AliGenGSIlib::PtUpsilonFlat( Double_t *px, Double_t *dummy ) Double_t x=*px; Double_t weight = 0.; - if (kptmin < x < kptmax) weight = 1.; + if ((x > kptmin) && (x < kptmax)) weight = 1.; return weight; } -Double_t AliGenGSIlib::YUpsilonFlat(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YUpsilonFlat(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -123,7 +93,7 @@ Double_t AliGenGSIlib::YUpsilonFlat(Double_t *py, Double_t *dummy) return yu; } -Double_t AliGenGSIlib::PtUpsilonRitman( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtUpsilonRitman( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -140,7 +110,7 @@ Double_t AliGenGSIlib::PtUpsilonRitman( Double_t *px, Double_t *dummy ) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::YUpsilonRitman(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YUpsilonRitman(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -161,7 +131,7 @@ Double_t AliGenGSIlib::YUpsilonRitman(Double_t *py, Double_t *dummy) return yu; } -Double_t AliGenGSIlib::PtUpsilonKarel( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtUpsilonKarel( const Double_t */*px*/, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -173,7 +143,7 @@ Double_t AliGenGSIlib::PtUpsilonKarel( Double_t *px, Double_t *dummy ) return 0.1; } -Double_t AliGenGSIlib::YUpsilonKarel(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YUpsilonKarel(const Double_t */*py*/, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -186,7 +156,7 @@ Double_t AliGenGSIlib::YUpsilonKarel(Double_t *py, Double_t *dummy) return 0.2; } -Double_t AliGenGSIlib::PtUpsilonMUON( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtUpsilonMUON( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -203,7 +173,7 @@ Double_t AliGenGSIlib::PtUpsilonMUON( Double_t *px, Double_t *dummy ) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::YUpsilonMUON(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YUpsilonMUON(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -239,7 +209,7 @@ Int_t AliGenGSIlib::IpJpsi(TRandom *) return 443; } -Double_t AliGenGSIlib::PtJpsiFlat( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtJpsiFlat( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -252,12 +222,12 @@ Double_t AliGenGSIlib::PtJpsiFlat( Double_t *px, Double_t *dummy ) Double_t x=*px; Double_t weight = 0.; - if (kptmin < x < kptmax) weight = 1.; + if ((x > kptmin) && (x < kptmax)) weight = 1.; return weight; } -Double_t AliGenGSIlib::YJpsiFlat(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YJpsiFlat(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -278,7 +248,7 @@ Double_t AliGenGSIlib::YJpsiFlat(Double_t *py, Double_t *dummy) return yu; } -Double_t AliGenGSIlib::PtJpsiMUON( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtJpsiMUON( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -294,7 +264,7 @@ Double_t AliGenGSIlib::PtJpsiMUON( Double_t *px, Double_t *dummy ) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::PtJpsiRitman( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtJpsiRitman( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -311,7 +281,7 @@ Double_t AliGenGSIlib::PtJpsiRitman( Double_t *px, Double_t *dummy ) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::YJpsiMUON(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YJpsiMUON(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -336,7 +306,7 @@ Double_t AliGenGSIlib::YJpsiMUON(Double_t *py, Double_t *dummy) // J/Psi pt-distribution by Sergei // //-------------------------------------------------------------------------- -//Double_t AliGenGSIlib::PtJpsi( Double_t *px, Double_t *dummy ) +//Double_t AliGenGSIlib::PtJpsi( Double_t *px, Double_t */*dummy*/ ) //{ // return x = gRandom->Rndm()*10.; @@ -393,7 +363,7 @@ Int_t AliGenGSIlib::IpCharm(TRandom *ran) return ip; } -Double_t AliGenGSIlib::PtCharmFlat( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtCharmFlat( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -408,7 +378,7 @@ Double_t AliGenGSIlib::PtCharmFlat( Double_t *px, Double_t *dummy) return x ; } -Double_t AliGenGSIlib::PtCharmGSI( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtCharmGSI( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -428,7 +398,7 @@ Double_t AliGenGSIlib::PtCharmGSI( Double_t *px, Double_t *dummy) return TMath::Power(x,kp1) * (pass1 + kp3 * pass2); } -Double_t AliGenGSIlib::PtCharmMUON( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtCharmMUON( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -445,7 +415,7 @@ Double_t AliGenGSIlib::PtCharmMUON( Double_t *px, Double_t *dummy) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::YCharm( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::YCharm( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -486,7 +456,7 @@ Int_t AliGenGSIlib::IpBeauty(TRandom *ran) return ip; } -Double_t AliGenGSIlib::PtBeautyFlat( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtBeautyFlat( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -501,7 +471,7 @@ Double_t AliGenGSIlib::PtBeautyFlat( Double_t *px, Double_t *dummy) return x ; } -Double_t AliGenGSIlib::PtBeautyGSI( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtBeautyGSI( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -523,7 +493,7 @@ Double_t AliGenGSIlib::PtBeautyGSI( Double_t *px, Double_t *dummy) return TMath::Power(x,kp1) * (pass1 + kp3 * pass2); } -Double_t AliGenGSIlib::PtBeautyMUON( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::PtBeautyMUON( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -540,7 +510,7 @@ Double_t AliGenGSIlib::PtBeautyMUON( Double_t *px, Double_t *dummy) return x/TMath::Power(pass1,kxn); } -Double_t AliGenGSIlib::YBeauty( Double_t *px, Double_t *dummy) +Double_t AliGenGSIlib::YBeauty( const Double_t *px, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -568,7 +538,7 @@ Int_t AliGenGSIlib::IpEta(TRandom *) return 221; } -Double_t AliGenGSIlib::PtEtaPHOS( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtEtaPHOS( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -576,10 +546,10 @@ Double_t AliGenGSIlib::PtEtaPHOS( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,3); // 3==> Eta in the PtScal function + return PtScal(*px,2); // 2==> Eta in the PtScal function } -Double_t AliGenGSIlib::YEtaPHOS(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YEtaPHOS(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -612,7 +582,7 @@ Int_t AliGenGSIlib::IpEtaprime(TRandom *) return 331; } -Double_t AliGenGSIlib::PtEtaprimePHOS( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtEtaprimePHOS( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -620,10 +590,10 @@ Double_t AliGenGSIlib::PtEtaprimePHOS( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,5); // 5==> Etaprime in the PtScal function + return PtScal(*px,4); // 4==> Etaprime in the PtScal function } -Double_t AliGenGSIlib::YEtaprimePHOS(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YEtaprimePHOS(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -656,7 +626,7 @@ Int_t AliGenGSIlib::IpOmega(TRandom *) return 223; } -Double_t AliGenGSIlib::PtOmega( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtOmega( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -664,10 +634,10 @@ Double_t AliGenGSIlib::PtOmega( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,4); // 4==> Omega in the PtScal function + return PtScal(*px,3); // 3==> Omega in the PtScal function } -Double_t AliGenGSIlib::YOmega(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YOmega(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -702,7 +672,7 @@ Int_t AliGenGSIlib::IpRho(TRandom *) return 113; } -Double_t AliGenGSIlib::PtRho( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtRho( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -710,10 +680,10 @@ Double_t AliGenGSIlib::PtRho( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,11); // 11==> Rho in the PtScal function + return PtScal(*px,10); // 10==> Rho in the PtScal function } -Double_t AliGenGSIlib::YRho(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YRho(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -762,7 +732,7 @@ Int_t AliGenGSIlib::IpPionPHOS(TRandom *ran) } } } -Double_t AliGenGSIlib::PtPion( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtPion( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -796,7 +766,7 @@ Double_t AliGenGSIlib::PtPion( Double_t *px, Double_t *dummy ) return y*x; } -Double_t AliGenGSIlib::YPion(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YPion(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -845,7 +815,7 @@ Int_t AliGenGSIlib::IpKaonPHOS(TRandom *ran) } } } -Double_t AliGenGSIlib::PtKaonPHOS( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtKaonPHOS( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -853,10 +823,10 @@ Double_t AliGenGSIlib::PtKaonPHOS( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,2); // 2==> Kaon in the PtScal function + return PtScal(*px,1); // 1==> Kaon in the PtScal function } -Double_t AliGenGSIlib::YKaonPHOS(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YKaonPHOS(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -889,7 +859,7 @@ Int_t AliGenGSIlib::IpPhi(TRandom *) return 333; } -Double_t AliGenGSIlib::PtPhiPHOS( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtPhiPHOS( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -897,10 +867,10 @@ Double_t AliGenGSIlib::PtPhiPHOS( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,6); // 6==> Phi in the PtScal function + return PtScal(*px,5); // 5==> Phi in the PtScal function } -Double_t AliGenGSIlib::YPhiPHOS(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YPhiPHOS(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -950,7 +920,7 @@ Int_t AliGenGSIlib::IpBaryons(TRandom *ran) } } } -Double_t AliGenGSIlib::PtBaryons( Double_t *px, Double_t *dummy ) +Double_t AliGenGSIlib::PtBaryons( const Double_t *px, const Double_t */*dummy*/ ) { //-------------------------------------------------------------------------- // @@ -958,10 +928,10 @@ Double_t AliGenGSIlib::PtBaryons( Double_t *px, Double_t *dummy ) // //____________________________________________________________-------------- - return PtScal(*px,7); // 7==> Baryon in the PtScal function + return PtScal(*px,6); // 6==> Baryon in the PtScal function } -Double_t AliGenGSIlib::YBaryons(Double_t *py, Double_t *dummy) +Double_t AliGenGSIlib::YBaryons(const Double_t *py, const Double_t */*dummy*/) { //-------------------------------------------------------------------------- // @@ -999,8 +969,8 @@ Double_t AliGenGSIlib::YBaryons(Double_t *py, Double_t *dummy) // The present adds the Rhos -// MASS 1=>PI, 2=>K, 3=>ETA, 4=>OMEGA, 5=>ETA', 6=>PHI -// 7=>BARYON-BARYONBAR, 11==>RHO +// MASS 0=>PI, 1=>K, 2=>ETA, 3=>OMEGA, 4=>ETA', 5=>PHI +// 6=>BARYON-BARYONBAR, 10==>RHO const Double_t khm[11] = {0.1396, 0.494, 0.547, 0.782, 0.957, 1.02, 0.938, 0. , 0., 0., 0.769}; @@ -1009,7 +979,6 @@ Double_t AliGenGSIlib::YBaryons(Double_t *py, Double_t *dummy) const Double_t kfmax[11]={1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.}; - np--; Double_t f5=TMath::Power(((sqrt(100.018215)+2.)/(sqrt(100.+khm[np]*khm[np])+2.0)),12.3); Double_t kfmax2=f5/kfmax[np]; // PIONS @@ -1025,7 +994,7 @@ Double_t AliGenGSIlib::YBaryons(Double_t *py, Double_t *dummy) // //========================================================================== -typedef Double_t (*GenFunc) (Double_t*, Double_t*); +typedef Double_t (*GenFunc) (const Double_t*, const Double_t*); typedef Int_t (*GenFuncIp) (TRandom *); @@ -1039,120 +1008,120 @@ GenFunc AliGenGSIlib::GetPt(Int_t param, const char * tname) const { case kUpsilon: if (sname=="FLAT"){ - func= PtUpsilonFlat; - break; + func= PtUpsilonFlat; + break; } if (sname=="MUON"){ - func= PtUpsilonMUON; - break; + func= PtUpsilonMUON; + break; } if (sname=="RITMAN"){ - func=PtUpsilonRitman; - break; + func=PtUpsilonRitman; + break; } if (sname=="KAREL"){ - func=PtUpsilonKarel; - break; + func=PtUpsilonKarel; + break; } + func=0; + printf(" unknown parametrisation\n"); break; - func=0; - printf(" unknown parametrisation\n"); case kJPsi: if (sname=="FLAT"){ - func= PtJpsiFlat; - break; + func= PtJpsiFlat; + break; } if (sname=="MUON"){ - func= PtJpsiMUON; - break; + func= PtJpsiMUON; + break; } // if (sname=="SERGEI"){ // func= PtJpsi; // break; // } + func=0; + printf(" unknown parametrisation\n"); break; - func=0; - printf(" unknown parametrisation\n"); case kCharm: if (sname=="FLAT"){ - func= PtCharmFlat; - break; + func= PtCharmFlat; + break; } if (sname=="MUON"){ - func= PtCharmMUON; - break; + func= PtCharmMUON; + break; } if (sname=="GSI"){ - func= PtCharmGSI; - break; + func= PtCharmGSI; + break; } + func=0; + printf(" unknown parametrisation\n"); break; - func=0; - printf(" unknown parametrisation\n"); case kBeauty: if (sname=="FLAT"){ - func= PtBeautyFlat; - break; + func= PtBeautyFlat; + break; } if (sname=="MUON"){ - func= PtBeautyMUON; - break; + func= PtBeautyMUON; + break; } if (sname=="GSI"){ - func= PtBeautyGSI; - break; + func= PtBeautyGSI; + break; } + func=0; + printf(" unknown parametrisation\n"); break; - func=0; - printf(" unknown parametrisation\n"); case kEta: - func=PtEtaPHOS; - break; + func=PtEtaPHOS; + break; case kEtaprime: - func=PtEtaprimePHOS; - break; + func=PtEtaprimePHOS; + break; case kOmega: - func=PtOmega; - break; + func=PtOmega; + break; case kRho: - func=PtRho; - break; + func=PtRho; + break; case kKaon: - func=PtKaonPHOS; - break; + func=PtKaonPHOS; + break; case kPion: - func=PtPion; - break; + func=PtPion; + break; case kPhi: - func=PtPhiPHOS; - break; + func=PtPhiPHOS; + break; // case kLambda: // func=PtLambda; // break; case kBaryons: - func=PtBaryons; - break; + func=PtBaryons; + break; default: - func=0; - printf(" unknown parametrisation\n"); + func=0; + printf(" unknown parametrisation\n"); } - return func; + return func; } GenFunc AliGenGSIlib::GetY(Int_t param, const char * tname) const