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

Use clearer input syntax for hexagonal lattice pitch #1654

Draft
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

mgjarrett
Copy link
Contributor

@mgjarrett mgjarrett commented Feb 27, 2024

What is the change?

Added an option for a user to specify a hexagonal pitch directly:

latticePitch: {hex: 1.5}

Why is the change being made?

Previously, a user had to specify the triangular pitch using the x attribute of latticePitch, which is confusing because the pitch is not necessarily equal to the x distance between two neighbors in a hex grid.

latticePitch: {x: 1.5}

https://github.com/terrapower/armi/blob/main/armi/reactor/grids/hexagonal.py#L152-L161


Checklist

  • The release notes have been updated if necessary.
  • The documentation is still up-to-date in the doc folder.
  • The dependencies are still up-to-date in pyproject.toml.

@john-science
Copy link
Member

I'm just thinking aloud here, but what something "flat-to-flat" be better for hex grids?

Isn't the goal to call out that we are going to be explicitly picking one over the other?

Calculating the pitch with a square root creates a machine precision
error.
@mgjarrett
Copy link
Contributor Author

I'm just thinking aloud here, but what something "flat-to-flat" be better for hex grids?

Isn't the goal to call out that we are going to be explicitly picking one over the other?

I'm not sure I understand what you are proposing. Do you mean specifying the pitch/flat-to-flat distance as flat-to-flat in the blueprints instead of latticePitch? I think latticePitch is still a fine descriptor of that parameter for a hexagonal lattice. And this allows us to not break any backwards compatibility with existing blueprints files, which would be an enormous pain.

@mgjarrett mgjarrett added the bug Something is wrong: Highest Priority label Feb 27, 2024
@mgjarrett
Copy link
Contributor Author

The bug fix was pulled out of this PR and into #1649

The remaining part of this PR is an optional/nice-to-have feature. It's just allowing users to define the hex pitch in blueprints in a slightly different way than before. No rush to push this through now, really.

@john-science
Copy link
Member

The unit tests broke after my PR merged. Sorry!

@mgjarrett
Copy link
Contributor Author

The unit tests broke after my PR merged. Sorry!

No worries! I just have to pull out what was moved over to #1649 and I think it will work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something is wrong: Highest Priority
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants