Mesh processing method

By encrypting the overlapping parts of the octree grid and the near-wall grid, the problem of excessive overlap during merging is solved, and the accuracy and calculation efficiency of the grid are improved.

CN119540492APending Publication Date: 2025-02-28BEIJING ZHIYI TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411547565.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-05
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

When merging the octree mesh with the near-wall mesh, there are too many overlapping parts, resulting in an increase in the number of mesh and affecting the calculation efficiency.

Method used

By extracting the quadrilateral surface mesh cells of the near-wall mesh cells, dividing them into two triangle cells, and computing the axial alignment rectangular bounding box of each triangle cell, marking the octree mesh cells overlapping these bounding boxes as bounding mesh cells, and removing the bounding internal mesh cells they constitute, and finally combining the remaining octree mesh with the near-wall mesh.

Benefits of technology

It effectively reduces the overlapping parts of the grid, improves the accuracy of the grid, and reduces the computational complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The invention relates to a grid processing method, which is used for encrypting octree hexahedral grid units overlapped with near wall surface hexahedral grid units, and comprises the following steps: extracting all octree hexahedral grid units overlapped with the near wall surface hexahedral grid units as octree boundary grid units; aiming at each extracted octree hexahedron boundary grid unit, calculating a first diagonal length of the octree boundary grid unit and a second diagonal length of a near wall surface hexahedron grid unit overlapped with the octree boundary grid; if the length of the first diagonal line is greater than or equal to half of the length of the second diagonal line, encrypting the octree boundary grid unit; judging whether the encrypted octree boundary grid unit is overlapped with the near wall surface hexahedron grid unit or not; and if so, repeating the above steps until the length of the first diagonal line is less than half of the length of the second diagonal line.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This invention application is a divisional application of the invention patent application with an application date of July 5, 2024, an application number of "202410897363.3", and an invention name of "Grid Processing Method". Technical Field

[0002] The embodiments disclosed herein relate to the technical field of three-dimensional modeling, and in particular, to a mesh processing method, system and program for merging an octree mesh with a near-wall mesh. Background Art

[0003] Computational Fluid Dynamics (CFD) is a method of numerically solving the governing equations of fluid mechanics using computers. At present, CFD software has been widely used in simulation and design in the fields of machinery, chemical engineering, pharmacy, aerospace, etc. The essence of numerical calculation of CFD software is to abandon the search for analytical solutions to the governing equations, but to divide the entire flow field into several grid units and perform numerical calculations on each grid unit. Therefore, spatial grid division is an important part of CFD software.

[0004] Currently, octree is widely used for spatial meshing due to its simple principle, efficient positioning and search. However, when an object represented by a near-wall mesh is placed in a flow field represented by an octree mesh, there is an overlap between the octree mesh and the near-wall mesh. If the octree mesh and the near-wall mesh are merged together without any processing, the number of meshes will increase greatly, and there will be a large number of overlapping parts. These two factors will greatly affect the computational efficiency of the subsequent solver.

[0005] The above information disclosed in this Background section is only for understanding the background of the present inventive concept and therefore it may contain information that does not constitute prior art. Summary of the invention

[0006] A brief overview of the disclosure will be given below in order to provide a basic understanding of certain aspects of the disclosure. It should be understood that this overview is not an exhaustive overview of the disclosure. It is not intended to identify key or important parts of the disclosure, nor is it intended to limit the scope of the disclosure. Its purpose is simply to give certain concepts in a simplified form as a prelude to a more detailed description discussed later.

[0007] In order to solve the problems existing in the prior art, it is necessary to provide a grid processing method for merging an octree grid and a near-wall grid.

[0008] To achieve the purpose of the present disclosure, according to one aspect of the present disclosure, a mesh processing method is provided for merging an octree hexahedral mesh and a near-wall hexahedral mesh, comprising: extracting quadrilateral surface mesh cells of the near-wall hexahedral mesh cells; dividing the quadrilateral surface mesh cells into two triangular cells, and calculating the axis-aligned rectangular bounding box of each triangular cell; marking the octree hexahedral mesh cells that overlap with the axis-aligned rectangular bounding box as octree boundary mesh cells; and removing the octree hexahedral mesh cells inside the boundary formed by the octree boundary mesh cells.

