Host unit search method for arbitrary polyhedral mesh

By constructing the vector relationship between the cell center to the interpolation node and the polygonal surface element position relationship judgment, the robustness problem of the interpolation point host unit search in the polyhedral mesh is solved, ensuring the stability and accuracy of the calculation, and is suitable for complex mesh structures.

CN119272662AInactive Publication Date: 2025-01-07CHINA SHIPBUILDING ORLANDO WUXI SOFTWARE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411518116.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2025-01-07
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In computational fluid mechanics, especially in polyhedral mesh calculations, the robustness and correctness of the interpolation point host unit search is difficult to ensure, resulting in the impact of the interpolation calculation accuracy and stability, especially in non-constant calculations and mesh motion Or when the density changes, the conventional search method is prone to failure.

Method used

By constructing the vector from the cell center of any multihedral mesh cell to the interpolation node, we judge whether the node is in the cell, and determine the search path based on the positional relationship between the vector and the polygonal face element, gradually judge the positional relationship of the interpolation node, and adopt triangle splitting and Parallel ray method and other methods ensure accuracy.

Benefits of technology

The accuracy and robustness of the host unit search of any multihedral mesh is achieved, the search failure in interpolation calculation is avoided, and the stability and efficiency of the calculation are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119272662A_ABST
    Figure CN119272662A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computational fluid mechanics, and particularly discloses a host unit searching method for any polyhedral grid, which comprises the following steps of: constructing a vector from a unit center of any polyhedral grid unit to an interpolation node to obtain a first construction vector; judging whether the interpolation node is in any polyhedral grid unit or not according to the position relationship between the first construction vector and each polygonal surface unit; if the interpolation node is in any polyhedral grid unit, determining the any polyhedral grid unit as a host unit of the interpolation node; if not, determining a search path of the host unit through the polygonal surface unit according to the first construction vector; and carrying out position relation judgment on all grid units on the search path and the interpolation node until the host unit of the interpolation node is searched. According to the host unit searching method for the any polyhedral grid, searching of the host unit of the any polyhedral grid can be achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of computational fluid dynamics, and in particular to a host unit search method for arbitrary polyhedral grids. Background Art

[0002] Interpolation calculation plays a key role in computational fluid dynamics (CFD) and is widely used in all stages of CFD numerical simulation. In CFD calculation methods, when multiple grids and adaptive grid algorithms are involved, flow field variables need to be directly interpolated and transferred in multiple grids. In the numerical simulation of multi-body relative motion problems, multi-reference coordinate system methods, sliding grid methods, and overlapping grid methods are usually used. In the multi-computational grid coupling calculation process of these methods, interpolation and transfer of flow field variables are also frequently performed. At the same time, the accuracy of interpolation calculation directly affects the accuracy and stability of numerical calculation, and the correctness of the search for the host unit of the interpolation point is crucial to the interpolation calculation. If the host unit of the interpolation point is found incorrectly, no matter how high-fidelity the interpolation function construction is, it cannot guarantee the accuracy of the interpolation calculation.

[0003] In CFD calculations, interpolation calculations are often used when different grid resolutions or grid types are encountered, which will bring challenges to the host cell search of the interpolation points. In addition, the robustness of the host cell search is also very important, especially in the unsteady calculation process of CFD. Since there is grid movement or grid density distribution changes at each moment, the host cell search needs to be re-performed at each moment. If the host cell search fails at one moment, the entire calculation will be interrupted, which is unacceptable for unsteady calculations. Therefore, the robustness and correctness of the host cell search are equally important.

[0004] The host cell is the grid cell where the interpolation point is located during the interpolation calculation process. The host cell search is the process of finding the grid cell in which the interpolation point is located in the corresponding grid. There is always a starting cell for the host cell search. Usually the interpolation point is not located in the starting cell. Starting from the starting cell, the position relationship between the interpolation point and the current cell is determined one by one according to certain search rules until the host cell of the interpolation point is found.

[0005] In CFD calculations, as geometric models and numerical simulation problems become more and more complex, it is increasingly difficult to generate high-quality structured computational grids. Arbitrary polyhedral unstructured grids are increasingly used in engineering, which have the advantages of strong adaptability and high degree of automation in grid generation. In CFD calculations, common arbitrary polyhedral grids include honeycomb arbitrary polyhedral grids and cut-body grids. In addition, some processing methods also treat transition units in Cartesian grids as arbitrary polyhedral grids. Arbitrary polyhedral grids facilitate grid generation, but they place higher requirements on the correctness and robustness of the search for interpolation point host units. Because the number of faces and points of arbitrary polyhedral grid units are far more than those of conventional grid units (tetrahedrons, hexahedrons, triangular prisms, and tetrahedral pyramids). The angle range between the faces of any polyhedral grid unit is wider. Angles that are too large or too small are not conducive to judging the positional relationship between points and units. In addition, the number of grid points on the surface of the unit is greater, which will result in the grid points on the surface not being strictly coplanar. At this time, concave grid units may appear, which will bring great challenges to the judgment of the positional relationship between points and units, and thus bring difficulties to the host unit search.

[0006] Therefore, how to provide a host unit search method applicable to any polyhedral grid becomes a technical problem that needs to be solved urgently by those skilled in the art. Summary of the invention

[0007] The present invention provides a host unit search method for arbitrary polyhedral meshes, which solves the problem in the related art that the host unit search for polyhedral meshes cannot be realized.

[0008] As a first aspect of the present invention, a host cell search method for an arbitrary polyhedral grid is provided, which comprises:

[0009] Constructing a vector from the cell center of any polyhedral mesh cell to the interpolation node to obtain a first construction vector;

[0010] Determining whether the interpolation node is within the arbitrary polyhedral mesh unit according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located;

[0011] If the interpolation node is within the arbitrary polyhedral mesh unit, determining the arbitrary polyhedral mesh unit as a host unit of the interpolation node;

[0012] If the interpolation node is not within the arbitrary polyhedral mesh unit, determining a search path of the host unit according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit;

[0013] The positional relationship between all grid units on the search path of the host unit and the interpolation node is determined until the host unit of the interpolation node is found.

[0014] Further, judging whether the interpolation node is within any polyhedral mesh unit according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located includes:

[0015] Determine whether there is a polygonal surface unit with a grid point number greater than a preset grid point number threshold in any polyhedral grid unit;

[0016] Perform full triangle splitting on a polygonal surface unit whose grid point number is greater than a preset grid point number threshold in any polyhedral grid unit, and obtain multiple triangular surface units of the polygonal surface unit whose grid point number is greater than the preset grid point number threshold;

