crab_interaction_pp.cpp 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. /* These first two numbers describe the number of ident numbers used to
  2. screen phase space pt.s from files that are to be used in the generation
  3. of correlation functions. These codes may be different than those of the
  4. particles you are investigating. For instance, you may wish to do pi-pi-
  5. correlations and use the phase space pt.s for all 3 species of pions */
  6. #define N1TYPES 1
  7. #define N2TYPES 1
  8. /* These are the identifications. See pdg.lbl.gov/rpp/mcdata/all.mc for a
  9. list of identification numbers */
  10. const int IDENT1[N1TYPES]={2212};
  11. const int IDENT2[N2TYPES]={2212};
  12. #define MASS1 938.3
  13. #define MASS2 938.3
  14. /* Define if particles are identical */
  15. #define IDENTICAL
  16. /* Turn off and on the Coulomb Interaction */
  17. #define COULOMB
  18. /* Turn off and on the Strong Interaction */
  19. #define STRONG_INTERACTION
  20. #define Q1Q2 1
  21. #define INTERACTION_WSYM 0.25
  22. #define INTERACTION_WANTI 0.75
  23. #define INTERACTION_WNOSYM 0.0
  24. /* fractions of symmetric and antisym weights of the various spin channels */
  25. #define INTERACTION_DELK 4.0
  26. /* spacing of mom. mesh for calc. of strong/coul. int. given in MeV/c
  27. and mom. is reduced momentum (1/2 Qinv for m1=m2) */
  28. /* these are used to define both the strong and coulomb meshes */
  29. #define INTERACTION_NKMAX 25
  30. /* number of momentum points in mesh for strong/coul. interaction */
  31. /* DEFINE THE STRONG INTERACTION POTENTIAL */
  32. #ifdef STRONG_INTERACTION
  33. /* Potentials can be found the file crab_potentials.cpp */
  34. #define POTENTIAL vreid
  35. /* These are definitions used for calculating wave func.s */
  36. #define STRONG_NSPINS 2
  37. #define STRONG_NETPARTIALS 2
  38. /* these are used to define both the strong and coulomb meshes */
  39. /* number of spatial points is mesh */
  40. #define STRONG_NRMAX 150
  41. /* The strong interaction is calculated for r<rmax. delr=RMAX/NRMAX */
  42. #define STRONG_RMAX 6.0
  43. /* For calculating wave func.s when r > RMAX, asymptotic forms are used */
  44. /* ************************************************************ */
  45. /* The Following are global variables used for the calculation of wave
  46. functions */
  47. const int STRONG_NPARTIALS[STRONG_NSPINS]={1,1};
  48. /* for various spin channels, this is the number of partial waves in
  49. each spin channel. These numbers should sum up to NETPARTIALS*/
  50. const int STRONG_SYMM[STRONG_NSPINS]={1,-1};
  51. /* parity required by spin choice, choose -1 for antisym, 1 for symm.,
  52. and 0 for none. for example, in pp, the s=1 waves would have negative,
  53. while the s=0 wave would have positive. for non-identical particles,
  54. one might choose zero. */
  55. const double STRONG_WEIGHT[STRONG_NSPINS]={0.25,0.75};
  56. /* weight of spin channels */
  57. const int STRONG_L[STRONG_NETPARTIALS]={0,1};
  58. /* ************************************************************ */
  59. double vreid(double r,int ipart);
  60. double vreid(double r,int ipart){
  61. double pmux,f1,f2,f4,f6,f7,vr;
  62. /* See the appendix of B.D. Day, PRC24, p. 1203 (1981).
  63. with Tensor forces neglected */
  64. if(ipart==0){
  65. /* S=0 */
  66. pmux=r*0.7;
  67. f1=exp(-pmux);
  68. f4=(f1*f1*f1*f1);
  69. f7=f4*(f1*f1*f1);
  70. vr=-10.463*f1/pmux-1650.6*f4/pmux+6484.2*f7/pmux;
  71. }
  72. if(ipart>0){
  73. /* S=1 */
  74. pmux=r*0.7;
  75. f1=exp(-pmux);
  76. f2=f1*f1;
  77. f4=f2*f2;
  78. f6=f4*f2;
  79. vr=((-10.463/3.0)*f1-933.48*f4+4152.1*f6)/pmux;
  80. }
  81. return vr;
  82. }
  83. #endif