logo

Optimizations and applications in large-scale scenes of Monte Carlo geometry conversion code CMGC

NUCLEAR ENERGY SCIENCE AND ENGINEERING

Optimizations and applications in large-scale scenes of Monte Carlo geometry conversion code CMGC

Xin Wang
Ling-Yu Zhang
Xue-Ming Shi
Zhen Wu
Jun-Li Li
Gui-Ming Qin
Yuan-Guang Fu
Nuclear Science and TechniquesVol.36, No.4Article number 58Published in print Apr 2025Available online 22 Feb 2025
2302

In response to the demand for rapid geometric modeling in Monte Carlo radiation transportation calculations for large-scale and complex geometric scenes, functional improvements, and algorithm optimizations were performed using CAD-to-Monte Carlo geometry conversion (CMGC) code. Boundary representation (BRep) to constructive solid geometry (CSG) conversion and visual CSG modeling were combined to address the problem of non-convertible geometries such as spline surfaces. The splitting surface assessment method in BRep-to-CSG conversion was optimized to reduce the number of Boolean operations using an Open Cascade. This, in turn, reduced the probability of CMGC conversion failure. The auxiliary surface generation algorithm was optimized to prevent the generation of redundant auxiliary surfaces that cause an excessive decomposition of CAD geometry solids. These optimizations enhanced the usability and stability of the CMGC model conversion. CMGC was applied successfully to the JMCT transportation calculations for the conceptual designs of five China Fusion Engineering Test Reactor (CFETR) blankets. The rapid replacement of different blanket schemes was achieved based on the baseline CFETR model. The geometric solid number of blankets ranged from hundreds to tens of thousands. The correctness of the converted CFETR models using CMGC was verified through comparisons with the MCNP calculation results. The CMGC supported radiation field evaluations for a large urban scene and detailed ship scene. This enabled the rapid conversion of CAD models with thousands of geometric solids into Monte Carlo CSG models. An analysis of the JMCT transportation simulation results further demonstrated the accuracy and effectiveness of the CMGC.

Monte CarloCADBRep to CSGCMGC
1

Introduction

The Monte Carlo method is a highly effective and widely used tool for solving particle transportation problems [1-9]. When confronted with particle transportation problems in large-scale and complex scenes, manually inputting geometry files for Monte Carlo transportation or coding for a precise and detailed geometric modeling consumes a significant amount of time. When the number of geometric solids attains thousands to tens of thousands, particularly in the presence of complex surfaces, the modeling time can even surpass the computation time. This severely impacts the efficiency of the numerical simulations. To address this issue, automatic Monte Carlo geometric modeling has been a research focus in the field of radiation transportation for the past two decades. It focuses primarily on two aspects: the conversion method from CAD models to Monte Carlo constructive solid geometry (CSG) models, and the description and transportation methods for discrete geometry models.

The conversion from CAD models to Monte Carlo CSG models involves converting the boundary representation (BRep) of CAD geometry solids into the conventional geometric description used in Monte Carlo simulations. Conversion codes such as SuperMC/MCAM [10, 11], cosVMPT [12], MCCad [13], Geomit [14], and CMGC [15] follow this approach. SuperMC/MCAM uses a BRep-to-CSG conversion method based on feature recognition. It identifies the topological and geometric features in geometric solids represented by BRep (such as loops and convexities/concavities) and constructs a CSG tree based on these features. The conversion results are close to the real modeling history and user design intention. This is favorable for understanding the model and making subsequent modifications. The application scope of these methods depends on the completeness of the defined features and recognition algorithms. MCCad, Geomit, and CMGC adopt the decomposition-based BRep-to-CSG conversion method. The method uses faces to cut a complex geometric solid into many simple solids that can be converted directly or conveniently. This method has more extensive applicability. However, it loses the feature information of the CAD model. In recent years, neural network methods have also been introduced for BRep-to-CSG conversion. Aimed at the automatic conversion of complex CAD models, Luo [16] proposed a MeshCNN-based BRep-to-CSG conversion method and integrated it into cosVMPT. It combines a MeshCNN-based decomposition algorithm with a decomposition-based BRep-to-CSG conversion algorithm. It identifies and preserves the higher-level features of the CAD model during the decomposition process. Additionally, improving the conversion algorithm continues to receive attention [17-19].

The description and transportation methods for discrete geometry models extend the Monte Carlo geometry representation and particle tracking capabilities from CSG to structured/unstructured mesh and facet models. This is evident in MCNP6 [20], NECP-MCX [21], DagMC [22, 23], SuperMC[24, 25], Surpent [26], JASMIN/JAUMIN [27-29] etc. [30]. This method utilizes mature computer-aided engineering (CAE) mesh generation techniques and performs particle tracking calculations on discrete models. However, the geometric accuracy and particle transportation efficiency of this method are lower than those of CSG [27, 31, 32], whereas the memory overhead is higher than that of CSG [33]. Hence, hybrid description and transportation methods that combine the CSG and mesh geometry have emerged, such as MCNP6 [34, 35]. For CAD models without spline surfaces, converting them into Monte Carlo CSG models remains the preferred choice due to higher transport efficiency and accuracy.

The CMGC is a CAD-to-Monte Carlo CSG geometry conversion code jointly developed by Tsinghua University and the Beijing Institute of Applied Physics and Computational Mathematics. CMGC was developed based on Open Cascade [36] and STEP tools [37]. It is capable of converting CAD models in the form of Standard for the Exchange of Product Model Data (STEP) files into CSG geometry input files of JMCT [38-40], MCShield [41], MCNP, Geant4 [42], and Fluka [43]. We analyzed the type of CSG representation most favorable for improving the efficiency of Monte Carlo particle tracking. With this goal, we designed a BRep-to-CSG conversion algorithm for the CMGC. For convenience of use, it supports parallel model conversion and provides a graphical user interface for setting the materials and other parameters.

Similar to other decomposition-based BRep-to-CSG conversion codes, CMGC has three main bottlenecks. First and most importantly, manual processing is essential in practical complex engineering applications. Conventional Monte Carlo CSG cannot describe high-order surfaces such as spline surfaces, which are widely and frequently used in CAD modeling. This necessitates manual simplification of CAD models or conversion of solids containing spline surfaces into discrete mesh or facet models. Simultaneously, CAD models may have quality problems, and data exchange between multiple CAD systems can cause a loss of accuracy of CAD models. This, in turn, results in issues such as damage, overlap, and self-intersection in the CAD models to be converted. These models require repairs and cannot be converted directly. Second, the conversion process relies on the Boolean operations of the geometry modeler. This makes it vulnerable to conversion failures. Third, when solids have curved surfaces, additional "auxiliary surfaces" other than surfaces in BRep are generally required to make the CSG representation feasible. The generation of auxiliary surfaces is complex and challenging to achieve robustly. In recent years, to satisfy the demands of large-scale Monte Carlo geometric modeling and further overcome the bottlenecks of the conversion method, we conducted a series of algorithm and functionality optimizations including combining model conversion with visual CSG modeling to address the manual modeling problem, reducing Boolean operations in model conversion to improve the conversion success rates, and optimizing the algorithm for generating auxiliary surfaces. Through these improvements, the CMGC has been applied successfully to the Monte Carlo simulation modeling of large-scale scenes at the city level and the China Fusion Engineering Test Reactor (CFETR).

The second section of this paper introduces the basic conversion process of the CMGC. This is followed by descriptions of various targeted algorithms and functionality optimizations. The third section introduces the optimized validation and applications for multiple large-scale scenes. The fourth section summarizes the current status of the CMGC and outlines the directions for future work.

2

Materials and methods

To clarify the optimization work in this study, we first briefly describe the basic conversion process of the CMGC that has been established previously. We did not modify the basic conversion process in the optimization work. Rather, we optimized the algorithms and functions. The basic conversion process of the CMGC is as follows (Fig. 1):

Fig. 1
The basic conversion process of CMGC
pic

Step 1: Convertible geometry solid analysis. Read and parse the CAD model files in STEP format, and output the convertible and non-convertible CAD geometry solids. Non-convertible solids either include complex surfaces such as spline and revolution surfaces, or are invalid in three-dimensional spaces such as non-closed and non-manifold solids.

Step 2: Repetitive structural analysis. Read the convertible geometry solids, analyze the reference relationships and the rotation and translation matrices between the solids, and output the convertible geometry solids without repetitive structures.

Step 3: Geometric solid decomposition. Read the convertible geometry solids without repetitive structures. Decompose each solid into a series of simple sub-solids by splitting the surfaces. These simple sub-solids are located on only one side of their natural surfaces.

Step 4: Auxiliary surface supplementation and decomposition. If a sub-solid contains concave surfaces, supplement auxiliary surfaces to ensure that the sub-solid is represented by the CSG. If the auxiliary surface is also a splitting surface, decompose the sub-solid further. Convertible geometry solids can be represented as a union of the corresponding sub-solids.

Step 5: Repetitive structural restoration. Read all the subsolids, and output the CSG representation of the convertible geometry solids based on the reference relationships and the rotation and translation matrices obtained in Step 2.

Step 6: Monte Carlo geometry file generation. Format the CSG representation of the convertible geometry solids according to the geometry description methods and file structures of different Monte Carlo codes.

In the following, we introduce the optimizations adopted in this study, including the combination of model conversion and visual CSG modeling to face the issue of non-convertible CAD geometry solids for Step 1, optimization of the splitting surface assessment method for Steps 3 and 4, and optimization of auxiliary surface generation for Step 4.

2.1
The combination of model conversion and visual CSG modeling

In Step 1, we divided the CAD model into convertible and non-convertible solids. To ensure the usability of the entire model, non-convertible solids should be processed to make these convertible. In practical engineering applications, the usual approach is to return to the CAD system, perform model simplification and repair, output the BRep model, and then perform the BRep-to-CSG conversion. Because of issues such as model repair failure, accuracy loss during STEP file data exchange, and failure of Boolean operations during the conversion process, this process requires repeated execution and is time-consuming. For non-convertible solids, if incremental CSG modeling can be performed directly on the converted CSG model, the workload can be reduced effectively (Fig. 2).

Fig. 2
The combination of model conversion and visual CSG modeling
pic

The J Large-scale Automatic Modeling Tool (JLAMT) [44] is a CSG visualization modeling tool for large-scale scenes. It is implemented using Siemens NX software [45]. Siemens NX is a widely used CAD and CAM platform in the industrial manufacturing and engineering fields, with superior geometric modeling and interaction capabilities. NX provides users with the highly effective secondary development tool, NX Open API. It supports them in developing various geometric modeling functions on the NX platform. JLAMT is a dedicated module for Monte Carlo CSG geometric modeling. It was constructed based on the NX Open API. It enables users to create basic geometry primitives such as boxes, spheres, cylinders, cones, and tori. Based on these geometric primitives, JLAMT supports users in constructing solids with more complex geometries through Boolean operations. Users can specify father–child relationships to achieve nesting between geometric solids and create repetitive structures to achieve rapid modeling of an array model. The created CSG model can be exported as a geometric description markup language (GDML) file for JMCT simulations.

To combine the BRep-to-CSG model conversion capability of the CMGC with the visual CSG modeling capability of the JLAMT, we proposed the following technical approach:

(1) For convertible solids, CMGC first converts these into a GDML file. JLAMT parses the information stored in the GDML file and then, converts it into a complete JLAMT project that includes the modeling history, geometry solids, father–child relationships, repetitive structures, rotation and translation matrices, materials, and names.

(2) For non-convertible solids, CMGC outputs the parameters of the surface and coordinate systems. Based on this information, incremental modeling is performed manually in JLAMT for the imported GDML model. The JLAMT examines or ensures that the incrementally created CSG model does not overlap or encounter naming conflicts with the imported GDML model.

(3) Finally, the JLAMT outputs a complete GDML file corresponding to the original CAD model including convertible and non-convertible geometry solids.

To achieve this technical approach, we developed a GDML reverse conversion functionality in JLAMT. It converts multiple GDML files into JLAMT projects. Both GDML and JLAMT models can be described as geometric solid multibranch trees and multiple Boolean operation binary trees, respectively. Geometric solids are nested within each other to form father–child relationships. Multiple levels of solid nesting form a solid-geometry multibranch tree. Each solid geometry can be composed of basic geometric primitives through multiple Boolean operations to form a binary tree. Figure 3(a) shows the CSG model constructed in JLAMT. Figure 3(b) shows the corresponding geometry of the solid multibranch tree and Boolean operation binary trees.

Fig. 3
(Color online) An example of geometry solid multibranch tree and Boolean operation binary trees
pic

To convert the GDML model into a JLAMT model, two problems should be solved. First, the implicit expressions of the geometry multibranch tree and Boolean operation binary tree in the GDML model should be converted into explicit expressions in the JLAMT model. The GDML organizes data items in the form of key-value pairs. Data items can refer to each other and have a free order. Their tree structure is implicit in the reference relationships between data items. However, the JLAMT model is a CAD model represented by CSG. Its tree structure is its sequential modeling history, which should be expressed explicitly. Second, the relative positions of the geometric solids in the GDML should be converted to the absolute positions in the JLAMT. In the GDML model, for the father–child relationship, the position of the child geometry solid is specified relative to the coordinate system of its father geometry solid. For the Boolean operation, the position of the tool body is given relative to the coordinate system of the target. That is, the position of a node in the geometric solid multibranch tree and Boolean operation binary tree in the GDML model is a relative position based on its father node. However, in the JLAMT, the positions of all nodes are determined based on the absolute coordinate system. Therefore, we implemented the conversion from the GDML model to the JLAMT model using the following method:

(1) Extract the data items in the GDML file using an XML parser. These include five types of key-value data items: geometry solids, father–child relationships, Boolean operations, basic geometry primitives, and materials.

(2) Reconstruct the geometry of the solid multibranch tree. Starting from the geometric solid data item of the world that envelops the entire particle transportation space, construct the geometry solid multibranch tree of JLAMT based on depth-first traversal using father–child relationships as the upper-lower relationships of the tree. Convert the material information simultaneously.

(3) Reconstruct all the Boolean operation binary trees. Starting from each leaf node of the geometric solid multibranch tree, construct the corresponding Boolean operation binary tree of JLAMT based on depth-first traversal using Boolean operations as the upper-lower relationships of the tree.

(4) During the reconstruction process of the geometric solid multibranch tree and Boolean operation binary trees, record the rotation and translation matrices between the upper and lower nodes, and perform matrix multiplication sequentially to obtain the rotation and translation matrix of each basic geometry primitive relative to the geometric solid of the world.

(5) Reconstruct all the basic geometry primitives in the JLAMT. That is, recover the parametric modeling process of the primitives in JLAMT based on the parameter information of the geometric primitives in GDML. For example, for a generalized cylinder defined by the inner radius, outer radius, height, and azimuth range, two arcs determined based on the inner and outer radii, and two line segments determined based on the azimuth range can be connected end-to-end to form a sector. Using this sector as the contour line, stretch it in the direction perpendicular to the plane where the contour line is located, with a stretch distance equal to the height of the cylinder.

2.2
Optimization of splitting surface assessment method

In Steps 3 and 4, the splitting surfaces need to be assessed. The CMGC categorizes splitting surfaces into direct, indirect, and auxiliary splitting surfaces [15]. This is illustrated in Fig. 4.

Fig. 4
Different types of splitting surfaces
pic

A direct splitting surface is a natural surface of solid geometry that contains at least one splitting edge. In an infinitesimal neighborhood of any point on the splitting edge, the solid geometry is located on both sides of the direct splitting surface. Direct splitting surfaces and splitting edges can be determined based on the curvatures and normals of the surfaces [15]. An indirect splitting surface is also a natural surface. However, it does not contain splitting edges. An auxiliary splitting surface is not a natural surface (the reason for supplementing auxiliary surfaces is introduced in Sect. 2.3). When assessing indirect and auxiliary splitting surfaces, intersection Boolean operations are required to test whether the geometric solid is located on both sides of the surface. Boolean operations of geometry entities involve complex computational geometry algorithms such as curves and surface intersections. Moreover, their stabilities and accuracies depend on the geometry modeler. However, the Boolean operations of the Open Cascade occasionally cause conversion failures or program crashes.

To address this issue, we improved the method, as shown in Fig. 5. We adopted a method of faceting the boundaries of solids to determine the indirect and auxiliary splitting surfaces. First, the surfaces of the geometric solids were discretized into triangular facets. Then, the vertices of all the triangular facets were obtained. Simultaneously, the implicit equation F(x, y, z) = 0 for the surface to be assessed was calculated. The positions of these vertices relative to the surface were then determined by substituting the coordinates into the implicit equation of the surface and evaluating the sign of the computed results. If vertices are located in the positive half-space of the surface (the half-space pointing toward the exterior of the solid), the surface is a splitting surface. Moreover, the larger the number of vertices located in the positive half-space of the surface, the higher is the priority of the splitting surface. As shown in Fig. 5, splitting surface 1 has a higher priority than splitting surface 2. After decomposition by splitting surface 1, the solid no longer contains splitting surfaces. However, if splitting surface 2 is used first, splitting surface 1 remains unaltered. Because the splitting surface assessment method does not require a high discrete accuracy, it is faster than methods based on Boolean operations. The speed difference depends on the complexity of the model.

