Method and system for optimizing and refining parallel partitioned dynamic mesh for reactor flow field simulation

The method optimizes reactor flow field simulation by refining parallel partitioned dynamic meshes through multi-level domain decomposition and iterative refinement, addressing issues of complex geometric fitting and computation costs, resulting in accurate and efficient simulation.

GB2641429APending Publication Date: 2025-12-03UNIV OF SCI & TECH BEIJING
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
GB2024019033
Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-27
Filing Date
2024-12-24
Publication Date
2025-12-03

AI Technical Summary

Technical Problem

Conventional mesh generation methods for reactor flow field simulation face challenges in generating high-quality meshes for complex geometric structures like the fast reactor fuel assembly, leading to poor geometric fitting, excessive computation costs, and inaccurate simulation results due to low-quality elements and inefficient memory usage.

Method used

A method and system for optimizing and refining a parallel partitioned dynamic mesh using multi-level domain decomposition, global and additional iterative refinement, and quality optimization to improve mesh density and fitting, particularly at fuel rod and wrapping wire boundaries, ensuring accurate simulation.

Benefits of technology

The method achieves high-fidelity numerical simulation by reducing low-quality meshes, maintaining load balancing, and efficiently generating meshes with improved geometric fitting and reasonable density distribution, thus enhancing simulation accuracy and reducing computation costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000001_0000
    Figure 00000001_0000
  • Figure 00000002_0000
    Figure 00000002_0000
  • Figure 00000003_0000
    Figure 00000003_0000
Patent Text Reader

Abstract

A method for optimising and refining a parallel partitioned dynamic mesh for nuclear reactor flow field simulations. A coarse tetrahedral mesh model for a fast reactor fuel assembly is constructed. Do
Need to check novelty before this filing date? Find Prior Art

Description

[0002] Thermal-hydraulic simulation is an important part of numerical reactor simulation, and can effectively prevent reactor core overheating and meltdowns while improving thermal efficiency and reducing reactor operation costs. Computational fluid dynamics (CFD) is a significant computational means for thermal-hydraulic simulation and analysis, with mesh generation being a key preprocessing step in CFD calculations. This process converts a continuous fluid domain into a collection of discrete elements, producing mesh elements needed for numerical solution. Mesh generation accounts for more than 70% of a whole simulation calculation cycle, making it a crucial but complex task. As mesh generation involves a variety of issues for consideration and requires a lot of work, and meshes generated indifferent manners significantly affect computation scale, results, and accuracy, it is the basis for accurate numerical simulation. During mesh generation, mesh quality is important for ensuring the stability and accuracy of numerical solution. Low-quality elements, such as overflattened or over-elongated elements, can lead to an ill-conditioned stiffness matrix in the solution of control equations, and may result in an ill-conditioned resulting system of discretized equations, severely impacting computation accuracy and even rendering calculations impossible. Therefore, mesh element quality control is required during mesh generation.

[0003] A fuel assembly is the core part in energy generation of a reactor, and its thermal-hydraulic performance has a significant impact on the safety and reliability of the reactor. In the China Experimental Fast Reactor (CEFR), the fast reactor fuel assembly includes 61 fuel rods, each wrapped and stabilized by helical metal wires. This unique geometric structure poses greater challenges for 1 mesh generation. First, a contact area between the helical wires and the fuel rods is extremely small, for which low-quality mesh elements with sharp angles are produced during mesh generation. Second, the diameter of the wire is extremely small, and the helical wrapping causes a complex geometric surface path and a requirement for a dense mesh to represent the wire’s small diameter as a geometric characteristic and a close fit of the mech to the helical shape of the wire, to ensure simulation accuracy. This requirement may lead to over-distorted mesh elements during mesh generation.

[0004] Conventional mesh generation methods generally employ commercial meshing software to divide a fuel flow field domain, and an operating process relies heavily on users and poses a high requirement on user expertise, resulting in a high workload and low efficiency. In addition, issues such as coarse meshes, errors in volume meshes, and poor fitting at fine positions may occur in a mesh model constructed by using commercial software. Moreover, the conventional mesh generation methods, in the face of a need of large-scale mesh generation, usually demand a large-capacity memory and long execution time, making it difficult to create meshes satisfying high-fidelity numerical simulation.

[0005] In view of the limitations of the conventional mesh generation methods for mesh generation at large scale, the present invention proposes using the coarse mesh model for the CEFR fuel assembly flow field as a basis for mesh refinement, to achieve a desired mesh scale. However, directly applying an existing mesh refinement method can fail to capture the geometries of the fuel assembly accurately, resulting in poor geometric fitting at fine positions and thus affecting simulation result accuracy. Furthermore, such methods lack mesh density adjustment, which may leave meshing domains with intense fluid changes inaccurately simulated or generate an excessive total number of mesh elements, increasing computation costs. Therefore, achieving high-quality fine meshes in the fast reactor fuel flow field domain is essential for high-fidelity numerical simulation. To address these challenges, the present invention provides a method and system for generating an efficient and element-based integrated mesh for numerical reactors. SUMMARY

[0006] The purpose of the present invention is to provide a method and system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation, so that the problems presented in the background can be resolved.

[0007] To achieve the foregoing purpose, the present invention provides the following technical solutions:

[0008] A method for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation is provided, and includes the following steps:

[0009] S1: constructing a coarse tetrahedral mesh model for a fast reactor fuel assembly, calculating a required number of processes based on a preset threshold and a number of coarse mesh elements, decomposing a domain of the constructed coarse mesh model, and assigning sub-meshes generated through the partitioning to different processes, to enable subsequent parallel processing;

[0010] S2: estimating a number of iterative refinements based on the number of coarse mesh elements and a target mesh scale;

[0011] S3: performing global refinement for the sub-meshes in various processes based on the number of iterations, to quickly densify the coarse mesh;

[0012] S4: after the sub-meshes are refined, using a quality optimization tool to assess quality of the refined sub-meshes, to detect and optimize a low-quality mesh element; and

[0013] S5: merging the sub-meshes from the processes, and outputting a whole mesh file in a format required by a solver.

[0014] Preferably, an additional iterative refinement is performed during refinement of a complex geometric position, to achieve a more reasonable density distribution of a whole assembly mesh; and before the next round of mesh refinement, whether to perform mesh domain decomposition again is determined based on a number of meshes in a current process, to maintain load balancing.

[0015] A system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation is provided, and includes a multi-level mesh domain decomposition module, a mesh refinement module, and a mesh optimization module.

[0016] The multi-level mesh domain decomposition module is configured to assign and control a number of tetrahedrons processed in each process, to maintain load balancing and improve processing efficiency.

[0017] The mesh refinement module includes a global iterative refinement sub-module and an additional domain refinement sub-module, where the global iterative refinement sub-module is configured to densify the coarse mesh model, to achieve the target mesh scale, form a mesh model basically representing a flow field domain, and support subsequent additional domain refinement; and the additional domain refinement sub-module is configured to perform additional refinement in 3 a complex geometric structure position, to further densify a mesh in a domain with intense fluid changes and ensure a more reasonable density distribution of the whole assembly mesh.

[0018] The mesh optimization module includes a boundary fitting optimization sub-module and a quality optimization sub-module, where the boundary fitting optimization sub-module is configured to perform fitting optimization on a refinement node in a boundary domain; and the quality optimization sub-module is configured to perform quality optimization on a refined mesh.

[0019] Preferably, the multi-level mesh domain decomposition module performs decomposition based on the graph theory with the following specific procedure:

[0020] Al: converting a volume mesh into a form of a dual graph, and storing the dual graph in a standard compressed sparse row (CSR) format;

[0021] A2: using the multilevel k-way method to divide the dual graph; and

[0022] A3: mapping a result of dividing the dual graph back to the mesh.

[0023] Preferably, the global iterative refinement sub-module implements refinement by using a regular refinement method, with the following specific procedure:

[0024] B1: generating a global index for each edge of a tetrahedral mesh;

[0025] B2: performing regular refinement, calculating coordinates of a refinement node inserted into each tetrahedral mesh, and adding, using a node global index calculation formula, node information of a newly generated refinement node;

[0026] B3: finding refinement nodes that are on boundaries of a fuel rod and a wrapping wire for a boundary fitting optimization operation, and updating coordinates of the refinement nodes;

[0027] B4: adding new tetrahedron information generated through the refinement to a list, and deleting original tetrahedron information;

[0028] B5: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; and

[0029] B6: repeating the operations in B1 to B5 until a required number of iterations is reached.

[0030] Preferably, the additional domain refinement sub-module implements refinement by using the longest-edge bisection refinement method, with the following specific procedure:

[0031] Cl: identifying a boundary layer for a mesh near boundaries of a wrapping wire and a fuel rod, and finding a tetrahedral mesh requiring additional refinement;

[0032] C2: after the boundary layer mesh is found, using the longest-edge bisection refinement method to iteratively refine the boundary layer mesh, and calculating coordinates of an inserted refinement node;

[0033] C3: finding refinement nodes that are on the boundaries of the wrapping wire and the fuel rod for a boundary fitting optimization operation, and updating coordinates of the refinement nodes;

[0034] C4: finding a tetrahedron sharing an edge with the refinement nodes, storing the tetrahedron in a list of meshes containing a hanging node, recording a number of hanging nodes, and performing conforming refinement based on the number of hanging nodes;

[0035] C5: adding new tetrahedron information generated through the bisection refinement and the conforming refinement to the list, and deleting original tetrahedron information;

[0036] C6: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; and [003 7] C7: repeating the operations in C1 to C6 until a required number of iterations is reached.

[0038] Preferably, the boundary fitting optimization operation is performed by the boundary fitting optimization sub-module, and during the fitting optimization, the refinement nodes in the boundary domains of the fuel rod and the wrapping wire are projected onto a boundary line, to improve fitting accuracy at fine positions, where the projection operation includes the following specific steps:

[0039] DI: determining the fuel rod or the wrapping wire of which a boundary includes a refinement node, and calculating coordinates of a corresponding center point;

[0040] D2: calculating a distance between the refinement node and the center point; and

[0041] D3: calculating new coordinates of the refinement node.

[0042] Preferably, the quality optimization sub-module optimizes the quality of the refined mesh by invoking a quality optimization function from a Gmsh library, with the following specific procedure:

[0043] El: setting a mesh order using Mesh.ElementOrder;

[0044] E2: setting a threshold using a parameter Mesh.OptimizeThreshold, to optimize a mesh of quality lower than this threshold;

[0045] E3: setting an optimization type using Mesh.HighOrderOptimize; and

[0046] E4: completing the quality optimization.

[0047] Compared with an existing technology, the present invention provides a method and system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation, and offers the following beneficial effects:

[0048] The present invention provides the method for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation. After domain decomposition is performed on a coarse mesh model, each sub-mesh undergoes parallel refinement and optimization operations. During the refinement, mesh partitioning is dynamically adjusted, and a degree of fitting at a fuel rod and a wrapping wire is improved. Finally, quality optimization is performed on a low-quality mesh. According to this method, a refinement and optimization system is further constructed, in which a mesh distributed in a fine and complex position has a high degree of geometric fitting and a more reasonable mesh density distribution, and there are fewer low-quality meshes, with a mesh scale satisfying a user setting requirement.

[0049] The multi-level domain decomposition strategy provided in the present invention can effectively assign and control the number of tetrahedrons to be processed in a single process, to maintain load balancing, and parallel processing ensures the refinement and optimization efficiency. In addition, the two-stage iterative mesh refinement strategy including the global iterative refinement and additional domain refinement can quickly achieve mesh densification while implementing specific local refinement of the fuel rod and wrapping wire domains, so that a more reasonable mesh density distribution can be achieved.

[0050] Particularly for the unique geometric structures of the fuel rod and the wrapping wire, boundary fitting processing is performed when a refinement node is created and the refinement node is projected onto the geometric boundaries, which allows for a more accurate simulation of a complex shape of the fuel assembly. Further, the generated mesh undergoes quality assessment and optimization, so that the number of low-quality meshes is reduced. BRIEF DESCRIPTION OF DRAWINGS

[0051] FIG. 1 is an overall flowchart of a method for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation mentioned in Embodiment 1 of the present invention, where iten and Hen are the number of iterative refinements in global refinement and additional refinement respectively;

[0052] FIG. 2 is a schematic diagram of a regular tetrahedron refinement method mentioned in Embodiment 1 of the present invention, where an original tetrahedron is T(Oo,01,01,0), midpoints on the four edges are calculated separately, the midpoints are connected, and the tetrahedron T is refined to obtain Ti to Ts;

[0053] FIG. 3 is a schematic diagram of a longest-edge bisection tetrahedron refinement method mentioned in Embodiment 1 of the present invention, where 046 is the longest edge of the tetrahedron T(Oa,O5,O6,Ot), the midpoint of the edge is found, the remaining two vertices are connected separately, and the original tetrahedron is bisected to obtain Ti and T?,

[0054] FIG. 4 is a schematic diagram of classification processing on meshes including hanging nodes mentioned in Embodiment 1 of the present invention, where the classification processing is performed based on the number of hanging nodes included in a tetrahedral unit, to divide the original unit into several tetrahedrons; and a hollow point is a hanging node, and a solid point is a tetrahedron original node;

[0055] FIG. 5 is a schematic diagram of boundary fitting of refinement nodes on the boundaries mentioned in Embodiment 1 of the present invention, where boundary fitting is performed on the refinement nodes on the boundaries of a fuel rod and a wrapping wire, and a generated refinement node is projected onto a boundary line;

[0056] FIG. 6 is a class diagram of tetrahedral mesh data structure mentioned in Embodiment 2 of the present invention, where Node type data stores node information, including an ID and three-dimensional coordinates; Edge type data stores edge information, including two Node type nodes; Surface type data stores triangular surface information, including a Node type vertex list and an Edge type edge list; and Tetrahedron type data stores tetrahedron information, including a Node type vertex list, an Edge type edge list, and a Surface type surface list;

[0057] FIG. 7 is a flowchart of mesh domain decomposition mentioned in Embodiment 2 of the present invention;

[0058] FIG. 8 is a flowchart of global iterative refinement mentioned in Embodiment 2 of the present invention; and

[0059] FIG. 9 is a flowchart of local domain refinement mentioned in Embodiment 2 of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0060] The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the drawings in the embodiments of the present invention. Clearly, the described embodiments are merely a part of the embodiments, rather than all the embodiments, of the present invention.

[0061] The present invention provides a parallel partitioned dynamic mesh refinement technology for a flow field domain of a fast reactor fuel assembly. After domain decomposition is performed on a coarse mesh model, each sub-mesh undergoes parallel refinement and optimization operations. During the refinement, mesh partitioning is dynamically adjusted, and a degree of fitting at a fuel rod and a wrapping wire is improved. Finally, quality optimization is performed on a low-quality mesh. In a mesh model constructed according to this method, a mesh distributed in a fine and complex position has a high degree of geometric fitting and a more reasonable mesh density distribution, and there are fewer low-quality meshes, with a mesh scale satisfying a user setting requirement.

[0062] A method for generating an efficient and element-based integrated mesh for a numerical reactor provided in the present invention is described below in combination with specific examples. Specifically:

[0063] Embodiment 1:

