34 void Femto1DCFAnaMapMC::Run(Int_t pairs_per_bin) {
35 Double_t* kstar =
new Double_t[fMap->GetNum()->GetNbinsX() + 1];
36 Double_t* kfill =
new Double_t[fMap->GetNum()->GetNbinsX() + 1];
37 for (
int i = 1; i <= fMap->GetNum()->GetNbinsX(); i++) {
38 kstar[i] = fMap->GetNum()->GetXaxis()->GetBinCenter(i);
40 if (fKinematics == Femto::EKinematics::kLCMS) { kstar[i] = kstar[i] * 0.5; }
42 TVector3 boost(0.1, 0.1, 0.1);
44 for (
int ikst = 1; ikst <= fMap->GetNum()->GetNbinsX(); ikst++) {
45 Double_t E1 = TMath::Sqrt(fMass12 + kstar[ikst] * kstar[ikst]);
46 Double_t E2 = TMath::Sqrt(fMass22 + kstar[ikst] * kstar[ikst]);
48 gRandom->Sphere(px, py, pz, kstar[ikst]);
49 TLorentzVector p1(px, py, pz, E1);
50 TLorentzVector p2(-px, -py, -pz, E2);
53 fPair->SetTrueMomenta1(p1.X(), p1.Y(), p1.Z(), p1.T());
54 fPair->SetTrueMomenta2(p2.X(), p2.Y(), p2.Z(), p2.T());
55 for (
int r_bin = 0; r_bin < fRBins; r_bin++) {
56 Double_t R = fRadiiBins[r_bin];
57 fGenerator->GetSourceModel()->SetRadius(R);
58 for (
int i = 0; i < pairs_per_bin; i++) {
59 fGenerator->GenerateFreezoutCooordinates(fPair);
60 Double_t weight = fWeight->GenerateWeight(fPair);
61 ((TH2*) fMap->GetNum())->Fill(kfill[ikst], R, weight);
62 ((TH2*) fMap->GetDen())->Fill(kfill[ikst], R, 1);