[0017] Determine the positional relationship between the first construction vector and the plane where each triangular face unit of the polygonal face unit is located, and obtain the positional relationship between the interpolation node and the plane where each triangular face unit of the polygonal face unit is located;

[0018] For a polygonal surface unit whose grid point number is not greater than a preset grid point number threshold in any polyhedral grid unit, the first construction vector and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold are judged to obtain a positional relationship between the interpolation node and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold;

[0019] The positional relationship between the interpolation node and the arbitrary polyhedral mesh unit is determined according to the positional relationship between the interpolation node and each triangular face unit of the polygonal face unit and / or the positional relationship between the interpolation node and the polygonal face unit whose grid point number is not greater than a preset grid point number threshold.

[0020] Furthermore, a polygonal surface unit having a grid point number greater than a preset grid point number threshold in any polyhedral grid unit is fully triangularly split to obtain a plurality of triangular surface units of the polygonal surface unit having a grid point number greater than the preset grid point number threshold, including:

[0021] Determine the grid point where the maximum inner angle of the polygonal surface unit whose grid point number is greater than a preset grid point number threshold is located;

[0022] The grid point where the maximum inner angle is located is taken as the vertex, and the vertex is connected to all grid points that are not connected to the vertex to obtain a plurality of triangular face units of the polygonal face unit whose grid point number is greater than a preset grid point number threshold.

[0023] Further, judging the positional relationship between the first construction vector and the plane where each triangular surface unit of the polygonal surface unit is located, obtaining the positional relationship between the interpolation node and the plane where each triangular surface unit of the polygonal surface unit is located, includes:

[0024] Calculate the surface normal vector of the plane where each triangular face unit of the polygonal face unit whose grid point number is greater than a preset grid point number threshold is located;

[0025] Construct a vector from the cell center of any polyhedral mesh cell to any grid point on each triangular face cell to obtain a second construction vector;

[0026] Calculate the projection ratio of the first construction vector and the second construction vector on the surface normal vector of the plane where the current triangle surface unit is located;

[0027] The positional relationship between the interpolation node and the plane where the triangular face unit is located is determined according to the projection ratio.

[0028] Further, determining a search path of the host unit according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit comprises:

[0029] Determine whether there is an intersection between the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located;

[0030] If the first construction vector has an intersection with the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located, then it is determined whether the first construction vector passes through the polygonal surface unit of the arbitrary polyhedral mesh unit based on the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit to determine the search path of the host unit.

[0031] Furthermore, if the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, determining the search path of the host unit according to the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit includes:

[0032] If the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, then the polygonal surface unit in the plane where the polygonal surface unit with the intersection is located and the corresponding intersection coordinates are recorded;

[0033] The positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is located and the intersection point is judged one by one to determine whether the intersection point is located in the polygonal surface unit;

[0034] If the intersection point is within a polygonal surface unit, the number of the polygonal surface unit is recorded;

[0035] According to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined.

[0036] Further, the positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is recorded and the intersection point is judged one by one to determine whether the intersection point is located in the polygonal surface unit, including:

[0037] Determine the projection plane, and project the polygonal surface units and the intersection points in the plane where the polygonal surface units with the intersection points are located onto the projection plane, so as to obtain the projected polygonal surface units and the projected intersection points located on the projection plane;

[0038] The positional relationship between the projection intersection point and the projection polygonal surface unit is determined in the projection plane to determine whether the intersection point is located within the polygonal surface unit.

[0039] Furthermore, judging the positional relationship between the projection intersection point and the projection polygonal surface unit in the projection plane to determine whether the intersection point is located within the polygonal surface unit includes:

[0040] Determine the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit according to the parallel ray method;

[0041] If the projection intersection point is located within the projection polygonal surface unit, determining that the intersection point is located within the polygonal surface unit;

[0042] If the projection intersection point is located outside the projection polygonal surface unit, it is determined that the intersection point is located outside the polygonal surface unit.

[0043] Further, the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit is determined according to the parallel ray method, including:

[0044] Projecting the projection polygonal surface unit under parallel rays to form a plurality of projection trapezoidal regions, wherein each projection trapezoidal region corresponds to an edge of the projection polygonal surface unit;

[0045] Count the number of times the projection intersection point appears in each projection trapezoidal area;

[0046] If the number of projection intersections that appear in the projection trapezoidal region is an even number including 0, it is determined that the projection intersection is located outside the projection polygonal unit;

[0047] If the number of projection intersection points appearing in the projection trapezoidal region is an odd number, it is determined that the projection intersection point is located within the projection polygonal unit.

[0048] Further, according to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined, including:

[0049] If the number of the recorded polygonal surface unit is 1, the adjacent unit on the other side of the coplanar surface of the recorded polygonal surface unit is taken as the next target grid unit;

[0050] If there are multiple numbers of the recorded polygonal surface units, a polygonal surface unit is randomly selected, and it is determined whether the randomly selected polygonal surface unit has an adjacent unit on the other side of the same plane;

[0051] If the randomly selected polygonal surface unit has a coplanar adjacent unit on the other side, the coplanar adjacent unit on the other side of the randomly selected polygonal surface unit is used as the next target grid unit;

[0052] If the randomly selected polygonal surface unit does not have an adjacent unit on the other side of the same plane, a polygonal surface unit is randomly selected from the remaining recorded unit polygonal surfaces until the next target grid unit is determined.

[0053] The host unit search method for an arbitrary polyhedral mesh provided by the present invention constructs a vector pointing from the unit center of an arbitrary polyhedral mesh unit to an interpolation node, and determines the positional relationship between the interpolation node and the arbitrary polyhedral mesh unit based on the positional relationship between the first construction vector and the arbitrary polyhedral mesh unit, thereby determining whether the host unit of the interpolation node has been searched. Therefore, the host unit search method for an arbitrary polyhedral mesh unit provided by the present invention can perform a host unit search for a polyhedral mesh unit, and determines whether the interpolation node is within the arbitrary polyhedral mesh unit based on the positional relationship judgment between the first construction vector and each polygonal face of the arbitrary polyhedral mesh unit, which can meet the correctness and robustness requirements of the polyhedral mesh unit for the host unit search. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] The accompanying drawings are used to provide further understanding of the present invention and constitute a part of the specification. Together with the following specific embodiments, they are used to explain the present invention, but do not constitute a limitation of the present invention.

[0055] Figure 1 A flow chart of a host cell search method for an arbitrary polyhedral grid provided by the present invention.

[0056] Figure 2 A schematic diagram of the positional relationship between the interpolation nodes and the grid units provided by the present invention.

[0057] Figure 3 A flow chart for determining whether an interpolation node is within any polyhedral grid unit provided by the present invention.

[0058] Figure 4 A flow chart of fully triangle splitting a polygonal face provided by the present invention.

[0059] Figure 5 A flow chart for determining the positional relationship between an interpolation node and each triangular face provided by the present invention.

[0060] Figure 6 The present invention provides a flow chart for determining a search path for a host unit according to whether there is an intersection between a first construction vector and a unit polygonal surface.

[0061] Figure 7 A flow chart of determining a host unit search path according to mesh unit polygonal surface units passed by a first construction vector provided by the present invention.

[0062] Figure 8 This is a schematic diagram of the intersection point and unit polygonal surface projection in space provided by the present invention.

[0063] Fig. 9 This is a schematic diagram of the parallel ray method provided by the present invention for determining the relationship between the projection intersection point in a plane and the position of a polygon.

[0064] Fig.10 A schematic diagram of an arbitrary polyhedron computational grid for numerical simulation of the flow field of the centrifugal water pump provided by the present invention.

[0065] Fig.11 The present invention provides Fig.10 Schematic diagram of the numerical simulation calculation results of the flow field around .

[0066] Fig.12 A schematic diagram of the computational grid of an arbitrary polyhedron in the numerical simulation of an underwater vehicle provided by the present invention.

[0067] Fig.13 The present invention provides Fig.12 Schematic diagram of calculation results after searching with the host unit of the present invention.

[0068] Fig.14 A host unit search flow chart provided by the present invention. DETAILED DESCRIPTION

[0069] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments may be combined with each other. The present invention will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0070] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiment of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiment of the present invention. Obviously, the described embodiment is only a part of the embodiment of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work should fall within the scope of protection of the present invention.

[0071] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so as to describe the embodiments of the present invention described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0072] Currently in CFD calculations, since the number of faces and points of any polyhedral grid cell is much greater than that of a conventional grid cell, when implementing the host cell search, it is impossible to achieve a correct search if the search method of a conventional grid cell is used.

[0073] Based on this, a host cell search method for an arbitrary polyhedral grid is provided in this embodiment. Figure 1 is a flowchart of a host unit search method for an arbitrary polyhedral mesh according to an embodiment of the present invention. Figure 1 As shown, including:

[0074] S100, constructing a vector from the cell center of any polyhedral mesh cell to an interpolation node to obtain a first construction vector;

[0075] Specifically, the interpolation node is connected to the cell center of any polyhedral mesh cell, and a vector from the cell center of any polyhedral mesh cell to the interpolation node is constructed to obtain a first construction vector. Figure 2 As shown, taking the tetrahedral pyramid unit EABCD as an example of an arbitrary polyhedral mesh unit, a vector pointing from the unit center point M of the tetrahedral pyramid unit EABCD to the interpolation node P is constructed to obtain a first construction vector MP.

[0076] S200, judging whether the interpolation node is within the arbitrary polyhedral mesh unit according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located;

[0077] In the embodiment of the present invention, the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located is judged to determine whether the interpolation node is located in the arbitrary polyhedral mesh unit.

[0078] It should be noted that the plane where the polygonal surface unit is located here specifically represents a plane of infinite size, while the polygonal surface unit in the embodiment of the present invention specifically represents the surface boundary of the grid unit, which is a surface unit of finite size.

[0079] It should be understood that since the number of faces and points of any polyhedral mesh surface is greater than that of a conventional mesh unit, the polygonal surface units can be split and judged one by one to determine the positional relationship between the interpolation node and the arbitrary polyhedral mesh unit.

[0080] S300: If the interpolation node is within the arbitrary polyhedral grid unit, determine the arbitrary polyhedral grid unit as a host unit of the interpolation node;

[0081] It should be understood that when it is determined that the interpolation node is within an arbitrary polyhedral mesh unit, the arbitrary polyhedral mesh unit is determined to be the host unit of the interpolation node.

[0082] S400: if the interpolation node is not within the arbitrary polyhedral mesh unit, determining a search path of the host unit according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit;

[0083] When the interpolation node is not within any current polyhedral mesh unit, it is necessary to further determine the search path and further search for the host unit according to the search path.

[0084] S500: Determine the positional relationship between all grid units on the search path of the host unit and the interpolation node until the host unit of the interpolation node is found.

[0085] It should be understood that after the search path is determined, the positional relationship between the interpolation node and all grid cells on the search path (which may include polyhedral grid cells and regular grid cells) is determined one by one until the host cell of the interpolation node is found.

[0086] In summary, the host unit search method for an arbitrary polyhedral mesh provided in an embodiment of the present invention constructs a vector pointing from the cell center of an arbitrary polyhedral mesh cell to an interpolation node, and determines the positional relationship between the interpolation node and the arbitrary polyhedral mesh cell based on the positional relationship between the first construction vector and the arbitrary polyhedral mesh cell, thereby determining whether the host unit of the interpolation node has been searched. Therefore, the host unit search method for an arbitrary polyhedral mesh cell provided in the present invention can perform a host unit search for a polyhedral mesh cell, and determines whether the interpolation node is within the arbitrary polyhedral mesh cell based on the positional relationship judgment between the first construction vector and each polygonal face of the arbitrary polyhedral mesh cell, which can meet the requirements of the polyhedral mesh cell for the correctness and robustness of the host unit search.

[0087] In the embodiment of the present invention, whether the interpolation node is within the arbitrary polyhedral mesh unit is determined according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located, such as Figure 3 As shown, including:

[0088] S210, determining whether there is a polygonal surface unit whose grid point number is greater than a preset grid point number threshold in any polyhedral grid unit;

[0089] It should be understood that for any polyhedral grid unit, it is first necessary to determine whether the number of grid points of the current arbitrary polyhedral grid unit is greater than the preset grid point number threshold. If the number of grid points of the current arbitrary polyhedral grid unit is greater than the preset grid point number threshold, it is necessary to split the polygonal surface unit of the current arbitrary polyhedral grid unit.

[0090] It should be noted here that the grid points in the embodiment of the present invention can be specifically understood as grid points constituting grid units.

[0091] S220, performing full triangle splitting on a polygonal surface unit having a grid point number greater than a preset grid point number threshold in any polyhedral grid unit, to obtain a plurality of triangular surface units of the polygonal surface unit having a grid point number greater than the preset grid point number threshold;