[0009] According to another aspect of the present disclosure, a grid processing method is provided for encrypting octree hexahedral grid cells that overlap with near-wall hexahedral grid cells, comprising: extracting all octree hexahedral grid cells that overlap with near-wall hexahedral grid cells as octree boundary grid cells; for each extracted octree hexahedral boundary grid cell, calculating a first diagonal length of the octree boundary grid cell and a second diagonal length of the near-wall hexahedral grid cells that overlap with the octree boundary grid; if the first diagonal length is greater than or equal to half of the second diagonal length, encrypting the octree boundary grid cell; determining whether the encrypted octree boundary grid cell overlaps with the near-wall hexahedral grid cell; and if so, repeating the above steps until the first diagonal length is less than half of the second diagonal length.

[0010] According to another aspect of the present disclosure, a computer program capable of implementing the above-mentioned grid processing method is provided.

[0011] In addition, a computer program product in the form of at least a computer-readable storage medium is also provided, on which a computer program code for implementing the above-mentioned grid processing method is recorded. Specifically, according to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and the computer program can implement the above-mentioned grid processing method when executed by a computer.

[0012] According to the grid processing method disclosed in the present invention, by using the R-tree to classify and merge the octree grids, the accuracy of the grid can be effectively improved, and the complexity of the calculation can also be reduced.

[0013] In addition, according to the grid processing method disclosed in the present invention, the overlapping part of the octree grid and the near-wall grid can be encrypted, thereby improving the accuracy of the grid and reducing the complexity of the calculation.

[0014] However, the effects of the present disclosure are not limited to the above effects, and various extensions can be made without departing from the spirit and scope of the present disclosure. It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory, and are intended to provide further explanation of the present disclosure claimed. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The above and other objects, features and advantages of the present disclosure will be more easily understood with reference to the following description of the embodiments of the present disclosure in conjunction with the accompanying drawings, in which:

[0016] Figure 1 is a grid schematic diagram showing the overlap of an octree grid and a near-wall grid without using the grid processing method disclosed in the present invention;

[0017] Figure 2 is a flow chart showing a mesh processing method according to an embodiment of the present disclosure;

[0018] Figure 3 It shows Figure 1 A grid schematic diagram obtained by applying the grid processing method according to an embodiment of the present disclosure;

[0019] Figure 4 is a flow chart showing a mesh processing method according to an embodiment of the present disclosure;

[0020] Figure 5 It shows Figure 3 A grid schematic diagram obtained by applying the grid processing method according to an embodiment of the present disclosure;

[0021] Figure 6 It shows Figure 3 Another grid schematic diagram obtained by applying the grid processing method according to an embodiment of the present disclosure; and

[0022] Figure 7 is a simplified structural diagram showing a general machine that can be used to implement the grid processing method according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0023] Hereinafter, some embodiments of the present disclosure will be described in detail with reference to the attached illustrative diagrams. When the elements of the drawings are indicated by reference numerals, the same elements will be represented by the same reference numerals even though they are shown in different drawings. In addition, in the following description of the present disclosure, in the case where it is possible to make the subject matter of the present disclosure unclear, the detailed description of the known functions and configurations incorporated herein will be omitted.

[0024] The terms used herein are only used for the purpose of describing specific embodiments and are not intended to limit the present disclosure. As used herein, unless the context otherwise indicates, the singular form is intended to also include the plural form. It will also be understood that the terms "comprises," "comprising," and "having" used in the specification are intended to specify the presence of stated features, entities, operations, and / or components, but do not exclude the presence or addition of one or more other features, entities, operations, and / or components.

[0025] Unless otherwise defined, all terms used herein, including technical and scientific terms, have the same meaning as those commonly understood by those skilled in the art to which the inventive concept of the present disclosure belongs. It will be further understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art, and should not be interpreted in an idealized or overly formal sense unless explicitly defined herein.

