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

Clashing prints on blueprints pictures #1158

Open
keckler opened this issue Feb 6, 2023 · 13 comments · May be fixed by #1998
Open

Clashing prints on blueprints pictures #1158

keckler opened this issue Feb 6, 2023 · 13 comments · May be fixed by #1998
Labels
bug Something is wrong: Highest Priority

Comments

@keckler
Copy link
Member

keckler commented Feb 6, 2023

During a run, ARMI prints out pictures of what the various assembly blueprints look like axially. It appears when axial thermal expansion is turned on, the hot block heights are printed in the same picture directly on top of the cold block heights, making it difficult to read either of them.

It's hard for me to put up an example picture of this without exposing proprietary data, so feel free to reach out to me personally if you want an example.

@john-science john-science added the bug Something is wrong: Highest Priority label Jul 20, 2023
@john-science
Copy link
Member

@keckler I don't suppose you could provide an example plot for Tony?

@albeanth Do you have any thoughts on this? (Also, should we do a round-up of all the axial expansion-related tickets that are lying around?)

@keckler
Copy link
Member Author

keckler commented Jul 12, 2024

Yeah, I can easily get him an example of the issue. I can send privately.

@keckler
Copy link
Member Author

keckler commented Sep 25, 2024

Here is a redacted example
image

@keckler
Copy link
Member Author

keckler commented Sep 25, 2024

It seems to me that the best way to solve this would be for these pictures to just represent the cold heights. That would avoid the clashing prints due to thermal expansion introducing tiny differences in the block heights.

Besides, my assumption is that users use these types of plots to (1) verify their inputs, and (2) to show other people what their assemblies look like. Both of those tasks would be more digestible if the block heights were displayed as cold heights.

If we agree on this, then I can make a PR for this.

@albeanth
Copy link
Member

.... If we agree on this, then I can make a PR for this.

Also supports the proposed direction in #1824

@john-science
Copy link
Member

If we agree on this, then I can make a PR for this.

I like the proposal. Go for it. And thanks, man.

@keckler
Copy link
Member Author

keckler commented Sep 27, 2024

The suggestion I made above (to print the plots at cold heights) is not easily to do in practice. The reason for this is that axial thermal expansion takes place before these plots can possibly be generated.

The plots are generated within the ReportInterface.interactBOL() hook:

reportingUtils.makeCoreAndAssemblyMaps(self.r, self.cs)

Oddly, the axial thermal expansion takes place even before the interactInit() hooks of the interface stack. This means that basically nothing can be configured to happen before axial thermal expansion messes with the defined reactor. This is a real shame, and highlights another motivation for converting axial thermal expansion into a plugin/interface.

@keckler
Copy link
Member Author

keckler commented Sep 27, 2024

I would say this is still a problem, but it has suddenly turned into something that is very difficult to fix. I am leaving the ticket open, but unassigning myself because I do not have the bandwidth to do something so complex.

@keckler keckler removed their assignment Sep 27, 2024
@albeanth
Copy link
Member

albeanth commented Sep 27, 2024

Oddly, the axial thermal expansion takes place even before the interactInit() hooks of the interface stack. This means that basically nothing can be configured to happen before axial thermal expansion messes with the defined reactor. This is a real shame, and highlights another motivation for #1843 (comment).

Yeah, thermal expansion occurs during core construction. Specifically on the blueprints assemblies to get them to their Thot dimensions. This was done because users were complaining that dbloads were taking too long because we were thermally expanding every single assembly in the core. So to make the dbloads faster, we changed to thermally expanding the blueprints assemblies, and as such, occurs very early on.
Here's the PR that made that change --> #1047

If you want to make thermal expansion a plugin/interface, you'll need to convince the powers at be that allowing interfaces to call other interfaces is an ok design choice (while recognizing that this capability does currently exist and is used).

@john-science
Copy link
Member

Our team opinion here is we need a method that can go up to the blueprints and get the T=0 heights from a block.

@drewj-tp
Copy link
Contributor

drewj-tp commented Oct 3, 2024

Our team opinion here is we need a method that can go up to the blueprints and get the T=0 heights from a block.

This method would have other benefits outside this plot, e.g., axial thermal expansion between hot and as fabricated heights of blocks.

@john-science
Copy link
Member

Can this Issue be closed, now that we have Drew's PR "Adding Block.getInputHeight" ?

#1927

It looks to me like it can.

@drewj-tp
Copy link
Contributor

Can this Issue be closed, now that we have Drew's PR "Adding Block.getInputHeight" ?

#1927

It looks to me like it can.

We'd have to make the change to use that method in the plots but that should 🤞 be all that's needed

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 a pull request may close this issue.

4 participants