[0092] In the embodiment of the present invention, Figure 2 As shown, taking the i-th polygonal face (polygonal face ABCD) of the tetrahedral pyramid unit as an example, the positional relationship between the first construction vector MP and the polygonal face ABCD is determined. When the number of grid points of the polygonal face i is greater than 3, the polygon of the polygonal face is split into full triangles. Taking the polygonal face ABCD as an example, it is split into face ABD and face BCD.

[0093] Specifically, Figure 4As shown, for any polygonal surface unit whose grid point number is greater than a preset grid point number threshold in a polyhedral grid unit, full triangle splitting is performed to obtain multiple triangular surface units of the polygonal surface unit whose grid point number is greater than the preset grid point number threshold, including:

[0094] S221, determining the grid point where the maximum inner angle of a polygonal surface unit whose grid point number is greater than a preset grid point number threshold is located;

[0095] In the embodiment of the present invention, Figure 2 As shown, find the grid point where the maximum internal angle of the polygon is located. Taking the polygonal surface unit ABCD as an example, the maximum angle of the quadrilateral is angle ADC, so the grid point D is the vertex.

[0096] S222, taking the grid point where the maximum inner angle is located as a vertex, connecting the vertex to all grid points that are not connected to the vertex, and obtaining a plurality of triangular face units of the polygonal face unit whose grid point number is greater than a preset grid point number threshold.

[0097] Specifically, Figure 2 As shown, with grid point D as the vertex, all grid points that are not connected to grid point D are connected. In the polygonal surface unit ABCD, only grid point B is not connected to grid point D. Therefore, grid point BD is connected to split the polygonal surface unit ABCD into triangular surface unit ABD and triangular surface unit BCD.

[0098] S230, determining the positional relationship between the first construction vector and each triangular face of the polygonal face, and obtaining the positional relationship between the interpolation node and each triangular face of the polygonal face;

[0099] It should be understood that the positional relationship between the first construction vector and the plane where each triangular face unit is located after the splitting is judged, and the positional relationship between the interpolation node and the plane where the polygonal face unit is located is determined based on the judgment result.

[0100] In the embodiment of the present invention, the positional relationship between the first construction vector and the plane where each triangular surface unit of the polygonal surface unit is located is determined to obtain the positional relationship between the interpolation node and the plane where each triangular surface unit of the polygonal surface unit is located, such as Figure 5 As shown, including:

[0101] S231, calculating the surface normal vector of the plane where each triangular face unit of the polygonal face unit having a grid point number greater than a preset grid point number threshold is located;

[0102] It should be understood that the face normal vector is calculated for each triangular face unit after the above splitting. For example, the triangular face unit ABD and the triangular face unit BCD after splitting are described above. The face normal vectors of the triangular face unit ABD and the triangular face unit BCD are calculated by the triangular face vector calculation method, and the face normal vectors are N1 and N2 respectively. The spatial triangular face normal vector calculation method is as follows:

[0103] Assume that the coordinates of the three vertices of the spatial triangle are A(x1, y1, z1), B(x2, y2, z2), and C(x3, y3, z3), and calculate the two edge vectors AB = (x2-x1, y2-y1, z2-z1), AC = (x3-x1, y3-y1, z3-z1), then the surface normal vector N of triangle ABC = AB × AC, and the component form of the surface normal vector N is as follows:

[0104] Nx=(y2-y1)(z3-z1)-(y3-y1)(z2-z1),

[0105] Ny=(z2-z1)(x3-x1)-(z3-z1)(x2-x1),

[0106] Nz=(x2-x1)(y3-y1)-(x3-x1)(y2-y1).

[0107] Based on the above formula, the surface normal vectors of the plane where the triangular surface unit ABD and the plane where the triangular surface unit BCD are located can be respectively calculated, and then the positional relationship between the first construction vector MP and the triangular surface unit ABD and the triangular surface unit BCD can be respectively determined.

[0108] S232, constructing a vector from the cell center of any polyhedral mesh cell to any grid point on each triangular face cell to obtain a second construction vector;

[0109] In the embodiment of the present invention, taking the triangular face unit ABD as an example, a second construction vector is obtained by using the unit center point M of the quadrangular pyramid unit EABCD and any grid point on the triangular face unit ABD to construct a vector (for example, using the grid point A on the face to construct the vector MA).

[0110] S233, calculating the projection ratio of the first construction vector and the second construction vector on the surface normal vector of the plane where the current triangle surface unit is located;

[0111] Specifically, the ratio of the projections of the first construction vector MP and the second construction vector MA on the current surface normal vector (N1) is calculated to determine the positional relationship of the interpolation node with respect to the jth sub-surface of the i-th surface of the tetrahedral unit. The calculation formula for the projection ratio of the two construction vectors on the surface normal vector is as follows:

[0112]

[0113] Among them, β ij The result is signed.

[0114] S234. Determine the positional relationship between the interpolation node and the plane where the triangular face unit is located according to the projection ratio.

[0115] It should be noted that, in the embodiments of the present invention, the planes where the triangular face units are located refer to planes of infinite size, while the triangular face units refer to face units of finite size.

[0116] Specifically, when β ij >1, the interpolation node P is located outside the current arbitrary polyhedral mesh unit relative to the face i;

[0117] When β ij =1, the interpolation node P is located in the plane where the face i is located;

[0118] When β ij When <1, the interpolation node P is located inside the current arbitrary polyhedral mesh unit relative to the face i.

[0119] Therefore, only when β ij When both are greater than 1, the interpolation node P is located outside the current arbitrary polyhedral mesh surface unit i, and in other cases it can be regarded as being located inside the current arbitrary polyhedral mesh surface unit i.

[0120] S240: for any polygonal surface unit whose grid point number is not greater than a preset grid point number threshold in the polyhedral grid unit, determine the positional relationship between the first construction vector and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold, and obtain the positional relationship between the interpolation node and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold;

[0121] It should be understood that, for any polygonal surface unit whose grid point number is not greater than a preset grid point number threshold in a polyhedral grid unit, the positional relationship between the first construction vector and the polygonal surface unit can be directly judged to determine the positional relationship between the interpolation node and the polygonal surface unit.

[0122] S250, determining the positional relationship between the interpolation node and the arbitrary polyhedral mesh unit according to the positional relationship between the interpolation node and each triangular face unit of the polygonal face unit and / or the positional relationship between the interpolation node and the polygonal face unit whose grid point number is not greater than a preset grid point number threshold.

[0123] In an embodiment of the present invention, the above-mentioned judgment method is adopted to cyclically judge the positional relationship between the interpolation node and each face of the current arbitrary polyhedral mesh unit in turn. If the interpolation node is located inside the unit relative to all faces of the current arbitrary polyhedral mesh unit, the interpolation node is located inside the unit. Otherwise, the interpolation node is located outside the unit.

