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 r.core.axialMesh() for uniform mesh. #959

Merged
merged 6 commits into from
Nov 11, 2022

Conversation

mgjarrett
Copy link
Contributor

@mgjarrett mgjarrett commented Nov 5, 2022

Description

When making a uniform mesh assembly in the UniformMeshConverter, the freshly minted assembly does not have any submesh (i.e., b.p.axMesh = 1).

block.p.axMesh = 1

Creating a uniform mesh assembly with the refAssem's block mesh (r.core.refAssem.getAxialMesh()) poses problems if some blocks in the refAssem have a submesh (i.e., b.p.axMesh > 1), because the uniform mesh assembly will not have a submesh. r.core.p.axialMesh() contains the computational neutronics mesh, which has all of the mesh subdivisions; this is the mesh that should be used for makeAssemWithUniformMesh().


Checklist

  • This PR has only one purpose or idea.
  • Tests have been added/updated to verify that the new/changed code works.
  • The release notes (location doc/release/0.X.rst) are up-to-date with any bug fixes or new features.
  • The documentation is still up-to-date in the doc folder.
  • The dependencies are still up-to-date in setup.py.

When making a uniform mesh assembly in the UniformMeshConverter, the
freshly minted assembly does not have any submesh (i.e., b.p.axMesh ==
1). Homogenizing onto the refAssem's block mesh
 [r.core.refAssem.getAxialMesh()] poses problems if some blocks in
the refAssem have a submesh. r.core.axialMesh() contains the
computational neutronics mesh, which has all of the mesh subdivisions;
this is the mesh that should be used for makeAssemWithUniformMesh().
@mgjarrett mgjarrett mentioned this pull request Nov 5, 2022
7 tasks
@mgjarrett
Copy link
Contributor Author

I ran the tests locally and they passed, so... I don't know? The 3.7, 3.8, 3.9, and 3.10 unit tests all pass, but the "ARMI Windows tests" fails. I can't think of anything changed here that would be affecting the failing test.

@john-science john-science added the bug Something is wrong: Highest Priority label Nov 7, 2022
@john-science
Copy link
Member

@mgjarrett I would guess that the issue is a race condition somewhere in test_assemblies.py or textProcessors.py.

    File "D:\a\armi\armi\armi\reactor\tests\test_assemblies.py", line 589, in _setup_blueprints
...
    File "D:\a\armi\armi\armi\utils\textProcessors.py", line 106, in _processIncludes
      raise ValueError(
  ValueError: The !included file, `refSmallSfpGrid.yaml` does not exist from D:\a\armi\armi\armi\tests\detailedAxialExpansion!

My assumption here is if you ran the test again, the bug would not appear.

I'll be honest, I've run the ARMI unit tests thousands of times, and not seen this one. So if I see it a second time, I'll have to fix it. But I'm hoping this is a one-off bug with the Windows file system.

Probably, your next commit will fix this, because it will force the tests to re-run.

@mgjarrett mgjarrett marked this pull request as ready for review November 9, 2022 19:37
@john-science john-science merged commit d367c22 into terrapower:main Nov 11, 2022
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.

2 participants