I’m a new user of Geant4 and want to ask is it possible to somehow obtain information about a particle (energy, momentum, so on …) without building a sensitive detector for this purpose. For instante, MCNP transport code provides functionality to get the info in an arbitraty point of the “universe” space. There is no reason for setting an additional detector geometry for that.
I’m trying to model 100Mo(p, 2n)99mTc nuclear reaction in solid cyclotron target and want to see the output channel’s neutrons spectrum in order to optimize target tablet width before the bombarding IRL.
Yes, you should be able to get that information by creating your own stepping action class, which should be declared as derived from G4UserSteppingAction class. You may find many use cases among the examples (either basic, extended or advanced ones).
Your concrete stepping action class must define a method named UserSteppingAction, which is called at every single step of the simulations, permitting you to access any kind of dynamic variable of interest during the tracking of particles.
Perhaps the simplest way to do this is to define a box/cylinder logical volume of “air” around your cyclotron target. Then in the SteppingAction, as @mcortesg suggests, you can check when a neutron specifically crosses this boundary, and then send its energy to a Geant4 histogram manager. You then have the option of file format and that can include root, hdf5, and csv with the first 2 being more organized when histogramming many things at the same time.