00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049 #ifndef G4eeCrossSections_h
00050 #define G4eeCrossSections_h 1
00051
00052 #include "G4ThreeVector.hh"
00053 #include "globals.hh"
00054 #include <complex>
00055
00056 class G4PhysicsVector;
00057
00058 class G4eeCrossSections
00059 {
00060
00061 public:
00062
00063 G4eeCrossSections();
00064
00065 virtual ~G4eeCrossSections();
00066
00067 G4double CrossSection2pi(G4double);
00068
00069 G4double CrossSection3pi(G4double);
00070
00071 G4double CrossSectionPi0G(G4double);
00072
00073 G4double CrossSectionEtaG(G4double);
00074
00075 G4double CrossSection2Kcharged(G4double);
00076
00077 G4double CrossSection2Kneutral(G4double);
00078
00079 std::complex<G4double> DpRho(G4double e);
00080
00081 private:
00082
00083 void Initialise();
00084
00085 G4double Width2p(G4double s_inv, G4double mres, G4double gconst,
00086 G4double br, G4double mp);
00087
00088 G4double Width3p(G4double s_inv, G4double mres, G4double gconst,
00089 G4double br);
00090
00091 G4double PhaseSpace3p(G4double e);
00092
00093 G4double WidthPg(G4double s_inv, G4double mres, G4double gconst,
00094 G4double br, G4double mp);
00095
00096 G4double WidthRho(G4double e);
00097
00098 G4double WidthOm(G4double e);
00099
00100 G4double WidthPhi(G4double e);
00101
00102 std::complex<G4double> DpOm(G4double e);
00103
00104 std::complex<G4double> DpPhi(G4double e);
00105
00106
00107 G4eeCrossSections & operator=(const G4eeCrossSections &right);
00108 G4eeCrossSections(const G4eeCrossSections&);
00109
00110 G4double MsPi, MsPi0, MsEta, MsEtap, MsKs, MsKc, MsRho, MsOm;
00111 G4double MsF0, MsA0, MsPhi, MsK892, MsK0892;
00112 G4double GRho, GOm, GPhi, GK892, GK0892, PhRho, PhOm, PhPhi, PhRhoPi;
00113 G4double BrRhoPiG, BrRhoPi0G, BrRhoEtaG, BrRhoEe, BrOm3Pi;
00114 G4double BrOmPi0G, BrOmEtaG, BrOm2Pi, PhOm2Pi, BrOmEe;
00115 G4double BrPhi2Kc, BrPhiKsKl, BrPhi3Pi, BrPhiPi0G, BrPhiEtaG;
00116 G4double BrPhi2Pi, PhPhi2Pi, BrPhiEe, MeVnb, Alpha;
00117 G4double AOmRho, ARhoPRho, cterm, mssig, gsig, brsigpipi;
00118 G4double msrho1450, msrho1700, grho1450, grho1700;
00119 G4double arhoompi0, arho1450ompi0, arho1700ompi0, phrhoompi0;
00120 G4double phrho1450ompi0, phrho1700ompi0, aomrhopi0, phomrhopi0;
00121 G4double arhopi0pi0g, aompi0pi0g, phrhopi0pi0g, phompi0pi0g;
00122 G4double brrho1450ompi0, brrho1450pipi, brrho1700ompi0;
00123 G4double brrho1700pipi, aphirhopi0, phphirhopi0;
00124 G4double arhosigg, phrhosigg, aomsigg, phomsigg;
00125
00126 G4double MsRho3, MsOm3, MsPhi3;
00127
00128 G4PhysicsVector* ph3p;
00129
00130 };
00131
00132
00133
00134
00135 #endif