CN-116432436-B - Three-dimensional embedded discrete fracture network geometry processing method
Abstract
The invention discloses a three-dimensional embedded discrete fracture network geometric processing method which is suitable for fractures inclined at any angle, and comprises the steps of reading fracture data of each fracture, calculating 4 vertex coordinates of the fracture, respectively calculating fracture fragments when the inclination angle of the fracture is not equal to 90 degrees and is equal to 90 degrees, and solving the problem that the geometric processing of the fracture at any inclination angle in a three-dimensional EDFM model is difficult.
Inventors
- Chang Tai
- CHEN XIYU
Assignees
- 西南石油大学
Dates
- Publication Date
- 20260505
- Application Date
- 20230329
Claims (8)
- 1. The three-dimensional embedded discrete fracture network geometric processing method is characterized by being suitable for fractures inclined at any angle, and specifically comprises the following steps: step 1, reading crack data of each crack, wherein the crack data comprises a crack center coordinate Pc (x, y, z), an azimuth angle alpha, an inclination angle beta, a crack length L, a crack height H and a crack width W; Step 2, calculating coordinates of 4 vertexes p0, p1, p2 and p3 of the crack through two rotations according to the read crack data, wherein the first rotation is counterclockwise rotation of an azimuth angle alpha around a Z axis, and the second rotation is clockwise rotation of the azimuth angle alpha on the basis of a coordinate system obtained by the first rotation; step 3, when the inclination angle beta of the crack is not equal to 90 degrees, projecting the crack to the XY direction to obtain a projection pattern PF, and calculating { Xmin, xmax, ymin, ymax } in the crack coordinates; Step 4, establishing a grid number set MC corresponding to the current crack, traversing X, Y coordinates of grid centers of all grids, and if the coordinates are in the { Xmin, xmax, ymin, ymax } range, putting the current grid number into the set MC; Step 5, dividing the set MC into two subsets of an inside and a cross, traversing 4 vertex coordinates of grids contained in the set MC, wherein inSideNumber is the number of the vertices of the current grid in the PF graph, if inSideNumber is equal to 4, putting the grid number into the inside, if inSideNumber is more than 0 and less than 4, putting the grid number into the cross, and if inSideNumber is equal to 0, removing the grid number from the MC; Step 6, establishing a set FS of split crack fragments, directly forming 4 vertexes into crack fragments according to a clockwise sequence for grids in the inside, and putting the crack fragments into the set FS; Step 7, dividing the edge part into two parts of a vertex and a middle intersection point again, processing grids at the edge through a convex hull algorithm, and putting the found convex polygon composition crack fragments into a set FS; Step 8, calculating a plane equation of a plane where the crack is located through any three points in the vertex coordinates obtained in the step 2, and traversing the set FS to bring X, Y coordinates in each vertex coordinate of all crack fragments into the plane equation to obtain a correct Z coordinate; step 9, when the inclination angle beta of the crack is equal to 90 degrees, directly calculating intersection point coordinates of the p0-p1 and the grid through interpolation to obtain all X, Y coordinates after the crack is segmented, calculating intersection point coordinates of the p0-p3 and the grid to obtain all Z coordinates after the crack is segmented, and combining X, Y, Z coordinates in sequence to obtain all segmented crack fragments; and 10, calculating the intersection point coordinates of each crack segment and the Z axis, and calculating whether each edge of the crack segment and the intersection point coordinates containing the Z axis are included, if so, performing secondary division on the crack segment, and further dividing the crack segment into two cracks by using a convex hull algorithm.
- 2. The method for processing the three-dimensional embedded discrete fracture network geometry according to claim 1, wherein the step 2 specifically comprises the following steps: Step 2.1, calculating coordinates of points pe (x, y, z) and pb (x, y, z) of a line which crosses a center coordinate Pc of the crack on the crack plane and is parallel to the XY plane and intersects the crack edge through the crack length L, and calculating coordinates pb_p (x, y, z) and pe_p (x, y, z) after counterclockwise rotation by alpha; Step 2.2, calculating projection coordinates p0_p, p1_p, p2_p, p3_p of the crack vertex in the rotated coordinate system by combining coordinates of pb_p (x, y, z) and pe_p (x, y, z) with the crack length L, the crack height H and the inclination angle beta; And S2.3, rotating the coordinate system clockwise for alpha restoration to obtain coordinates (x, y, z) of each vertex of the crack in the original coordinate system.
- 3. The method for processing the three-dimensional embedded discrete fracture network geometry according to claim 2, wherein the calculation formula of the coordinates before and after rotation is: first counter-clockwise rotation p_p=p×rz (θ), second clockwise rotation p=p_p×rz (- θ); wherein the rotation coordinate matrix is:
- 4. A method for geometric processing a three-dimensional embedded discrete fracture network according to claim 1, 2 or 3, wherein in step 7, the convex hull algorithm adopts GRAHAM SCAN algorithm, the convex hull containing the most points is found in the initial point set, then the points are ordered by GRAHAM SCAN algorithm to construct the convex hull, and finally the coordinate set of the ordered points is output.
- 5. The method for geometric processing of a three-dimensional embedded discrete fracture network according to claim 4, wherein the step 7 specifically comprises the following steps: Step 7.1, for the crack vertex, firstly extracting the intersection point coordinate P_f of the current crack vertex P, which is the closest to the current crack vertex P in the clockwise direction, and the intersection point coordinate P_b of the current crack vertex P, which is the closest to the current crack vertex P in the anticlockwise direction, to form an initial point set PC; step 7.2, traversing the cross set constructed in the step 5, calculating the distance between the center of each grid in the cross and P, namely the grid where P is located when the distance is nearest, and extracting 4 vertex coordinates of the grid; step 7.3, preliminarily determining that the number of the vertexes of the convex polygon is (3, 4 and 5) by judging the coordinates of 4 vertexes of the grid and the coordinates of P_f and P_b; Step 7.4, regarding the intersection point between the crack vertices, two adjacent intersection points are P_f and P_b, the crack center Pc is corresponding P, and the initial point set PC only comprises P_f and P_b; step 7.5, sorting the points in the PC through GRAHAM SCAN algorithm, finally outputting vertex coordinates contained in the crack fragments, and adding the crack fragments into the FS set; and 7.6, repeating the steps 7.1-7.5 to finish the crack fragments at the crack edge.
- 6. The method of claim 5, further comprising determining which vertices in the mesh are assigned to the fracture fragments in step 7.3, specifically as follows: 3 vertexes, wherein the crack segment does not contain grid vertexes, and P, P _f and P_b directly form the crack segment without judgment; the 4 vertexes, namely 1 grid vertex is contained in the crack segment, two judging points Pj1 (P_ f.x, P_ b.y) and Pj2 (P_ b.x, P_ f.y) are constructed, the vertex with the same coordinate with the Pj1 or Pj2 in the grid vertexes is the vertex of the crack segment, and the vertex is added into the PC; 5 vertexes, namely 2 grid vertexes are included in the crack segment, two vectors V 1 (P-P_f) and V 2 (P_P_b) are constructed, S 1 =v 1 x v 2 is calculated, 2 vertexes P ci and P ci+1 of the grid are traversed clockwise in sequence, two vectors V 3 (P-P ci ) and V 4 (P-P ci+1 are constructed, S 2 =v 3 x v 4 is calculated, if S 1 *s 2 is greater than 0, P ci and P ci+ are crack segment vertexes, and2 vertexes are added into PC.
- 7. The method for three-dimensional embedded discrete fracture network geometry processing according to claim 6, wherein in step 7.4, the method for determining mesh vertices is specifically as follows: 3 vertexes, wherein the crack segment comprises 1 grid vertex, two judging points Pj1 (P_ f.x, P_ b.y) and Pj2 (P_ b.x, P_ f.y) are constructed, the vertex with the same coordinate with the Pj1 or Pj2 in the grid vertex is the vertex of the crack segment, and the vertex is added into the PC; 4 vertexes, namely 2 grid vertexes are included in the crack segment, two vectors V 1 (P-P_f) and V 2 (P_P_b) are constructed, S 1 =v 1 x v 2 is calculated, 2 vertexes P ci and P ci+1 of the grid are traversed clockwise in sequence, two vectors V 3 (P-P ci ) and V 4 (P-P ci+1 are constructed, S 2 =v 3 x v 4 is calculated, if S 1 *s 2 is greater than 0, P ci and P ci+ are crack segment vertexes, and2 vertexes are added into PC.
- 8. The method of geometric processing a three-dimensional embedded discrete fracture network of claim 7, further comprising the steps of: and step 11, if a plurality of cracks exist, repeating the steps 1-10 to finish the geometric pretreatment process of all the included cracks of the complex crack network.
Description
Three-dimensional embedded discrete fracture network geometry processing method Technical Field The invention relates to the technical field of oil and gas field development numerical simulation, in particular to a three-dimensional embedded discrete fracture network geometric processing method. Background When complex fracture network simulation research is carried out by a conventional numerical simulation method such as discrete elements, finite differences and the like, the grid division process is complex, and the calculated amount is huge. Under the condition of a three-dimensional model, a complex crack network can not even be subjected to grid division, or the calculated grid quality is poor, and the basic requirement of numerical simulation on the grid can not be met. Therefore, researchers have proposed an embedded discrete fracture network model (EDFM) which expands the fracture and matrix considered by the conventional numerical simulation method into a set of grids, divides the fracture and matrix into two independent grids, and solves the problem of complex fracture network pretreatment to a certain extent. The most important thing in EDFM model is to identify several fracture fragments formed after each complete fracture is divided by matrix grid. In the pre-processing method of EDFM models proposed by the current research, most of the pre-processing method is aimed at two-dimensional EDFM models, only a small part of the pre-processing method is developed for three-dimensional EDFM, and in the three-dimensional EDFM research, most of the pre-processing method is special cases when the inclination angle is 90 degrees (the included angle between a crack and an X axis is an azimuth angle and the included angle between the crack and an XY plane is an inclination angle), and few people propose a general algorithm aiming at any inclination angle. Under the two-dimensional condition, the matrix is a plane, the crack is a line segment, at the moment, the crack is divided into a plurality of line segments by the matrix grid, and the divided crack segments can be easily identified by searching the intersection point coordinates of the crack short line and the grid. However, under the three-dimensional EDFM model, the crack rises from a line segment to a plane, and when the crack is vertical to the ground of the matrix, the pattern of the crack divided by the matrix grid is rectangular or parallelogram no matter what azimuth angle is, and the shape is regular and easy to identify. However, when the inclination angle is not 90 °, the fracture plane is divided into polygons including 3-6 vertices by the matrix grid according to the azimuth angle, and the difficulty of recognition increases. Disclosure of Invention In order to solve the problem that the geometric treatment of any inclination angle crack in a three-dimensional EDFM model is difficult, the invention provides a three-dimensional embedded discrete crack network geometric treatment method, which belongs to a general geometric treatment method. In order to achieve the purpose, the technical scheme adopted by the invention is that the three-dimensional embedded discrete fracture network geometric processing method is suitable for any-angle inclined fracture, and specifically comprises the following steps: step 1, reading crack data of each crack, wherein the crack data comprises a crack center coordinate Pc (x, y, z), an azimuth angle alpha, an inclination angle beta, a crack length L, a crack height H and a crack width W; Step 2, calculating coordinates of 4 vertexes p0, p1, p2 and p3 of the crack through two rotations according to the read crack data, wherein the first rotation is counterclockwise rotation of an azimuth angle alpha around a Z axis, and the second rotation is clockwise rotation of the azimuth angle alpha on the basis of a coordinate system obtained by the first rotation; step 3, when the inclination angle beta of the crack is not equal to 90 degrees, projecting the crack to the XY direction to obtain a projection pattern PF, and calculating { Xmin, xmax, ymin, ymax } in the crack coordinates; Step 4, establishing a grid number set MC corresponding to the current crack, traversing X, Y coordinates of grid centers of all grids, and if the coordinates are in the { Xmin, xmax, ymin, ymax } range, putting the current grid number into the set MC; Step 5, dividing the set MC into two subsets of an inside and a cross, traversing 4 vertex coordinates of grids contained in the set MC, wherein inSideNumber is the number of the vertices of the current grid in the PF graph, if inSideNumber is equal to 4, putting the grid number into the inside, if inSideNumber is more than 0 and less than 4, putting the grid number into the cross, and if inSideNumber is equal to 0, removing the grid number from the MC; Step 6, establishing a set FS of split crack fragments, directly forming 4 vertexes into crack fragments according to a clockwise sequence f