Sand body splitting method and device
By obtaining and updating the pound mark, formation name and top and bottom depth data from the target data table, and using arrays to process the sand body splitting layer, the problem of difficulty in both accuracy and efficiency of the sand body splitting layer in the existing technology is solved, and an efficient and accurate sand body splitting layer is achieved.
Patent Information
- Application Number
- CN202110102137.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-01-26
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2041-01-26
AI Technical Summary
The existing sand body splitting work plan is difficult to take into account both accuracy and efficiency, and it requires high requirements for staff to write VBA code.
By obtaining pound mark data, strata name data and top and bottom depth data from the target data table, storing these data using an array, and updating them according to the missing data, finally, the sand bodies in the sand body surface are split one by one to generate the sand body split result.
It provides a unified and simple working method, which greatly improves the working efficiency and accuracy of the sand body split layer, so that efficient sand body split layer can be achieved without writing VBA code.
Smart Images

Figure CN114791802B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of data processing, and in particular to a sand body splitting method and device. Background Art
[0002] The process of oil exploration and development in a block is long, wide-ranging, involving many disciplines, and the experts are closely connected. The work of a certain stage needs to comprehensively analyze the work results of one or more different departments or disciplines in the previous stage before other work can be carried out in this stage. For example, the sand body splitting work is the basic work that reservoir engineers in the development stage must complete in order to clearly understand the status of the sand body in the target formation based on the sand body information provided by the logging professional department in the previous stage and the stratification information provided by the geological department, based on the top and bottom depths of the sand body and the top and bottom depths of the stratification. The existing sand body splitting work plan cannot take into account both accuracy and efficiency, or has high requirements for staff to write VBA codes. Summary of the invention
[0003] The invention provides a sand body splitting method and a device, the method provides a unified and simple working mode, and greatly improves the working efficiency and accuracy of the sand body splitting.
[0004] In the first aspect, an embodiment of the present invention provides a sand body splitting method, the method comprising: obtaining well number data, formation name data of the well number data and top and bottom depth data of the formation name data from a target data table; using an array to store the well number data, the top and bottom depth data and the formation name data; generating updated formation name data and updated top and bottom depth data according to the formation name data, the well number data and the top and bottom depth data stored in the array; the updated formation name data includes missing formation name data; the updated top and bottom depth data includes the top and bottom depth data of the missing formation name data; splitting the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data to obtain a sand body splitting result.
[0005] In a second aspect, an embodiment of the present invention further provides a sand body splitting device, which includes: an acquisition module, used to acquire well number data, formation name data of the well number data and top and bottom depth data of the formation name data from a target data table; a storage module, used to store the well number data, the top and bottom depth data and the formation name data using an array; an update module, used to generate updated formation name data and updated top and bottom depth data according to the formation name data, the well number data and the top and bottom depth data stored in the array; the updated formation name data includes missing formation name data; the updated top and bottom depth data includes the top and bottom depth data of the missing formation name data; a splitting module, used to split the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data to obtain a sand body splitting result.
[0006] In a third aspect, an embodiment of the present invention further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned sand body splitting method when executing the computer program.
[0007] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for executing the above-mentioned sand body splitting method.
[0008] The embodiments of the present invention bring the following beneficial effects: the embodiments of the present invention provide a sand body splitting scheme, which first obtains well number data, formation name data of the well number data, and top and bottom depth data of the formation name data from a target data table; uses an array to store the well number data, top and bottom depth data, and formation name data; generates updated formation name data and updated top and bottom depth data according to the formation name data, well number data, and top and bottom depth data stored in the array; the updated formation name data includes missing formation name data; the updated top and bottom depth data includes the top and bottom depth data of missing formation name data; the sand bodies in the sand body table are split one by one according to the well number data, the updated top and bottom depth data, and the updated formation name data to obtain the sand body splitting result. The embodiments of the present invention can automatically split the sand bodies in the sand body table one by one according to the well number data, the formation name data of the well number data, and the top and bottom depth data of the formation name data, provide a unified and simple working method, and greatly improve the working efficiency and accuracy of the sand body splitting.
[0009] Other features and advantages of the present invention will be described in the following description, and partly become apparent from the description, or understood by practicing the present invention. The purpose and other advantages of the present invention are realized and obtained by the structures particularly pointed out in the description, claims and drawings.
[0010] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0012] Figure 1 A flow chart of a sand body splitting method provided by an embodiment of the present invention;
[0013] Figure 2 A schematic diagram of sand body splitting provided in an embodiment of the present invention;
[0014] Figure 3 A schematic diagram of a dialog box for inputting effective interlayer thickness provided in an embodiment of the present invention;
[0015] Figure 4 A sand body splitting flow chart provided for an embodiment of the present invention;
[0016] Figure 5 A flow chart for filling in missing pseudo top and bottom depths of formations provided in an embodiment of the present invention;
[0017] Figure 6 A single sand body splitting flow chart for well logging interpretation provided by an embodiment of the present invention;
[0018] Figure 7 A structural block diagram of a sand body splitting device provided in an embodiment of the present invention;
[0019] Figure 8 A structural block diagram of another sand body splitting device provided in an embodiment of the present invention;
[0020] Fig. 9 A structural block diagram of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0021] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments 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 creative work are within the scope of protection of the present invention.
[0022] At present, the methods of sand body splitting vary from person to person, and there is no unified implementation method. But they can be roughly divided into three categories:
[0023] 1. For those who do not know how to use Excel formulas or write VBA codes, first add a column as a stratification column in the sand body table, then visually compare the sand body depth and stratification depth, find the formation name corresponding to the sand body in the stratification table, and manually enter the formation name in the corresponding position (see Table 4 and Table 9) to complete the sand body splitting of the study area.
[0024] 2. For those who are proficient in using Excel formulas but cannot write VBA codes, separate the sand body (Table 1) and stratification (Table 2) into two different Excel tables, and sort them in the same way according to the same fields. Then insert a column in the sand body table as the formation name (also called stratification) column, and use Excel's built-in search formula in this column. According to the well number and depth in the two tables, find the formation name where the sand body is located from the stratification table, and automatically fill it in the corresponding position (Table 3) to complete the sand body splitting of the study area.
[0025]
[0026] Table 1
[0027]
[0028] Table 2
[0029]
[0030] Table 3
[0031]
[0032] Table 4
[0033] 3. Those who can write VBA codes can write codes according to the data and complete the sand body splitting of the study area in their own way (see Table 3).
[0034] At present, among the three types of sand body splitting working methods mentioned above, the manual visual depth method has a higher accuracy rate, but the efficiency is low; the Excel formula method greatly improves the work efficiency in terms of speed compared with the manual visual depth method, but the error rate is higher, such as Figure 2The several relationships between sand bodies and stratification that appear in the table can only be used for sand bodies whose top and bottom depths are located in the same stratum, that is, only the stratum name of the sand body whose stratification relationship belongs to S4 type can be correctly found, and the correct stratum name of sand bodies of other types of sand body stratification relationships cannot be found; in addition, because the formula is directly entered into the cells of the table, in the absence of protection measures, the formula is accidentally modified and it is not easy to find that the error resulting in incorrect results often occurs. Therefore, it is difficult for people without experience in using Excel formulas to correctly use the Excel table with formulas provided by others to complete this work. At this time, they have to return to the working method of manual visual depth estimation.
[0035] The VBA code writing method also has high work efficiency and can reduce the error rate. However, because the data provided has no fixed format, the VBA macro code needs to be modified according to the actual situation of the data to complete the sand body splitting work. Therefore, it is difficult for people without programming foundation to correctly use the macro provided by others to complete this work. When the macro cannot be used, it also returns to the manual visual depth working method.
[0036] Based on this, a sand body splitting method and device provided in an embodiment of the present invention, by writing a program, using database technology, enumerating all possible situations of sand body stratification relationships, and performing corresponding processing on various relationships, provides a unified working method with high efficiency and high accuracy for sand body splitting work.
[0037] To facilitate understanding of this embodiment, a sand body splitting method disclosed in an embodiment of the present invention is first introduced in detail.
[0038] The embodiment of the present invention provides a sand body splitting method, see Figure 1 A flow chart of a sand body splitting method is shown, the method comprising the following steps:
[0039] Step S102, obtaining well number data, stratum name data of the well number data, and top and bottom depth data of the stratum name data from the target data table.
[0040] In the embodiment of the present invention, the target data table is pre-stored table data in a predetermined database, and the table data can be imported according to actual needs. The well number data is used to identify the well information, and each well has corresponding formation name data, which is used to identify different formations in the well information, and the top and bottom depth data is used to identify the top and bottom depths of each formation.
[0041] Step S104, using an array to store well number data, top and bottom depth data and stratum name data.
[0042] In the embodiment of the present invention, the well number data, top and bottom depth data and stratum name data are stored in an array, so that the sequence information of the well number data, top and bottom depth data and stratum name data in the array can be obtained.
[0043] Step S106, generating updated stratum name data and updated top and bottom depth data according to the stratum name data, well number data and top and bottom depth data stored in the array.
[0044] In the embodiment of the present invention, considering that there may be missing strata in the existing stratum name data and top and bottom depth data, updated stratum name data and updated top and bottom depth data are generated based on the stratum name data, well number data and top and bottom depth data stored in the array. The updated stratum name data includes the missing stratum name data; the updated top and bottom depth data includes the top and bottom depth data of the missing stratum name data.
[0045] Step S108, splitting the sand bodies in the sand body table one by one according to the well number data, updated top and bottom depth data and updated formation name data stored in the array, to obtain the sand body splitting result.
[0046] In an embodiment of the present invention, after obtaining the serial number information of the well number data, the updated top and bottom depth data and the updated formation name data in the array, the sand bodies in the sand body table can be compared one by one with the updated top and bottom depth data corresponding to the updated formation name data according to the well number data and the serial number information to achieve sand body splitting.
[0047] It should be noted that the sand body table includes well logging interpretation sand body result data in a fixed format, for example, referring to Table 7, which may include the following information.
[0048] The embodiment of the present invention provides a sand body splitting scheme, which first obtains well number data, formation name data of the well number data, and top and bottom depth data of the formation name data from a target data table; generates updated formation name data and updated top and bottom depth data according to the formation name data, the well number data, and the top and bottom depth data; the updated formation name data includes missing formation name data; the updated top and bottom depth data includes the top and bottom depth data of missing formation name data; uses an array to store the well number data, the updated top and bottom depth data, and the updated formation name data; and splits the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data, and the updated formation name data stored in the array to obtain a sand body splitting result. The embodiment of the present invention can automatically split the sand bodies in the sand body table one by one according to the well number data, the formation name data of the well number data, and the top and bottom depth data of the formation name data, provides a unified and simple working method, and greatly improves the working efficiency and accuracy of sand body splitting.
[0049] In order to improve data processing efficiency, before obtaining the well number data, the stratum name data of the well number data, and the top and bottom depth data of the stratum name data from the target data table, the following steps can also be performed:
[0050] Generate a stratum name table, a well name table, a sand body table and a stratum table in the target database; and use the stratum name table, the well name table, the sand body table and the stratum table as target data tables.
[0051] In an embodiment of the present invention, the formation name, well name, sand body, and stratification data of the study area are respectively imported into the corresponding tables of the database through the data interface, forming four source data tables with fixed formats, namely formation name (Table 5), well name (Table 6), sand body (Table 7), and stratification (Table 2).
[0052] The stratum names in the stratum name table are required to be stored in order from the new stratum to the old stratum, and the stratum is a continuous stratum relationship, from top to bottom. The new and old relationship of the stratum is replaced by a serial number, with a small serial number representing a new stratum and a large serial number representing an old stratum. The serial numbers are required to be continuous and their values cannot be empty. See Table 5. The stratum name table can include the following stratum name data information:
[0053] Serial number Layer Name 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26
[0054] Table 5
[0055] Among the four source data tables, the data whose values cannot be empty include: well number in the well name table, well number, sand body top depth, sand body bottom depth, and interpretation results in the sand body table, and well number, formation name, formation top depth, and formation bottom depth in the stratification table.
[0056] Referring to the well name data table shown in Table 6, the well name table may include the following information:
[0057] hashtag Ibetsu Wellhead Xm Wellhead Ym KBm Completion depth m J-0112 Oil Well J-0113 Oil Well J-0123 Oil Well J-0701 well J-0702 Oil Well J-0703 Oil Well J-0801 well J-0802 Oil Well J-0803 Oil Well J-0903 Oil Well J-109 Oil Well J-110 Oil Well J-111 well J-112 well J-121 well
[0058] Table 6
[0059]
[0060] Table 7
[0061] In order to facilitate data processing, arrays are used to store well number data, top and bottom depth data, and stratum name data. The following steps can be followed:
[0062] One-dimensional arrays are used to store well number data and stratum name data respectively; two-dimensional arrays are used to store top and bottom depth data.
[0063] In an embodiment of the present invention, all stratum name data are obtained from a stratum name table and stored in a one-dimensional array of stratum names; all well number data are obtained from a well name table and stored in a one-dimensional array of well names; and two two-dimensional arrays are added to respectively store the top depth data and bottom depth data of each well and each layer.
[0064] It should be noted that, based on the fact that the real top and bottom depths of the layers will not be 0, we first assume that the top and bottom depths of each layer of each well are 0, and then take the top and bottom depth values of each layer of each well from the layer table, and store the top and bottom depths of each layer of each well in the corresponding positions of the corresponding two-dimensional array according to the order of well name and formation name.
[0065] To fill in the pseudo top and bottom depths for missing strata, update stratum name data and update top and bottom depth data are generated according to the stratum name data, well number data and top and bottom depth data stored in the array. The steps can be as follows:
[0066] Whether the formation of the target well is continuous is determined based on the formation name data, well number data and top and bottom depth data; if so, the formation name data and top and bottom depth data are not updated; if not, the top and bottom depth information of the missing formation is determined based on the formation name data and top and bottom depth data to obtain updated formation name data and updated top and bottom depth data.
[0067] In the embodiment of the present invention, it is determined well by well whether the formation of the well is continuous. When the stratification data of some strata of a well is missing, the pseudo top and bottom depths of the missing strata are supplemented according to the actual stratification data to ensure that the assumption that the strata of each well is a continuous stratum is established, and preparations are made for providing continuous stratum stratification data for sand body splitting.
[0068] See also Figure 5 The flowchart for filling in the missing pseudo top and bottom depths of the strata shown in the figure can be executed according to the following steps: according to the new and old relationship of the complete strata, from the new strata to the old strata, judge layer by layer. For the strata with both the top and bottom depths of 0, it is necessary to find out the top and bottom depths of the strata that have contact relationship with the overlying strata from the stratification data based on the contact relationship of the entire strata, fill in the pseudo stratum depth with contact relationship, and prepare the necessary stratification data for the following sand body splitting processing.
[0069] Missing strata is a normal phenomenon, but in the stratified data, if a well lacks the top and bottom depths of a stratum, it does not necessarily mean that the well actually lacks the stratum. It may be caused by the artificial missing stratum due to careless work. Therefore, at the end of filling in the pseudo top and bottom depths of the missing strata, the well names of all missing strata and the missing strata of the well are collectively output into a text file, providing concise and clear specific well names and stratum names for checking stratified data, reducing the time of verification work.
[0070] In order to improve the efficiency and accuracy of sand body splitting, the sand bodies in the sand body table can be split one by one according to the well number data, the updated top and bottom depth data and the updated formation name data. The following steps can be followed:
[0071] Obtain the target interlayer thickness value, the first sequence number information of the well number data in the array, and the second sequence number information of the updated formation name data in the array; determine the value of the first sequence number in the first sequence number information according to the well name information of the target sand body in the sand body table; determine the first updated formation name data and the second updated top and bottom depth data corresponding to the target sand body according to the value of the first sequence number; determine the value of the second sequence number in the second sequence number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated formation name data and the second updated top and bottom depth data; determine the splitting result of the target sand body according to the value of the second sequence number.
[0072] In the embodiment of the present invention, the target interlayer thickness value can be set according to actual needs, and the target interlayer thickness value is used as the effective interlayer thickness value. Figure 3 The schematic diagram of the dialog box for inputting effective interlayer thickness is shown, and a preset target interlayer thickness value can be input. In the embodiment of the present invention, the target interlayer thickness value can be 0.4.
[0073] The first sequence number information is used to determine the order of the well number data in the array. The second sequence number information is used to determine the order of the updated stratum name data in the array. The first sequence number information and the second sequence number information can be read from the array.
[0074] In one embodiment, the second serial number includes a second top serial number and a second bottom serial number; the value of the second serial number is determined in the second serial number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated formation name data and the second updated top and bottom depth data, including: if the top data of the target sand body determined according to the target interlayer thickness value belongs to the range determined by the second updated top and bottom depth data of the target first updated formation name data, then the value of the second serial number of the target first updated formation name data is used as the value of the second top serial number; if the bottom data of the target sand body determined according to the target interlayer thickness value belongs to the range determined by the second updated top and bottom depth data of the target first updated formation name data, then the value of the second serial number of the target first updated formation name data is used as the value of the second bottom serial number
[0075] In one embodiment, the splitting result of the target sand body is determined according to the value of the second serial number, including: calculating the difference between the value of the second top serial number and the value of the second bottom serial number; if the difference satisfies the first preset range, it is determined that the target sand body is not split; if the difference satisfies the second preset range, it is determined that the target sand body is divided into two layers, and the split sand body information is generated; if the difference satisfies the third preset range, it is determined that the target sand body is divided into more than two layers, and the split sand body information is generated.
[0076] The following is a specific embodiment to illustrate the steps of splitting the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data to obtain the sand body splitting result.
[0077] From the sand body table, read all the data items of a single sand body one by one, and determine whether the sand body has an interpretation result. If not, continue to read all the data items of the next sand body; if yes, start the following sand body splitting work. The process is shown in Figure 6 The flow chart of single sand body splitting based on well logging interpretation is shown below:
[0078] 1. According to the well name of the sand body, find the sequence number of the well name in the one-dimensional well name array;
[0079] 2. According to the well number obtained in step 1, the top and bottom depths of the sand body are compared with the top and bottom depths of all layers of the well one by one, the relationship between the top and bottom depths of the sand body and the top and bottom depths of the layers currently used for comparison is determined, and the sand body is split. Specifically,
[0080] 1) The top depth of the sand body is compared with the top and bottom depths of each layer of the well one by one. At this time, the top and bottom depths of the current layer of the current well used for comparison are adjusted within the effective interlayer thickness value range to ensure that the sand body splitting is completed within the effective error range.
[0081] According to the relationship between the top depth of the sand body and the top and bottom depths of the current layer after the effective range is adjusted, determine whether the top depth of the sand body is within the top and bottom depth range of the current formation. If so, record the array number C1 of the layer where the top depth of the sand body is located; similarly, find the array number C2 of the layer where the bottom depth of the sand body is located.
[0082] 2) Determine whether C1 and C2 are valid stratification numbers. When C1 and C2 are invalid stratification numbers, the sand body is not split, and only the relationship between the sand body and the stratification is marked:
[0083] If the bottom depth of the sand body is above the top depth of the first layer, the output is marked as "on top", such as Figure 2 The S1 type sand body layer relationship in the output is as follows: If the top depth of the sand body is below the bottom depth of the last layer, the output mark is "below the bottom surface", such as Figure 2 The stratification relationship of the S7 type sand body in.
[0084] 3) According to the difference between C1 and C2, KC=C2-C1, it is determined whether the sand body needs to be split:
[0085] A. When KC=0, the sand body does not need to be split, but it is necessary to judge whether the top depth of the sand body is above the top depth of the formation and whether the bottom depth of the sand body is below the bottom depth of the formation, and make judgment marks for the corresponding relationship:
[0086] If the top and bottom depths of the sand body do not exceed the top and bottom depths of the formation, the output mark is "Z"; if the top depth of the sand body is above the top depth of the formation, the output mark is "upward"; if the bottom depth of the sand body is below the bottom depth of the formation, the output mark is "downward"; respectively. Figure 2 For the stratification relationship of the three types of sand bodies, S4, S2, and S3, it is only necessary to find the stratum name corresponding to the sand body and mark the corresponding relationship. There is no need to split the sand body.
[0087] B. When KC=1, it means that the sand body needs to be split into two sand bodies. The top and bottom depths of the upper sand body are the top depth of the sand body and the bottom depth of the layer with serial number C1, respectively. The layer where the sand body is located is the layer with serial number C1, and the output mark is "2 up"; the top and bottom depths of the lower sand body are the bottom depth of the layer with serial number C1 and the bottom depth of the sand body, respectively. The layer where the sand body is located is the layer with serial number C2, and the output mark is "2 down", such as Figure 2 The stratification relationship of the S5 type sand body in.
[0088] C. When KC>=2, it means that the sand body needs to be split into 3 or more (i.e. KC+1) sand bodies. Split in order from top to bottom, the top and bottom depths of the first sand body split are the top depth of the sand body and the bottom depth of the layer numbered C1, and the output is marked as "upper section"; the top and bottom depths of the last sand body are the top depth of the layer numbered C2 and the bottom depth of the sand body, and the layer where the sand body is located is the layer numbered C2, and the output is marked as "lower section"; the top and bottom depths of the sand body numbered i between the first sand body and the last sand body split are the top and bottom depths of the layer numbered (C1+1), and the output is marked as "middle_i", where i=1,2,…,KC-1.
[0089] After completing the above processing for each sand body in the sand body table, the sand body splitting result data table (Table 8) is immediately output. By viewing the sand body splitting result (Table 8), a preliminary judgment can be made on the correspondence between the sand body and the layer: if the content of the remark column in Table 8 is not the "Z" sand body and the depth of the layer in which it is located, it may need to be checked again.
[0090] In particular, the notes such as "upper section", "lower section", "middle_1", etc. indicate that the depth of the sand body spans two or more strata (there is no such situation in the data in Table 8). When there are many cases of sand bodies spanning layers, it is recommended to recheck both the logging interpretation and geological stratification. After confirming that both are reasonable, the work after sand body splitting can be carried out.
[0091]
[0092] Table 8
[0093] well name Layer Name Top Depth Bottom depth J-0123 1 1107.44 1114.18 J-0123 2 1114.18 1122.29 J-0123 3 1122.29 1133.55 J-0123 4 1133.55 1142.50 J-0123 5 1142.50 1151.94 J-0123 6 1151.94 1161.25 J-0123 7 1161.25 1178.89 J-0123 8 1178.89 1188.88 J-0123 9 1188.88 1195.06 J-0123 10 1195.06 1203.66 J-0123 11 1203.66 1211.90 J-0123 12 1211.90 1219.89 J-0123 13 1219.89 1229.82 J-0123 14 1229.82 1237.06 J-0123 15 1237.06 1246.67 J-0123 16 1246.67 1259.44 J-0123 17 1259.44 1266.94 J-0123 18 1266.94 1272.86 J-0123 19 1272.86 1283.20 J-0123 20 1283.20 1288.56 J-0123 21 1288.56 1296.47 J-0123 22 1296.47 1305.12 J-0123 23 1305.12 1316.78 J-0123 24 1316.78 1324.64 J-0123 25 1324.64 1333.92 J-0123 26 1333.92 -999.25
[0094] Table 9
[0095] See also Figure 4 The sand body splitting flow chart shown in the figure can be implemented specifically by writing a program, combining database technology with enumerating the relationship between sand bodies and stratification, and processing each type of relationship accordingly.
[0096] The specific steps can be followed as follows:
[0097] 1. By writing a program, establish the database file and four data tables of formation name, well name, sand body and layer required for the work, and unify their respective formats;
[0098] 2. Write a data import interface program to import the formation name, well name, sand body, and stratification data of the study area into the corresponding tables of the database, forming four source data tables with fixed formats, including formation name (Table 5), well name (Table 6), sand body (Table 7), and stratification (Table 2).
[0099] 3. Write a program to provide a button to trigger the sand body splitting operation. Click the button with the mouse and enter the thickness value of the effective layer according to the prompt ( Figure 3 ), the sand body splitting work in the study area can be completed (Table 8);
[0100] 4. Various relationships between sand bodies and stratification, including Figure 2 The seven types of relationships listed are processed accordingly in the program, and the labels of each type of relationship are given in the remarks column of the sand body splitting result table (Table 8). The meanings of the contents in this column are as follows: Figure 2 ( Figure 2 The left figure in the figure is a schematic diagram of the stratification results, where the letters in each rectangle represent the name of a stratum, and the upper and lower sides of the rectangle where the letter is located represent the top and bottom depths of the stratum; Figure 2Each shaded rectangle in the middle figure represents a sand body, and the upper and lower sides of the shaded rectangle represent the top and bottom depths of the sand body. S1-S7 represent the sand body serial numbers, △H is the difference between the sand body interface and the nearest stratum interface, and 0.4 is the empirical value of the effective interlayer thickness; the dotted line between the left figure and the middle figure indicates that the layer depth and the sand body depth at this position are the same; the right figure is the stratum where the sand body is located after the sand body splits; the feedback information column on the far right is a simple mark for various relationships between sand bodies and strata at depth found in the sand body splitting process, and can provide quick instructions to help find whether there are contradictions between sand bodies and strata, especially small contradictions. It can quickly find contradictory sand bodies and strata, and use them to feedback to the departments that provide sand bodies and strata, providing a reference for re-checking their respective data and quickly locking in the target;
[0101] 5. If the contents of the notes column in Table 8 are all "Z", it means that the sand bodies and stratifications provided are reasonable and can be used to carry out the next step of work.
[0102] The embodiment of the present invention provides a sand body splitting method and device, which can use programming combined with database technology to implement the sand body formation attribution of the well logging interpretation sand body in the oil exploration and development stage. It provides a unified and simple working method for the sand body splitting work, and greatly improves its work efficiency and accuracy. It allows development petroleum engineers who do not use Excel formulas and have no VBA programming foundation to quickly complete the sand body splitting work, and in the process of completing the sand body splitting work, it also indirectly completes all the checks on the rationality of the sand body and stratification.
[0103] The present invention also provides a sand body splitting device, as described in the following embodiments. Since the principle of the device to solve the problem is similar to that of the sand body splitting method, the implementation of the device can refer to the implementation of the sand body splitting method, and the repeated parts will not be repeated. Figure 7 The structure block diagram of a sand body splitting device is shown, and the device comprises:
[0104] An acquisition module 71 is used to acquire well number data, formation name data of the well number data and top and bottom depth data of the formation name data from a target data table; a storage module 72 is used to store the well number data, top and bottom depth data and formation name data using an array; an update module 73 is used to generate updated formation name data and updated top and bottom depth data according to the formation name data, well number data and top and bottom depth data stored in the array; the updated formation name data includes missing formation name data; the updated top and bottom depth data includes top and bottom depth data of missing formation name data; a splitting module 74 is used to split the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data stored in the array to obtain a sand body splitting result.
[0105] In one embodiment, see Figure 8 Another structural block diagram of a sand body splitting device is shown, which also includes a data module 75 for: generating a formation name table, a well name table, a sand body table and a stratification table in a target database; and using the layer name table, the well name table, the sand body table and the stratification table as target data tables.
[0106] In one embodiment, the update module is specifically used to: determine whether the formation of the target well is continuous based on the formation name data, well number data and top and bottom depth data; if so, do not update the formation name data and top and bottom depth data; if not, determine the top and bottom depth information of the missing formation based on the formation name data and top and bottom depth data to obtain updated formation name data and updated top and bottom depth data.
[0107] In one embodiment, the storage module is specifically used to: use a one-dimensional array to store well number data and update formation name data respectively; use a two-dimensional array to store and update top and bottom depth data.
[0108] In one embodiment, the layer splitting module is specifically used to: obtain the target interlayer thickness value, the first sequence number information of the well number data in the array, and the second sequence number information of the updated formation name data in the array; determine the value of the first sequence number in the first sequence number information according to the well name information of the target sand body in the sand body table; determine the first updated formation name data and the second updated top and bottom depth data corresponding to the target sand body according to the value of the first sequence number; determine the value of the second sequence number in the second sequence number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated formation name data and the second updated top and bottom depth data; determine the layer splitting result of the target sand body according to the value of the second sequence number.
[0109] In one embodiment, a splitting module is specifically used to: determine the value of the second serial number in the second serial number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated formation name data and the second updated top and bottom depth data, including: if the top data of the target sand body determined according to the target interlayer thickness value belongs to the range determined by the second updated top and bottom depth data of the target first updated formation name data, then the value of the second serial number of the target first updated formation name data is used as the value of the second top serial number; if the bottom data of the target sand body determined according to the target interlayer thickness value belongs to the range determined by the second updated top and bottom depth data of the target first updated formation name data, then the value of the second serial number of the target first updated formation name data is used as the value of the second bottom serial number.
[0110] In one embodiment, the splitting module is specifically used to: calculate the difference between the value of the second top sequence number and the value of the second bottom sequence number; if the difference meets the first preset range, it is determined that the target sand body is not split; if the difference meets the second preset range, it is determined that the target sand body is divided into two layers, and the split sand body information is generated; if the difference meets the third preset range, it is determined that the target sand body is divided into more than two layers, and the split sand body information is generated.
[0111] The embodiment of the present invention also provides a computer device, see Fig. 9 The computer device shown in the figure is a schematic block diagram of the structure, which includes a memory 81, a processor 82 and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of any one of the above-mentioned sand body splitting methods are implemented.
[0112] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the computer device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0113] An embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for executing any of the above-mentioned sand body splitting methods.
[0114] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0115] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0116] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0117] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0118] Finally, it should be noted that the above-described embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above-described embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-described embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims
1. A sand body splitting method, characterized in that: include: Acquire well number data, stratum name data of the well number data, and top and bottom depth data of the stratum name data from the target data table; Using an array to store the well number data, the top and bottom depth data and the stratum name data; Generate updated stratum name data and updated top and bottom depth data according to the stratum name data, the well number data and the top and bottom depth data stored in the array; The updated stratum name data includes missing stratum name data; the updated top and bottom depth data includes top and bottom depth data of the missing stratum name data; Splitting the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data, and obtaining a sand body splitting result; The sand bodies in the sand body table are split one by one according to the well number data, the updated top and bottom depth data and the updated formation name data, including: obtaining a target interlayer thickness value, first sequence number information of the well number data in the array and second sequence number information of the updated formation name data in the array; determining a first sequence number value in the first sequence number information according to the well name information of the target sand body in the sand body table; determining first updated formation name data and second updated top and bottom depth data corresponding to the target sand body according to the value of the first sequence number; determining a second sequence number value in the second sequence number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated formation name data and the second updated top and bottom depth data; and determining a splitting result of the target sand body according to the value of the second sequence number.
2. The method according to claim 1, characterized in that Before obtaining the well number data, the stratum name data of the well number data and the top and bottom depth data of the stratum name data from the target data table, the method further includes: Generate a stratum name table, a well name table, a sand body table and a stratum table in the target database; The layer name table, the well name table, the sand body table and the stratification table are used as target data tables.
3. The method according to claim 1, characterized in that Generating updated stratum name data and updated top and bottom depth data according to the stratum name data, the well number data and the top and bottom depth data stored in the array includes: Determine whether the stratum of the target well is continuous according to the stratum name data, the well number data and the top and bottom depth data; If yes, the stratum name data and the top and bottom depth data are not updated; If not, the top and bottom depth information of the missing stratum is determined according to the stratum name data and the top and bottom depth data to obtain updated stratum name data and updated top and bottom depth data.
4. The method according to claim 1, characterized in that: Using an array to store the well number data, the top and bottom depth data, and the stratum name data includes: Using one-dimensional arrays to store the well number data and the stratum name data respectively; A two-dimensional array is used to store the top and bottom depth data.
5. The method according to claim 1, characterized in that: The second serial number includes a second top serial number and a second bottom serial number; Determining the value of the second serial number in the second serial number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated stratum name data and the second updated top and bottom depth data, includes: If the top data of the target sand body is determined to be within the range determined by the second updated top and bottom depth data of the target first updated stratum name data according to the target interlayer thickness value, the value of the second serial number of the target first updated stratum name data is used as the value of the second top serial number; If the bottom data of the target sand body is determined to be within the range determined by the second updated top and bottom depth data of the target first updated formation name data according to the target interlayer thickness value, the value of the second serial number of the target first updated formation name data is used as the value of the second bottom serial number.
6. The method according to claim 5, characterized in that Determining the splitting result of the target sand body according to the value of the second sequence number includes: Calculate the difference between the value of the second top sequence number and the value of the second bottom sequence number; If the difference satisfies a first preset range, it is determined that the target sand body is not split; If the difference satisfies a second preset range, it is determined that the target sand body is divided into two layers, and the split sand body information is generated; If the difference satisfies a third preset range, it is determined that the target sand body is divided into more than two layers, and information of the split sand body is generated.
7. A sand body splitting device, characterized in that: include: An acquisition module, used for acquiring well number data, stratum name data of the well number data and top and bottom depth data of the stratum name data from a target data table; A storage module, used for storing the well number data, the top and bottom depth data and the stratum name data by using an array; An updating module, used for generating updated stratum name data and updated top and bottom depth data according to the stratum name data, the well number data and the top and bottom depth data stored in the array; The updated stratum name data includes missing stratum name data; the updated top and bottom depth data includes top and bottom depth data of the missing stratum name data; A layer splitting module is used to split the sand bodies in the sand body table one by one according to the well number data, the updated top and bottom depth data and the updated formation name data to obtain a sand body splitting result; The splitting module is specifically used to: obtain the target interlayer thickness value, the first sequence number information of the well number data in the array, and the second sequence number information of the updated formation name data in the array; determine the value of the first sequence number in the first sequence number information according to the well name information of the target sand body in the sand body table; Determine the first updated stratum name data and the second updated top and bottom depth data corresponding to the target sand body according to the value of the first serial number; Determine the value of the second serial number in the second serial number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated stratum name data and the second updated top and bottom depth data; The splitting result of the target sand body is determined according to the value of the second serial number.
8. The device according to claim 7, characterized in that Also includes data modules for: Generate a stratum name table, a well name table, a sand body table and a stratum table in the target database; The layer name table, the well name table, the sand body table and the stratification table are used as target data tables.
9. The device according to claim 7, characterized in that The update module is specifically used for: Determine whether the stratum of the target well is continuous according to the stratum name data, the well number data and the top and bottom depth data; If yes, the stratum name data and the top and bottom depth data are not updated; If not, the top and bottom depth information of the missing stratum is determined according to the stratum name data and the top and bottom depth data to obtain updated stratum name data and updated top and bottom depth data.
10. The device according to claim 7, characterized in that The storage module is specifically used for: Using one-dimensional arrays to store the well number data and the stratum name data respectively; A two-dimensional array is used to store the top and bottom depth data.
11. The device according to claim 7, characterized in that The second sequence number includes a second top sequence number and a second bottom sequence number, and the layer splitting module is specifically used for: Determining the value of the second serial number in the second serial number information according to the top and bottom data of the target sand body in the sand body table, the target interlayer thickness value, the first updated stratum name data and the second updated top and bottom depth data, includes: If the top data of the target sand body is determined to be within the range determined by the second updated top and bottom depth data of the target first updated stratum name data according to the target interlayer thickness value, the value of the second serial number of the target first updated stratum name data is used as the value of the second top serial number; If the bottom data of the target sand body is determined to be within the range determined by the second updated top and bottom depth data of the target first updated formation name data according to the target interlayer thickness value, the value of the second serial number of the target first updated formation name data is used as the value of the second bottom serial number.
12. The device according to claim 11, characterized in that The layer splitting module is specifically used for: Calculate the difference between the value of the second top sequence number and the value of the second bottom sequence number; If the difference satisfies a first preset range, it is determined that the target sand body is not split; If the difference satisfies a second preset range, it is determined that the target sand body is divided into two layers, and the split sand body information is generated; If the difference satisfies a third preset range, it is determined that the target sand body is divided into more than two layers, and information of the split sand body is generated.
13. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 6 is implemented.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Data processing method and device for determining water injection development effect
CN108564264A
Inter-well sand body connected graph automatic drawing method and system based on geologic model constraints
CN111754611A