Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tidy Random Ray #128

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ChasingNeutrons
Copy link
Collaborator

Ok, here is a first attempt. I have nearly certainly forgotten some important things. I apologise that this is a big one. Please give brutal comments, especially on the structure.

I've tried to rewrite random ray mostly to be more easily extensible to the several variants we will want to have in future. This should also allow reusing machinery that is common to eigenvalue and fixed source calculations. As such, there are some placeholders for future modification and for fixed source.

This has resulted in a much leaner physics package. However, there are three meaningfully new files. First is dataRR - this basically holds nuclear data in a way which is convenient for RR (e.g., facilitating vectorisation) with access procedures. Second is rayHandling - this does things like placing rays in the geometry (perhaps this could be done more neatly using a uniform source for sampling), moving rays, and doing the transport sweep. Finally, and most significantly, is arraysRR. This contains all of the arrays which are necessary for a random ray calculation: current flux, previous flux, accumulated flux, source, etc. This is where most of the action is - normalising fluxes, calculating sources, accumulating fluxes, calculating k; anything that means walking over all of the arrays.

As we discussed, I also modified the physics packages to allow for neat integration tests.

There are also a few other modifications, such as moving slice/voxelPlot from geometry to visualiser.

If the shape looks decent I'll add in the documentation.

@ChasingNeutrons ChasingNeutrons added enhancement New feature or request Prettier code labels Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Prettier code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant