Skip to content

Postrender operation that splits a physical group into subgroups #151

@ybrightye

Description

@ybrightye

Ideal workflow: given a large parent physical group (e.g. base_negative) that has many disjoint entities, this new postrender operation should create a new physical group for every disjoint entity in the parent (e.g. [base_negative_1, base_negative_2, ...]) and there should be an option to retain the original large physical group for convenience of reference e.g. :remove_object => false). If the parent is retained, either it or the subgroups created must not appear in the mesh or else there will be duplicate mesh element errors in Palace (if this is too difficult, can fall back to not retaining parent group).

An example implementation could be (for sm = SolidModel(...) ) to allow sm["base_negative", 2].grouptag to return as usual (unchanged by this splitting postrender op) but also sm["base_negative_$i", 2].grouptag should work for all $i valid entities under the parent.

This would be helpful for e.g. automatically identifying all unique flux loops in an arbitrarily complicated geometry (all the base_negative_$i 's) for flux simulation or for conveniently referencing all unique vacuum regions in a flip-chip radiative loss simulation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions