Message: Re: How to make histogram of initial energies? Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: How to make histogram of initial energies? 

Forum: Analysis
Re: Question How to make histogram of initial energies? (Jussi Lehti)
Date: 30 Apr, 2004
From: Jeremy McCormick <Jeremy McCormick>

Hi.  

I also needed to access information on the particle(s) 
generated by GPS.

You may do something like this in
PrimaryGeneratorAction::GeneratePrimaries() :

  // generate the event
  particleSource->GeneratePrimaryVertex(theEvent);

  // particle energy
  G4double pE = particleSource->GetParticleEnergy();

  // pos
  G4ThreeVector pos = particleSource->GetParticlePosition();

  // PDG id
  G4int pdgid = particleSource->GetParticleDefinition()->GetPDGEncoding();

  // momentum
  G4ThreeVector mom = particleSource->GetParticleMomentumDirection();

  // print it
  G4cout << pdgid << " "
         << pos.x() << " "
	 << pos.y() << " "
	 << pos.z() << " "
	 << mom.x() << " "
	 << mom.y() << " "
	 << mom.z() << " "
	 << pE
	 << G4endl;

It gives all the information I need.  BTW, "G4cout" could just as
well be a C++ I/O stream.  Or perhaps you could use ROOT I/O
or LCIO.  (Generally, it is a good idea to have some sort
of global file manager handling your I/O.)

BTW, when generating multiple vertices (i.e. particles) for the same
event using GPS, the generation order (1, 2, 3, etc.) seems to 
correspond with the subsequently assigned track ids.  This
is probably only working in all cases of my app, because my 
particular setup does not manipulate the tracking stack.  So they 
are tracked in order.

I'm assuming you know how to book and fill histograms with a
favorite analysis tool...

As for creating the histogram with initial energies, I
recommend doing this in the post-processing phase.  For instance,
you can use an AIDA implementation such as JAIDA to create
1D histos, and the I/O library for your hits format to read in data.

If you implement the histograms within your detector simulation codes, 
the analysis code must be written in C++, whereas you can use an 
external Java tool such as JAS in post-processing.  

--JM

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

 Add Message Add Message
to: "Re: How to make histogram of initial energies?"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]