55       m42   = 4. * mNucleon * mNucleon;
 
   56       mPion2  = mPion * mPion;           
 
   57       cmPion2 = cmPion * cmPion;
 
   58       dPion1 = cmPion2-mPion2;
 
   59       dPion2 = dPion1 * dPion1;
 
   60       cm6gp = 1.5 * (cmPion2*cmPion2*cmPion2) * (gPion*gPion*gPion*gPion) * m42 * m42 / dPion2;
 
   62       cPion_3 = -(cm6gp/3.);
 
   63       cPion_2 = -(cm6gp * mPion2/dPion1);
 
   64       cPion_1 = -(cm6gp * mPion2 * (2. * cmPion2 + mPion2) / dPion2);
 
   65       cPion_m = -(cm6gp * cmPion2 * mPion2 / dPion2);
 
   66       cPion_L = -(cm6gp * 2. * cmPion2 * mPion2 * (cmPion2 + mPion2) / dPion2 / dPion1);
 
   67       cPion_0 = -(cPion_3 + cPion_2 + cPion_1 + cPion_m);
 
   73       mSigma2  = mSigma * mSigma;
 
   74       cmSigma2 = cmSigma * cmSigma;
 
   75       cmSigma4 = cmSigma2 * cmSigma2;
 
   76       cmSigma6 = cmSigma2 * cmSigma4;
 
   77       dSigma1 = m42 - cmSigma2;
 
   78       dSigma2 = m42 - mSigma2;
 
   79       dSigma3 = cmSigma2 - mSigma2;
 
   81       G4double dSigma1Sq = dSigma1 * dSigma1;
 
   82       G4double dSigma2Sq = dSigma2 * dSigma2;
 
   83       G4double dSigma3Sq = dSigma3 * dSigma3;
 
   85       cm2gs = 0.5 * cmSigma2 * gSigmaSq*gSigmaSq / dSigma3Sq;     
 
   88       cSigma_3 = -(cm2gs * dSigma1Sq / 3.);
 
   89       cSigma_2 = -(cm2gs * cmSigma2 * dSigma1 * dSigma2 / dSigma3);
 
   90       cSigma_1 = -(cm2gs * cmSigma4 * (2. * dSigma1 + dSigma2) * dSigma2 / dSigma3Sq);
 
   91       cSigma_m = -(cm2gs * cmSigma6 * dSigma2Sq / mSigma2 / dSigma3Sq);
 
   92       cSigma_L = -(cm2gs * cmSigma6 * dSigma2 * (dSigma1 + dSigma2) * 2. / (dSigma3 * dSigma3Sq));
 
   93       cSigma_0 = -(cSigma_3 + cSigma_2 + cSigma_1 + cSigma_m);
 
   99       mOmega2  = mOmega * mOmega;
 
  100       cmOmega2 = cmOmega * cmOmega;
 
  101       cmOmega4 = cmOmega2 * cmOmega2;
 
  102       cmOmega6 = cmOmega2 * cmOmega4;
 
  103       dOmega1 = m42 - cmOmega2;
 
  104       dOmega2 = m42 - mOmega2;
 
  105       dOmega3 = cmOmega2 - mOmega2;
 
  106       sOmega1 = cmOmega2 + mOmega2;
 
  108       G4double dOmega3Sq = dOmega3 * dOmega3;
 
  110       cm2go = 0.5 * cmOmega2 * gOmegaSq * gOmegaSq / dOmega3Sq;
 
  112       cOmega_3 =  cm2go / 3.;
 
  113       cOmega_2 = -(cm2go * cmOmega2 / dOmega3);
 
  114       cOmega_1 =  cm2go * cmOmega4 / dOmega3Sq;
 
  115       cOmega_m =  cm2go * cmOmega6 / (dOmega3Sq * mOmega2);
 
  116       cOmega_L = -(cm2go * cmOmega6 * 4. / (dOmega3 * dOmega3Sq));
 
  120       G4double fac1Tmp = (gSigma * gOmega * cmSigma2 * cmOmega2);
 
  121       fac1 = -(fac1Tmp *  fac1Tmp * m42);  
 
  122       dMix1 = cmOmega2 - cmSigma2;
 
  123       dMix2 = cmOmega2 - mSigma2;
 
  124       dMix3 = cmSigma2 - mOmega2;
 
  130       cMix_o1 =    fac1 / (cmOmega2  * dMix1Sq * dMix2 * dOmega3);
 
  131       cMix_s1 =    fac1 / (cmSigma2  * dMix1Sq * dMix3 * dSigma3);
 
  132       cMix_Omega = fac1 / (dOmega3Sq * dMix3Sq * (mOmega2 - mSigma2));
 
  133       cMix_sm =    fac1 / (dSigma3Sq * dMix2Sq * (mSigma2 - mOmega2)); 
 
  134       fac2 = (-fac1) / (dMix1*dMix1Sq * dOmega3Sq * dMix2Sq);
 
  135       fac3 = (-fac1) / (dMix1*dMix1Sq * dSigma3Sq * dMix3Sq); 
 
  137       cMix_oLc = fac2 * (3. * cmOmega2*cmOmega4            - cmOmega4 * cmSigma2 
 
  138                - 2. * cmOmega4 * mOmega2           - 2. * cmOmega4 * mSigma2 
 
  139                + cmOmega2 * mOmega2 * mSigma2      + cmSigma2 * mOmega2 * mSigma2 
 
  140                - 4. * cmOmega4 * m42               + 2. * cmOmega2 * cmSigma2 * m42 
 
  141                + 3. * cmOmega2 * mOmega2 * m42     - cmSigma2 * mOmega2 * m42 
 
  142                + 3. * cmOmega2 * mSigma2 * m42     - cmSigma2 * mSigma2 * m42 
 
  143                - 2. * mOmega2 * mSigma2 * m42);
 
  145       cMix_oLs = fac2 * (8. * cmOmega4                     - 4. * cmOmega2 * cmSigma2 
 
  146              - 6. * cmOmega2 * mOmega2         + 2. * cmSigma2 * mOmega2 
 
  147              - 6. * cmOmega2 * mSigma2         + 2. * cmSigma2 * mSigma2 
 
  148              + 4. * mOmega2 * mSigma2);
 
  150       cMix_sLc = fac3 * (cmOmega2 * cmSigma4               - 3. * cmSigma6    
 
  151              + 2. * cmSigma4 * mOmega2         + 2. * cmSigma4 * mSigma2 
 
  152              - cmOmega2 * mOmega2 * mSigma2    - cmSigma2 * mOmega2 * mSigma2 
 
  153              - 2. * cmOmega2 * cmSigma2 * m42  + 4. * cmSigma4 * m42 
 
  154              + cmOmega2 * mOmega2 * m42        - 3. * cmSigma2 * mOmega2 * m42 
 
  155              + cmOmega2 * mSigma2 * m42        - 3. * cmSigma2 * mSigma2 * m42 
 
  156              + 2. * mOmega2 * mSigma2 * m42);
 
  158       cMix_sLs = fac3 * (4. * cmOmega2 * cmSigma2          - 8. * cmSigma4
 
  159                - 2. * cmOmega2 * mOmega2           + 6. * cmSigma2 * mOmega2 
 
  160                - 2. * cmOmega2 * mSigma2           + 6. * cmSigma2 * mSigma2 
 
  161                - 4. * mOmega2 * mSigma2);
 
  179    for (
G4int j = 1; j <= jMax; ++j)
 
  183       G4double cosTh = cosTheta + dCosTheta;
 
  191    if (cosTheta > 1. || cosTheta < -1.)
 
  192      throw G4HadronicException(__FILE__, __LINE__, 
"G4AngularDistribution::CosTheta - std::cos(theta) outside allowed range");
 
  202   sIn = sIn/