[0026] In the following description, many specific details are set forth to provide a comprehensive understanding of the present disclosure. The present disclosure may be implemented without some or all of these specific details. In other examples, in order to avoid obscuring the present disclosure due to unnecessary details, only components closely related to the scheme according to the present disclosure are shown in the accompanying drawings, while other details that are not closely related to the present disclosure are omitted.

[0027] Combine the following Figures 1 to 6 The mesh processing method 100 according to an embodiment of the present disclosure is described in detail.

[0028] Figure 1 A schematic diagram of a mesh showing the overlap between an octree mesh and a near-wall mesh without using the mesh processing method 100 of the present disclosure.

[0029] Octree is a tree-like data structure used to represent three-dimensional space. In computer graphics, octrees are often used to partition space, creating a data structure called an octree grid.

[0030] Each node of the octree represents a cubic space area. This node can have eight child nodes, each of which represents one eighth of the parent node's space area. The space areas of these eight child nodes are obtained by dividing the parent node's space area into two halves along the x, y, and z directions. In this way, each layer of the octree corresponds to a subdivision of the space.

[0031] Octree grid is a very efficient data structure that can be used to represent complex 3D shapes and can also be used for efficient spatial queries, such as collision detection, line of sight queries, etc. Octree grids are widely used in many applications, such as computational fluid dynamics (CFD), computer graphics, robot navigation, etc.

[0032] Near Wall Mesh, also commonly known as Boundary Layer Mesh, is a special mesh that is mainly used in computational fluid dynamics to simulate the behavior of fluid near the surface of an object more accurately. In many fluid dynamics problems, the behavior of the fluid near the surface of an object (such as turbulence, shear stress, etc.) is very different from the behavior far away from the surface of the object, so a finer mesh is needed for simulation.

[0033] The determination of near-wall mesh cells usually depends on specific application scenarios and requirements. In general, near-wall mesh cells refer to those mesh cells located on the surface of an object or close to the surface of an object.

[0034] In many computational fluid dynamics (CFD) and computer graphics applications, the determination of near-wall mesh cells usually involves the following steps: First, the surface of the object needs to be defined. This is usually achieved through a computer-aided design (CAD) model or other form of three-dimensional model; then, a mesh needs to be generated on the surface of the object and the surrounding space. This process usually requires the use of specialized mesh generation algorithms and tools; finally, it is necessary to determine those mesh cells that are located on the surface of the object or close to the surface of the object. This is usually achieved by calculating the distance from the center of each mesh cell to the surface of the object. If this distance is less than a certain threshold, then the mesh cell is considered to be a near-wall mesh cell. This is usually achieved by subdividing the mesh in the normal direction based on the surface mesh. This threshold usually needs to be set according to specific applications and requirements. For example, in CFD simulations, it is usually necessary to use smaller mesh cells near the surface of the object in order to more accurately simulate the behavior of the fluid near the surface of the object. Therefore, this threshold is usually set relatively small. Through the above steps, the near-wall mesh cells can be determined.

[0035] Since the octree grid and the near-wall grid are well known to those skilled in the art, they are not described in further detail here for the sake of brevity.

[0036] It should be noted that in the context of this article, both the octree grid cells and the near-wall grid cells are hexahedral grid cells.

[0037] like Figure 1As shown in the figure, in the orthographic projection, the octree hexahedral mesh units represented by squares and the near-wall hexahedral mesh units represented by fan shapes overlap. If the octree mesh and the near-wall mesh are merged together without any processing, the number of mesh units will increase greatly, and too much overlap will also affect the use of subsequent solvers.

[0038] Figure 2 A flow chart of a mesh processing method 100 according to an embodiment of the present disclosure is shown.

[0039] like Figure 2 As shown, according to an embodiment of the present disclosure, the grid processing method 100 may include the following steps:

[0040] Step S110: extracting quadrilateral surface mesh units from the hexahedral mesh units near the wall.

[0041] According to an embodiment of the present disclosure, the outer surface of the near wall surface can be simulated by a quadrilateral grid. Specifically, according to an embodiment of the present disclosure, all the near wall surface grid cells can be traversed, and then it is determined whether each near wall surface grid cell is located on the outer surface of the object. If so, the quadrilateral surface grid cell of the near wall surface grid cell is extracted.