[0064] The present invention is purposed to generate a tetrahedral mesh model with a high degree of fitting at fine positions, a reasonable density distribution, and a few low-quality meshes for a flow field domain of a fast reactor fuel assembly, and thus provides a method for refining and optimizing a parallel partitioned dynamic mesh. As shown in FIG. 1, an overall implementation procedure is as follows:

[0065] Step 1: Construct a coarse tetrahedral mesh model for a fast reactor fuel assembly, where the coarse mesh model has a small scale, poor geometric adaptability, and an unreasonable density distribution; calculate the required number of processes based on a set threshold and the number of coarse mesh elements; decompose a domain of the coarse mesh model; and assign sub-meshes generated through the partitioning to different processes, to enable subsequent parallel processing.

[0066] Step 2: Estimate the number of iterative refinements based on the number of coarse mesh elements and a target mesh scale.

[0067] Step 3: Perform global refinement for the sub-meshes in various processes based on the number of iterations, to quickly densify the coarse mesh; and perform an additional iterative refinement on a complex geometric position, for example, a fuel rod or a wrapping wire, to achieve a more reasonable density distribution of a whole assembly mesh, where before the next round of mesh refinement, whether to perform mesh domain decomposition again is determined based on a number of meshes in a current process, to maintain load balancing.

[0068] Step 4: After the sub-meshes are refined, use a quality optimization tool to assess the quality of the refined sub-meshes, to detect and optimize a low-quality mesh element.

[0069] Step 5: Merge the sub-meshes from the processes, and output a whole mesh file in a format required by a solver.

[0070] The method for optimizing and refining a parallel partitioned dynamic mesh is further divided into three functional modules according to the foregoing steps: multi-level mesh domain decomposition, mesh refinement, and mesh optimization, which specifically includes the following:

[0071] 1. Multi-level mesh domain decomposition module

[0072] A threshold is first set for the maximum number of tetrahedrons to be processed in a single process. Before the next round of mesh refinement is performed, the number of tetrahedrons in the current process is reassessed. If any single processing process in which the number of tetrahedrons exceeds the threshold, the required number of new processes is calculated, and a corresponding number of processes are automatically assigned and grouped into a process group, to perform the next level of domain decomposition.

[0073] The mesh domain decomposition is performed based on the graph theory. A volume mesh is first converted into a form of a dual graph that is then stored in a standard compressed sparse row (CSR) format; the multilevel k-way method is then used to divide the dual graph; and finally, a result of dividing the dual graph is mapped back to the mesh.

[0074] This multi-level mesh domain decomposition method can effectively assign and control the number of tetrahedrons to be processed in a process, maintain load balancing, reduce unnecessary communications overheads, and thus improve processing efficiency.

[0075] 2. Mesh refinement module

[0076] The mesh refinement is implemented in two stages: global iterative refinement and additional domain refinement.

[0077] 1. Global iterative refinement

[0078] The global iterative refinement uses a regular refinement algorithm. The regular refinement can maintain the regularity of element shapes, and thus prevent or significantly reduce the generation of irregular elements that affect simulation quality. The principle of regular tetrahedron refinement is shown in FIG. 2. First, a midpoint of each edge is found, and midpoints of edges are connected to form four tetrahedrons and one octahedron. Then, two points with the shortest diagonal in the octahedron are connected, to split the octahedron into four tetrahedrons. After one regular refinement, one tetrahedron is divided into eight sub-tetrahedrons.

[0079] In the global iterative refinement, a global index for each edge of the tetrahedral mesh is first generated. Then, the regular refinement is performed, coordinates of a refinement node that needs to be inserted into each tetrahedral mesh is calculated, and node information of a newly generated refinement node is added using a node global index calculation formula. Then, refinement nodes that are on boundaries of a fuel rod and a wrapping wire are found for a boundary fitting optimization operation, and coordinates of the refinement nodes are updated. After this, new tetrahedron information generated through the refinement is added to a list, and original tetrahedron information is deleted. Before the next round of mesh refinement is performed, whether mesh domain decomposition needs to be performed again is determined based on the number of meshes in the current process. The foregoing steps are repeated until the required number of iterations is reached.

[0080] The global iterative refinement can quickly densify the coarse mesh model, to achieve the target mesh scale, form a mesh model basically representing a flow field domain, and support subsequent additional domain refinement.

[0081] 2. Extra domain refinement

[0082] In the additional refinement, a boundary layer is first identified for a mesh near boundaries of a wrapping wire and a fuel rod, and a tetrahedral mesh requiring additional refinement is found. The method specifically includes: specifying a parameter K (K represents K layers of mesh nearest to the boundaries), first finding a tetrahedral mesh on a boundary surface as the first layer of mesh; then finding the second layer of mesh connected to the first layer of mesh based on an adjacency relationship of the tetrahedron, and iterating until the Kth layer of mesh is found; and storing the first layer to the Kth layer of mesh as a boundary layer mesh requiring the additional refinement.

[0083] The longest-edge bisection refinement method, as shown in FIG. 3, is used for the additional refinement. In the method, the longest edge of a tetrahedron is selected, the midpoint of the edge is calculated, the midpoint is connected to other two element vertices that are not on the edge, and the 10 original tetrahedron is bisected. The longest-edge bisection method can prevent generating excessively elongated elements by bisecting the longest edge, and can maintain mesh quality after the refinement. Since the longest-edge bisection refinement method creates hanging nodes, a mesh containing a hanging node needs conforming refinement based on the number of hanging nodes. A processing method is shown in FIG. 4.

