#include <TPDGCode.h>
#include <TSystem.h>
#include <TTree.h>
-
#include "AliConst.h"
#include "AliDecayerPythia.h"
#include "AliGenPythia.h"
#include "AliStack.h"
#include "AliRunLoader.h"
#include "AliMC.h"
+#include "pyquenCommon.h"
ClassImp(AliGenPythia)
Int_t np = fParticles->GetEntriesFast();
- if (np == 0 ) continue;
+ if (np == 0) continue;
//
//
if (fQuench){
Double_t z[4];
Double_t xp, yp;
-
- fPythia->GetQuenchingParameters(xp, yp, z);
-
- ((AliGenPythiaEventHeader*) fHeader)->SetXYJet(xp, yp);
- ((AliGenPythiaEventHeader*) fHeader)->SetZQuench(z);
- }
+ if (fQuench == 1) {
+ // Pythia::Quench()
+ fPythia->GetQuenchingParameters(xp, yp, z);
+ } else {
+ // Pyquen
+ Double_t r1 = PARIMP.rb1;
+ Double_t r2 = PARIMP.rb2;
+ Double_t b = PARIMP.b1;
+ Double_t r = 0.5 * TMath::Sqrt(2. * (r1 * r1 + r2 * r2) - b * b);
+ Double_t phi = PARIMP.psib1;
+ xp = r * TMath::Cos(phi);
+ yp = r * TMath::Sin(phi);
+
+ }
+ ((AliGenPythiaEventHeader*) fHeader)->SetXYJet(xp, yp);
+ ((AliGenPythiaEventHeader*) fHeader)->SetZQuench(z);
+ }
//
// Pass header to RunLoader
--- /dev/null
+#include "Rtypes.h"
+#include "cfortran.h"
+//
+// common /parimp/ b1, psib1, rb1, rb2
+//
+extern "C" {
+
+ typedef struct {
+ Double_t b1;
+ Double_t psib1;
+ Double_t rb1;
+ Double_t rb2;
+} parimpCommon;
+#define PARIMP COMMON_BLOCK(PARIMP,parimp)
+COMMON_BLOCK_DEF(parimpCommon,PARIMP);
+}