[0124] It should be understood that if the interpolation node is judged to be outside the current arbitrary polyhedral mesh unit, it is necessary to continue to search for the host unit of the interpolation node. If the interpolation node is judged to be outside the current arbitrary polyhedral mesh unit, the first construction vector MP has an intersection with at least one plane where a mesh surface unit is located. Therefore, the grid surface unit numbers and the coordinates of the intersections of all the planes where the surface units are located and MP have intersections are recorded and stored, and the recorded grid surface units and intersections are further judged. Since what is recorded here is the intersection of the first construction vector MP and the plane where the surface unit is located, only when the intersection falls within the polygon of the surface unit does the first construction vector MP and the surface unit truly intersect, so it is necessary to continue to judge whether the intersection falls within the polygon.

[0125] In the embodiment of the present invention, the search path of the host unit is determined according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit, such as Figure 6 As shown, including:

[0126] S410, determining whether there is an intersection between the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located;

[0127] It should be understood here that the first construction vector may pass through the polygonal surface unit of the arbitrary polyhedral mesh unit only if there is an intersection between the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located; otherwise, the first construction vector will never pass through the polygonal surface unit of the arbitrary polyhedral mesh unit.

[0128] S420. If the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, then determine whether the first construction vector passes through the polygonal surface unit of the arbitrary polyhedral mesh unit based on the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit to determine the search path of the host unit.

[0129] Specifically, according to the above judgment results, the polygonal surface units in the plane where the polygonal surface units with intersections are located are recorded, and the positional relationship between the intersections and each edge of the polygonal surface units is judged one by one to determine whether the intersection is located in the polygonal surface unit. If the intersection is not in the polygonal surface unit, the polygonal surface unit is skipped, otherwise the number of the polygonal surface unit is recorded, and then the other side unit of the polygonal surface unit is obtained according to the recorded number of the polygonal surface unit and the network topology information. The other side unit is the next target unit to be searched, and the number of the next target unit to be searched is recorded, and the above search process is repeated to search for the host unit.

[0130] Specifically, if the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, the search path of the host unit is determined according to the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit, such as Figure 7 As shown, including:

[0131] S421, if the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, then record the polygonal surface unit in the plane where the polygonal surface unit with the intersection is located and the corresponding intersection coordinates;

[0132] In the embodiment of the present invention, after determining whether the first construction vector intersects with the plane where the polygonal surface unit is located, the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is located and the corresponding intersection point coordinates are recorded.

[0133] S422, determining the positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is located and the intersection point one by one, to determine whether the intersection point is located in the polygonal surface unit;

[0134] The positional relationship between the polygonal surface units in the plane where the polygonal surface units with intersection points are located and the corresponding intersection points are judged one by one to determine whether the intersection points are located in the polygonal surface units.

[0135] In the embodiment of the present invention, specifically, determining the positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is located and the intersection point one by one to determine whether the intersection point is located in the polygonal surface unit includes:

[0136] (1) determining a projection plane, and projecting the polygonal surface units and intersection points in the plane where the polygonal surface units with intersection points are located onto the projection plane, to obtain projected polygonal surface units and projected intersection points located on the projection plane;

[0137] It should be understood that in a three-dimensional grid, the positional relationship between the intersection points and the polygonal surface units is in space, and the positional relationship between the intersection points and the polygonal surface units in space is complex to judge, so the positional relationship between the intersection points and the polygonal surface units in space is first converted into the positional relationship between the projected intersection points and the projected polygonal surface units in the plane through projection.

[0138] In an embodiment of the present invention, in order to reduce the influence of projection on the positional relationship between the intersection point and the polygonal surface unit, the projection direction is optimized. First, the unit surface normal vector of the polygon surface is calculated, and the direction of projection is determined according to the size of the component of the unit surface normal vector in the X, Y, and Z directions. The priority principle is to project in the direction with the largest component of the unit surface normal vector (for example, if the X component of the unit surface normal vector is the largest, then project onto the YZ plane).

[0139] After selecting the projection plane, project the polygonal surface units and intersection points onto the projection plane. Figure 8 For example, after projecting the intersection point P and the polygonal surface unit ABCDEF onto the plane, they are converted into the projected intersection point P1 and the projected polygonal surface unit A1B1C1D1E1F1. To know the positional relationship between the intersection point P and the polygonal surface unit ABCDEF, we only need to determine the positional relationship between the projected intersection point P1 and the projected polygonal surface unit A1B1C1D1E1F1.

[0140] (2) Determine the positional relationship between the projection intersection point and the projection polygonal surface unit in the projection plane to determine whether the intersection point is located within the polygonal surface unit.

[0141] It should be understood that determining the positional relationship between the projection intersection point and the projection polygonal surface unit in the plane is mainly to determine whether the projection intersection point is within the projection polygonal surface unit. The above determination can be converted into determining the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit.

[0142] Specifically, judging the positional relationship between the projection intersection point and the projection polygonal surface unit in the projection plane to determine whether the intersection point is located within the polygonal surface unit includes:

[0143] (21) Determine the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit according to the parallel ray method;

[0144] In the embodiment of the present invention, the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit may be determined by using the parallel ray method.

[0145] Specifically, the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit is determined according to the parallel ray method, including:

[0146] (211) projecting the projection polygonal surface unit under parallel rays to form a plurality of projection trapezoidal regions, wherein each projection trapezoidal region corresponds to an edge of the projection polygonal surface unit;

[0147] (212) Counting the number of times the projection intersection point appears in each projection trapezoidal area;

[0148] (213) if the number of projection intersection points appearing in the projection trapezoidal region is an even number including 0, it is determined that the projection intersection point is located outside the projection polygonal unit;

[0149] (214) If the number of projection intersection points that appear in the projection trapezoidal area is an odd number, it is determined that the projection intersection point is located within the projection polygonal unit.