[0084] In the additional domain refinement, after the boundary layer mesh is found, the longest-edge bisection refinement method is used to iteratively refine the boundary layer mesh, and the coordinates of a refinement node that needs to be inserted are calculated; then, refinement nodes that are on the boundaries of the wrapping wire and the fuel rod are found for a boundary fitting optimization operation, and the coordinates of the refinement nodes are updated; a tetrahedron sharing an edge with the refinement nodes is found, the tetrahedron is stored in a list of meshes containing a hanging node, the number of hanging nodes is recorded, and conforming refinement is performed based on the number of hanging nodes; new tetrahedron information generated through the bisection refinement and the conforming refinement is added to the list, and original tetrahedron information is deleted; before the next round of mesh refinement is performed, whether mesh domain decomposition needs to be performed again is determined based on the number of meshes in the current process; and the foregoing steps are repeated until the required number of iterations is reached.

[0085] The additional domain refinement is additional refinement at a special geometric structure position, for example, at a fuel rod or a wrapping wire, to further densify a mesh in a domain with intense fluid changes and ensure a more reasonable density distribution of the whole assembly mesh.

[0086] 3. Mesh optimization module

[0087] The mesh optimization is implemented in two stages: boundary fitting optimization and quality optimization.

[0088] 1. Boundary fitting optimization

[0089] In a procedure in which the mesh refinement module generates a new refinement node, fitting optimization is performed on refinement nodes in boundary domains of a fuel rod and a wrapping wire. The nodes are projected onto a boundary line, so that a refined mesh fits better to a geometric model, and a degree of fitting at fine positions is improved.

[0090] A specific projection method is shown in FIG. 5. First, the fuel rod or the wrapping wire of which a boundary includes a refinement node is found, and coordinates of a corresponding center point is calculated; a distance d between the refinement node and the center point is then calculated; 11 and finally, new coordinates x ’=xc+(x-xc)*0d, y '=yc+(x-xc)*rld of the refinement node are calculated, where the z-coordinate remains unchanged.

[0091] 2. Quality optimization

[0092] The quality of the refined mesh is optimized by invoking a quality optimization function from a Gmsh library. Specific optimization steps are as follows: First, setting a mesh order using Mesh.ElementOrder; then, setting a threshold using a parameter Mesh.OptimizeThreshold, to optimize a mesh of quality lower than this threshold; then, setting an optimization type using Mesh.HighOrderOptimize (0: none, 1: optimize, 2: Elastic+Optimize, 3: Elastic, and 4: fast bending); and finally, performing the quality optimization.

[0093] Embodiment 2

[0094] This embodiment is based on Embodiment 1, but has the following differences:

[0095] 1. Mesh data structure

[0096] A data structure for storing mesh information is shown in FIG. 6.

[0097] 2. Mesh domain decomposition algorithm

[0098] An algorithm flow is shown in FIG. 7, with the following specific procedure:

[0099] (1) Input a base-mesh model and a processing threshold for a single process, and calculate the required number of refinements based on an input mesh scale M, using an estimation iterx =s----,iter2 = — formula ’ V 3

[0100] (2) For process 0, read in a coarse mesh model and calculate the required number of processes N based on the number of tetrahedrons and the threshold th, and construct a process group Go for processes 0 to N-l.

[0101] (3) Perform mesh generation and obtain N sub-meshes, and store a mesh generation result in eparh

[0102] a) Extract the tetrahedron information contained in each sub-mesh based on the generation result in epart',

[0103] b) distribute the information of each sub-mesh to all processes in the process group Go, i.e., the processes 0 to N-l; and

[0104] c) for another process in Go, receive the information of a sub-mesh distributed to process 0.

[0105] (4) Each process in the process group Go performs refinement on the sub-meshes.

[0106] (5) After one round of refinement, determine whether the number of tetrahedrons processed in each process exceeds the threshold th, and if the number does not exceed the threshold, continue the refinement processing; or if the number exceeds the threshold in the ith process, perform the next level of domain decomposition:

[0107] a) Calculate the required number of new processes M based on the number of tetrahedrons in the ith process and the threshold th,

[0108] b) perform mesh generation in the 1th process and obtain M sub-meshes, store a mesh generation result in epart, and decompose the tetrahedron information contained in each sub-mesh based on the mesh generation result in epart', and

[0109] c) construct a new process group Gh with M processes (i e., process i,size+M-2, where size is the current number of processes in use), use the ith process as process 0 in this group, and update the communications domain.

[0110] (6) Distribute the information of each sub-mesh to all processes in the process group G, in the ith process.

[0111] (7) For another process, in the process group Gt, other than the ith process, receive the submesh information distributed to process 0 in the process group.

[0112] (8) Repeat step (5) until the specified number of refinement iterations is reached.

[0113] The mesh generation method is mesh element-based division that divides an original mesh into sub-meshes with the specified number of partitions. The shapes of the sub-mesh partitions are irregular, but the number of mesh elements within each sub-mesh domain is approximately equal, ensuring load balancing across the processes.

