armi: Database cannot recall user materials
After you build and run a case, one can use the database to reload the reactor state. It appears that if you define a component with a custom material like material: customMaterialModule:myCustomMaterial, then the database loader cannot find the custom material when you try to load up the saved reactor.
I’ll post an example in a bit.
About this issue
- Original URL
- State: open
- Created 2 years ago
- Comments: 15 (15 by maintainers)
IMO, the current situation could very easily lead to bugs.
For instance, we have a material in the framework called Air.
If I were to have a module in my run path called
my_custom_materials, and in that I have a custom implementation of air, also calledAir, I could point to it for my run:material: my_custom_materials:AirAll of this is completely legit. During the run, ARMI would correctly discover and use the custom version of
Air, as expected.But then during a reload from the DB, if one were to not explicitly set the custom module ahead of the “normal” material modules using
setMaterialNamespaceOrder, their DB load would be the framework implementation ofAir, which is WRONG!This would be solved if the module path were stored in the DB, so that instead of looking for just
Airduring the reload, ARMI would look formy_custom_materials:Air.