There are too many (hex) assembly-specific tools in App
It has been noted that the default ARMI App() actually has a lot of hex-assembly or even SFR assumptions in it.
Well, after we make some new Core subclasses for HexAssemblyCore or SFRCore or what-have-you, there is an easy method to point at a specific Core type in an ARMI Application:
https://github.com/terrapower/armi/blob/0e830d2c8dece43c57b657caefaed8e8c7ba276b/armi/reactor/init.py#L75-L81
This would also be a great time to look at the default Plugins and Interfaces in the default ARMI App to decide which should stay with the default App and which should move to the new SFRHexApp or whatever:
https://github.com/terrapower/armi/blob/0e830d2c8dece43c57b657caefaed8e8c7ba276b/armi/apps.py#L90-L97
NOTE: This change would require some docs updates. We will need to document the change, of course. But also, this will break the current Settings and Parameters reports.
This ticket came out of a conversation with @albeanth , @alexhjames , @drewj-tp , @keckler , and @opotowsky .
Core-specific variant / sibling ticket - https://github.com/terrapower/armi/issues/1448