[0114] 3. Global iterative refinement procedure

[0115] For sub-meshes in each process, the global iterative refinement procedure is shown in FIG. 8, with the following specific steps:

[0116] (1) Generate a local index of an edge of each sub-mesh; and with communication between processes, update the index of the edge to a global index.

[0117] (2) Perform regular refinement on each tetrahedron in the sub-mesh:

[0118] a) Calculate the coordinates and the index of the midpoint on each edge, where a global node index calculation method Vidnew=Vidmm+Eld is used, to reduce the communication during the refinement, Vidmax is the maximum index of a node, and E^is the global index of an edge to which the node belongs;

[0119] b) determine whether a refinement node is on the boundary of a fuel rod or a wrapping wire, and if the node is on the boundary:

[0120] determine the fuel rod or the wrapping wire of which a boundary includes the refinement node, and calculate the coordinates of the center point;

[0121] calculate the new coordinates of the refinement node according to a projection formula; and

[0122] update the refinement node information; and

[0123] c) update the tetrahedron information, add a newly generated tetrahedron to a list, and delete an original tetrahedron.

[0124] (3) Determine whether the required number of iterations is reached; and if not, repeat the foregoing procedure; or if yes, end the iterative refinement procedure, and output the refined mesh to an additional domain refinement section.

[0125] After each round of refinement, the number of tetrahedrons increases to eight times larger than that in the previous round, achieving quick densification.

[0126] 4. Additional domain refinement procedure

[0127] For sub-meshes that have undergone the global refinement, the additional domain refinement procedure is shown in FIG. 9, with the following specific steps:

[0128] (1) Determine a boundary layer mesh based on a tetrahedron connection relationship.

[0129] (2) Perform the longest-edge bisection refinement on mesh elements in a boundary layer mesh collection:

[0130] a) Add a new mesh element generated through the refinement procedure to the new boundary layer mesh collection as an object for the next round of longest-edge bisection refinement; and

[0131] b) add a mesh element that share an edge with a refinement node and that is not in the boundary layer mesh collection to a to-be-conformed mesh collection, and store information about the refinement edge and node.

[0132] (3) Perform a boundary fitting operation on the refinement nodes at the boundaries of a fuel rod and a wrapping wire.

[0133] (4) Add the new mesh information generated through the refinement to a mesh list, and remove an original mesh for the refinement procedure.

[0134] (5) Through communication between different processes, exchange refinement information at the boundaries of the mesh domain and find a mesh edge at the interface that has not been commonly refined, and add a related mesh element and refinement node information to the to-be-conformed mesh element collection in the current process.

[0135] (6) For mesh elements in the to-be-conformed mesh element collection, classify the elements based on the number of hanging nodes contained in each element and perform conforming processing, add the new mesh entity information generated during the processing to the mesh list, and remove an original mesh entity that has been replaced during the refinement.

[0136] (7) Before the next round of refinement is performed, determine, based on the number of tetrahedrons in the current process and the threshold th, whether the next level of domain decomposition is needed.

[0137] (8) Repeat step (2) to step (7) until the predetermined number of additional iterative domain refinements is reached.

[0138] 5. Mesh quality optimization

[0139] The volume-to-edge-length ratio is selected to be the mesh quality metric, and the calculation formula is as follows: rms

[0140] where V represents the volume of a tetrahedron, and lrms represents the root mean square of the tetrahedron edges, which can be expressed as:

[0141] When the mesh is a regular tetrahedron, Qvl reaches the maximum value 12

[0142] The volume-to-edge-length ratio can help detect various low-quality tetrahedral elements, with relatively simple calculations.

[0143] In summary, the present invention provides the method and system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation. The multi-level domain decomposition strategy can effectively assign and control the number of tetrahedrons to be processed in a single process, to maintain load balancing, and parallel processing ensures the refinement and optimization efficiency. In addition, the two-stage iterative mesh refinement strategy including the global iterative refinement and additional domain refinement can quickly achieve mesh densification while implementing specific local refinement of the fuel rod and wrapping wire domains, so that a more reasonable mesh density distribution can be achieved.

[0144] Particularly for the unique geometric structures of the fuel rod and the wrapping wire, boundary fitting processing is performed when a refinement node is created and the refinement node is projected onto the geometric boundaries, which allows for a more accurate simulation of a complex shape of the fuel assembly. Further, the generated mesh undergoes quality assessment and optimization, so that the number of low-quality meshes is reduced.

[0145] The foregoing descriptions are only preferred specific implementations of the present invention, but the protection scope of the present invention is not limited thereto. Any equivalent replacements or changes made by persons skilled in the art according to the technical solutions and the conception of the present invention within the technical scope disclosed in the present invention shall fall within the protection scope of the present invention.

Claims

1. A method for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation, comprising the following steps:SI: constructing a coarse tetrahedral mesh model for a fast reactor fuel assembly, calculating a required number of processes based on a preset threshold and a number of coarse mesh elements, decomposing a domain of the constructed coarse mesh model, and assigning sub-meshes generated through the partitioning to different processes, to enable subsequent parallel processing;S2: estimating a number of iterative refinements based on the number of coarse mesh elements and a target mesh scale;S3: performing global refinement for the sub-meshes in various processes based on the number of iterations, to quickly densify the coarse mesh;S4: after the sub-meshes are refined, using a quality optimization tool to assess quality of the refined sub-meshes, to detect and optimize a low-quality mesh element; andS5: merging the sub-meshes from the processes, and outputting a whole mesh file in a format required by a solver.

