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

Fix neutron angular distribution for fng_dose #2

Merged
merged 1 commit into from
Aug 30, 2022

Conversation

paulromano
Copy link
Collaborator

I realized that the angular distribution of neutrons in the fng_dose model was not quite right. By using discrete values of mu, it was overweighting the poles (close to -1 and 1). This branch changes the way the angle distributions are setup to use uniform distributions over ranges of mu rather than discrete values and then modifies the relative intensities based on the width of the mu intervals.

@paulromano paulromano requested a review from eepeterson August 29, 2022 17:51
Copy link
Owner

@eepeterson eepeterson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@paulromano were the source distributions specified for MCNP discrete or tabular? Or could you briefly comment on how this source is generated?

@paulromano
Copy link
Collaborator Author

Sorry, let me elaborate a bit. The MCNP model uses a compiled source that actually simulates D-T collisions to produce neutrons, so it is neither discrete nor tabular. Until we are able to have an equivalent custom source in C++ (or a wrapper around the MCNP Fortran source), my approach here has been to use the tabulated data from fngdos-e.htm in the SINBAD distribution, which gives the relative intensity for discrete cos(θ) values, and then for each of those cos(θ) values a tabulated energy distribution. The problem this PR solves is that if I only produce source neutrons at those discrete cos(θ) values, it overweights directions close to the poles. The other thing the PR fixes is the reference direction for neutrons: before it was (0, 0, 1) and this fixes it to (0, 1, 0), i.e., forward in the y-axis. With the fix to the reference direction, the overweighting of cos(θ)=1 was resulting in a dose rate that was too high.

@eepeterson
Copy link
Owner

OK thanks for the detailed explanation. Digging into the benchmark files and looking through the docs I opened issue #3 to remind me of a potentially useful feature. Otherwise I think this is good to go

@eepeterson eepeterson merged commit a0d0357 into master Aug 30, 2022
@paulromano paulromano deleted the fng_dose_fix_angle branch August 31, 2022 01:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants