I am interested in defining a pulsed proton source, with a source frequency (in Hz) and pulse duration (in ms). Is it possible to do this in FLUKA? If so, are there any lecture materials which are available for me to reference to design such a source?
Dear @amario, I am interested in looking at the time structure of pulsed neutrons which emanate from a neutron producing target, when it is struck by a pulsed proton source. In my problem, I utilize 10MeV protons on a beryllium target.
In this case, I would do it at the postprocessing level. All primaries start at t=0, the you determine the timing of a secondary of interest, to this you can apply afterward a variable time shift which is distributed according to the time structure of your primary pulse.
@amario is there an example showing how to do this method?
@horvathd I will also explore this option. Is there a clear advantage to using this option instead of handling the time-dependence during post-processing?
the advantage of using the source routine is that it allows to make time of flight type simulations possible. For example, how the particle bunch duration changes during propagation, etc.
The disadvantage is, that no built in FLUKA scoring is available for this kind of simulations. The user needs to dump the relevant information into a file, and manually process it, to get the desired result.
This will be the most appropriate method for me then, as we are interested in time-of-flight type simulations. Is there a FLUKA tutorial to help me get started with these types of simulations?
100 MeV protons are impinging on a 7.5 cm thick water phantom. The proton beam is 1 ps long. We score the time when the protons enter and exit the phantom. Then the scored times are plotted in a histogram.
Protons entering the phantom:
Protons exiting the phantom (in the 2 cm radius from the beam axis):
P.S.: The boundary crossing time can be scored with USRYIELD as well. However it takes some effort to determine minimum and maximum time without accessing the actual crossing times using the mgdraw.f user routine. Furthermore, in case you need to change the histogram, the whole simulation needs to be rerun.
Thanks so much for providing this clear and detailed example! I will modify this for my needs. If any questions arise, I will send them your way. I hope you had a good weekend.