You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue might be unavoidable, and we may already be using the best terms available, or there may be no alternative terms better enough to warrant a potentially breaking change, but...
Currently:
Components are the simplest objects in hypnos, comprised of geometric volumes and materials assigned to those volumes.
Assemblies are collections of components and other assemblies, such that an assembly can iterate through all its components recursively.
The nomenclature can be a little confusing, leading to classes like PinAssembly which is an Assembly subclass describing a blanket pin. In a breeder blanket, pins are assembled together in an array called a "pin assembly", which this class does not describe. The class describing such an assembly would likely be called PinAssemblyAssembly under this naming scheme.
It would be impossible to choose meaningful terms for what is currently "component" and "assembly" that don't have the potential for other uses of the same terms for "simple things" and "collections of simple things". However, given hypnos is to be specifically a tokamak blanket geometry tool, we should try to avoid clashes with the existing nomenclature in this specific application.
One possible alternative could be to replace Component and Assembly with SolidBody & CompoundBody respectively, as I believe these are terms used in CAD. Or replace Assembly with a fairly direct if overlong ComponentCollection. Another solution could be to keep the names but avoid including them in the subclass names for specific components, giving so PinAssembly(CreatedComponentAssembly) --> Pin(CreatedComponentAssembly) or maybe BlanketPin(CreatedComponentAssembly).
The text was updated successfully, but these errors were encountered:
This issue might be unavoidable, and we may already be using the best terms available, or there may be no alternative terms better enough to warrant a potentially breaking change, but...
Currently:
hypnos
, comprised of geometric volumes and materials assigned to those volumes.The nomenclature can be a little confusing, leading to classes like
PinAssembly
which is anAssembly
subclass describing a blanket pin. In a breeder blanket, pins are assembled together in an array called a "pin assembly", which this class does not describe. The class describing such an assembly would likely be calledPinAssemblyAssembly
under this naming scheme.It would be impossible to choose meaningful terms for what is currently "component" and "assembly" that don't have the potential for other uses of the same terms for "simple things" and "collections of simple things". However, given
hypnos
is to be specifically a tokamak blanket geometry tool, we should try to avoid clashes with the existing nomenclature in this specific application.One possible alternative could be to replace
Component
andAssembly
withSolidBody
&CompoundBody
respectively, as I believe these are terms used in CAD. Or replaceAssembly
with a fairly direct if overlongComponentCollection
. Another solution could be to keep the names but avoid including them in the subclass names for specific components, giving soPinAssembly(CreatedComponentAssembly)
-->Pin(CreatedComponentAssembly)
or maybeBlanketPin(CreatedComponentAssembly)
.The text was updated successfully, but these errors were encountered: