USRBDX logic for creating 2-d image

Dear FLUKA experts,

I am trying to get a 2-d angular distribution image on a surface. As of now, I am using multiple USRBDX detectors, in a grid format. For each USRBDX I create a separate cube region (a pixel), and define my crossing boundary as a plane inside the cubes (with the corresponding normalization factors for the surface area). The problem is, if I understood correctly, that I am limited to 700 regions total per input file. My intention is to cover a surface of about 30*30 cm with resolution of about 0.5*0.5 cm. Is there a smarter way to simulate it? For now I am only interested in angular distribution, and not in energy distribution.

Thank you in advance,

Hen Shukrun.


  • Segmenting the geometry with separated cubes/pixels, probably you will end up with a region with multiple terms as +somebody -cube1 -cube2 -cube3...., which will be highly inefficient during tracking
  • Adding numerous USRBDX, will also induce a slowdown, since the code on every boundary crossing it will have to loop over all the USRBDX to perform the scoring

I would personally make only one big region including all pixels. With the use of the user routine mgdraw.f in the ENTRY BXDRAW (boundary crossing entry) to dump in a file all information for the particles I am interested,
position, direction, energy, particle type etc…

Then use an offline program to process and perform the plots

Dear @vasilis,
Following your suggestion and the discussion on Energy and angle of each particle escaping from the surface,
I was able to achieve my goal.
Thank you for your help.

Hen Shukrun