Fig. 5
(Color online) Facet the surfaces of geometry solid to assess splitting surfaces
pic

Furthermore, it can be demonstrated that when the boundaries of a geometric solid consist only of planes, there are no indirect splitting surfaces. However, because of modeling errors and precision loss from data exchanges between different CAD systems, situations in which the two planes are offset marginally are common in large-scale urban scene models. As shown in Fig. 6, the adjacent red and green planes are offset by 1×10–5 cm. The CMGC cannot assess these as direct splitting surfaces. Rather, it classifies these as indirect splitting surfaces. Further decomposition of solids through Boolean operations is vulnerable to failure. Therefore, if a solid consists only of planes, CMGC does not attempt to determine the indirect splitting surfaces.

Fig. 6
(Color online) Three examples where two planes are offset marginally
pic
2.3
Optimization of auxiliary surface generation algorithm

When a geometric solid contains concave surfaces, it may be necessary to supplement the auxiliary surfaces to ensure that the solid can be represented by the CSG. As shown in Fig. 7(a), the natural surfaces of solid S contain a concave surface F1 and five planes (denoted as F2-F6). Assuming that the normals of all the surfaces point toward the exterior of the solid, the result of the CSG expression F1¯F2¯F3¯F4¯F5¯F6¯  is SS" rather than the solid S. Therefore, it is necessary to supplement the auxiliary surface AF1 to ensure that solid S can be represented by the CSG, as shown in Fig. 7(b).

Fig. 7
(Color online) An example of an auxiliary surface to be supplemented
pic

Typically, an auxiliary surface is constructed based on the boundary of the corresponding naturally concave surface. As shown in Fig. 8(a), auxiliary surface AF1 can be constructed using vertices V1, V2, V3, and V4. However, in the STEP files exported from a CAD system, the surface of a solid may be composed of multiple parts. As shown in Figure 8(b), the concave cylindrical surface is divided into two parts by edges V5V6, and the previous auxiliary surface generation algorithm generates two auxiliary surfaces according to V1, V2, V5, V6 and V3, V4, V5, V6. This causes an excessive decomposition of the solid. An excessive decomposition increases the probability of Boolean operation failures. An excessive decomposition during transportation calculations increases the number of geometric boundaries. This, in turn, results in redundant particle tracking calculations, thereby reducing the transportation efficiency. To prevent this, a surface-merging process was added to the auxiliary surface generation algorithm. Before generating auxiliary surfaces, CMGC analyzes the topological adjacency of concave surfaces using the same surface equation and combines adjacent surfaces topologically.

Fig. 8
(Color online) An example wherein a surface is composed of two parts
pic

The method of topological combination of concave surfaces is as follows.

(1) Traverse all the concave surfaces of a solid geometry, and divide geometrically identical concave surfaces into the same set of concave surfaces. Determine the geometrically identical concave surfaces by sequentially comparing the surface types and parameters of the surface equations.

(2) Traverse all the surfaces into a set of concave surfaces, and divide the topologically adjacent surfaces into the same set of adjacent concave surfaces. The geometric solids converted by CMGC are manifolds. An undirected edge can be shared by only two surfaces. The topological adjacency of the surfaces can be determined using edges. An edge has its direction in BRep, which is determined by the order of its two vertices. If the geometries of the two edges are identical and the directions are opposite, such as V5V6 and V6V5, these are called adjacent edge pairs. The two surfaces to which an adjacent edge pair belongs are topologically adjacent

(3) Topologically combine surfaces belonging to the same set of adjacent concave surfaces. The combination method eliminates all adjacent edge pairs and reconstructs the loops of the surface according to the edge–vertex topological relationship. Delete vertices that are no longer used by the remaining edges, such as vertices V5 and V6.

3

Results and discussion

Based on the functional improvements and algorithm optimizations mentioned above, the CMGC was applied successfully in the conceptual design of CFETR blankets and Monte Carlo simulations of city-level radiation fields.

3.1
Applications in the conceptual designs of CFETR blankets

The design of the CFETR requires detailed geometric modeling and numerical simulations, including Monte Carlo transportation [46-48]. In the preliminary design of the CFETR, three fusion blanket concepts were developed: the water-cooled ceramic blanket concept of the Institute of Plasma Physics, Chinese Academy of Sciences (ASIPP); helium-cooled ceramic blanket concept of the Southwestern Institute of Physics (SWIP), China National Nuclear Corporation; and dual-cooled blanket concept of lithium-lead of the Institute of Nuclear Energy Safety Technology (INEST), Chinese Academy of Sciences. In addition, the Beijing Institute of Applied Physics and Computational Mathematics (IAPCM) and Institute of Nuclear Physics and Chemistry (INPC) developed two water-cooled natural uranium blanket concepts. In the CFETR model, multiple geometric solids including diverters contain spline surfaces. Six months were required to manually create a CFETR baseline model using JLAMT before we developed the combined capabilities of the CMGC model conversion and JLAMT visual modeling. Before the Monte Carlo simulations, it was necessary to remove the blanket from the CFETR baseline model and establish new blanket models based on the designs of different research institutes. Without the combined capabilities of the CMGC model conversion and JLAMT visual modeling, we need to manually combine the blanket part and baseline model for the five conceptual designs. Each blanket concept contains hundreds to thousands of geometric solids, and the workload for manually constructing these models is substantial.

