WLedCOMMONS.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. #ifndef WLedCOMMON
  2. #define WLedCOMMON
  3. extern "C" {
  4. #define f2cFortran
  5. #include "cfortran.h"
  6. //----------------------------------------------------------------
  7. /*
  8. COMMON/CONS/PI,PI2,SPI,DR,W
  9. */
  10. typedef struct //FSI_CONS
  11. {
  12. Double_t PI; // 3.141592654
  13. Double_t PI2; // PI2=2*PI
  14. Double_t SPI; // SPI=DSQRT(PI)
  15. Double_t DR; // DR=180.D0/PI from radian to degree
  16. Double_t W; // W=1/.1973D0 from fm to 1/GeV
  17. } FSICONSCommon;
  18. #define FSICONS COMMON_BLOCK(FSICONS,fsicons)
  19. COMMON_BLOCK_DEF(FSICONSCommon, FSICONS);
  20. //----------------------------------------------------------------
  21. // COMMON/LEDWEIGHT/WEIF,WEI,WEIN,ITEST,IRANPOS
  22. typedef struct //LEDWEIGHT
  23. {
  24. Double_t WEIF;
  25. Double_t WEI;
  26. Double_t WEIN;
  27. Int_t ITEST;
  28. Int_t IRANPOS;
  29. } LEDWEIGHTCommon;
  30. #define LEDWEIGHT COMMON_BLOCK(LEDWEIGHT,ledweight)
  31. COMMON_BLOCK_DEF(LEDWEIGHTCommon, LEDWEIGHT);
  32. //-----------------------------------------------------------------
  33. //-----------------------------------------------------------
  34. // COMMON/FSI_NS/LL,NS,ICH,ISI,IQS,I3C,I3S
  35. // INTEGER LL,NS,ICH,ISI,IQS,I3C,I3S
  36. typedef struct //FSI_NS
  37. {
  38. Int_t LL; // [GeV/c]
  39. Int_t NS;
  40. Int_t ICH;
  41. Int_t ISI;
  42. Int_t IQS;
  43. Int_t I3C;
  44. Int_t I3S;
  45. } FSINSCommon;
  46. #define FSINS COMMON_BLOCK(FSINS,fsins)
  47. COMMON_BLOCK_DEF(FSINSCommon, FSINS);
  48. //---------------------------------------------------------
  49. // COMMON/FSI_POC/AMN,AM1,AM2,CN,C1,C2,AC1,AC2
  50. typedef struct //FSI_POC
  51. {
  52. Double_t AMN; //mass of the effective nucleus [GeV/c**2]
  53. Double_t AM1;
  54. Double_t AM2;
  55. Double_t CN; //charge of the effective nucleus [elem. charge units]
  56. Double_t C1;
  57. Double_t C2;
  58. Double_t AC1;
  59. Double_t AC2;
  60. } FSIPOCCommon;
  61. #define FSIPOC COMMON_BLOCK(FSIPOC, fsipoc)
  62. COMMON_BLOCK_DEF(FSIPOCCommon, FSIPOC);
  63. //-----------------------------------------------------------------
  64. /* COMMON/MOMLAB/AM1,PXP1,PYP1,PZP1,AM2,PXP2,PYP2,PZP2
  65. REAL*8 AM1,PXP1,PYP1,PZP1,AM2,PXP2,PYP2,PZP2
  66. */
  67. typedef struct //MOMLAB
  68. {
  69. Double_t AM1;
  70. Double_t PXP1;
  71. Double_t PYP1;
  72. Double_t PZP1;
  73. Double_t AM2;
  74. Double_t PXP2;
  75. Double_t PYP2;
  76. Double_t PZP2;
  77. } MOMLABCommon;
  78. #define MOMLAB COMMON_BLOCK(MOMLAB,momlab)
  79. COMMON_BLOCK_DEF(MOMLABCommon, MOMLAB);
  80. //---------------------------------------------------------------------------
  81. /* COMMON/FSI_MOM/P1X,P1Y,P1Z,E1,P1, ! particle momenta in the
  82. // rest frame of effective nucleu
  83. 1 P2X,P2Y,P2Z,E2,P2
  84. */
  85. typedef struct //FSI_MOM
  86. {
  87. Double_t P1X; // [GeV/c]
  88. Double_t P1Y;
  89. Double_t P1Z;
  90. Double_t E1;
  91. Double_t P1;
  92. Double_t P2X;
  93. Double_t P2Y;
  94. Double_t P2Z;
  95. Double_t E2;
  96. Double_t P2;
  97. } FSIMOMCommon;
  98. #define FSIMOM COMMON_BLOCK(FSIMOM,fsimom)
  99. COMMON_BLOCK_DEF(FSIMOMCommon, FSIMOM);
  100. //---------------------------------------------------------------------
  101. typedef struct //FSI_COOR
  102. {
  103. Double_t X1;
  104. Double_t Y1;
  105. Double_t Z1;
  106. Double_t T1;
  107. Double_t R1;
  108. Double_t X2;
  109. Double_t Y2;
  110. Double_t Z2;
  111. Double_t T2;
  112. Double_t R2;
  113. } FSICOORCommon;
  114. #define FSICOOR COMMON_BLOCK(FSICOOR,fsicoor)
  115. COMMON_BLOCK_DEF(FSICOORCommon, FSICOOR);
  116. //-----------------------------------------------------------
  117. /* COMMON/FSI_PRF/PPX,PPY,PPZ,AK,AKS, ! k*=(p1-p2)/2 and x1-x2
  118. X,Y,Z,T,RP,RPS ! in pair rest frame (PRF)
  119. */
  120. typedef struct //FSI_PRF
  121. {
  122. Double_t PPX;
  123. Double_t PPY;
  124. Double_t PPZ;
  125. Double_t AK;
  126. Double_t AKS;
  127. Double_t X;
  128. Double_t Y;
  129. Double_t Z;
  130. Double_t T;
  131. Double_t RP;
  132. Double_t RPS;
  133. } FSIPRFCommon;
  134. #define FSIPRF COMMON_BLOCK(FSIPRF,fsiprf)
  135. COMMON_BLOCK_DEF(FSIPRFCommon, FSIPRF);
  136. }
  137. #endif