2. A method for generating an efficient and element-based integrated mesh for a numerical reactor according to claim 1, wherein an additional iterative refinement is performed during refinement of a complex geometric position, to achieve a more reasonable density distribution of a whole assembly mesh; and before a next round of mesh refinement, whether to perform mesh domain decomposition again is determined based on a number of meshes in a current process, to maintain load balancing.

3. A system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation constructed by using the method as described in any one of claims 1 and 2, comprising a multi-level mesh domain decomposition module, a mesh refinement module, and a mesh optimization module, whereinthe multi-level mesh domain decomposition module is configured to assign and control a number of tetrahedrons processed in each process, to maintain load balancing and improve processing efficiency;the mesh refinement module comprises a global iterative refinement sub-module and an additional domain refinement sub-module, wherein the global iterative refinement sub-module isconfigured to densify the coarse mesh model, to achieve the target mesh scale, form a mesh model basically representing a flow field domain, and support subsequent additional domain refinement; and the additional domain refinement sub-module is configured to perform additional refinement at a complex geometric structure position, to further densify a mesh in a domain with intense fluid changes and ensure a more reasonable density distribution of the whole assembly mesh; andthe mesh optimization module comprises a boundary fitting optimization sub-module and a quality optimization sub-module, wherein the boundary fitting optimization sub-module is configured to perform fitting optimization on a refinement node in a boundary domain; and the quality optimization sub-module is configured to perform quality optimization on a refined mesh.

4. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 3, wherein the multi-level mesh domain decomposition module performs decomposition based on the graph theory with the following specific procedure:Al: converting a volume mesh into a form of a dual graph, and storing the dual graph in a standard compressed sparse row (CSR) format;A2: using the multilevel k-way method to divide the dual graph; andA3: mapping a result of dividing the dual graph back to the mesh.

5. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 3, wherein the global iterative refinement sub-module implements refinement by using a regular refinement method, with the following specific procedure:Bl: generating a global index for each edge of a tetrahedral mesh;B2: performing regular refinement, calculating coordinates of a refinement node inserted into each tetrahedral mesh, and adding, using a node global index calculation formula, node information of a newly generated refinement node;B3: finding refinement nodes that are on boundaries of a fuel rod and a wrapping wire for a boundary fitting optimization operation, and updating coordinates of the refinement nodes;B4: adding new tetrahedron information generated through the refinement to a list, and deleting original tetrahedron information;B5: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; andB6: repeating the operations in Bl to B5 until a required number of iterations is reached.

186. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 3, wherein the additional domain refinement sub-module implements refinement by using the longest-edge bisection refinement method, with the following specific procedure:Cl: identifying a boundary layer for a mesh near boundaries of a wrapping wire and a fuel rod, and finding a tetrahedral mesh requiring additional refinement;C2: after the boundary layer mesh is found, using the longest-edge bisection refinement method to iteratively refine the boundary layer mesh, and calculating coordinates of an inserted refinement node;C3: finding refinement nodes that are on the boundaries of the wrapping wire and the fuel rod for a boundary fitting optimization operation, and updating coordinates of the refinement nodes;C4: finding a tetrahedron sharing an edge with the refinement nodes, storing the tetrahedron in a list of meshes containing a hanging node, recording a number of hanging nodes, and performing conforming refinement based on the number of hanging nodes;C5: adding new tetrahedron information generated through the bisection refinement and the conforming refinement to the list, and deleting original tetrahedron information;C6: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; andC7: repeating the operations in Cl to C6 until a required number of iterations is reached.

7. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 5 or 6, wherein the boundary fitting optimization operation is performed by the boundary fitting optimization sub-module, and during the fitting optimization, the refinement nodes in the boundary domains of the fuel rod and the wrapping wire are projected onto a boundary line, to improve fitting accuracy at fine positions, wherein the projection operation comprises the following specific steps:DI: finding the fuel rod or the wrapping wire of which a boundary comprises a refinement node, and calculating coordinates of a corresponding center point;D2: calculating a distance between the refinement node and the center point; andD3: calculating new coordinates of the refinement node.

8. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 3, wherein the quality optimization sub-module optimizes the quality of the refined mesh by invoking a quality optimization function from a gmsh library, with the following specific procedure:El: setting a mesh order using Mesh.ElementOrder;E2: setting a threshold using a parameter Mesh.OptimizeThreshold, to optimize a mesh of quality lower than this threshold;E3: setting an optimization type using Mesh.HighOrderOptimize; andE4: completing the quality optimization.AMENDMENTS TO THE CLAIMS HAVE BEEN FILED AS FOLLOWS:-28 10 25What is claimed is:

1. A method for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation, comprising the following steps:SI: constructing a coarse tetrahedral mesh model for a fast reactor fuel assembly, calculating a required number of processes based on a preset threshold and a number of coarse mesh elements, decomposing a domain of the constructed coarse mesh model, and assigning sub-meshes generated through the partitioning to different processes, to enable subsequent parallel processing;S2: estimating a number of iterative refinements based on the number of coarse mesh elements and a target mesh scale;S3: performing global refinement for the sub-meshes in various processes based on the number of iterations, to quickly densify the coarse mesh; further performing an additional iterative refinement during refinement of a complex geometric position, to achieve a more reasonable density distribution of a whole assembly mesh; and, before a next round of mesh refinement, determining whether to perform mesh domain decomposition again based on a number of meshes in a current process, to maintain load balancing;S4: after the sub-meshes are refined, using a quality optimization tool to assess quality of the refined sub-meshes, to detect and optimize a low-quality mesh element; andS5: merging the sub-meshes from the processes, and outputting a whole mesh file in a format required by a solver.

2. A system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation constructed by using the method as described in claim 1, comprising a multi-level mesh domain decomposition module, a mesh refinement module, and a mesh optimization module, whereinthe multi-level mesh domain decomposition module is configured to assign and control a number of tetrahedrons processed in each process, to maintain load balancing and improve processing efficiency;the mesh refinement module comprises a global iterative refinement sub-module and an additional domain refinement sub-module, wherein the global iterative refinement submodule is configured to densify the coarse mesh model, to achieve the target mesh scale, form a mesh model basically representing a flow field domain, and support subsequent additional domain refinement; and the additional domain refinement sub-module is configured to perform additional refinement at a complex geometric structure position, to further densify a mesh in a domain with intense fluid changes and ensure a more reasonable density distribution of the whole assembly mesh; andthe mesh optimization module comprises a boundary fitting optimization sub-module and a quality optimization sub-module, wherein the boundary fitting optimization sub-module is configured to perform fitting optimization on a refinement node in a boundary domain; and the quality optimization sub-module is configured to perform quality optimization on a refined mesh.28 10 253. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim2, wherein the multi-level mesh domain decomposition module performs decomposition based on the graph theory with the following specific procedure:Al: converting a volume mesh into a form of a dual graph, and storing the dual graph in a standard compressed sparse row (CSR) format;A2: using the multilevel k-way method to divide the dual graph; andA3: mapping a result of dividing the dual graph back to the mesh.

4. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 2, wherein the global iterative refinement submodule implements refinement by using a regular refinement method, with the following specific procedure:Bl: generating a global index for each edge of a tetrahedral mesh;B2: performing regular refinement, calculating coordinates of a refinement node inserted into each tetrahedral mesh, and adding, using a node global index calculation formula, node information of a newly generated refinement node;B3: finding refinement nodes that are on boundaries of a fuel rod and a wrapping wire for a boundary fitting optimization operation, and updating coordinates of the refinement nodes; B4: adding new tetrahedron information generated through the refinement to a list, and deleting original tetrahedron information;B5: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; andB6: repeatingthe operations in Bl to B5 until a required number of iterations is reached.

5. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 2, wherein the additional domain refinement submodule implements refinement by using the longest-edge bisection refinement method, with the following specific procedure:Cl: identifying a boundary layer for a mesh near boundaries of a wrapping wire and a fuel rod, and finding a tetrahedral mesh requiring additional refinement;C2: after the boundary layer mesh is found, using the longest-edge bisection refinement method to iteratively refine the boundary layer mesh, and calculating coordinates of an inserted refinement node;C3: finding refinement nodes that are on the boundaries of the wrapping wire and the fuel rod for a boundary fitting optimization operation, and updating coordinates of the refinement nodes;C4: finding a tetrahedron sharing an edge with the refinement nodes, storing the tetrahedron in a list of meshes containing a hanging node, recording a number of hanging nodes, and performing conforming refinement based on the number of hanging nodes;28 10 25C5: adding new tetrahedron information generated through the bisection refinement and the conforming refinement to the list, and deleting original tetrahedron information;C6: before the next round of mesh refinement is performed, determining whether mesh domain decomposition needs to be performed again based on the number of meshes in the current process; andC7: repeatingthe operations in Cl to C6 until a required number of iterations is reached.

6. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 4 or 5, wherein the boundary fitting optimization operation is performed by the boundary fitting optimization sub-module, and during the fitting optimization, the refinement nodes in the boundary domains of the fuel rod and the wrapping wire are projected onto a boundary line, to improve fitting accuracy at fine positions, wherein the projection operation comprises the following specific steps: DI: finding the fuel rod or the wrapping wire of which a boundary comprises a refinement node, and calculating coordinates of a corresponding center point;D2: calculating a distance between the refinement node and the center point; and D3: calculating new coordinates of the refinement node.

7. The system for optimizing and refining a parallel partitioned dynamic mesh for reactor flow field simulation according to claim 2, wherein the quality optimization sub-module optimizes the quality of the refined mesh by invoking a quality optimization function from a grnsh library, with the following specific procedure: El: setting a mesh order using Mesh.ElementOrder;E2: setting a threshold using a parameter Mesh.OptimizeThreshold, to optimize a mesh of quality lower than this threshold;E3: setting an optimization type using Mesh.HighOrderOptimize; andE4: completing the quality optimization.

Citation Information

Patent Citations

  • Tetrahedral mesh generation method and device for three-dimensional solid model

    CN104063903A