feat: Add the option of bin counting histograms for the surfaces material maps#5567
feat: Add the option of bin counting histograms for the surfaces material maps#5567dimitra97 wants to merge 5 commits into
Conversation
| BinnedSurfaceMaterial(const BinUtility& binUtility, | ||
| MaterialSlabVector materialVector, | ||
| double splitFactor = 0., | ||
| std::vector<unsigned int> binCounts = {}, |
There was a problem hiding this comment.
for this to be non-breaking the parameter would have to be the last one
| BinnedSurfaceMaterial(const BinUtility& binUtility, | ||
| MaterialSlabMatrix materialMatrix, | ||
| double splitFactor = 0., | ||
| std::vector<std::vector<unsigned int>> binCounts = {}, |
| std::unique_ptr<const ISurfaceMaterial> totalAverage( | ||
| bool recordBinCounts = false); |
There was a problem hiding this comment.
I wonder if we really want to pipe everything through the reconstruction abstraction. if these were two different interfaces we could leave the reco untouched
one way out might be to containerize the accumulated material with dynamic columns and trimming that for reconstruction purposes
but all of this is rather long term compared to this change here
cc @asalzburger
There was a problem hiding this comment.
Indeed, the GridSurfaceMaterial has already some sort of containerized option. I am sort of waiting until we have the axis work through to clean this one up - probably we wait for the binCounts to added at that stage then?
There was a problem hiding this comment.
ok sounds like an option. I draft it for now and go with the containerized option, once the axis refactoring is also done
This PR introduces the possibility of recording the bin counts optionally and create an extra histogram in the material maps for every mapped surface.
It has been enabled by a flag when estimating the total average material to optionally record the bin counts and pass it in the constructor of the
BinnedSurfaceMaterial(otherwise an empty matrix is passed).It can be useful for statistical studies (how many bins have been mapped with how many hits etc during the material mapping) as a root macro that I have included can show this use case.
I tried to make it as simple as possible and not to affect much clients' side and experiments that already rely on these functions.
--- END COMMIT MESSAGE ---
Tagging @asalzburger @noemina