File indexing completed on 2026-09-21 09:10:27
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034 #define INCLXX_IN_GEANT4_MODE 1
0035
0036 #include "globals.hh"
0037
0038
0039
0040
0041
0042
0043
0044
0045 #ifndef G4INCLCROSSSECTIONSSTRANGENESS_HH
0046 #define G4INCLCROSSSECTIONSSTRANGENESS_HH
0047
0048 #include "G4INCLCrossSectionsMultiPionsAndResonances.hh"
0049 #include "G4INCLConfig.hh"
0050
0051
0052 namespace G4INCL {
0053
0054
0055 class CrossSectionsStrangeness : public CrossSectionsMultiPionsAndResonances {
0056 public:
0057 CrossSectionsStrangeness();
0058
0059
0060 virtual G4double total(Particle const * const p1, Particle const * const p2);
0061
0062
0063 virtual G4double elastic(Particle const * const p1, Particle const * const p2);
0064
0065
0066 virtual G4double piNToxPiN(const G4int xpi, Particle const * const p1, Particle const * const p2);
0067 virtual G4double NNToxPiNN(const G4int xpi, Particle const * const p1, Particle const * const p2);
0068
0069
0070 virtual G4double NYelastic(Particle const * const p1, Particle const * const p2);
0071 virtual G4double NKbelastic(Particle const * const p1, Particle const * const p2);
0072 virtual G4double NKelastic(Particle const * const p1, Particle const * const p2);
0073
0074
0075 virtual G4double NNToNLK(Particle const * const p1, Particle const * const p2);
0076 virtual G4double NNToNSK(Particle const * const p1, Particle const * const p2);
0077 virtual G4double NNToNLKpi(Particle const * const p1, Particle const * const p2);
0078 virtual G4double NNToNSKpi(Particle const * const p1, Particle const * const p2);
0079 virtual G4double NNToNLK2pi(Particle const * const p1, Particle const * const p2);
0080 virtual G4double NNToNSK2pi(Particle const * const p1, Particle const * const p2);
0081 virtual G4double NNToNNKKb(Particle const * const p1, Particle const * const p2);
0082
0083 virtual G4double NNToMissingStrangeness(Particle const * const p1, Particle const * const p2);
0084
0085
0086 virtual G4double NDeltaToNLK(Particle const * const p1, Particle const * const p2);
0087 virtual G4double NDeltaToNSK(Particle const * const p1, Particle const * const p2);
0088 virtual G4double NDeltaToDeltaLK(Particle const * const p1, Particle const * const p2);
0089 virtual G4double NDeltaToDeltaSK(Particle const * const p1, Particle const * const p2);
0090
0091 virtual G4double NDeltaToNNKKb(Particle const * const p1, Particle const * const p2);
0092
0093
0094 virtual G4double NpiToLK(Particle const * const p1, Particle const * const p2);
0095 G4double p_pimToLK0(Particle const * const p1, Particle const * const p2);
0096 virtual G4double NpiToSK(Particle const * const p1, Particle const * const p2);
0097 G4double p_pipToSpKp(Particle const * const p1, Particle const * const p2);
0098 virtual G4double p_pimToSzKz(Particle const * const p1, Particle const * const p2);
0099 virtual G4double p_pimToSmKp(Particle const * const p1, Particle const * const p2);
0100 virtual G4double p_pizToSzKp(Particle const * const p1, Particle const * const p2);
0101 virtual G4double NpiToLKpi(Particle const * const p1, Particle const * const p2);
0102 virtual G4double NpiToSKpi(Particle const * const p1, Particle const * const p2);
0103 virtual G4double NpiToLK2pi(Particle const * const p1, Particle const * const p2);
0104 virtual G4double NpiToSK2pi(Particle const * const p1, Particle const * const p2);
0105 virtual G4double NpiToNKKb(Particle const * const p1, Particle const * const p2);
0106
0107 virtual G4double NpiToMissingStrangeness(Particle const * const p1, Particle const * const p2);
0108
0109
0110 virtual G4double NLToNS(Particle const * const p1, Particle const * const p2);
0111 virtual G4double NSToNL(Particle const * const p1, Particle const * const p2);
0112 virtual G4double NSToNS(Particle const * const p1, Particle const * const p2);
0113
0114
0115 virtual G4double NKToNK(Particle const * const p1, Particle const * const p2);
0116 virtual G4double NKToNKpi(Particle const * const p1, Particle const * const p2);
0117 virtual G4double NKToNK2pi(Particle const * const p1, Particle const * const p2);
0118
0119
0120 virtual G4double NKbToNKb(Particle const * const p1, Particle const * const p2);
0121 virtual G4double NKbToSpi(Particle const * const p1, Particle const * const p2);
0122 virtual G4double NKbToLpi(Particle const * const p1, Particle const * const p2);
0123 virtual G4double p_kmToL_pz(Particle const * const p1, Particle const * const p2);
0124 virtual G4double NKbToS2pi(Particle const * const p1, Particle const * const p2);
0125 virtual G4double NKbToL2pi(Particle const * const p1, Particle const * const p2);
0126 virtual G4double p_kmToL_pp_pm(Particle const * const p1, Particle const * const p2);
0127 virtual G4double NKbToNKbpi(Particle const * const p1, Particle const * const p2);
0128 virtual G4double NKbToNKb2pi(Particle const * const p1, Particle const * const p2);
0129
0130
0131 virtual G4double etaNToLK(Particle const * const p1, Particle const * const p2);
0132 virtual G4double etaNToSK(Particle const * const p1, Particle const * const p2);
0133
0134
0135 virtual G4double omegaNToLK(Particle const * const p1, Particle const * const p2);
0136 virtual G4double omegaNToSK(Particle const * const p1, Particle const * const p2);
0137 virtual G4double omegaNToPiPiN(Particle const * const p1, Particle const * const p2);
0138
0139 protected:
0140
0141 static const G4int nMaxPiNN;
0142
0143
0144 static const G4int nMaxPiPiN;
0145
0146
0147 const HornerC7 s11pzHC;
0148
0149 const HornerC8 s01ppHC;
0150
0151 const HornerC4 s01pzHC;
0152
0153 const HornerC4 s11pmHC;
0154
0155 const HornerC5 s12pmHC;
0156
0157 const HornerC3 s12ppHC;
0158
0159 const HornerC4 s12zzHC;
0160
0161 const HornerC4 s02pzHC;
0162
0163 const HornerC6 s02pmHC;
0164
0165 const HornerC4 s12mzHC;
0166
0167
0168 };
0169 }
0170
0171 #endif