[0042] In other words, according to an embodiment of the present disclosure, the near-wall hexahedral mesh unit may be obtained by extending the near-wall quadrilateral surface mesh unit along the normal direction.

[0043] Step S120: Divide the extracted quadrilateral surface mesh unit into two triangular units. This step can be implemented by a simple geometric operation, that is, cutting each quadrilateral diagonal into two triangles. In particular, according to an embodiment of the present disclosure, the two triangular units are obtained by cutting the quadrilateral surface mesh unit along any diagonal of the quadrilateral surface mesh unit.

[0044] Furthermore, in step S120 , the axis-aligned rectangular bounding box of each triangle unit is calculated and stored in the R-tree.

[0045] Axis-Aligned Bounding Box (AABB) is a commonly used geometric data structure used to represent the scope of an object in three-dimensional space. For a triangle, its axis-aligned bounding box is the smallest rectangular box that surrounds the triangle and is parallel to the coordinate axis. Specifically, an axis-aligned bounding box is defined by two points: the smallest point (x min ,y min ,z min ), and the other is the maximum point (x max ,ymax ,z max ). These two points represent the minimum and maximum coordinates of the rectangular box in the x, y, and z directions respectively.

[0046] For a triangle, its axis-aligned rectangular bounding box can be calculated by the following steps: First, find the minimum and maximum coordinates of the three vertices of the triangle in the x, y, and z directions; then, use these minimum and maximum coordinates to define the minimum and maximum points of the rectangular box.

[0047] In this way, the axis-aligned rectangular bounding box of the triangular unit can be obtained. This bounding box can be used to perform various geometric calculations, such as determining whether two objects intersect, calculating the volume of an object, etc.

[0048] In addition, R-tree is a tree data structure designed to handle multidimensional spatial objects such as spatial coverage, lines, polygons, etc. R-tree is a balanced search tree, similar to B-tree, but it is designed to handle actual spatial objects.

[0049] The basic idea of ​​the R-tree is to organize adjacent objects into a large node, which can reduce the number of nodes traversed during search. Each node in the R-tree represents a multidimensional rectangular area, which is the minimum bounding rectangle of all child nodes contained in the node. In the present disclosure, each node in the R-tree represents a three-dimensional rectangular box.

[0050] The main operations of R-tree include insertion, deletion and search. The insertion operation is to insert a new object into the R-tree. If necessary, the tree will be split and adjusted to keep the tree balanced. The deletion operation is to delete an object from the R-tree. If necessary, the tree will be merged and adjusted to keep the tree balanced. The search operation is to find objects that meet certain conditions in the R-tree, such as finding all objects that intersect with a given rectangular area.

[0051] Since the axis-aligned rectangular bounding box and R-tree of the triangle unit are well known to those skilled in the art, they are not described in further detail here for the sake of brevity.

[0052] Step S130: For each octree grid cell, use the R-tree to find out whether it has an intersection with the axis-aligned rectangular bounding box of a certain triangle cell. If there is an intersection, the octree grid cell is marked as an octree boundary grid cell. This operation can be implemented by a search operation of the R-tree, that is, for each octree grid cell, the axis-aligned rectangular bounding box of the triangle cell that has an intersection with it is searched in the R-tree.

[0053] Step S140: After all octree boundary grid cells are obtained, all octree grid cells may be classified into three categories based on the octree boundary grid cells as boundaries, namely, octree external grid cells, octree boundary grid cells, and octree internal grid cells.

[0054] In addition, in step S140: after classifying all octree grid cells, the octree external grid cells and the octree boundary grid cells are merged with the near-wall grid cells, so that the entire grid cell set that does not completely overlap with the near-wall internal grid cells can be obtained. That is, according to the embodiment of the present disclosure, after removing the octree hexahedral grid cells inside the boundary formed by the octree boundary grid cells, the remaining octree grid cells are merged with the near-wall grid cells to obtain the final grid cell set.