In this study, utilizing combination capabilities, we achieved automatic replacement of different blanket conceptual designs. First, we deleted the original blanket from the baseline model in the JLAMT. Second, we used CMGC to automatically convert the CAD model of the blanket conceptual design into a GDML file. Third, the obtained GDML file was imported into JLAMT and automatically combined with the remaining parts of the baseline model. Finally, JLAMT outputted the newly completed CFETR model in the GDML format.

Figure 9 shows the CFETR model visualized in JLAMT using the blanket concept designed by the IAPCM. The complete CFETR model is illustrated in Fig. 9(a). The blanket parts are indicated in red. The detailed structure of the blanket is shown in Fig. 9(b). The green pipeline in Fig. 9(b) represents the fuel zone, and the red pipeline represents the tritium breeding zone. The thicknesses of the fuel and tritium breeding zones are identical. The conversion from the CAD model to the GDML file for the blanket parts required 1483 s using OpenMP parallel conversion on eight cores. The relative volume error was less than 0.0001% before and after conversion.

Fig. 9
(Color online) The conceptual designs of CFETR blankets of IAPCM
pic

After constructing the CSG models, transportation calculations were performed using JMCT to determine the tritium breeding ratio (TBR). The calculation results were compared with those obtained using MCNP. Table 1 lists the comparison results for the IAPCM, including the number of geometric solids in the blankets and tritium breeding zone, TBR values, and relative deviation [49]. The calculation results of the other four conceptual designs were also in good agreement with those of MCNP. The application effects validated the correctness of the CMGC model conversion and the combined capability of the CMGC and JLAMT. It should be noted that a CAD geometry solid can be represented by different CSG expressions. The CSG expressions of the IAPCM model converted by CMGC were inconsistent with those established manually for MCNP. Therefore, the number of geometric solids of the blanket for JMCT and MCNP were inconsistent, whereas those of the tritium breeding zone were identical.

Table 1
Comparison results of CFETR model of IAPCM
Number of solids of the blanket JMCT 19991 MCNP 5992
Number of solids of the tritium breeding zone 861
TBR JMCT 1.268 MCNP 1.267
Relative deviation (%) 0.079
Deviation distribution Number of solids Contribution to TBR
< 1% 683 (79.3%) 1.108 (87.35%)
1-2% 106 (12.32%) 0.084 (6.62%)
2-3% 26 (3%) 0.009 (0.72%)
3-5% 18 (2.09%) 0.023 (1.82%)
>5% 28 (3.25%) 0.043 (3.4%)
Show more
3.2
Model conversion for urban and ship scenes

Radiation transportation scenes such as those at the city and ship levels are highly complex and contain a large number of geometric solids. The workload of manual modeling is significant. This necessitates the use of a Monte Carlo modeling method for automatic model conversion. The CMGC has achieved fully automatic conversion from CAD BRep models to JMCT CSG models for many large-scale radiation transportation scenarios. The following are two examples of urban and shipping scenarios.

3.2.1
Urban building cluster scene

Figure 10 shows the converted GDML model for a typical urban building cluster. The left side of the figure shows a near-Earth panoramic view of the building cluster. The building cluster including the foundation has a total length of 9585 m in the X-direction and 12797 m in the Y-direction. It comprises 3381 geometric solids including buildings of varying heights, hills, and rivers. Building clusters include both simplified and detailed buildings. The red pentagram represents a detailed building [15] within a scene. As shown on the right side of Fig. 10, it consists of five floors, primarily made of concrete. It includes detailed window frames and glass. Owing to the optimization of the splitting surface assessment method, the conversion speed increased by 1.4 times. The number of solids that failed to convert decreased from hundreds to zero.

Fig. 10
A typical urban building cluster scene
pic

An isotropic point source of photons was located 1000 m above the ground with the ground projection position at (0 m, 0 m). A blackbody spectrum was used as the source [50]. The blue dots represent the ground projection of the particle source in the air. The distribution of the radiation dose near the ground was tallied and analyzed, as shown in Fig. 11.

Fig. 11
(Color online) The distribution of radiation dose in the urban building cluster scene
pic

Figure 11(a) shows that the radiation dose near the ground decreases with an increase in the distance from the ground projection of the source. Influenced by the proximate urban building clusters, the distribution of the radiation dose is non-uniform near the ground. However, it is consistent with the scene near the ground. The surfaces of the buildings facing the source exhibit higher radiation doses. Meanwhile, those facing away from the source receive less radiation owing to the obstruction by the buildings. This results in shadows (white regions) shaped similar to buildings. The radiation dose within the building is shown in Fig. 11(b). Owing to the influence of concrete, the radiation dose inside the building decreases significantly. However, because glass can transmit visible light, a small amount of energy is deposited within the building.

3.2.2
Ship scene

Figure 12(a) depicts a typical CAD model of the ship used for the transportation simulation. The model comprises 9363 components, with a total length of 368.5 m, deck width of 78.5 m, and total height from the bottom plate to the mast of 71.2 m. To obtain the radiation doses in the various compartments within the ship, the model includes detailed internal compartment structures, as shown in Fig. 12(b). The locations of the flight deck, hangar, and cabin are shown in Fig. 12(b). Owing to the optimization of the splitting surface assessment method and auxiliary surface generation algorithm, the conversion speed increased by 95%. The number of solids that failed to convert decreased from seven to two. The two failed solids can be manually added using JLAMT based on the combined capabilities of CMGC model conversion and JLAMT visual modeling.

Fig. 12
(Color online) A CAD model of a ship for transportation simulation
pic

