GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » Hades » Pluto » [SOLVED]Eta Prime decay via rho dilepton
[SOLVED]Eta Prime decay via rho dilepton [message #15355] Mon, 26 August 2013 00:14 Go to previous message
Michael Kunkel is currently offline  Michael Kunkel
Messages: 53
Registered: June 2011
continuous participant
From: *hr.hr.cox.net
Greetings,

I am trying to simulate the reaction g + p -> p eta'; eta'->rho dilepton; rho->pi+ pi-.

When I do this I have to set a PInclusiveModel for the dilepton, or there is no distribution. Here is a plot without setting a PInclusiveModel. index.php?t=getfile&id=7526&private=0



The problem is when setting this PInclusiveModel, the invariant mass of pi+pi- is not longer rho but instead a distribution.

index.php?t=getfile&id=7525&private=0

Here is a working code.

//#include "loadPluto.h";
//Author Michael C. Kunkel
#include "TH1.h"
#include "TH2.h"
#include "TH3.h"
#include "TChain.h"
#include "TCanvas.h"
#include "TF1.h"
#include "/Users/Mike/Pluto/pluto_v5.42/src/PParticle.h"
#include "/Users/Mike/Pluto/pluto_v5.42/src/PReaction.h"
#include "/Users/Mike/Pluto/pluto_v5.42/src/PBeamSmearing.h"
#include "/Users/Mike/Pluto/pluto_v5.42/src/PAnyDistribution.h"


void SIMULATE_EtaPrime_Dalitz(){
	
  makeStaticData()->AddDecay(-1, "eta' -> rho0 + dilepton ", "eta'", "rho0,dilepton",0.0009);
 
  //TF1 object representing the di-lepton statistics:
  TF1 *flat = new TF1("flat","1",0,1);
  
  //The "PInclusiveModel" can be used as a generator:
  PInclusiveModel *dilepton_generator = new PInclusiveModel("flat@eta'_to_rho0_dilepton/generator","Dilepton generator",-1);
  
  //The distribution template:
  dilepton_generator->Add("eta',parent");
  dilepton_generator->Add("rho0,daughter");
  dilepton_generator->Add("dilepton,daughter,primary");
  dilepton_generator->SetSampleFunction(flat);
  
  //Enable distribution as a generator
  //dilepton_generator->EnableGenerator();
  makeDistributionManager()->Add(dilepton_generator);
  
  double ebeam_min = 1.1725;
  double ebeam_max = 5.44575;
  PBeamSmearing *beam_smear = new PBeamSmearing("beam_smear", "Beam smearing");
  TF1* beam_smear_fn = new TF1("beam_smear_fn", "1./x", ebeam_min, ebeam_max);
  
  beam_smear->SetReaction("g + p");
  beam_smear->SetMomentumFunction(beam_smear_fn);
  makeDistributionManager()->Add(beam_smear);
    
  gROOT->Reset();
  //PUtils::SetSeed(123); //this is to have a fixed SEED. By default, the systime is used....
  
  PReaction my_reaction("_P1 = 2.2","g","p","p eta' [dilepton [e+ e-] rho0 [pi+ pi-]]","etaP_Aphi",1,0,1,1);

  TH1F * histo2 = new TH1F ("histo2","IM e+ e-",100,0.0,0.4);
  TH1F * histo3 = new TH1F ("histo3","IM pi+ pi-",100,0.0,1);

  my_reaction.Preheating(100);
  
  my_reaction.Do(histo2,"_w =1;_x = ([dilepton])->M() ");
  my_reaction.Do(histo3,"_w =1;_x = ([pi+] + [pi-])->M() ");
  my_reaction.Loop(10000);
  
  TCanvas *c1 = new TCanvas("c1","c1");
  c1->Divide(1,2);
  c1->cd(1);
  histo2->Draw();
  c1->cd(2);
  histo3->Draw();
  c1->Print("mass_spectrum.jpeg");

  
  
  
}

[Updated on: Mon, 26 August 2013 01:19]

Report message to a moderator

 
Read Message
Read Message
Read Message
Previous Topic: Sampling dilepton mass
Next Topic: eta prime dalitz
Goto Forum:
  


Current Time: Thu Apr 25 19:50:43 CEST 2019

Total time taken to generate the page: 0.02880 seconds