[0055] Figure 3 Shows the Figure 1 A mesh schematic diagram obtained by applying the mesh processing method 100 according to an embodiment of the present disclosure.

[0056] Compared to Figure 1 , Figure 3 Among the octree grid cells shown in , the octree grid cells that completely overlap with the near-wall grid cells, that is, the octree internal grid cells are removed, and the remaining octree boundary grid cells and the octree external grid cells are merged with the near-wall grid cells.

[0057] The advantage of the mesh processing method 100 for merging octree hexahedral meshes and near-wall hexahedral meshes according to the embodiment of the present disclosure is that by using the R-tree to classify and merge the octree meshes, the complexity of calculation can also be reduced.

[0058] According to an embodiment of the present disclosure, when the octree grid overlaps with the near-wall grid, and in the overlapping part, the size of the octree grid unit (i.e., the above-mentioned octree boundary grid unit) is much larger than the size of the near-wall grid unit, the octree grid units in the overlapping area need to be encrypted so that the size ratio of the two grid units in the overlapping part is appropriate.

[0059] If the overlapping part is not encrypted, the octree boundary grid cells will penetrate into the near-wall grid cells. Figure 3 From the orthographic projection shown, we can see that the octree boundary grid cells span 2 layers of near-wall grid cells. If the octree boundary grid cells are not encrypted, the octree boundary grid cells may penetrate into the near-wall grid cells, and may even penetrate the near-wall grid cells, causing abnormal calculation results of the back-end solver.

[0060] Therefore, the grid processing method 100 according to the embodiment of the present disclosure may further include step S150: encrypting the octree boundary grid unit. This step S150 may be referred to below. Figure 4 The mesh processing method 200 is described to be performed.

[0061] Figure 4 A flow chart of a mesh processing method 200 according to an embodiment of the present disclosure is shown.

[0062] like Figure 4 As shown, according to an embodiment of the present disclosure, the grid processing method 200 may include the following steps:

[0063] Step S210: extract all octree hexahedral grid units that overlap with the near-wall hexahedral grid units. Figure 2 As described above, the octree hexahedral grid cells that overlap with the near-wall hexahedral grid cells may be the octree boundary grid cells marked in step S130.

[0064] Step S220: For each extracted octree boundary grid unit, calculate the first diagonal length D1 of the octree boundary grid unit and the second diagonal length D2 of the near-wall hexahedral grid unit that overlaps with the octree boundary grid. By calculating the diagonal lengths of the two grid units, the size relationship of the two grid units can be obtained.

[0065] The diagonal length D1 of the octree grid cell and the diagonal length D2 of the near-wall grid cell are geometric characteristics of two different types of grid cells.

[0066] As mentioned above, the octree grid unit is a cube-shaped grid unit, and its diagonal length D1 refers to the distance from one vertex of the cube to its diagonal vertex. In three-dimensional space, this distance can be calculated by the Pythagorean theorem, that is, D1 = sqrt((x2-x1)2+(y2-y1)2+(z2-z1)2), where (x1, y1, z1) and (x2, y2, z2) are the coordinates of the two diagonal vertices of the cube.

[0067] According to an embodiment of the present disclosure, the near-wall grid unit may be a hexahedral grid. For this type of grid unit, according to an embodiment of the present disclosure, its diagonal length D2 may be the length of the longest diagonal of the grid unit. This length may be obtained by traversing all vertex pairs of the grid unit, finding a pair of vertices with the largest distance, and then calculating the distance between the two vertices.

[0068] The two diagonal lengths, namely the first diagonal length D1 and the second diagonal length D2, are used to compare the sizes of the octree boundary grid cells and the near-wall grid cells. By comparing the two lengths, it can be determined whether the octree boundary grid cells need to be encrypted to improve the accuracy of the grid.

[0069] Step S230: If the length of the first diagonal D1 is less than half of the length of the second diagonal D2, that is, D1<0.5×D2, it means that the size of the octree boundary grid unit is appropriate relative to the near-wall grid unit overlapping with it, and no encryption is required. This is because, in this case, the size of the octree boundary grid unit is small enough to accurately represent the shape of the near-wall grid.