An isotropic point source of neutrons was located 185 m above the center of the deck. A fission spectrum [50] was used as the source. The blue dots represent the deck projection of the particle source in the air. The distribution of the absorbed dose throughout the ship was also calculated. Figure 13(a) shows the absorbed dose in the flight deck area with a minimum value of approximately 200 Gy. Figure 13(b) shows the absorbed dose in the hangar, with a minimum value of approximately 50 Gy. Meanwhile, Fig. 13(c) shows the absorbed dose in the cabin with a minimum value of approximately 10 Gy. The steel structures of the internal compartments within the ship function as shields against neutrons, reducing personnel absorbed dose. Therefore, precise computational models that include detailed geometric structures should be established for accurate calculations. The model conversion capability of the CMGC can reduce the modeling complexity of Monte Carlo CSG geometry and ensure simulation accuracy.

Fig. 13
(Color online) Distributions of absorbed dose on different horizontal planes of the ship
pic
4

Conclusion

In practical applications of CMGC, the main challenges encountered by the automatic conversion of CAD to Monte Carlo geometry models include the manual modeling problem, program crashes caused by the instability of Boolean operations, and inaccuracies in auxiliary surface generation. For the non-convertible model, a feasible solution is to combine BRep-to-CSG conversion with visual CSG modeling. This approach involves manually supplementing non-convertible parts through incremental modeling, thereby effectively reducing the modeling workload and ensuring model usability. To mitigate the problems originating from unstable OCC Boolean operations during the conversion process, improvements based on surface faceting for splitting surface assessment methods have been achieved. This has reduced the frequency of Boolean operations and enhanced the program robustness and usability. Optimization has also been conducted to enhance the accuracy of auxiliary surface generation and address practical engineering challenges. With targeted optimizations, CMGC can play an effective role in the Monte Carlo geometry modeling of large-scale scenes.

However, the combination of BRep-to-CSG conversion and visual CSG modeling requires manual modeling, and reducing Boolean operations does not completely eliminate conversion failure issues. Moreover, when confronted with arbitrarily complex surfaces, the auxiliary surface generation algorithm [51] is difficult to implement on computers. Describing the non-convertible or failed-to-convert geometric solids with unstructured mesh and combining these with convertible CSG for hybrid description and transportation can effectively address these issues. Although the hybrid geometry method presents challenges such as geometry description accuracy and transportation efficiency, it remains an important technical approach for achieving fully automatic Monte Carlo modeling. It is the future development direction of CMGC.

References
1. D. H. Shangguan, W. H. Yan, J. X. Wei et al.,

Sample size adaptive strategy for time-dependent Monte Carlo particle transport simulation

. Nucl. Sci. Tech. 34, 58 (2023). https://doi.org/10.1007/s41365-023-01202-6
Baidu ScholarGoogle Scholar
2. L. H. Han, H. Y. Zhang, B. Zhong et al.,

Monte Carlo electron transport simulation study based on NPTS program

. Prog. Nucl. Energ. 158, 104610 (2023). https://doi.org/10.1016/j.pnucene.2023.104610
Baidu ScholarGoogle Scholar
3. H. Guo, Y. W. Wu, Q. F. Song et al.,

Development of multi-group Monte-Carlo transport and depletion coupling calculation method and verification with metal-fueled fast reactor

. Nucl. Sci. Tech. 34(11), 163 (2023). https://doi.org/10.1007/s41365-023-01310-3
Baidu ScholarGoogle Scholar
4. C. L. Jia, L. J. Jian, X. Y. Guo et al.,

Development of an improved direct kinetic simulation capability in RMC code

. Ann. Nucl. Energy. 173, 109110 (2022). https://doi.org/10.1016/j.anucene.2022.109110
Baidu ScholarGoogle Scholar
5. X. Zhang, S. C. Liu, J. Zhang et al.,

Development and application of variance reduction technique based on response matrix method in the cosRMC code

. Ann. Nucl. Energy. 186, 109753 (2023). https://doi.org/10.1016/j.anucene.2023.109753
Baidu ScholarGoogle Scholar
6. X. Y. Luo, R. Qiu, Z. Wu et al.,

THUDosePD: a three-dimensional Monte Carlo platform for phantom dose assessment

. Nucl. Sci. Tech. 34, 164 (2023). https://doi.org/10.1007/s41365-023-01315-y
Baidu ScholarGoogle Scholar
7. W. G. Li, C. Chang, Y. Qin et al.,

GPU-based cross-platform Monte Carlo proton dose calculation engine in the framework of Taichi

. Nucl. Sci. Tech. 34(5), 77 (2023). https://doi.org/10.1007/s41365-023-01218-y
Baidu ScholarGoogle Scholar
8. Q. Q. Pan, N. An, T. F. Zhang et al.,

Single-step Monte Carlo criticality algorithm

. Comput. Phys. Commun. 279, 108439 (2022). https://doi.org/10.1016/j.cpc.2022.108439
Baidu ScholarGoogle Scholar
9. L. H. Zhou, S. Y. Cao, T. Sun et al.,

A refined Monte Carlo code for low-energy electron emission from gold material irradiated with sub-keV electrons

. Nucl. Sci. Tech. 34(4), 54 (2023). https://doi.org/10.1007/s41365-023-01204-4
Baidu ScholarGoogle Scholar
10. Y. Wu, J. Song, H. Zheng et al.,

CAD-based Monte Carlo program for integrated simulation of nuclear system SuperMC

. Ann. Nucl. Energy. 82, 161-168 (2015). https://doi.org/10.1016/j.anucene.2014.08.058.
Baidu ScholarGoogle Scholar
11. G. Wang, J. Xiong, P. Long,

Progress and applications of MCAM: Monte Carlo automatic modeling program for particle transport simulation

. Prog. Nucl. Sci. Tech. 2, 821-825 (2011).
Baidu ScholarGoogle Scholar
12. H. Du, Y. T. Luo, C. C. Han et al.,

