Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 // 25 // 26 // 26 // 27 // Angular distribution according to: 27 // Angular distribution according to: 28 // G. Mao et al., Phys. Rev. C57 (1998) 1938 28 // G. Mao et al., Phys. Rev. C57 (1998) 1938 29 // G. Mao et al., Phys. Rev. C53 (1996) 2933 29 // G. Mao et al., Phys. Rev. C53 (1996) 2933 30 // 30 // 31 // Id: G4AngularDistribution.hh,v 1.16 2000/05 31 // Id: G4AngularDistribution.hh,v 1.16 2000/05/11 19:07:29 pia Exp $ // 32 // 32 // 33 // ------------------------------------------- 33 // ------------------------------------------------------------------- 34 34 35 #ifndef G4ANGULARDISTRIBUTION_HH 35 #ifndef G4ANGULARDISTRIBUTION_HH 36 #define G4ANGULARDISTRIBUTION_HH 36 #define G4ANGULARDISTRIBUTION_HH 37 37 38 #include "globals.hh" 38 #include "globals.hh" 39 #include "G4VAngularDistribution.hh" 39 #include "G4VAngularDistribution.hh" 40 40 41 41 42 class G4AngularDistribution : public G4VAngula 42 class G4AngularDistribution : public G4VAngularDistribution 43 { 43 { 44 44 45 public: 45 public: 46 46 47 // Constructors 47 // Constructors 48 G4AngularDistribution(G4bool symmetrize); 48 G4AngularDistribution(G4bool symmetrize); 49 49 50 virtual ~G4AngularDistribution(); 50 virtual ~G4AngularDistribution(); 51 51 52 virtual G4double CosTheta(G4double s, G4doub 52 virtual G4double CosTheta(G4double s, G4double m1, G4double m2) const; 53 53 54 protected: 54 protected: 55 public: // for testing only... 55 public: // for testing only... 56 56 57 G4double DifferentialCrossSection(G4double s 57 G4double DifferentialCrossSection(G4double sIn, G4double m1, G4double m2, G4double cosTheta) const; 58 58 59 G4double Cross(G4double tpPion, G4double tpS 59 G4double Cross(G4double tpPion, G4double tpSigma, G4double tpOmega, 60 G4double tmPion, G4double tmSigma, G4doub 60 G4double tmPion, G4double tmSigma, G4double tmOmega, 61 G4double bMix_o1, G4double bMix_s1, G4dou 61 G4double bMix_o1, G4double bMix_s1, G4double bMix_Omega, 62 G4double bMix_sm, G4double bMix_oL, G4dou 62 G4double bMix_sm, G4double bMix_oL, G4double bMix_sL, 63 G4double bOmega_0, G4double bOmega_1, G4d 63 G4double bOmega_0, G4double bOmega_1, G4double bOmega_2, 64 G4double bOmega_3, G4double bOmega_m, G4d 64 G4double bOmega_3, G4double bOmega_m, G4double bOmega_L) const; 65 65 66 private: 66 private: 67 67 68 G4bool sym; 68 G4bool sym; 69 69 70 // Model parameters 70 // Model parameters 71 71 72 G4double mPion; 72 G4double mPion; 73 G4double mSigma; 73 G4double mSigma; 74 G4double mOmega; 74 G4double mOmega; 75 75 76 G4double cmPion; 76 G4double cmPion; 77 G4double cmSigma; 77 G4double cmSigma; 78 G4double cmOmega; 78 G4double cmOmega; 79 79 80 G4double gPion; 80 G4double gPion; 81 G4double gSigma; 81 G4double gSigma; 82 G4double gOmega; 82 G4double gOmega; 83 83 84 G4double mNucleon; 84 G4double mNucleon; 85 85 86 // Variables for pion-Term 86 // Variables for pion-Term 87 87 88 G4double m42; 88 G4double m42; 89 G4double mPion2; 89 G4double mPion2; 90 G4double cmPion2; 90 G4double cmPion2; 91 G4double dPion1; 91 G4double dPion1; 92 G4double dPion2; 92 G4double dPion2; 93 G4double cm6gp; 93 G4double cm6gp; 94 94 95 G4double cPion_3; 95 G4double cPion_3; 96 G4double cPion_2; 96 G4double cPion_2; 97 G4double cPion_1; 97 G4double cPion_1; 98 G4double cPion_m; 98 G4double cPion_m; 99 G4double cPion_L; 99 G4double cPion_L; 100 G4double cPion_0; 100 G4double cPion_0; 101 101 102 // Variables for sigma-Term 102 // Variables for sigma-Term 103 103 104 G4double mSigma2; 104 G4double mSigma2; 105 G4double cmSigma2; 105 G4double cmSigma2; 106 G4double cmSigma4; 106 G4double cmSigma4; 107 G4double cmSigma6; 107 G4double cmSigma6; 108 G4double dSigma1; 108 G4double dSigma1; 109 G4double dSigma2; 109 G4double dSigma2; 110 G4double dSigma3; 110 G4double dSigma3; 111 G4double cm2gs; 111 G4double cm2gs; 112 112 113 G4double cSigma_3; 113 G4double cSigma_3; 114 G4double cSigma_2; 114 G4double cSigma_2; 115 G4double cSigma_1; 115 G4double cSigma_1; 116 G4double cSigma_m; 116 G4double cSigma_m; 117 G4double cSigma_L; 117 G4double cSigma_L; 118 G4double cSigma_0; 118 G4double cSigma_0; 119 119 120 // Variables for omega-Term 120 // Variables for omega-Term 121 121 122 G4double mOmega2; 122 G4double mOmega2; 123 G4double cmOmega2; 123 G4double cmOmega2; 124 G4double cmOmega4; 124 G4double cmOmega4; 125 G4double cmOmega6; 125 G4double cmOmega6; 126 G4double dOmega1; 126 G4double dOmega1; 127 G4double dOmega2; 127 G4double dOmega2; 128 G4double dOmega3; 128 G4double dOmega3; 129 G4double sOmega1; 129 G4double sOmega1; 130 130 131 G4double cm2go; 131 G4double cm2go; 132 132 133 G4double cOmega_3; 133 G4double cOmega_3; 134 G4double cOmega_2; 134 G4double cOmega_2; 135 G4double cOmega_1; 135 G4double cOmega_1; 136 G4double cOmega_m; 136 G4double cOmega_m; 137 G4double cOmega_L; 137 G4double cOmega_L; 138 138 139 // Variables for mix-Term 139 // Variables for mix-Term 140 140 141 G4double fac1; 141 G4double fac1; 142 G4double dMix1; 142 G4double dMix1; 143 G4double dMix2; 143 G4double dMix2; 144 G4double dMix3; 144 G4double dMix3; 145 G4double cMix_o1; 145 G4double cMix_o1; 146 G4double cMix_s1; 146 G4double cMix_s1; 147 G4double cMix_Omega; 147 G4double cMix_Omega; 148 G4double cMix_sm; 148 G4double cMix_sm; 149 G4double fac2; 149 G4double fac2; 150 G4double fac3; 150 G4double fac3; 151 151 152 G4double cMix_oLc; 152 G4double cMix_oLc; 153 G4double cMix_oLs; 153 G4double cMix_oLs; 154 G4double cMix_sLc; 154 G4double cMix_sLc; 155 G4double cMix_sLs; 155 G4double cMix_sLs; 156 156 157 }; 157 }; 158 #endif 158 #endif 159 159 160 160 161 161 162 162 163 163 164 164 165 165 166 166 167 167 168 168 169 169 170 170 171 171 172 172 173 173