ROOT logo
#ifndef ALIGENSTRANGELIB_H
#define ALIGENSTRANGELIB_H
#include "AliGenLib.h"
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */


/* $Id$ */

//======================================================================
//  AliGenSTRANGElib class contains parameterizations of the
//  kaon, phi and hyperon (Lambda, Anti-Lambda, Xi, anti-Xi, Omega,
//  anti-Omega)  for the PPR study of the strange particle production. 
//
//  Rocco CALIANDRO. Rosa Anna FINI, Tiziano VIRGILI
//======================================================================

class TRandom;

class AliGenSTRANGElib :
public AliGenLib
{
 public:
    enum constants{kKaon, kPhi, kLambda, kLambda1520=3124, kOmegaMinus = 3334, kXiMinus = 3312};
    GenFunc   GetPt(Int_t param, const char* tname=0) const;
    GenFunc   GetY (Int_t param, const char* tname=0) const;
    GenFuncIp GetIp(Int_t param, const char* tname=0) const;    
 private:
// pions
    static Double_t PtPion(const Double_t *px, const Double_t *dummy);
    static Double_t PtScal(Double_t pt, Int_t np);
// kaons
    static Double_t PtKaon(const Double_t *px, const Double_t *dummy);
    static Double_t YKaon( const Double_t *py, const Double_t *dummy);
    static Int_t    IpKaon(TRandom* ran);
// phis
    static Double_t PtPhi(const Double_t *px, const Double_t *dummy);
    static Double_t YPhi( const Double_t *py, const Double_t *dummy);
    static Int_t    IpPhi(TRandom* ran);
// lambda
    static Double_t PtLambda(const Double_t *px, const Double_t *dummy);
    static Double_t YLambda( const Double_t *py, const Double_t *dummy);
    static Int_t    IpLambda(TRandom *ran);
// Ximinus
    static Double_t PtXiMinus(const Double_t *px, const Double_t *dummy);
    static Double_t YXiMinus( const Double_t *py, const Double_t *dummy);
    static Int_t    IpXiMinus(TRandom *ran);
// Omegaminus
    static Double_t PtOmegaMinus(const Double_t *px, const Double_t *dummy);
    static Double_t YOmegaMinus( const Double_t *py, const Double_t *dummy);
    static Int_t    IpOmegaMinus(TRandom *ran);
// Lambda(1520)
    static Double_t PtLambda1520(const Double_t *px, const Double_t *dummy);
    static Double_t YLambda1520(const Double_t *py, const Double_t *dummy);
    static Int_t    IpLambda1520(TRandom *ran);
    
    ClassDef(AliGenSTRANGElib,0) // Library providing y and pT parameterisations
};
#endif














 AliGenSTRANGElib.h:1
 AliGenSTRANGElib.h:2
 AliGenSTRANGElib.h:3
 AliGenSTRANGElib.h:4
 AliGenSTRANGElib.h:5
 AliGenSTRANGElib.h:6
 AliGenSTRANGElib.h:7
 AliGenSTRANGElib.h:8
 AliGenSTRANGElib.h:9
 AliGenSTRANGElib.h:10
 AliGenSTRANGElib.h:11
 AliGenSTRANGElib.h:12
 AliGenSTRANGElib.h:13
 AliGenSTRANGElib.h:14
 AliGenSTRANGElib.h:15
 AliGenSTRANGElib.h:16
 AliGenSTRANGElib.h:17
 AliGenSTRANGElib.h:18
 AliGenSTRANGElib.h:19
 AliGenSTRANGElib.h:20
 AliGenSTRANGElib.h:21
 AliGenSTRANGElib.h:22
 AliGenSTRANGElib.h:23
 AliGenSTRANGElib.h:24
 AliGenSTRANGElib.h:25
 AliGenSTRANGElib.h:26
 AliGenSTRANGElib.h:27
 AliGenSTRANGElib.h:28
 AliGenSTRANGElib.h:29
 AliGenSTRANGElib.h:30
 AliGenSTRANGElib.h:31
 AliGenSTRANGElib.h:32
 AliGenSTRANGElib.h:33
 AliGenSTRANGElib.h:34
 AliGenSTRANGElib.h:35
 AliGenSTRANGElib.h:36
 AliGenSTRANGElib.h:37
 AliGenSTRANGElib.h:38
 AliGenSTRANGElib.h:39
 AliGenSTRANGElib.h:40
 AliGenSTRANGElib.h:41
 AliGenSTRANGElib.h:42
 AliGenSTRANGElib.h:43
 AliGenSTRANGElib.h:44
 AliGenSTRANGElib.h:45
 AliGenSTRANGElib.h:46
 AliGenSTRANGElib.h:47
 AliGenSTRANGElib.h:48
 AliGenSTRANGElib.h:49
 AliGenSTRANGElib.h:50
 AliGenSTRANGElib.h:51
 AliGenSTRANGElib.h:52
 AliGenSTRANGElib.h:53
 AliGenSTRANGElib.h:54
 AliGenSTRANGElib.h:55
 AliGenSTRANGElib.h:56
 AliGenSTRANGElib.h:57
 AliGenSTRANGElib.h:58
 AliGenSTRANGElib.h:59
 AliGenSTRANGElib.h:60
 AliGenSTRANGElib.h:61
 AliGenSTRANGElib.h:62
 AliGenSTRANGElib.h:63
 AliGenSTRANGElib.h:64
 AliGenSTRANGElib.h:65
 AliGenSTRANGElib.h:66
 AliGenSTRANGElib.h:67
 AliGenSTRANGElib.h:68
 AliGenSTRANGElib.h:69
 AliGenSTRANGElib.h:70
 AliGenSTRANGElib.h:71
 AliGenSTRANGElib.h:72
 AliGenSTRANGElib.h:73