Development of an assistant program for CAD-to-cosRMC modelling

. Fusion Eng. Des. 157, 111662 (2020). https://doi.org/10.1016/j.fusengdes.2020.111662
Baidu ScholarGoogle Scholar
13. L. Lu, U. Fischer, P. Pereslavtsev,

Improved algorithms and advanced features of the CAD to MC conversion tool McCad

. Fusion Eng. Des. 89(9-10), 1885-1888 (2014). https://doi.org/10.1016/j.fusengdes.2014.05.015
Baidu ScholarGoogle Scholar
14. S. Taniguchi, M. Aniya,

Development of CAD-MCNP interface program “GEOMIT”

. Paper presented at international conference on nuclear engineering and the ASME 2012 power conference, 2012
Baidu ScholarGoogle Scholar
15. X. Wang, J. L. Li, Z. Wu et al.,

CMGC: a CAD to Monte Carlo geometry conversion code

. Nucl. Sci. Tech. 31(8), 82 (2020). https://doi.org/10.1007/s41365-020-00793-8
Baidu ScholarGoogle Scholar
16. Y. T. Luo, H. Du, Y. M. Yan,

MeshCNN-based BREP to CSG conversion algorithm for 3D CAD models and its application

. Nucl. Sci. Tech. 33(6), 74 (2022). https://doi.org/10.1007/s41365-022-01063-5
Baidu ScholarGoogle Scholar
17. Q. G. Zhou, J. M. Yang, J. Wu et al.,

An improved algorithm to convert CAD model to MCNP geometry model based on STEP file

. Ann. Nucl. Energy. 78, 81-88 (2015). https://doi.org/10.1016/j.anucene.2014.12.026
Baidu ScholarGoogle Scholar
18. L. Lu, Y. Qiu, U. Fischer,

Improved solid decomposition algorithms for the CAD-to-MC conversion tool McCad

. Fusion Eng. Des. 123, 1269-1272 (2017). https://doi.org/10.1016/j.fusengdes.2017.02.040
Baidu ScholarGoogle Scholar
19. S. P. Yu, M. Y. Cheng, J. Song et al.,

Convex-based void filling method for CAD-based Monte Carlo geometry modeling

. Ann. Nucl. Energy. 85, 380-385 (2015). https://doi.org/10.1016/j.anucene.2015.04.029
Baidu ScholarGoogle Scholar
20. R. Martz,

The MCNP6 book on unstructured mesh geometry: user's guide. Report LA-UR-11-05668

. Los Alamos National Laboratory, USA, 2014
Baidu ScholarGoogle Scholar
21. H. L. Shu, L. Z. Cao, Q. M. He et al.,

Study on unstructured mesh-based Monte Carlo/deterministic coupled particle transport calculation method

. Nucl. Sci. Eng. 198, 2209-2229, (2024). https://doi.org/10.1080/00295639.2023.2295065
Baidu ScholarGoogle Scholar
22. P. P. H. Wilson, T. J. Tautges, J. A. Kraftcheck et al.,

Acceleration techniques for the direct use of CAD-based geometry in fusion neutronics analysis

. Fusion Eng. Des. 85(10-12), 1759-1765 (2010). https://doi.org/10.1016/j.fusengdes.2010.05.030
Baidu ScholarGoogle Scholar
23. N. Y. Sun, S. C. Liu, Z. Y. Wang et al.,

Development of CAD geometry converting and correction method in Monte Carlo code RMC

. Fusion Eng. Des., 195, 113965 (2023). https://doi.org/10.1016/j.fusengdes.2023.113965
Baidu ScholarGoogle Scholar
24. X. J. Fan, Research of spline surface processing algorithm for Monte Carlo radiation transport simulation, Hefei University of Technology, 2016
25. Z. P. Chen, J. Song, H. Q. Zheng et al.,

Optimal Spatial Subdivision method for improving geometry navigation performance in Monte Carlo particle transport simulation

. Ann. Nucl. Energy. 76, 479-484 (2015). https://doi.org/10.1016/j.anucene.2014.10.028
Baidu ScholarGoogle Scholar
26. J. Leppanen,

Methodology, applications and performance of the CAD-based geometry type in the serpent 2 Monte Carlo code

. Ann. Nucl. Energy. 176, 109259 (2022). https://doi.org/10.1016/j.anucene.2022.109259
Baidu ScholarGoogle Scholar
27. X. Wang, Y. Yu, X. Z. Li et al.,

Development of a hybrid parallelism Monte Carlo transport middleware on mesh geometry

. Ann. Nucl. Energy. 190, 109872 (2023). https://doi.org/10.1016/j.anucene.2023.109872
Baidu ScholarGoogle Scholar
28. Z. Y. Mo, A. Q. Zhang, X. L. Cao et al.,

JASMIN: a parallel software infrastructure for scientific computing

. Front. Comput. Sci. Chi. 4, 480488 (2010). https://doi.org/10.1007/s11704-010-0120-5
Baidu ScholarGoogle Scholar
29. Q. K. Liu, Z. Y. Mo, A. Q. Zhang et al.,

JAUMIN: a programming framework for large-scale numerical simulation on unstructured meshes

. CCF Trans. HPC. 1, 3548 (2019). https://doi.org/10.1007/s42514-019-00001-z
Baidu ScholarGoogle Scholar
30. J. Y. Li, L. Gu, H. S. Xu et al.,

FreeCAD based Monte Carlo modeling approach for fusion reactor facilities

. Fusion Eng. Des. 155, 111711 (2020). https://doi.org/10.1016/j.fusengdes.2020.111711
Baidu ScholarGoogle Scholar
31. R. L. Martz, K. M. Marshall,

A notable comparison of computational geometries in MCNP6 calculations

