Multigroup XS generation with OpenMC
Add the capability with openmc.mgxs
library to generate multigroup cross sections.
My initial thoughts on what would need to be added to the schema (basically input to openmc.mgxs.Library()
):
- energy group structure (there appear to be built-ins in OpenMC, so we could offer those or custom bounds). Do the energy group bounds need to match the tally energy groups?
- legendre order
- number of delayed groups
- xs types (default to all but allow a list to be provided? This could get complicated to ensure strings are correct.)
- domain (can be material, cell, distribcell, universe, or mesh) - basically correspond these to tally domain options
- xs type (micro, macro)
- per nuclide
- [other stuff? there are many input options]
If I understand correctly, this library is created once for a model right? Or can there be multiple? I am wondering if it makes sense to add this mgxs option within a tally block in the schema (then would be allowable for all tallies?) or as a separate input block?