sqr(
GeV)+m42/2.;
 
  207   G4double S = sIn - (m_1+m_2) * (m_1+m_2) + m42;
 
  213   G4double brak1 = (twoS-m42) * (twoS-m42);
 
  214   G4double bOmega_3 = cOmega_3 * (-2. * cmOmega4 - 2. * cmOmega2 * twoS - brak1);
 
  215   G4double bOmega_2 = cOmega_2 * ( 2. * cmOmega2 * mOmega2 + sOmega1 * twoS + brak1);
 
  216   G4double bOmega_1 = cOmega_1 * (-4. * cmOmega2 * mOmega2 
 
  217              - 2. * mOmega2*mOmega2 
 
  218              - 2. * (cmOmega2 + 2 * mOmega2) * twoS 
 
  220   G4double bOmega_m = cOmega_m * (-2. * mOmega2*mOmega2 - 2. * mOmega2 * twoS - brak1);
 
  221   G4double bOmega_L = cOmega_L * (sOmega1 * mOmega2 + (cmOmega2 + 3. * mOmega2) * S + brak1);
 
  222   G4double bOmega_0 = -(bOmega_3 + bOmega_2 + bOmega_1 + bOmega_m);
 
  225   G4double bMix_o1 = cMix_o1 * (dOmega1 - twoS);
 
  226   G4double bMix_s1 = cMix_s1 * (dSigma1 - twoS);
 
  227   G4double bMix_Omega = cMix_Omega * (dOmega2 - twoS);
 
  228   G4double bMix_sm = cMix_sm * (dSigma2 - twoS);
 
  229   G4double bMix_oL = cMix_oLc + cMix_oLs * 
S;
 
  230   G4double bMix_sL = cMix_sLc + cMix_sLs * 
S;
 
  232   G4double t1_Pion = 1. / (1. + tMax / cmPion2);
 
  233   G4double t2_Pion = 1. + tMax / mPion2;
 
  234   G4double t1_Sigma = 1. / (1. + tMax / cmSigma2);
 
  235   G4double t2_Sigma = 1. + tMax / mSigma2;
 
  236   G4double t1_Omega = 1. / (1. + tMax / cmOmega2);
 
  237   G4double t2_Omega = 1. + tMax / mOmega2;
 
  240             t2_Pion, t2_Sigma, t2_Omega,
 
  241             bMix_o1, bMix_s1, bMix_Omega,
 
  242             bMix_sm, bMix_oL, bMix_sL,
 
  243             bOmega_0, bOmega_1, bOmega_2,
 
  244             bOmega_3, bOmega_m, bOmega_L);
 
  246   t1_Pion = 1. / (1. + tp / cmPion2);
 
  247   t2_Pion = 1. + tp / mPion2;
 
  248   t1_Sigma = 1. / (1. + tp / cmSigma2);
 
  249   t2_Sigma = 1. + tp / mSigma2;
 
  250   t1_Omega = 1. / (1. + tp / cmOmega2);
 
  251   t2_Omega = 1. + tp / mOmega2;
 
  259       G4double t3_Pion = 1. / (1. + to / cmPion2);
 
  260       G4double t4_Pion = 1. + to / mPion2;
 
  261       G4double t3_Sigma = 1. / (1. + to / cmSigma2);
 
  262       G4double t4_Sigma = 1. + to / mSigma2;
 
  263       G4double t3_Omega = 1. / (1. + to / cmOmega2);
 
  264       G4double t4_Omega = 1. + to / mOmega2;
 
  266       dSigma = ( 
Cross(t1_Pion, t1_Sigma, t1_Omega,
 
  267                t2_Pion,t2_Sigma, t2_Omega,
 
  268                bMix_o1, bMix_s1, bMix_Omega,
 
  269                bMix_sm, bMix_oL, bMix_sL,
 
  270                bOmega_0, bOmega_1, bOmega_2,
 
  271                bOmega_3, bOmega_m, bOmega_L) - 
 
  272          Cross(t3_Pion,t3_Sigma, t3_Omega,
 
  273                t4_Pion, t4_Sigma, t4_Omega,
 
  274                bMix_o1, bMix_s1, bMix_Omega,
 
  275                bMix_sm, bMix_oL, bMix_sL,
 
  276                bOmega_0, bOmega_1, bOmega_2,
 
  277                bOmega_3, bOmega_m, bOmega_L) ) 
 
  282       dSigma = 