[0070] If the length of the first diagonal line D1 is greater than or equal to half of the length of the second diagonal line D2, that is, D1 ≥ 0.5 × D2, then in step S240: the octree boundary grid unit is encrypted, that is, the octree boundary grid unit is split into eight small grid units of equal size. For each small grid unit, it is determined whether it overlaps with the near-wall grid unit.

[0071] It should be noted that the value 0.5 used to compare the first diagonal length D1 and the second diagonal length D2 to determine whether to encrypt is determined based on experience. According to the embodiments of the present disclosure, the value may also adopt any other appropriate value, such as other values ​​from 0.4 to 0.6.

[0072] Step S250: If the encrypted small octree grid unit overlaps with the near-wall grid, then return to step S210 and continue to repeat the above process. Otherwise, no encryption is required and the original state is maintained. This step is to ensure that all the overlapping parts between the octree grid units and the near-wall grid units can obtain sufficient accuracy.

[0073] Through the above processing, the overlapping part between the octree grid unit and the near-wall grid unit can be encrypted, thereby improving the accuracy of the grid and reducing the complexity of the calculation.

[0074] Figure 5 Shows the Figure 3 A mesh schematic diagram obtained by applying the mesh processing method 200 according to an embodiment of the present disclosure.

[0075] Compared to Figure 3 , Figure 5 The mesh cells in the octree boundary mesh cells shown in the figure that are too large compared to the overlapping near-wall mesh cells are encrypted by the above-mentioned mesh processing method 200, so that the encrypted octree mesh cells match the size of the overlapping near-wall mesh cells.

[0076] In addition, the overlapped portion between the octree grid unit and the near-wall grid unit is generally at the outermost layer of the near-wall grid. According to the embodiment of the present disclosure, if the overlapped portion needs to be deeper, the number of layers of the overlapped near-wall grid units can be set. Figure 5 It is shown that the number of overlapping layers between the octree grid unit and the near-wall grid unit is 1 layer of grid units of the near-wall grid. However, according to an embodiment of the present disclosure, the number of overlapping layers can be set to be greater than 1.

[0077] Figure 6 Shows the Figure 3 Another grid schematic diagram obtained by applying the grid processing method 200 according to an embodiment of the present disclosure. Figure 6 In the above figure, the number of overlapping layers between the octree grid cells and the near-wall grid cells is set to 2.

[0078] Figure 7 1 is a simplified structural diagram of a general-purpose machine 700 that can be used to implement the grid processing methods 100 and 200 according to the embodiments of the present disclosure. The general-purpose machine 700 can be, for example, a computer system. It should be noted that the general-purpose machine 700 is only an example and does not imply any limitation on the scope of use or function of the grid processing method of the present disclosure. The general-purpose machine 700 should also not be interpreted as having a dependency or requirement on any of the steps or combinations thereof shown in the above-mentioned grid processing methods 100 and 200.

[0079] exist Figure 7 In the embodiment, a central processing unit (CPU) 701 performs various processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage section 708 to a random access memory (RAM) 703. In the RAM 703, images required when the CPU 701 performs various processes and the like are also stored as needed. The CPU 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output interface 705 is also connected to the bus 704.

[0080] The following components are also connected to the input / output interface 705: an input section 706 (including a keyboard, a mouse, etc.), an output section 707 (including a display, such as a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.), a storage section 708 (including a hard disk, etc.), a communication section 709 (including a network interface card such as a LAN card, a modem, etc.). The communication section 709 performs communication processing via a network such as the Internet. A drive 710 may also be connected to the input / output interface 705 as needed. A removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc. may be installed on the drive 710 as needed, so that a computer program read therefrom may be installed in the storage section 708 as needed.

[0081] In the case where the above-described series of processing is implemented by software, a program constituting the software can be installed from a network such as the Internet or from a storage medium such as the removable medium 711 .

