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

Extend SurrogateHeatDriver to support multiple assemblies #165

Open
paulromano opened this issue Jul 14, 2022 · 0 comments
Open

Extend SurrogateHeatDriver to support multiple assemblies #165

paulromano opened this issue Jul 14, 2022 · 0 comments

Comments

@paulromano
Copy link
Member

Right now the SurrogateHeatDriver class is hardwired to work for a single assembly. To extend support to multiple assemblies, we'll need to add new input options in enrico.xml for specifying the placement of assemblies and an assembly pitch. In terms of changes needed in the SurrogateHeatDriver class itself, @kkiesling and I talked over a few different options:

  • One option would be to add an extra dimension on the various data members that corresponds to the different assemblies, e.g., pin_centers_ would go from being xt::xtensor<double, 2> to xt::xtensor<double, 3>. The loops over pins/channels would then just need to account for the extra dimension for assemblies
  • Alternatively, we could keep the SurrogateHeatDriver exactly as is, but introduce a new class on top of it that keeps a vector of SurrogateHeatDriver instances, one for each assembly. The new class would be what actually interfaces with CoupledDriver.
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

No branches or pull requests

1 participant