[0150] by Fig. 9 Take the polygon ABCDE shown as an example: when the polygon ABCDE is illuminated by the parallel rays on the right, each of its sides (such as AB, BC, etc.) will form a trapezoidal area with its respective projections on the Y-axis (such as A1B1, B1C1, etc.), such as ABB1A1, BCC1B1, etc. Therefore, it is only necessary to count the number of intersections in these trapezoidal areas. If the intersection is in the trapezoidal area corresponding to a certain side, then the count N is added by 1, and finally it is determined whether N is an even number. If N is an even number (including 0), it means that the intersection is not inside the polygon; otherwise, the intersection is inside the polygon. Fig. 9 As shown, the count N of the projected intersection point P1 is 2 (inside both trapezoids ABB1A1 and EDD1E1), so the projected intersection point P1 is not inside the projected polygonal surface unit ABCDE; the count N of the projected intersection point P2 is 1 (only inside the trapezoid AEE1A1), so the projected intersection point P2 is inside the projected polygonal surface unit ABCDE, and similarly, the count N of the projected intersection point P3 is 0 (not inside any trapezoid), so the projected intersection point P3 is also not inside the projected polygonal surface unit ABCDE.

[0151] In the above method, the specific implementation method of judging whether a point is in the trapezoidal region is to first judge whether the y coordinate of the projected intersection point is between the y coordinate of the line segment AB according to the positional relationship between the coordinates of the point and the edge (such as AB). Only if it is between the y coordinates of AB, it is possible to be in the trapezoidal region. If the y coordinate of the projected intersection point is between the y coordinates of the line segment AB, then according to the straight line formula of the line segment AB, further judge whether the projected intersection point is on the left side of the straight line AB. If it is on the left side of the straight line AB, the projected intersection point is inside the trapezoid, otherwise the projected intersection point is not inside the trapezoid.

[0152] (22) if the projection intersection point is located within the projection polygonal surface unit, determining that the intersection point is located within the polygonal surface unit;

[0153] (23) If the projection intersection point is outside the projection polygonal surface unit, it is determined that the intersection point is outside the polygonal surface unit.

[0154] It should be understood that the above determination method can accurately determine whether the intersection point is located in the polygonal surface unit. Only when the intersection point is located in the polygonal surface unit, the first construction vector MP really passes through the polygonal surface unit of the arbitrary polyhedral mesh unit. Usually, the first construction vector will only pass through one mesh surface unit, and the number of the mesh surface unit will be recorded. In a few cases, the first construction vector will pass through the common edge of two surface units. In very rare cases, the vector will pass through the common point of multiple surface units. In these cases, all the surface units with common edges or common points are recorded and stored.

[0155] S423, if the intersection point is located in the polygonal surface unit, then record the number of the polygonal surface unit;

[0156] S424, according to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined.

[0157] It should be understood that, if the above intersection point is determined to be located within the polygonal surface unit, it can be determined that the first construction vector intersects with the polygonal surface unit, and the next search target unit can be further determined.

[0158] Specifically, according to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined, including:

[0159] (a1) if the number of the recorded polygonal surface unit is 1, the adjacent unit on the other side of the coplanar surface of the recorded polygonal surface unit is taken as the next target grid unit;

[0160] (a2) if there are multiple numbers of the recorded polygonal surface units, randomly select a polygonal surface unit, and determine whether the randomly selected polygonal surface unit has an adjacent unit on the other side of the same plane;

[0161] (a3) if the randomly selected polygonal surface unit has a coplanar adjacent unit on the other side, then the coplanar adjacent unit on the other side of the randomly selected polygonal surface unit is used as the next target grid unit;

[0162] (a4) If the randomly selected polygonal surface unit does not have an adjacent unit on the other side of the same plane, a polygonal surface unit is randomly selected from the remaining recorded polygonal surface units until the next target grid unit is determined.

[0163] It should be understood that when there is only one polygonal surface unit number in the record, the best direction for the host unit search is uniquely determined, that is, the adjacent unit on the other side of the recorded polygonal surface unit is the next target grid unit. In the CFD calculation grid, the grid information usually already contains the adjacent unit topology information of the surface. Even if the adjacent unit topology information of the surface is not directly given in some data formats, and only the unit topology information is given, the surface topology information can be constructed based on the unit topology information. When multiple polygonal surface unit numbers are recorded, one of the polygonal surface units is selected by random selection. If the polygonal surface unit has an adjacent unit, the adjacent unit is the next target grid unit; if the polygonal surface unit does not have an adjacent unit, one is selected from the remaining polygonal surface units recorded until the number of the next target grid unit is determined.

[0164] It should be noted here that, in the CFD calculation grid, under normal circumstances, that is, when there is no error in the calculation, if there is only one polygonal surface unit number in the record, the best search direction of the host unit can be uniquely determined through the unique polygonal surface unit. In other words, under normal circumstances, the unique polygonal surface unit will not be a boundary surface, so the unique polygonal surface unit will have adjacent units; and if the unique polygonal surface unit is a boundary surface and there are no adjacent units, it is mostly because there are holes in the grid unit, causing the search path to be blocked by the holes. At this time, a local traversal search is usually performed on the points where the search failed to determine the host unit.

[0165] For the next target grid cell, continue to determine whether the interpolation node is located in the next target grid cell by the above determination method. If so, the next target grid cell is the host cell of the interpolation node. If not, repeat the above process to continue searching for the target grid cell until the host cell of the interpolation node is found.

[0166] It should be noted here that the next target grid unit may include a polyhedral grid unit or a regular grid unit, which is not limited here.

[0167] In summary, the host unit search method for any polyhedral mesh provided by the present invention constructs a vector from the center of the mesh unit to the interpolation node, determines the positional relationship between the vector and each face of the mesh unit, and then determines the positional relationship between the node and the mesh unit. In addition, the host unit search direction is determined based on whether the vector from the center of the mesh unit to the node intersects with the mesh surface unit polygon, and the positional relationship between all units on the search path and the node is determined until the host unit of the node is found. The present invention can handle any polyhedral mesh unit form, and the search method is also applicable even if any polyhedral mesh unit is a concave mesh unit that is slightly concave due to too many faces and points and numerical errors in the coordinates. Therefore, the method has both good search efficiency and search robustness.

[0168] The implementation process of the host unit search method for an arbitrary polyhedral grid of the present invention is described in detail below in conjunction with specific embodiments.

[0169] The flow field of a centrifugal water pump is numerically simulated, and the honeycomb arbitrary polyhedron grid is used in the whole domain, such as Fig.10 As shown in the figure, the water pump consists of a blade rotor, a volute, an inlet pipe and an outlet pipe, wherein the blade rotor is a rotating component and the volute is a stationary component. In order to simulate the flow field around the rotating component and the stationary component at the same time, the multi-reference interface method must be used. In this method, in the interface area, the flow field information between the calculation domains needs to be transferred through the interpolation calculation method. Therefore, it is necessary to search for the interpolation point host unit, and then establish the interpolation relationship and construct the interpolation function on this basis.