[0082] It should be understood by those skilled in the art that such storage media is not limited to Figure 7 The removable medium 711 shown has a program stored therein and is distributed separately from the device to provide the program to the user. Examples of the removable medium 711 include magnetic disks (including floppy disks), optical disks (including compact disk read-only memory (CD-ROM) and digital versatile disks (DVD)), magneto-optical disks (including minidiscs (MD) (registered trademark)), and semiconductor memories. Alternatively, the storage medium may be a ROM 702, a hard disk included in the storage portion 708, or the like, in which the program is stored and distributed to the user together with the device containing them.

[0083] In addition, the present disclosure also proposes a program product storing machine-readable instruction codes. When the instruction codes are read and executed by a machine, the above-mentioned grid processing method according to the present disclosure can be executed. Accordingly, the various storage media listed above for carrying such program products are also included in the scope of the present disclosure.

[0084] The above has been described in detail through block diagrams, flow charts and / or embodiments, illustrating the specific embodiments of the device and / or method according to the embodiments of the present disclosure. When these block diagrams, flow charts and / or embodiments include one or more functions and / or operations, it is understood by those skilled in the art that each function and / or operation in these block diagrams, flow charts and / or embodiments can be implemented individually and / or collectively by various hardware, software, firmware or substantially any combination thereof. In one embodiment, several parts of the subject matter described in this specification can be implemented by application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs) or other integrated forms. However, those skilled in the art will recognize that some aspects of the embodiments described in this specification can be equivalently implemented in whole or in part in the form of one or more computer programs running on one or more computers (for example, in the form of one or more computer programs running on one or more computer systems), in the form of one or more programs running on one or more processors (for example, in the form of one or more programs running on one or more microprocessors), in the form of firmware, or in substantially any combination thereof, and that, based on the contents disclosed in this specification, designing circuits for the present disclosure and / or writing code for software and / or firmware for the present disclosure is well within the capabilities of those skilled in the art.

[0085] Although the present disclosure has been disclosed above by describing the specific embodiments of the present disclosure, it should be understood that those skilled in the art can design various modifications, improvements or equivalents to the embodiments of the present disclosure within the spirit and scope of the appended claims. These modifications, improvements or equivalents should also be considered to be included in the protection scope of the present disclosure.

[0086] According to the above description, the technical solutions of the present invention include but are not limited to the following:

[0087] Solution 1. A mesh processing method for merging an octree hexahedral mesh and a near-wall hexahedral mesh, comprising:

[0088] Extracting quadrilateral surface mesh elements from hexahedral mesh elements near the wall;

[0089] Splitting the quadrilateral surface mesh unit into two triangular units and calculating an axis-aligned rectangular bounding box for each triangular unit;

[0090] Marking the octree hexahedral grid cells that overlap with the axis-aligned rectangular bounding box as octree boundary grid cells; and

[0091] The octree hexahedral grid cells inside the boundary formed by the octree boundary grid cells are removed, and the remaining octree grid cells are merged with the near-wall grid cells.

[0092] Solution 2. A grid processing method according to Solution 1, wherein the axis-aligned rectangular bounding box is stored in an R-tree, and the R-tree is used to find an axis-aligned rectangular bounding box that overlaps with the octree hexahedral grid unit.

[0093] Solution 3. A mesh processing method according to Solution 1, wherein the near-wall hexahedral mesh is obtained by extending the near-wall quadrilateral surface mesh along the normal direction.

[0094] Solution 4. A mesh processing method according to Solution 1, wherein the two triangular units are obtained by cutting the quadrilateral surface mesh unit along any diagonal line of the quadrilateral surface mesh unit.

[0095] Solution 5. A mesh processing method according to Solution 1, wherein the axis-aligned rectangular bounding box is obtained by calculating the minimum and maximum coordinates of the three vertices of the triangular unit in the x, y, and z directions.

[0096] Solution 6. The grid processing method according to Solution 1 further includes:

[0097] The octree boundary grid cells are encrypted.

[0098] Solution 7. According to the grid processing method of Solution 6, the encryption comprises:

[0099] For each octree boundary grid cell, calculate a first diagonal length of the octree boundary grid cell and a second diagonal length of a near-wall hexahedral grid cell that overlaps with the octree boundary grid cell;