. Nucl. Technol. 184(2), 239-248 (2013). https://doi.org/10.13182/NT13-A22319
Baidu ScholarGoogle Scholar
32. R. L. Martz.

An unstructured mesh performance assessment in the MCNP code version 6.2. Report LA-UR-17-27811

, Los Alamos National Laboratory, USA, 2017
Baidu ScholarGoogle Scholar
33. M. D. Pietri, M. Fabbri, D. Laghi et al.,

A preliminary assessment of MCNP unstructured mesh integration in the ITER neutronics model

. Fusion Eng. Des. 146, 697-700 (2019). https://doi.org/10.1016/j.fusengdes.2019.01.058
Baidu ScholarGoogle Scholar
34. A. M. Ibrahim, T. C. McClanahan, I. Remec,

Decay dose shielding analysis with hybrid unstructured mesh/constructive solid geometry Monte Carlo calculation and ADVANTG acceleration

. Nucl. Sci. Eng. 198, 451-460 (2023). https://doi.org/10.1080/00295639.2023.2209681
Baidu ScholarGoogle Scholar
35. L. Zavorka, I. Remec.

Neutron dose rate calculation with the MCNP6 hybrid geometry model of the second target station

. T. Am. Nucl. Soc. 124 (2021). https://doi.org/10.13182/T124-36275
Baidu ScholarGoogle Scholar
36.

Open CASCADE Technology

, https://www.opencascade.com/. Accessed 20 July 2024
Baidu ScholarGoogle Scholar
37.

STEP Tools

, http://www.steptools.com/. Accessed 20 July 2024
Baidu ScholarGoogle Scholar
38. L. Deng, Z. H. Hu, G. Li et al.,

3-D Monte Carlo neutron-photon transport code JMCT and its algorithms

. Paper presented at PHYSOR 2014, Kyoto, Japan, 28 September–3 October, 2014
Baidu ScholarGoogle Scholar
39. L. Deng, G. Li, B. Y. Zhang et al.,

A high fidelity general purpose 3-D Monte Carlo particle transport program JMCT3.0

. Nucl. Sci. Tech. 33(8), 108 (2022). https://doi.org/10.1007/s41365-022-01092-0
Baidu ScholarGoogle Scholar
40. H. H. Ding, F. Gao, C. B. Lu et al.,

Gamma ray multiplicity of a 240Pu solid sphere simulated by JMCT

. Nucl. Sci. Tech. 33(5), 53 (2022). https://doi.org/10.1007/s41365-022-01043-9
Baidu ScholarGoogle Scholar
41. S. S. Gao, Z. Wu, X. Wang et al.,

Development of a radiation shielding Monte Carlo code: RshieldMC

. Paper presented at international conference on mathematics and computational methods applied to nuclear science and engineering 2017, Jeju, Korea, 16-20 April, 2017
Baidu ScholarGoogle Scholar
42. J. Allison, K. Amako, J. Apostolakis et al.,

Geant4 developments and applications

. IEEE T. Nucl. Sci. 53(1), 270-278 (2006). https://doi.org/10.1109/TNS.2006.869826
Baidu ScholarGoogle Scholar
43. T. T. Böhlen, F. Cerutti, M. P. W. Chin et al.,

The FLUKA code: developments and challenges for high energy and medical applications

. Nucl. Data Sheets 120, 211-214 (2014). https://doi.org/10.1016/j.nds.2014.07.049
Baidu ScholarGoogle Scholar
44. Y. Ma, Y. G. Fu, G. M. Qin et al.,

Design and development of auto-modeling tool JLAMT for field application of large-scale models

. Chi. J. of Comput. Phys. 33(5), 606-612 (2016). https://doi.org/10.3969/j.issn.1001-246X.2016.05.013
Baidu ScholarGoogle Scholar
45.

NX CAD and CAM software

, https://plm.sw.siemens.com/en-US/nx/. Accessed 20 July 2024
Baidu ScholarGoogle Scholar
46. X. C. Nie, J. Li, S. L. Liu et al.,

Global variance reduction method for global Monte Carlo particle transport simulations of CFETR

. Nucl. Sci. Tech. 28(8), 115 (2017). https://doi.org/10.1007/s41365-017-0270-3
Baidu ScholarGoogle Scholar
47. S. P. Yu, B. Wu, J. Song et al.,

Bi-level spatial subdivision based Monte Carlo ray tracing directly using CAD models

. Fusion Eng. Des. 122, 211-217 (2017). https://doi.org/10.1016/j.fusengdes.2017.08.015
Baidu ScholarGoogle Scholar
48. H. X. Wang, X. W. Fu, W. P. Liu et al.,

Numerical simulation of tritium behavior under a postulated accident condition for CFETR TEP system

. Nucl. Sci. Tech. 34(7), 109 (2023). https://doi.org/10.1007/s41365-023-01260-w
Baidu ScholarGoogle Scholar
49. X. M. Shi, X. Wang, G. M. Qin et al.,

Neutronics conceptual research on a hybrid blanket of China fusion engineering test reactor

. Fusion Eng. Des. 156, 111715 (2020). https://doi.org/10.1016/j.fusengdes.2020.111715
Baidu ScholarGoogle Scholar
50. J. G. Wang, Parameter Manual of High Altitude Nuclear Explosion Effects. (Atomic Energy Press, Beijing, 2010) (in Chinese)
51. V. Shaprio, D. Vossler.

Separation for boundary to CSG conversion

. ACM Trans. Graph. 12(1), 35-55 (1993). https://doi.org/10.1145/169728.169723
Baidu ScholarGoogle Scholar
Footnote

Xin Wang is an editorial board member for Nuclear Science and Techniques and was not involved in the editorial review, or the decision to publish this article. All authors declare that there are no competing interests.