[0170] Since the computational grid uses a fully honeycomb arbitrary polyhedral grid, and the boundary interface is a curved surface, when the interpolation point is located near the curved surface of an arbitrary polyhedral unit, conventional host unit search methods often have problems with host unit search errors or search failures. The efficient host unit search method applicable to arbitrary polyhedral grids of the present invention can smoothly complete the host unit search for all interpolation points. In the current embodiment, the host unit search takes 0.7 seconds, and the single-step time of the serial calculation of the numerical simulation is 37.9 seconds. The host unit search time is basically negligible compared to the iterative calculation time. The numerical simulation calculation results of the flow field in this embodiment are completed using the host unit search method of the present invention. Fig.11 As shown, the host unit search method provided by the present invention can be applied to any polyhedral grid, and the search is efficient.

[0171] In addition, a self-propulsion numerical simulation of a navigation body is carried out. The computational grid uses a cut-body grid. There are a large number of arbitrary polyhedral grids formed by cutting hexahedrons in the grid. Especially near the surface of the model, the grid unit type is very complex, such as Fig.12In the current embodiment, the navigation body is stationary, while the propeller is rotating. In order to realize the self-propulsion numerical simulation, the current embodiment adopts the overlapping grid method. Fig.12 The overlapping area of ​​the grid can also be seen in . In the overlapping grid algorithm, the flow field transfer at the grid hole boundary adopts the interpolation calculation method, so the search for the host unit of the interpolation point is also involved.

[0172] from Fig.12 It can be seen from the figure that in the root area of ​​the propeller, there is a transition area where the grid changes from dense to sparse. A large surface of the grid unit in the transition area contains multiple small surfaces (for example, there is a grid point in the middle of a tetrahedron, and a tetrahedron is split into 4 small quadrilaterals). If the interpolation point is located near these surfaces, the conventional host unit search often fails. The solver adopts the host unit search method of the embodiment of the present invention, which can successfully complete the host unit search of all interpolation points and can perform stable calculations. The calculation results are shown in FIG. Fig.13 In the current embodiment, the host unit search takes 1.7 seconds, and the single-step time of the serial calculation of the numerical simulation is 56.7 seconds. The host unit search time is also very small compared to the iterative calculation time.

[0173] In summary, the tests of the two embodiments show that the present invention has the ability to search for host units in any polyhedral grid, and the search is also very efficient, and has strong practical value.

[0174] Combine the following Fig.14 The search process of the host unit shown is described in detail.

[0175] SA, start;

[0176] SB, Node = 1; Node represents the node currently performing the host unit search;

[0177] SC, from the starting unit;

[0178] SD, determines the positional relationship between the interpolation point and each surface unit of the current unit;

[0179] SE, determine whether the node is in the cell, if not, execute step SG, if yes, complete the host cell search of the node, then execute step SC, start the host cell search of the next node; and execute the next step;

[0180] SF, determines whether the node Node is Nnodes, if not, executes step SK, if yes, executes step SL; Nnodes represents the total number of interface interpolation points that need to be searched for the host unit;

[0181] SG, determine which planes of the grid cell faces intersect with the vector from the cell center to the interpolation point;

[0182] SH, records all intersection points and intersection surface unit numbers obtained by SG

[0183] SI, determine the positional relationship between the intersection point and the intersecting surface unit polygon, and record the surface unit number of the intersection point in the polygon;

[0184] SJ, determines the next judgment unit according to the situation that the vector from the unit center to the interpolation point passes through the surface unit, and then executes SD;

[0185] SK, Node = Node + 1, then execute step SC;

[0186] SL, search for host unit, end.

[0187] In summary, the host cell search method for an arbitrary polyhedral mesh provided by the present invention performs a host cell search on all interpolation nodes. The search is performed in other component mesh cells. The interpolation node host cell search starts from the starting cell. Each cell on the search path is called a target mesh cell. First, it is determined whether the interpolation point is in the current polyhedral mesh cell. If so, the host cell of the interpolation point is found. If not, the mesh surface cell through which the connection vector between the cell center and the interpolation point passes is found. The adjacent cell on the other side of the mesh surface cell is the next target mesh cell. It is determined again whether the interpolation point is in the current target mesh cell. The above steps are repeated until the host cells of all interpolation points are found. Therefore, based on the vector pointing to the node from the center of the construction unit, the positional relationship between the node and the unit is judged by the ratio of the vector projection. For the situation where there are too many grid points on any polyhedral mesh surface, the method of splitting the polygonal surface is adopted to accurately judge the positional relationship between the node and the mesh unit. The present invention uses projection to convert the positional relationship between the midpoint in space and the polygon into the positional relationship between the midpoint in the plane and the polygon, judges the positional relationship between the intersection and the polygon in the plane, and uses the parallel ray method to efficiently and accurately find which mesh surface unit the vector pointing to the node from the center of the unit passes through, accurately indicate the search direction of the host unit, and provide the most efficient search path.

[0188] It is to be understood that the above embodiments are merely exemplary embodiments used to illustrate the principles of the present invention, but the present invention is not limited thereto. For those of ordinary skill in the art, various modifications and improvements can be made without departing from the spirit and essence of the present invention, and these modifications and improvements are also considered to be within the scope of protection of the present invention.

Claims

1. A host cell search method for an arbitrary polyhedral mesh, characterized in that: include: Constructing a vector from the cell center of any polyhedral mesh cell to the interpolation node to obtain a first construction vector; Determining whether the interpolation node is within the arbitrary polyhedral mesh unit according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located; If the interpolation node is within the arbitrary polyhedral mesh unit, determining the arbitrary polyhedral mesh unit as a host unit of the interpolation node; If the interpolation node is not within the arbitrary polyhedral mesh unit, determining a search path of the host unit according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit; The positional relationship between all grid units on the search path of the host unit and the interpolation node is determined until the host unit of the interpolation node is found.

2. The host cell search method for an arbitrary polyhedral mesh according to claim 1, characterized in that: Judging whether the interpolation node is within the arbitrary polyhedral mesh unit according to the positional relationship between the first construction vector and the plane where each polygonal surface unit of the arbitrary polyhedral mesh unit is located includes: Determine whether there is a polygonal surface unit with a grid point number greater than a preset grid point number threshold in any polyhedral grid unit; Perform full triangle splitting on a polygonal surface unit whose grid point number is greater than a preset grid point number threshold in any polyhedral grid unit, and obtain multiple triangular surface units of the polygonal surface unit whose grid point number is greater than the preset grid point number threshold; Determine the positional relationship between the first construction vector and the plane where each triangular face unit of the polygonal face unit is located, and obtain the positional relationship between the interpolation node and the plane where each triangular face unit of the polygonal face unit is located; For a polygonal surface unit whose grid point number is not greater than a preset grid point number threshold in any polyhedral grid unit, the first construction vector and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold are judged to obtain a positional relationship between the interpolation node and the polygonal surface unit whose grid point number is not greater than the preset grid point number threshold; The positional relationship between the interpolation node and the arbitrary polyhedral mesh unit is determined according to the positional relationship between the interpolation node and each triangular face unit of the polygonal face unit and / or the positional relationship between the interpolation node and the polygonal face unit whose grid point number is not greater than a preset grid point number threshold.