[0100] If the length of the first diagonal line is greater than or equal to half of the length of the second diagonal line, encrypting the octree boundary grid unit;

[0101] Determine whether the encrypted octree boundary grid unit overlaps with the near-wall hexahedral grid unit; and

[0102] If they overlap, repeat the above steps until the length of the first diagonal line is less than half of the length of the second diagonal line.

[0103] Scheme 8. A grid processing method according to Scheme 7, wherein the length of the second diagonal of the near-wall hexahedral grid unit that overlaps with the octree boundary grid unit is the length of the longest diagonal among all the diagonals of the near-wall hexahedral grid unit.

[0104] Scheme 9. A grid processing method according to Scheme 6, wherein the near-wall hexahedral grid units are one or more layers of hexahedral grid units starting from the wall.

[0105] Solution 10. A mesh processing method for encrypting octree hexahedral mesh cells that overlap with near-wall hexahedral mesh cells, comprising:

[0106] Extracting all octree hexahedral grid cells that overlap with the near-wall hexahedral grid cells as octree boundary grid cells;

[0107] For each extracted octree boundary grid cell, calculate a first diagonal length of the octree boundary grid cell and a second diagonal length of a near-wall hexahedral grid cell that overlaps with the octree boundary grid;

[0108] If the length of the first diagonal line is greater than or equal to half of the length of the second diagonal line, encrypting the octree boundary grid unit;

[0109] Determine whether the encrypted octree grid unit overlaps with the near-wall hexahedral grid unit; and

[0110] If they overlap, repeat the above steps until the length of the first diagonal line is less than half of the length of the second diagonal line.

Claims

1. A mesh processing method for encrypting octree hexahedral mesh cells that overlap with near-wall hexahedral mesh cells, comprising: Extracting all octree hexahedral grid cells that overlap with the near-wall hexahedral grid cells as octree boundary grid cells; For each extracted octree boundary grid cell, calculate a first diagonal length of the octree boundary grid cell and a second diagonal length of a near-wall hexahedral grid cell that overlaps with the octree boundary grid; If the ratio of the first diagonal length to the second diagonal length is greater than or equal to a predetermined value, encrypting the octree boundary grid unit; Determine whether the encrypted octree grid unit overlaps with the near-wall hexahedral grid unit; as well as If they overlap, repeat the above steps until the ratio of the first diagonal length to the second diagonal length is less than the predetermined value.

2. The grid processing method according to claim 1, wherein: Extracting the octree boundary grid unit includes: Extracting quadrilateral surface mesh units of the near-wall hexahedral mesh units; Splitting the quadrilateral surface mesh unit into two triangular units and calculating an axis-aligned rectangular bounding box for each triangular unit; and The octree hexahedral grid cells that overlap with the axis-aligned rectangular bounding box are marked as the octree boundary grid cells.

3. The grid processing method according to claim 2, wherein: The two triangular units are obtained by cutting the quadrilateral surface mesh unit along any diagonal line of the quadrilateral surface mesh unit.

4. The grid processing method according to claim 2, wherein: The axis-aligned rectangular bounding box is obtained by calculating the minimum and maximum coordinates of the three vertices of the triangle unit in the x, y, and z directions.

5. The grid processing method according to claim 2, wherein: The axis-aligned rectangular bounding box is stored in an R-tree, and the R-tree is used to find an axis-aligned rectangular bounding box that overlaps with the octree hexahedral grid cell, and the octree hexahedral grid cell that overlaps with the axis-aligned rectangular bounding box is marked as the octree boundary grid cell.

6. The grid processing method according to claim 1, wherein: The length of the second diagonal line of the near-wall hexahedral mesh unit that overlaps with the octree boundary mesh unit is the length of the longest diagonal line among all the diagonals of the near-wall hexahedral mesh unit.

7. The grid processing method according to claim 1, wherein: The predetermined value is 0.

5.

8. The grid processing method according to claim 1, wherein: The predetermined value is a value in the range of 0.4 to 0.

6.

9. The grid processing method according to claim 1, wherein: The near-wall hexahedral mesh units are one or more layers of hexahedral mesh units starting from the wall.