Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add information on representation of metadata and topological relationships #861

Open
pshriwise opened this issue Mar 2, 2023 · 2 comments

Comments

@pshriwise
Copy link
Member

pshriwise commented Mar 2, 2023

There is some information in the developer's guide on what information exists in our .h5m files regarding metadata (meaning material/temperature assignments, boundary conditions, etc.).

It would be useful to developers to describe in more detail what tags are used (CATEGORY_TAG, GEOM_DIM, etc.), how the metadata is organized in the file ("Group" EntitySet's are tagged with X and contain Y).

Similarly, it would be useful for the developer's guide to contain information on how topological relationships are represented (parent-child relationships) and what each entity set requires to be recognized as a geometric entity (category tag and geom dim tag).

@pshriwise
Copy link
Member Author

Adding an inventory of the tags we use to store topological information and metadata:

#dagmc

Geometry

Tag Name Type Real Type Size Purpose Tagged On
GLOBAL_ID MB_TYPE_INT int 1 Value of an ID associated with a geometric EntitySet. EntitySet
GEOM_SENSE_2 EntityHandle uint64_t 2 Relates a surface to the two volumes on either side of the surface. An entry in the first position indicates tht the surafce has a sense that is forward with respect to the volume EntityHandle in that position. An entry in the second position indicates that the surface has a sense reversed with respect to the volume EntityHandle in that position.
GEOM_SENSE_N_ENTS EntityHandle uint64_t N Relates a curve to any topologically adjacent surface EntitySets. EntitySet
GEOM_SENSE_N_SENSES MB_TYPE_INT int N Curve sense data correllated with the GEOM_SENSE_N_ENTS information. Values are 1 for a forward senses and -1 for reversed senses. EntitySet
CATEGORY MB_TYPE_OPAQUE char 32 The geometric category of an EntitySet. One of "Vertex", "Curve", "Surface", "Volume", or "Group" EntitySet
GEOM_DIM MB_TYPE_INT int 1 The dimensionality of a geometric EntitySet. See table below for meaning of values. EntitySet
NAME MB_TYPE_OPAQUE char 32 A name assigned to an EntitySet. Use to indicate material assignments, boundary conditions, temperatures, and the implicit complement on EntitySet's with a CATEGORY tag whose value is "Group" EntitySet
Geometry Object Dimensionality
Vertex 0
Curve 1
Surface 2
Volume 3
Group 4

Tree Structures

Tag Name Type True Type Size Purpose Tagged On
OBB_ROOT EntityHandle uint64_t 1 This tag resides on geometric EntitySet's. Its value is the handle of the associated OBB tree root EntitySet. EntitySet
OBB_GSET EntityHandle uint64_t 1 This tag resides on OBB tree root EntitySet's. Its value is the handle of the associated geometric EntitySet. EntitySet
OBB MB_TYPE_DOUBLE double 9 This tag resides on EntitySets in an OBB tree. The value of this tag is nine doubles representing the oriented bounding box for this EntitySet-node in the tree. EntitySet

@pshriwise
Copy link
Member Author

Also linking in this set of slides that covers some of this as well as EntitySet relationships.

https://docs.google.com/presentation/d/10m8e6GN8DhLpNHHSOMniZ2pDU9DOAiD0xJF1Zyewzh8/edit?usp=sharing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants