Reverse the normal of a merged surface

Coreform Cubit 2021.5
Fedora Core 34

I have an upstream application that is picky regarding the normal of triangles (derived from tets) that belong to a sideset. For example, imagine a cube, the normals of those faces all point away from the centre of the cube, when it is tet meshed the normal of the triangle faces along the sides (presumably) point in the same direction. Now play the same experiment, but now there is an identical cube, adjacent to one of the faces, following an imprint and merge operation, using virtual topology we now have one surface with a merged attribute, and the normal points in a direction (in the direction of one of the original surfaces) and the merged attribute also gives us access to the surface sense forward or reverse. Mesh the geometry, now the triangles lying along the merge face will have a normal pointing in one direction or the other depending upon the order of the vertices.

Long story short, can I control which surface in the merged pair of surfaces becomes the main surface?

The surviving surface in the merge will be the surface with the lowest id. There are no options that control that behavior.

You can specify the sideset with respect to a given volume and specify direction based on that volume. From the manual on sidesets:

With Sidesets, direction is often important. For surfaces, the direction may be specified using the Forward , Reverse , or Both options. The Forward option will write a sideset in relation to hexes in the surface’s forward volume, which is the volume that the surface’s normal points away from. The Reverse option will write a sideset in relation to hexes in the surface’s reverse volume, which is the volume that the surface’s normal points into. The Both option will allow sidesets to be written in relation to the hexes that lie in volumes on both sides of the surface. The default is Forward . The user can additionally specify the volume from which the hexes should be taken in relation to by using the wrt Volume option.

Direction is equally important for curves in Sidesets. The wrt Surface option allows the user to indicate which surface’s faces will be included in the Sideset. The wrt All option will include all faces attached to the curve. The default is wrt All.

We should update the manual to read elements rather than hexes as this behavior applies to all element types.

– Karl