3. The host cell search method for an arbitrary polyhedral mesh according to claim 2, characterized in that: For a polygonal surface unit whose grid point number is greater than a preset grid point number threshold in any polyhedral grid unit, full triangle splitting is performed to obtain multiple triangular surface units of the polygonal surface unit whose grid point number is greater than the preset grid point number threshold, including: Determine the grid point where the maximum inner angle of the polygonal surface unit whose grid point number is greater than a preset grid point number threshold is located; The grid point where the maximum inner angle is located is taken as the vertex, and the vertex is connected to all grid points that are not connected to the vertex to obtain a plurality of triangular face units of the polygonal face unit whose grid point number is greater than a preset grid point number threshold.

4. The host cell search method for an arbitrary polyhedral mesh according to claim 2, characterized in that: Determining the positional relationship between the first construction vector and the plane where each triangular surface unit of the polygonal surface unit is located, obtaining the positional relationship between the interpolation node and the plane where each triangular surface unit of the polygonal surface unit is located, including: Calculate the surface normal vector of the plane where each triangular face unit of the polygonal face unit whose grid point number is greater than a preset grid point number threshold is located; Construct a vector from the cell center of any polyhedral mesh cell to any grid point on each triangular face cell to obtain a second construction vector; Calculate the projection ratio of the first construction vector and the second construction vector on the surface normal vector of the plane where the current triangle surface unit is located; The positional relationship between the interpolation node and the plane where the triangular face unit is located is determined according to the projection ratio.

5. The host cell search method for an arbitrary polyhedral grid according to any one of claims 1 to 4, characterized in that: Determining a search path of a host unit according to the polygonal surface unit through which the first construction vector passes through the arbitrary polyhedral mesh unit comprises: Determine whether there is an intersection between the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located; If the first construction vector has an intersection with the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located, then it is determined whether the first construction vector passes through the polygonal surface unit of the arbitrary polyhedral mesh unit based on the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit to determine the search path of the host unit.

6. The host cell search method for an arbitrary polyhedral mesh according to claim 5, characterized in that: If the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, determining the search path of the host unit according to the positional relationship between the intersection and the polygonal surface unit of the arbitrary polyhedral mesh unit includes: If the first construction vector and the plane where the polygonal surface unit of the arbitrary polyhedral mesh unit is located have an intersection, then the polygonal surface unit in the plane where the polygonal surface unit with the intersection is located and the corresponding intersection coordinates are recorded; The positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is located and the intersection point is judged one by one to determine whether the intersection point is located in the polygonal surface unit; If the intersection point is within a polygonal surface unit, the number of the polygonal surface unit is recorded; According to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined.

7. The host cell search method for an arbitrary polyhedral mesh according to claim 6, characterized in that: The positional relationship between each edge of the polygonal surface unit in the plane where the polygonal surface unit with the intersection point is recorded and the intersection point is judged one by one to determine whether the intersection point is located in the polygonal surface unit, including: Determine the projection plane, and project the polygonal surface units and the intersection points in the plane where the polygonal surface units with the intersection points are located onto the projection plane, so as to obtain the projected polygonal surface units and the projected intersection points located on the projection plane; The positional relationship between the projection intersection point and the projection polygonal surface unit is determined in the projection plane to determine whether the intersection point is located within the polygonal surface unit.

8. The host cell search method for an arbitrary polyhedral mesh according to claim 7, characterized in that: Determining the positional relationship between the projection intersection point and the projection polygonal surface unit in the projection plane to determine whether the intersection point is located within the polygonal surface unit includes: Determine the positional relationship between the projection intersection point and each edge of the projection polygonal surface unit according to the parallel ray method; If the projection intersection point is located within the projection polygonal surface unit, determining that the intersection point is located within the polygonal surface unit; If the projection intersection point is located outside the projection polygonal surface unit, it is determined that the intersection point is located outside the polygonal surface unit.

9. The host cell search method for an arbitrary polyhedral grid according to claim 8, characterized in that: The positional relationship between the projection intersection point and each edge of the projection polygonal surface unit is determined according to the parallel ray method, including: Projecting the projection polygonal surface unit under parallel rays to form a plurality of projection trapezoidal regions, wherein each projection trapezoidal region corresponds to an edge of the projection polygonal surface unit; Count the number of times the projection intersection point appears in each projection trapezoidal area; If the number of projection intersections that appear in the projection trapezoidal region is an even number including 0, it is determined that the projection intersection is located outside the projection polygonal unit; If the number of projection intersection points appearing in the projection trapezoidal region is an odd number, it is determined that the projection intersection point is located within the projection polygonal unit.

10. The host cell search method for an arbitrary polyhedral grid according to claim 6, characterized in that: According to the recorded polygonal surface unit number and the mesh topology information of any polyhedral mesh unit, the adjacent unit on the other side coplanar with the polygonal surface unit is obtained, and the adjacent unit on the other side is used as the next target mesh unit, and the host unit search process is repeated until the host unit of the interpolation node is determined, including: If the number of the recorded polygonal surface unit is 1, the adjacent unit on the other side of the coplanar surface of the recorded polygonal surface unit is taken as the next target grid unit; If there are multiple numbers of the recorded polygonal surface units, a polygonal surface unit is randomly selected, and it is determined whether the randomly selected polygonal surface unit has an adjacent unit on the other side of the same plane; If the randomly selected polygonal surface unit has a coplanar adjacent unit on the other side, the coplanar adjacent unit on the other side of the randomly selected polygonal surface unit is used as the next target grid unit; If the randomly selected polygonal surface unit does not have an adjacent unit on the other side of the same plane, a polygonal surface unit is randomly selected from the remaining recorded unit polygonal surfaces until the next target grid unit is determined.

Citation Information

Patent Citations

  • Efficient host unit searching method applicable to coupling CFD calculation of multiple sets of complex grids

    CN114004174A

  • Non-structural nested grid calculation method suitable for any unit type

    CN116484702A