Cross(t1_Pion, t1_Sigma, t1_Omega, 
 
  283              t2_Pion, t2_Sigma, t2_Omega,
 
  284              bMix_o1, bMix_s1, bMix_Omega,
 
  285              bMix_sm, bMix_oL, bMix_sL,
 
  286              bOmega_0, bOmega_1, bOmega_2,
 
  287              bOmega_3, bOmega_m, bOmega_L) 
 
  316     cross += ((cPion_3 * tpPion  + cPion_2)  * tpPion  + cPion_1)  * tpPion  + cPion_m/tmPion   + cPion_0  +  cPion_L * 
G4Log(tpPion*tmPion);
 
  319     cross += ((cSigma_3 * tpSigma + cSigma_2) * tpSigma + cSigma_1) * tpSigma + cSigma_m/tmSigma + cSigma_0 + cSigma_L * 
G4Log(tpSigma*tmSigma);
 
  322     cross += ((bOmega_3 * tpOmega + bOmega_2) * tpOmega + bOmega_1) * tpOmega + bOmega_m/tmOmega + bOmega_0 + bOmega_L * 
G4Log(tpOmega*tmOmega)
 
  324     +  bMix_o1 * (tpOmega - 1.)
 
  325     +  bMix_s1 * (tpSigma - 1.)
 
  326     +  bMix_Omega * 
G4Log(tmOmega)
 
  327     +  bMix_sm * 
G4Log(tmSigma)
 
  328     +  bMix_oL * 
G4Log(tpOmega)
 
  329     +  bMix_sL * 
G4Log(tpSigma);
 
G4double Cross(G4double tpPion, G4double tpSigma, G4double tpOmega, G4double tmPion, G4double tmSigma, G4double tmOmega, G4double bMix_o1, G4double bMix_s1, G4double bMix_Omega, G4double bMix_sm, G4double bMix_oL, G4double bMix_sL, G4double bOmega_0, G4double bOmega_1, G4double bOmega_2, G4double bOmega_3, G4double bOmega_m, G4double bOmega_L) const 
 
virtual G4double CosTheta(G4double s, G4double m1, G4double m2) const 
 
G4AngularDistribution(G4bool symmetrize)
 
G4double G4Log(G4double x)
 
static constexpr double GeV
 
virtual ~G4AngularDistribution()
 
G4double DifferentialCrossSection(G4double sIn, G4double m1, G4double m2, G4double cosTheta) const