Skip to content

Conversation

@LukeSeifert
Copy link
Collaborator

Summary of changes

This PR cleans up the existing MoSDeN package based on previous feedback. This will enable a clean transition into the next stage of development focused on adding the new, higher fidelity model (see Issue #37).
This PR should not be merged until PR #36 is merged.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • I have read the CONTRIBUTING document.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Associated Issues and PRs

Associated Developers

  • Dev: @

Checklist for Reviewers

Reviewers should use this link to get to the
Review Checklist before they begin their review.

cfy_in_yields = any(val in data['data_options']['fission_yield'] for val in self.cumulative_fission_yields)
if not cfy_in_yields:
raise ValueError(f"CFY requires cumulative fission yield data {self.cumulative_fission_yields} (not in {data["data_options"]["fission_yield"]})")
if data['modeling_options']['base_removal_scaling'] == 0.0:

Choose a reason for hiding this comment

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

Maybe this could be more general, for any value that is not between 0 and 1?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Hmm, maybe? Again, this is handled much better in the next PR (once it is submitted) using the JSON schema. But specifically I want to point out to users that setting this value to 0 is not suggested (since it effectively implies the chemical removal rate occurs at a single point, which MoSDeN cannot currently model). I have added a line in Issue #40 to ensure that the JSON schema properly accounts for this.

'cross_section',
'emission_probability']

self.data_dir: str = file_options['unprocessed_data_dir']

Choose a reason for hiding this comment

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

I wonder if there is a more concise way to initialize a class like this? Especially if many of the class variables are similar to the names used in the input file.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Very good point! I have created Issue #42 pointing this out.

Copy link

@ElijahCapps ElijahCapps left a comment

Choose a reason for hiding this comment

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

Left a few comments over some minor issues, and a few questions in places I was confused. Otherwise, I think this does a great job cleaning up what was hard-coded before your prelim. Good job!

@LukeSeifert
Copy link
Collaborator Author

@ElijahCapps @bryanjp05 Thank you both for all your comments! Let me know if you still have comments, otherwise feel free to merge once you have both approved.

Copy link

@ElijahCapps ElijahCapps left a comment

Choose a reason for hiding this comment

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

All new changes look good to me! I think this is ready to merge.

@bryanjp05 bryanjp05 merged commit 4e84432 into arfc:main Feb 4, 2026
1 check passed
@LukeSeifert LukeSeifert deleted the cleanup branch February 5, 2026 15:55
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.

3 participants