McCad

McCad is an open source tool for automatic conversion of B-Rep models into CSG.

McCad has been continuously developed for more than two decades. It provides automatic conversion of Boundary Representation (BREP) CAD models into Constructive Solid Geometry (CSG), the latter of which is an input syntax often used in Monte Carlo (MC) radiation transport codes. The conversion process, from BREP to CSG, is essential for high-fidelity nuclear analysis of complex nuclear facilities. McCad can convert CAD files in STEP format to different input syntaxes used with MC codes such as MCNP, TRIPOLI, Geant4, etc., so that the manual efforts on building a complex simulation model can be avoided. McCad provides an advanced algorithm to decompose complex solids into its constituent convex primitives, and generates the void space description between the solids, which is required by MC codes.

It relies on OpenCASCADE CAD kernel to perform CAD manipulations and Boolean operations. McCad has been integrated into the SALOME platform, with a detailed manual provided. It is an open-source code released under LGPL license. This code has been currently used for nuclear research institutes crossing continents, for nuclear analyses on fission reactors, fusion facilities and neutron source facilities.

License: 
LGPL
Software type: 
Open Source
Functionality / feature-set: 
Automatic decomposition of complex CAD solids into simple CSG which are supported by MC codes, Automatic generation of void space descriptions that are required by MC codes, Importing STEP format files and visualize the model in a CAD viewer provided by SALOME platform, Grouping and organizing the model using a tree-like structure; assign the groups with properties such as materials; colors; attributes, Checking the model for unsupported surface types; provide additional information on the solids such as volumes, Generate unstructured meshes for the solids using open source meshing codes Tetgen and Netgen and model the geometry for advance unstructured mesh feature in MCNP6 code
Suitable for: 
Enterprises, SMEs, Freelance, Startups, Research & Science, Personal
Deployment options: 
Desktop: Windows; Linux
Programming Languages: 
C++, Python
Support Options: 
Email, Video Tutorials/Webinar
Training Options: 
In Person, Webinars, Documentation
Localization: 
English
Vendor/Author(s): 
Moataz Harb, Yuefeng Qiu, Lei Lu, Dieter Leichtle
F.A.Q.: 

Q. Where can I download the code?
A. Currently it is public on GitHub.

Q. Do you have user manual for the program?
A. Yes. For installation, please check the "readme.md" file. For usage:"McCad_User_Guide_v0.5.1.pdf"

Q. Can I use for commercial purpose?
A. Yes, it is allowed for commercial purpose under the directives of the license.