CMGC

CMGC: a CAD to Monte Carlo geometry conversion code. Automatic conversion from a computer-aided design (CAD) model to Monte Carlo geometry is one of the most effective methods for large-scale and detailed Monte Carlo modeling. The CAD to Monte Carlo geometry converter (CMGC) is a newly developed conversion code based on the boundary representation to constructive solid geometry (BRep → CSG) conversion method. The goal of the conversion process in the CMGC is to generate an appropriate CSG representation to achieve highly efficient Monte Carlo simulations. We designed a complete solid decomposition scheme to split a complex solid into as few nonoverlapping simple sub-solids as possible. In the complete solid decomposition scheme, the complex solid is successively split by so-called direct, indirect, and auxiliary splitting surfaces. We defined the splitting edge and designed a method for determining the direct splitting surface based on the splitting edge, then provided a method for determining indirect and auxiliary splitting surfaces based on solid vertices. Only the sub-solids that contain concave boundary faces need to be supplemented with auxiliary surfaces because the solid is completely decomposed, which will reduce the redundancy in the CSG expression. After decomposition, these sub-solids are located on only one side of their natural and auxiliary surfaces; thus, each sub-solid can be described by the intersections of a series of half-spaces or geometrical primitives. The CMGC has a friendly graphical user interface and can convert a CAD model into geometry input files for several Monte Carlo codes. The reliability of the CMGC was evaluated by converting several complex models and calculating the relative volume errors. Moreover, JMCT was used to test the efficiency of the Monte Carlo simulation. The results showed that the converted models performed well in particle transport calculations.