fusion-energy / openmc-dagmc-wrapper

A Python package that extends OpenMC base classes to provide convenience features and standardized tallies when simulating DAGMC geometry with OpenMC.
https://openmc-dagmc-wrapper.readthedocs.io/
MIT License
7 stars 2 forks source link

Extended export_xml() to allow reflective planes #58

Closed RemDelaporteMathurin closed 2 years ago

RemDelaporteMathurin commented 2 years ago

@Shimwell what do you think?

Todo:

shimwell commented 2 years ago

Looks like this will work for models that start at 0 degrees and are less that 180 degrees.

Do you think it is worth changing the vacuum surface to a sphere just to simplify the number of surfaces needed.

Then if we ever try to support models that don't start at 0 degrees this will be easier.

RemDelaporteMathurin commented 2 years ago

This also supports models that don't start at zero degree. It's just that the difference between the two angles must be less than 180.

I think a sphere would solve problems such as "what is the third surface that closes the volume?" 👍

shimwell commented 2 years ago

Hope you don't mind, I couldn't resits tinkering. It is still a bit messy but the logic should only make the vacuum surfaces if a graveyard is not found in the dagmc model

The stp files made in the paramak could be exported using my_reactor.export_stp(include_graveyard==False) which would improve the visualization of the geometry. Perhaps this should be the default export_stp setting

shimwell commented 2 years ago

tests are passing, I think we are just missing the > 180 degree check

RemDelaporteMathurin commented 2 years ago

tests are passing, I think we are just missing the > 180 degree check

@Shimwell These have been added and the tests pass in circleCI now. Don't know about GA

shimwell commented 2 years ago

Github actions appear to pass the tests and then crash so lets not worry about that