Gas well production splitting method driven by internal and external dual circulation

By using the internal and external dual-circulation driving method, utilizing gas reservoir engineering principles and recursive solution rules, the difficult problem of calculating the gas well production splitting coefficient was solved, accurate calculation was achieved when the gas leakage radius was unknown, and the accuracy and reliability of the calculation were improved.

CN115935713BActive Publication Date: 2025-09-16SHAANXI YANCHANG PETROLEUM GRP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310058226.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-18
Publication Date
2025-09-16
Estimated Expiration
2043-01-18

AI Technical Summary

Technical Problem

Existing technologies for calculating the splitting coefficient of gas well production have problems such as low timeliness, multiple solutions, limited scope of application, large errors and poor generalizability. In particular, it is difficult to establish an effective calculation model when the gas leakage radius is unknown.

Method used

The internal and external dual circulation driving method is adopted. The approximate expression of the production splitting coefficient is derived through the principles of gas reservoir engineering. Combined with the recursive solution rules of the internal and external circulations, the internal and external dual circulation solution rules are established. The gas well productivity equation and material balance equation are used to calculate the gas leakage radius and the production splitting coefficient.

Benefits of technology

When the gas leakage radius is unknown, accurate tracking calculation of the production splitting coefficient is achieved, filling the theoretical gap and improving the accuracy and reliability of the calculation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115935713B_ABST
    Figure CN115935713B_ABST
Patent Text Reader

Abstract

The present invention relates to a gas well production splitting method driven by an internal and external dual circulation. The method is as follows: defining a production splitting coefficient cycle as an external circulation and a gas leakage radius cycle as an internal circulation; giving an initial value of the production splitting coefficient for the external circulation and an initial value of the gas leakage radius for the internal circulation; calculating the average formation pressure and the final value of the gas leakage radius for the internal circulation using the initial values ​​of the production splitting coefficient for the external circulation and the initial values ​​of the gas leakage radius for the internal circulation; obtaining the gas leakage radius when the internal circulation converges, and performing the internal circulation according to the rules of the internal circulation until the internal circulation converges; calculating the final value of the production splitting coefficient for the external circulation using the average formation pressure and the gas leakage radius; obtaining the production splitting coefficient when the external circulation converges, and performing the external circulation according to the rules of the external circulation until the external circulation converges when the external circulation does not converge; and during each cycle, the rules of the external circulation and the rules of the internal circulation are always opposite. The present invention implements tracking calculation of the production splitting coefficient.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of oil and gas field development, and in particular to a gas well production splitting method driven by internal and external dual circulation. Background Art

[0002] The physical meaning of the production splitting coefficient refers to the ratio of the gas production of a single layer to the gas production of the gas well. Its essence lies in the gas production of each layer. The gas production of each layer flows into the wellbore through the production layer and is then aggregated at the wellhead. Therefore, the production splitting coefficient can be obtained through the production layer and the wellbore. Depending on the different acquisition principles, it can be divided into gas production profiles, numerical simulations, gas reservoir engineering, physical simulation experiments, empirical methods, machine learning, catastrophe theory, and fuzzy logic. Among them: the timeliness of gas production profiles is low, the results of numerical simulations may have multiple solutions, the scope of application of gas reservoir engineering methods is limited, physical simulation experiments make it difficult to analyze the parameter sensitivity of the production splitting coefficient, the errors in the evaluation results of empirical methods are generally large, and the generalizability of machine learning, catastrophe theory, and fuzzy logic is limited, requiring further development and improvement.

[0003] The production splitting coefficient is the research focus and difficulty of multi-layer commingled production gas reservoirs. Considering that the study of the production splitting coefficient cannot be separated from the principles of gas reservoir engineering, establishing a calculation model for the production splitting coefficient when the gas leakage radius is unknown has important theoretical significance and practical value. Summary of the Invention

[0004] The present invention aims to solve the above problems and proposes a gas well production splitting method driven by internal and external dual circulation.

[0005] The principles of the present invention are as follows:

[0006] According to the principles of gas reservoir engineering, the expression of pseudo-average formation pressure is:

[0007]

[0008] Where: is the pseudo-average formation pressure of the production layer j at time t, MPa 2 / mPa·s;

[0009] p0 is the reference pressure, MPa;

[0010] is the average formation pressure of the production layer j at time t, MPa;

[0011] p is pressure, MPa;

[0012] μ is the gas viscosity, mPa·s;

[0013] Z is the coefficient of deviation, dimensionless;

[0014] The expression of the pseudo bottom hole flowing pressure is:

[0015]

[0016] Where: ψ[p wfj (t)] is the simulated bottom hole pressure of the production layer j at time t, MPa 2 / mPa·s;

[0017] p wfj (t) is the bottom hole pressure of the production layer j at time t, MPa.

[0018] According to the principles of gas reservoir engineering, the gas well productivity equation in pseudo-pressure form is:

[0019]

[0020] Where: p sc is the standard pressure, usually 0.101 MPa;

[0021] Z scj is the standard deviation coefficient of pay zone j, dimensionless;

[0022] T sc is the standard temperature, usually 293.15 K;

[0023] T j is the temperature of the production layer j, K;

[0024] ◇ j (t) is the production splitting coefficient of production layer j at time t, 0≤◇ j (t)≤1, dimensionless;

[0025] q sc (t) is the gas production at the wellhead of the gas well, m 3 / d;

[0026] K j is the permeability of production layer j, 10 -3 μm 2 ;

[0027] h j is the thickness of pay zone j, m;

[0028] r ej is the gas release radius of production layer j, m;

[0029] r w is the wellbore radius, m;

[0030] S p is the pressure conversion skin, dimensionless.

[0031] Combining the cumulative gas production, controlled reserves and material balance equation of natural gas, an approximate expression for the gas leakage radius of any production layer is derived:

[0032]

[0033] Where: is the porosity of pay zone j, dimensionless;

[0034] S gij is the original gas saturation of the production layer j, dimensionless;

[0035] G pj (t) is the cumulative gas production of production layer j at time t, m 3 ;

[0036] p ij is the original formation pressure of the production layer j, MPa;

[0037] Z ij is the original deviation coefficient of pay zone j, dimensionless;

[0038] Z rj (t) is The corresponding coefficient of deviation, dimensionless.

[0039] When the material balance equation is taken at adjacent times t and t+1, the approximate expression of the production splitting coefficient of any production layer is derived:

[0040]

[0041] Where: is the average formation pressure of the production layer j at time t+1, MPa;

[0042] Z rj (t+1) is The corresponding coefficient of deviation, dimensionless.

[0043] Analyzing equations (3), (4) and (5), we can find the following calculation process:

[0044] In the output split coefficient ◇ j (t) is given, the deflation radius r ej Substituting into formula (3) we can obtain the average formation pressure of production layer j at time t: The average formation pressure of production layer j at time t Substituting into (4) we can get the deflation radius r ej , (3) and (4) form the deflation radius r ej The cycle; split the output into coefficients ◇ j (t) Substitute into equations (3) and (4) and calculate the value through the deflation radius r ej The deflation radius r can be obtained by the cycle ej and the average formation pressure of production layer j at time t The deflation radius r ej and the average formation pressure of production layer j at time t Substituting into formula (5) we can get the yield splitting coefficient ◇ j (t), (3), (4) and (5) together constitute the yield splitting coefficient ◇ j (t) cycle, output splitting coefficient ◇ j The cycle of (t) includes the deflation radius r ej cycle.

[0045] The deflation radius r ej The cycle is called the inner cycle, which splits the output into coefficients◇ j The loop of (t) is called the outer loop, and the inner and outer loops are collectively called the inner and outer double loops, and are set as follows:

[0046] (1)◇ j (t) B represents the initial value of the external circulation production splitting coefficient, the production splitting coefficient in formula (3) and (4) ◇ j (t) is equal to the initial value of the external circulation production splitting coefficient◇ j (t) B ;

[0047] (2)r ej B represents the initial value of the inner circulation deflation radius, and the deflation radius r in formula (3) ej is the initial value of the inner circulation deflation radius r ej B ;

[0048] (3)r ej E represents the final value of the internal circulation deflation radius, and the deflation radius r in formula (4) ej The final value of the inner circulation deflation radius r ej E ;

[0049] (4)◇ j (t) E represents the final value of the external circulation production splitting coefficient, and the gas release radius r in formula (5) ej is the solution of the inner cycle, the output splitting coefficient in (5) is j (t) is the final value of the external circulation output splitting coefficient◇ j (t) E .

[0050] Analyzing the internal and external dual circulation, we found the following phenomena:

[0051] (1) When the initial value of the inner circulation deflation radius r ej B Approaching the final value r of the inner circulation deflation radiusej E , that is, the ratio r ej E / r ej B ≈1, the initial value of the inner circulation deflation radius r ej B and the final value of the inner circulation deflation radius r ej E They are all close to the solution of the inner cycle, and the final value of the inner cycle deflation radius r ej E (r ej E / r ej B ≈1) represents the solution of the inner loop;

[0052] (2) When the initial value of the external circulation production split coefficient ◇ j (t) B Approaching the final value of the external circulation output split coefficient◇ j (t) E , that is, the ratio ◇ j (t) E / ◇ j (t) B ≈1, the initial value of the external circulation production splitting coefficient◇ j (t) B and the final value of the external circulation output splitting coefficient◇ j (t) E They are all close to the solution of the outer loop, using ◇ j (t) B (◇ j (t) E / ◇ j (t) B ≈1) represents the solution of the outer loop.

[0053] Further analysis revealed the following changing patterns:

[0054] (1) Both the inner loop and the outer loop have unique solutions;

[0055] (2) With the initial value of the inner circulation deflation radius r ej B Increase, the ratio of the inner loop r ej E / r ej B First decrease and then increase;

[0056] (3) Solution of the inner loop ej E (r ej E / r ej B≈1) and the initial value of the external circulation production splitting coefficient◇ j (t) B It presents a parabolic shape with an opening to the left, and as the initial value of the external circulation output splitting coefficient ◇ j (t) B As the value increases, the inner loop presents three situations: 2 solutions, 1 solution, and no solution;

[0057] (4) External circulation ratio◇ j (t) E / ◇ j (t) B Always the solution of the inner cycle (the final value of the outer cycle output splitting coefficient) r ej E (r ej E / r ej B ≈1) is proportional;

[0058] (5) External circulation ratio◇ j (t) E / ◇ j (t) B Initial value of the external circulation production splitting coefficient◇ j (t) B There is a parabolic shape with the opening facing left;

[0059] According to the above change rules, we can know that by constantly changing the initial value of the inner circulation deflation radius r ej B and the initial value of the external circulation production splitting coefficient◇ j (t) B , which can solve the internal and external double circulation.

[0060] To this end, a loop solving rule for internal and external double loops is established:

[0061] (1) The cyclic process of repeatedly changing the initial value is called recursion, and the cyclic rule of "reducing the initial value when the initial value is greater than the final value and increasing the initial value when the initial value is less than the final value" is called reverse recursion;

[0062] (2) The loop rule of "increase the initial value when the initial value is greater than the final value, and decrease the initial value when the initial value is less than the final value" is called forward recursion;

[0063] (3) The loop rules of both the inner loop and the outer loop include reverse recursion and forward recursion, but the loop rules of the inner loop and the outer loop are always opposite. When the inner loop is reverse recursion, the outer loop is forward recursion, and when the inner loop is forward recursion, the outer loop is reverse recursion;

[0064] Therefore, the problem can be solved by setting the loop step size and the upper limit of the error and using the internal and external double loops.

[0065] Therefore, in view of the above, the present invention proposes a gas well production splitting method driven by internal and external dual circulation, the method is as follows:

[0066] Define the yield split coefficient◇ j The cycle of (t) is external cycle, and the deflation radius r ej The cycle is the inner cycle;

[0067] Given the initial value of the external circulation production split coefficient◇ j (t) B , given the initial value of the inner loop deflation radius r ej B ;

[0068] Initial value of the splitting coefficient of the external circulation output◇ j (t) B and the initial value of the inner circulation deflation radius r ej B Calculate the average formation pressure And the final value of the internal circulation deflation radius r ej E ; When the inner loop converges, the deflation radius r is obtained ej ,When the inner loop does not converge, the inner loop is performed according to the inner loop rules until the inner loop converges;

[0069] By average formation pressure and deflation radius r ej Calculate the final value of the external circulation production split coefficient◇ j (t) E ; When the outer loop converges, the output splitting coefficient is obtained◇ j (t), when the outer loop does not converge, the outer loop is performed according to the outer loop rules until the outer loop converges;

[0070] During each cycle, the outer loop rules are always opposite to the inner loop rules.

[0071] Wherein, the average formation pressure And the final value of the internal circulation deflation radius r ej E The calculation process is:

[0072] The pseudo bottom hole flow pressure ψ[p wfj (t)];

[0073] The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3): The average formation pressure of production layer j at time t is calculated by formula (1): The final value of the inner circulation deflation radius r is calculated by formula (4): ej E.

[0074] The judgment principle of the inner loop convergence is: calculate |r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ), if satisfied, the inner loop converges; otherwise, the inner loop does not converge; where ε(r ej ) is the upper limit of the inner loop error, satisfying ε(r ej )≤0.01%.

[0075] Among them, the final value of the external circulation output split coefficient ◇ j (t) E The calculation process is:

[0076] The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can calculate the pseudo-average formation pressure at time t and t+1: and

[0077] The average formation pressure at time t and t+1 is calculated by formula (1): and r ej 、 and Substitute into formula (5) to calculate the final value of the external circulation production split coefficient ◇ j (t) E .

[0078] The judgment principle of the outer loop convergence is: calculate |◇ j (t) E -◇ j (t) B | / ◇ j (t) B , and then judge whether it satisfies |◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j ), if it is satisfied, the outer loop converges; otherwise, the outer loop does not converge; where ε(◇ j ) is the upper limit of the outer loop error, satisfying ε(◇j )≤0.1%.

[0079] Wherein, the inner loop rule and the outer loop rule both include forward recursion and reverse recursion; when the inner loop rule is reverse recursion, the outer loop rule is forward recursion; when the inner loop rule is forward recursion, the outer loop rule is reverse recursion.

[0080] Among them, the inner loop has just started, and the inner loop rules depend on the outer loop rules:

[0081] (1) At the beginning of each inner loop, if the outer loop rule is unknown, the inner loop rule adopts reverse recursion and the outer loop rule adopts forward recursion;

[0082] (2) At the beginning of each inner cycle, if the outer cycle rules are known, the inner cycle rules are always opposite to the outer cycle rules;

[0083] The inner cycle is in progress, and the inner cycle rule depends on the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B The relationship between:

[0084] (1) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is proportional to the value of the function, the inner loop is a forward recursion, and the outer loop is a reverse recursion;

[0085] (2) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is inversely proportional, the inner loop is a reverse recursion, and the outer loop is a forward recursion.

[0086] The specific implementation steps of the gas well production splitting method driven by internal and external dual circulation proposed by the present invention are as follows:

[0087] A gas well production splitting method driven by internal and external dual circulation is as follows.

[0088] Step 1: Set the loop step size and error limit;

[0089] 1.1: Set the inner loop step size to Δ(r ej ), the initial value of the inner circulation deflation radius rej B When it increases, it satisfies 0<Δ(r ej ), the initial value of the inner circulation deflation radius r ej B When decreasing, 0<Δ(r ej ) <r ej B ;

[0090] 1.2: Set the outer loop step size to Δ(◇ j ), initial value of external circulation production splitting coefficient◇ j B When increasing, it satisfies 0<Δ(◇ j )≤1-◇ j B , initial value of external circulation output splitting coefficient◇ j B When decreasing, 0<Δ(◇ j )<◇ j B ;

[0091] 1.3: Set the upper limit of the inner loop error to ε(r ej ), the value ε(r ej )≤0.01%;

[0092] 1.4: Set the upper limit of the outer loop error to ε(◇ j ), the value is ε(◇ j )≤0.1%.

[0093] Step 2: Assume the initial value of the external cycle output split coefficient ◇ j (t) (0)

[0094] Assume that the initial value of the external circulation production split coefficient is ◇ j (t) (0) , satisfying 0≤◇ j (t) (0) ≤1.

[0095] Step 3: Determine the initial value of the external circulation output splitting coefficient◇ j (t) B

[0096] 3.1: At the beginning of each inner cycle, the initial value of the outer cycle output split coefficient is ◇ j (t) B = Initial value of external circulation production splitting coefficient◇ j (t) (0) , that is ◇ j (t) B =◇ j (t) (0) ;

[0097] 3.2: Let the output split coefficient ◇ j (t) = initial value of external circulation production splitting coefficient◇ j (t) B ;

[0098] 3.3: During each inner loop, if the outer loop is reverse recursive, proceed to step 3.3.1; if the outer loop is forward recursive, proceed to step 3.3.2;

[0099] 3.3.1: When the outer loop is reverse recursive, the initial value of the outer loop output splitting coefficient ◇ j (t) B for:

[0100] (1) When the initial value of the external circulation production split coefficient ◇ j (t) B >Final value of external circulation output splitting coefficient◇ j (t) E When the output split coefficient ◇ j (t) Reduce the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)-Δ(◇ j );

[0101] (2) When the initial value of the external circulation production split coefficient ◇ j (t) B <Final value of external circulation output splitting coefficient◇ j (t) E When the output split coefficient ◇ j (t) Increase the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)+Δ(◇ j ); 3.3.2: When the outer loop is a forward recursive, the initial value of the outer loop output splitting coefficient ◇ j (t) B for:

[0102] (1) When the initial value of the external circulation production split coefficient ◇ j (t) B >Final value of external circulation output splitting coefficient◇ j (t) E When the output split coefficient ◇j (t) Increase the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)+Δ(◇ j );(2) When the initial value of the external circulation production split coefficient ◇ j (t) B <Final value of external circulation output splitting coefficient◇ j (t) E When the output split coefficient ◇ j (t) Reduce the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)-Δ(◇ j ).

[0103] Step 4: Assume the initial value of the inner loop deflation radius r ej (0)

[0104] Assume that the initial value of the inner circulation deflation radius r ej (0) , satisfying r w <r ej (0) .

[0105] Step 5: Determine the initial value r of the inner loop deflation radius ej B

[0106] 5.1: At the beginning of each inner cycle, let the initial value of the inner cycle deflation radius be r ej B = Initial value of inner circulation deflation radius r ej (0) , that is, r ej B =r ej (0) ;

[0107] 5.2: Let the deflation radius r ej = Initial value of inner circulation air leakage radius r ej B ;

[0108] 5.3: During each inner loop, if the inner loop is forward recursive, proceed to step 5.3.1; if the inner loop is reverse recursive, proceed to step 5.3.2;

[0109] 5.3.1: When the inner loop is a forward recursive loop, the initial value of the inner loop deflation radius r ej B for:

[0110] (1) When the initial value of the inner circulation deflation radius r ej B > Final value of internal circulation deflation radius r ej E When the deflation radius r ej Increase the inner loop step size Δ(r ej ) as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej +Δ(r ej );

[0111] (2) When the initial value of the inner circulation leakage radius r ej B <The final value of the internal circulation deflation radius r ej E When the deflation radius r ej Reduce the inner loop step size Δ(r ej ) as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej -Δ(r ej );

[0112] 5.3.2: When the inner loop is reverse recursive, the initial value of the inner loop deflation radius r ej B for:

[0113] (1) When the initial value of the inner circulation deflation radius r ej B > Final value of internal circulation deflation radius r ej E When the deflation radius r ej Reduce the inner loop step size Δ(r ej ) is used as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej -Δ(r ej );

[0114] (2) When the initial value of the inner circulation leakage radius r ej B <The final value of the internal circulation deflation radius rej E When the deflation radius r ej Increase the inner loop step size Δ(r ej ) as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej +Δ(r ej ).

[0115] Step 6: Inner loop calculation of deflation radius r ej

[0116] 6.1: Calculate the final value r of the inner circulation deflation radius ej E

[0117] The pseudo bottom hole flow pressure ψ[p wfj (t)];

[0118]

[0119] The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3):

[0120]

[0121] The average formation pressure of production layer j at time t is calculated by formula (1):

[0122]

[0123] The final value of the inner circulation deflation radius r is calculated by formula (4): ej E ;

[0124]

[0125] 6.2: Determine the inner loop rules

[0126] 6.2.1: If the inner loop has just started, proceed to step 6.2.2; if the inner loop is in progress, proceed to step 6.2.3;

[0127] 6.2.2: The inner loop has just started, and the rules of the inner loop depend on the rules of the outer loop:

[0128] (1) At the beginning of each inner loop, if the outer loop rule is unknown, the inner loop rule adopts reverse recursion and the outer loop rule adopts forward recursion;

[0129] (2) At the beginning of each inner cycle, if the outer cycle rules are known, the inner cycle rules are always opposite to the outer cycle rules;

[0130] 6.2.3: The inner cycle is in progress, and the inner cycle rules depend on the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B The relationship between:

[0131] (1) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is proportional to the value of the function, the inner loop is a forward recursion, and the outer loop is a reverse recursion;

[0132] (2) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When they are inversely proportional, the inner loop is reverse recursion, and the outer loop is forward recursion;

[0133] 6.3: Determine whether the inner loop converges

[0134] 6.3.1: Calculation of r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ), if satisfied, proceed to 6.3.2; if not satisfied, proceed to 6.3.3;

[0135] 6.3.2: At this point, the inner loop converges, and the solution of the inner loop is the final value of the inner loop deflation radius r ej E , let r ej =r ej E , output leak radius r ej , the inner loop ends and proceeds to step 7;

[0136] 6.3.3: At this point, the inner loop does not converge. Continue the inner loop according to the inner loop rules determined in 6.2.

[0137] (1) When the inner loop rule is forward recursion, proceed to step 6.4;

[0138] (2) When the inner loop rule is reverse recursion, proceed to step 6.5;

[0139] 6.4: If the inner loop is a forward recursion

[0140] (1) If there is no solution, proceed to step 6.4.2;

[0141] (2) If there is a solution, proceed to step 6.4.3;

[0142] 6.4.1: Determine whether the inner loop has a solution at this time;

[0143] 6.4.2: If there is no solution to the inner cycle, end the inner cycle and split the output coefficient ◇ j (t) Reduce the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)-Δ(◇ j ), return to step 4;

[0144] 6.4.3: If the inner loop has a solution, perform the inner loop in the forward recursion direction, return to step 5, and repeat the inner loop until the inner loop converges; 6.5: If the inner loop is a reverse recursion

[0145] 6.5.1: Determine whether the inner loop has a solution at this time;

[0146] (1) If there is no solution, proceed to step 6.5.2;

[0147] (2) If there is a solution, proceed to step 6.5.3;

[0148] 6.5.2: If there is no solution to the internal cycle, end the internal cycle and split the output coefficient ◇ j (t) Reduce the outer loop step size Δ(◇ j ) as the initial value of the new external circulation output splitting coefficient◇ j (t) B , that is ◇ j (t) B =◇ j (t)-Δ(◇ j ), return to step 4;

[0149] 6.5.3: If the inner loop has a solution, perform the inner loop in reverse recursion, return to step 5, and repeat the inner loop until the inner loop converges.

[0150] Step 7: Calculate the output splitting coefficient in the outer loop◇ j (t)

[0151] 7.1: Calculate the final value of the external circulation production split coefficient◇ j (t) E

[0152] The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can calculate the pseudo-average formation pressure at time t and t+1: and

[0153] The average formation pressure at time t and t+1 is calculated by formula (1): and r ej 、 and Substitute into the following formula (5) to calculate the final value of the external circulation production split coefficient◇ j (t) E ;

[0154]

[0155] 7.2: Determine the outer loop rules

[0156] 7.2.1: When the inner loop has a solution, if the inner loop rule is reverse recursion, then the outer loop rule is forward recursion;

[0157] 7.2.2: When the inner loop has a solution, if the inner loop rule is forward recursion, then the outer loop rule is reverse recursion;

[0158] 7.3: Determine whether the outer loop converges

[0159] 7.3.1: Calculation |◇ j (t) E -◇ j (t) B | / ◇ j (t) B , and then judge whether it satisfies |◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j ), if satisfied, proceed to 7.3.2; if not satisfied, proceed to 7.3.3;

[0160] 7.3.2: When the outer loop converges, the solution of the outer loop is the final value of the outer loop output splitting coefficient◇ j (t) B , so◇ j (t)=◇ j (t) B , output splitting coefficient◇ j (t), end the outer loop and proceed to step 8;

[0161] 7.3.3: If the outer loop does not converge, continue the outer loop according to the outer loop rules determined in 7.2;

[0162] (1) When the outer loop rule is reverse recursion, proceed to step 7.4;

[0163] (2) When the outer loop rule is forward recursion, proceed to step 7.5;

[0164] 7.4: If the outer loop is a reverse recursion

[0165] 7.4.1: Determine whether the outer loop has a solution at this time;

[0166] (1) If there is no solution, proceed to step 7.4.2;

[0167] (2) If there is a solution, proceed to step 7.4.3;

[0168] 7.4.2: If there is no solution to the outer loop, end the reverse recursion; change the outer loop rule from reverse recursion to forward recursion, and change the inner loop rule from forward recursion to reverse recursion, and return to step 2;

[0169] 7.4.3: If the outer loop has a solution, perform the outer loop in reverse recursion, return to step 3, and repeat the outer loop until the outer loop converges;

[0170] 7.5: If the outer loop is a forward recursion

[0171] 7.5.1: Determine whether the outer loop has a solution at this time;

[0172] (1) If there is no solution, proceed to step 7.5.2;

[0173] (2) If there is a solution, proceed to step 7.5.3;

[0174] 7.5.2: If there is no solution to the outer loop, end the forward recursion and change the outer loop rule from forward recursion to reverse recursion. At the same time, change the inner loop rule from reverse recursion to forward recursion and return to step 2.

[0175] 7.5.3: If there is a solution, perform the outer loop using forward recursion, return to step 3, and repeat the outer loop until the outer loop converges.

[0176] Step 8: Yield Splitting Coefficient◇ j (t) Normalization

[0177] 8.1: Calculate the production splitting coefficient of each production layer in each well◇ j (t) and ∑◇ j (t), where j = 1, .., k, then ∑◇ j (t) is usually not equal to 1;

[0178] 8.2: Find the minimum value min◇ of the production splitting coefficient of all production layers in each well j (t), where j = 1, .., k;

[0179] 8.3: Use 1-∑◇ j (t)+min◇ j (t) is normalized, that is, 1-∑◇ j (t)+min◇ j (t) as min◇ j (t) New production splitting coefficient of the corresponding production layer◇ j (t), after normalization, it satisfies ∑◇ j (t)=1.

[0180] The technical effects of the present invention are:

[0181] The present invention establishes a calculation model for the production splitting coefficient and adopts an internal and external double loop for solving it for the first time. When the deflation radius is unknown, the tracking calculation of the production splitting coefficient is realized, filling the theoretical gap in the tracking calculation of the production splitting coefficient. BRIEF DESCRIPTION OF THE DRAWINGS

[0182] Figure 1 It is a calculation flow chart of the present invention.

[0183] Figure 2 It is the PVT parameter diagram of a specific experimental example.

[0184] Figure 3 This is a comparison chart of the gas production profile of the present invention and the calculation results of the internal and external double circulation. DETAILED DESCRIPTION

[0185] Specific experimental examples

[0186] The calculation method of the present invention was implemented and the calculation results were verified using a gas well with a gas production profile. The example includes two gas wells. The calculation parameters of the experimental example are shown in Table 1.

[0187] Table 1 Calculation parameters of specific experimental examples

[0188]

[0189] The internal and external double-circulation calculation method is used for calculation. Due to the lack of stratified PVT data, the same PVT parameters are used for calculation in different production layers of the same gas well. The specific process is as follows.

[0190] Step 1: Set the loop step size and error limit;

[0191] 1.1: Set the inner loop step size to Δ(r ej ), the initial value of the inner circulation deflation radius r ej B When it increases, it satisfies 0<Δ(r ej ), the initial value of the inner circulation deflation radius r ej B When decreasing, 0<Δ(r ej ) <r ej B ;

[0192] 1.2: Set the outer loop step size to Δ(◇ j ), initial value of external circulation production splitting coefficient◇ j B When increasing, it satisfies 0<Δ(◇ j )≤1-◇ j B , initial value of external circulation output splitting coefficient◇ j B When decreasing, 0<Δ(◇ j )<◇ j B ;

[0193] 1.3: Set the upper limit of the inner loop error to ε(r ej ), the value ε(r ej )=0.01%;

[0194] 1.4: Set the upper limit of the outer loop error to ε(◇ j ), the value is ε(◇ j )=0.1%.

[0195] Step 2: Assume the initial value of the external cycle output split coefficient ◇ j (t) (0)

[0196] Assume that the initial value of the external circulation production split coefficient is ◇ j (t) (0) Satisfy 0≤◇ j (t) (0) ≤1;

[0197] Initial value of external circulation production splitting coefficient for each well and each production layer◇ j (t) (0) as follows:

[0198] Initial value of external circulation production splitting coefficient Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[◇ j (t) (0) ]]> 63% 35% 33% 50% 20%

[0199] Step 3: Determine the initial value of the external circulation output splitting coefficient◇ j (t) B

[0200] 3.1: At the beginning of each round of external circulation, the initial value of the external circulation production splitting coefficient of each well and each layer◇ j (t) B = Initial value of external circulation production splitting coefficient◇ j (t) (0) , that is ◇ j (t) B =◇ j (t) (0) ;

[0201] Initial value of external circulation production splitting coefficient for each well and each production layer◇ j (t) B as follows:

[0202] Initial value of external circulation production splitting coefficient Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[◇ j (t) B ]]> 63% 35% 33% 50% 20%

[0203] 3.2: Let the production splitting coefficient of each well and each layer be j (t) = initial value of external circulation production splitting coefficient◇ j (t) B ;

[0204] Yield splitting coefficient Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[◇ j (t)]]> 63% 35% 33% 50% 20%

[0205] At this point, the outer loop has just started, so step 3.3 is not performed.

[0206] Step 4: Assume the initial value of the inner loop deflation radius r ej (0)

[0207] Assume that the initial value of the inner circulation deflation radius r ej (0) Satisfy r w <r ej (0) ;

[0208] Initial value r of the internal circulation gas leakage radius of each well and each production layer ej (0) as follows:

[0209] Initial value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej (0) / (m)]]> 400 400 700 700 1000

[0210] Step 5: Determine the initial value r of the inner loop deflation radius ej B

[0211] 5.1: At the beginning of each inner cycle, let the initial value of the inner cycle deflation radius be r ejB = Initial value of inner circulation deflation radius r ej (0) , that is, r ej B =r ej (0) ;

[0212] Initial value r of the internal circulation gas leakage radius of each well and each production layer ej B as follows:

[0213] Initial value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej B / (m)]]> 400 400 700 700 1000

[0214] 5.2: Let the deflation radius r ej = Initial value of inner circulation air leakage radius r ej B ;

[0215] Deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej / (m)]]> 400 400 700 700 1000

[0216] At this point, the inner loop of this round has just begun, and step 5.3 is not performed.

[0217] Step 6: Inner loop calculation of deflation radius r ej

[0218] 6.1: Calculate the final value r of the inner circulation deflation radius ej E

[0219] The pseudo bottom hole flow pressure ψ[p wfj (t)]; the results are as follows:

[0220] Pseudo bottom hole pressure Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[ψ[p wfj (t)] / (MPa 2 / mPa·s)]]> 5001.40 5013.24 3880.50 3900.74 3951.56

[0221] The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3): Here are the results:

[0222]

[0223] The average formation pressure of production layer j at time t is calculated by formula (1): Here are the results:

[0224]

[0225] The final value of the inner circulation deflation radius r is calculated by formula (4): ej E ; The results are as follows:

[0226] Final value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej E / (m)]]> 453.37 419.07 763.97 839.15 1167.41

[0227] 6.2: Determine the inner loop rules

[0228] 6.2.1: If the inner loop has just started, proceed to step 6.2.2; if the inner loop is in progress, proceed to step 6.2.3;

[0229] At this point, the inner loop of this round has just begun, and step 6.2.2 is performed;

[0230] 6.2.2: The inner loop has just started, and the rules of the inner loop depend on the rules of the outer loop:

[0231] At this time, the outer loop rule is unknown, and the inner loop rule adopts reverse recursion;

[0232] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion

[0233] 6.3: Determine whether the inner loop converges

[0234] 6.3.1: Calculation of r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ),get:

[0235] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[|r ej E -r ej B | / r ej E ]]> 11.77% 4.55% 8.37% 16.58% 14.34% <![CDATA[ε(r ej )]]> 0.01% 0.01% 0.01% 0.01% 0.01% <![CDATA[Whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej )]]> Dissatisfied Dissatisfied Dissatisfied Dissatisfied Dissatisfied

[0236] Since each well and each production layer do not meet the convergence conditions, each production layer does not converge, and 6.3.3 is performed for each production layer;

[0237] If some production layers meet the convergence conditions and some do not, proceed to 6.3.2 for the production layers that meet the convergence conditions; proceed to 6.3.3 for the production layers that do not meet the convergence conditions.

[0238] 6.3.3: At this point, the inner loop does not converge. Continue the inner loop according to the inner loop rules determined in 6.2.

[0239] (1) When the inner loop rule is forward recursion, proceed to step 6.4;

[0240] (2) When the inner loop rule is reverse recursion, proceed to step 6.5;

[0241] In 6.2.1, it was determined that the inner loop rule is reverse recursion, so we get:

[0242] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion conduct Step 6.5 Step 6.5 Step 6.5 Step 6.5 Step 6.5

[0243] 6.5: The inner loop has been determined to be a reverse recursion

[0244] 6.5.1: Determine whether the inner loop has a solution at this time;

[0245] (1) If there is no solution, proceed to step 6.5.2;

[0246] (2) If there is a solution, proceed to step 6.5.3;

[0247] At this point, all inner loops have solutions, so proceed to step 6.5.3;

[0248] 6.5.3: If the inner loop has a solution, perform the inner loop in reverse recursion, return to step 5, and repeat the inner loop until it converges.

[0249] The process of repeating the inner loop is as follows:

[0250] Step 5: Determine the initial value r of the inner loop deflation radius ej B

[0251] At this time, the inner loop is in progress, proceed to step 5.3;

[0252] 5.3: The inner loop is in progress. At this time, the inner loop is reverse recursive and proceeds to step 5.3.2;

[0253] 5.3.2: When the inner loop is reverse recursive, the initial value of the inner loop deflation radius r ej B for:

[0254]

[0255] Step 6: Inner loop calculation of deflation radius r ej

[0256] 6.1: Calculate the final value r of the inner circulation deflation radius ej E

[0257] The pseudo bottom hole flow pressure ψ[p wfj (t)]; the results are as follows:

[0258] Pseudo bottom hole pressure Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[ψ[p wfj (t)] / (MPa 2 / mPa·s)]]> 5001.40 5013.24 3880.50 3900.74 3951.56

[0259] The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3): Here are the results:

[0260]

[0261] The average formation pressure of production layer j at time t is calculated by formula (1): Here are the results:

[0262]

[0263] The final value of the inner circulation deflation radius r is calculated by formula (4): ej E ; The results are as follows:

[0264] Final value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej E / (m)]]> 475.04 437.64 772.20 851.21 1228.91

[0265] 6.2: Determine the inner loop rules

[0266] 6.2.1: If the inner loop has just started, proceed to step 6.2.2; if the inner loop is in progress, proceed to step 6.2.3; if the inner loop is in progress, proceed to step 6.2.3;

[0267] 6.2.3: The inner cycle is in progress, and the inner cycle rules depend on the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B The relationship between them is calculated as follows:

[0268] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion

[0269] 6.3: Determine whether the inner loop converges

[0270] 6.3.1: Calculation of r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ),get:

[0271] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[|r ej E -r ej B | / r ej E ]]> 0.0085% 0.0091% 0.0004% 0.0013% 0.0086% <![CDATA[ε(r ej )]]> 0.01% 0.01% 0.01% 0.01% 0.01% <![CDATA[Whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej )]]> satisfy satisfy satisfy satisfy satisfy

[0272] Since all wells and production layers meet the convergence conditions, the inner loop converges and 6.3.2 is performed;

[0273] 6.3.2: At this point, the inner loop is judged to have converged, and the solution of the inner loop is obtained. ej E , let r ej =r ej E , output leak radius r ej :

[0274] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Solution of the inner loop 475.04 437.64 772.20 851.21 1228.91 <![CDATA[泄气 radius r ej / (m)]]> 475.04 437.64 772.20 851.21 1228.91

[0275] This inner loop ends and proceeds to step 7.

[0276] Step 7: Calculate the output splitting coefficient in the outer loop◇ j (t)

[0277] 7.1: Calculate the final value of the external circulation production split coefficient◇ j (t) E

[0278] The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can get the pseudo-average formation pressure at time t and t+1: and Here are the results:

[0279]

[0280] The average formation pressure at time t and t+1 is calculated by formula (1): and Here are the results:

[0281]

[0282] r ej 、 and Substitute into the following formula (5) to calculate the final value of the external circulation production split coefficient◇ j (t) E ; The results are as follows:

[0283] Final value of external circulation production splitting coefficient Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[◇ j (t) E ]]> 62.68% 33.23% 32.95% 50.11% 20.03%

[0284] 7.2: Determine the outer loop rules

[0285] 7.2.1: When the inner loop has a solution, if the inner loop rule is reverse recursion, then the outer loop rule is forward recursion;

[0286] 7.2.2: When the inner loop has a solution, if the inner loop rule is forward recursion, then the outer loop rule is reverse recursion;

[0287] Determine the outer loop rules based on the inner loop rules

[0288] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion Outer loop rules Forward recursion Forward recursion Forward recursion Forward recursion Forward recursion

[0289] 7.3: Determine whether the outer loop converges

[0290] 7.3.1: Calculation |◇ j (t) E -◇ j (t)B | / ◇ j (t) B , and then judge whether it satisfies |◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j ),get:

[0291] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[|◇ j (t) E -◇ j (t) B | / ◇ j (t) B ]]> 0.5047% 5.0591% 0.1625% 0.2246% 0.1750% <![CDATA[ε(◇ j )]]> 0.1% 0.1% 0.1% 0.1% 0.1% <![CDATA[Whether it meets | ◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j )]]> Dissatisfied Dissatisfied Dissatisfied Dissatisfied Dissatisfied

[0292] Since each well and each production layer does not meet the external circulation convergence conditions, the external circulation does not converge and 7.3.3 is performed;

[0293] 7.3.3: At this time, the outer loop does not converge. According to the outer loop rules determined in 7.2, continue the outer loop;

[0294] (1) When the outer loop rule is reverse recursion, proceed to step 7.4;

[0295] (2) When the outer loop rule is forward recursion, proceed to step 7.5;

[0296] get:

[0297] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion Outer loop rules Forward recursion Forward recursion Forward recursion Forward recursion Forward recursion conduct Step 7.5 Step 7.5 Step 7.5 Step 7.5 Step 7.5

[0298] 7.5: The outer loop is a forward recursion

[0299] 7.5.1: Determine whether the outer loop has a solution at this time:

[0300] (1) If there is no solution, proceed to step 7.5.2;

[0301] (2) If there is a solution, proceed to step 7.5.3;

[0302] At this point, all outer loops have solutions, so proceed to step 7.5.3;

[0303] 7.5.3: If there is a solution, perform the outer loop using forward recursion, return to step 3, and repeat the outer loop until the outer loop converges.

[0304] The process of repeating the outer loop is as follows:

[0305] Step 3: Determine the initial value of the external circulation output splitting coefficient◇ j (t) B

[0306] At this time, the outer loop is in progress, proceed to step 3.3;

[0307] At this time, the outer loop rule is forward recursion, and step 3.3.2 is performed;

[0308] 3.3.2: When the outer loop is a forward recursive loop, the initial value of the outer loop output splitting coefficient is ◇ j (t) B for:

[0309]

[0310] Step 4: Assume the initial value of the inner loop deflation radius r ej (0)

[0311] Assume that the initial value of the inner circulation deflation radius r ej (0) Satisfy r w <r ej (0) ;

[0312] Initial value r of the internal circulation gas leakage radius of each well and each production layer ej (0) as follows:

[0313] Initial value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej (0) / (m)]]> 477.06 451.00 778.82 838.89 1217.90

[0314] Step 5: Determine the initial value r of the inner loop deflation radius ej B

[0315] 5.1: At the beginning of each inner cycle, let the initial value of the inner cycle deflation radius be r ej B = Initial value of inner circulation deflation radius r ej (0) , that is, r ej B =r ej (0) ;

[0316] Initial value r of the internal circulation gas leakage radius of each well and each production layer ej B as follows:

[0317] Initial value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej B / (m)]]> 477.06 451.00 778.82 838.89 1217.90

[0318] 5.2: Let the deflation radius r ej = Initial value of inner circulation air leakage radius r ej B ;

[0319] Deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej / (m)]]> 477.06 451.00 778.82 838.89 1217.90

[0320] At this point, the inner loop has just started, so step 5.3 is not performed.

[0321] Step 6: Inner loop calculation of deflation radius r ej

[0322] 6.1: Calculate the final value r of the inner circulation deflation radius ej E

[0323] The pseudo bottom hole flow pressure ψ[p wfj (t)]; the results are as follows:

[0324] Pseudo bottom hole pressure Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[ψ[p wfj (t)] / (MPa 2 / mPa·s)]]> 5001.40 5013.24 3880.50 3900.74 3951.56

[0325] The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3): Here are the results:

[0326]

[0327] The average formation pressure of production layer j at time t is calculated by formula (1): Here are the results:

[0328]

[0329] The final value of the inner circulation deflation radius r is calculated by formula (4): ej E ; The results are as follows:

[0330] Final value of inner circulation deflation radius Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[r ej E / (m)]]> 477.08 450.96 778.80 838.88 1217.80

[0331] 6.2: Determine the inner loop rules

[0332] 6.2.1: If the inner loop has just started, proceed to step 6.2.2; if the inner loop is in progress, proceed to step 6.2.3; at this time, the inner loop has just started, proceed to 6.2.2;

[0333] 6.2.2: The inner loop has just started, and the rules of the inner loop depend on the rules of the outer loop:

[0334] At this time, the outer loop rule is unknown, and the inner loop rule adopts reverse recursion;

[0335] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion

[0336] 6.3: Determine whether the inner loop converges

[0337] 6.3.1: Calculation of r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E≤ε(r ej ),get:

[0338] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[|r ej E -r ej B | / r ej E ]]> 0.0044% 0.0079% 0.0028% 0.0012% 0.0081% <![CDATA[ε(r ej )]]> 0.01% 0.01% 0.01% 0.01% 0.01% <![CDATA[Whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej )]]> satisfy satisfy satisfy satisfy satisfy

[0339] Since all wells and production layers meet the convergence conditions, all production layers converge and 6.3.2 is carried out for all production layers;

[0340] 6.3.2: At this point, the inner loop converges and the solution r of the inner loop is obtained ej E , let r ej =r ej E , output leak radius r ej :

[0341] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Solution of the inner loop 477.08 450.96 778.80 838.88 1217.80 <![CDATA[Deflation radius r ej / (m)]]> 477.08 450.96 778.80 838.88 1217.80

[0342] This round of inner loop ends and proceeds to step 7;

[0343] Step 7: Calculate the output splitting coefficient in the outer loop◇ j (t)

[0344] 7.1: Calculate the final value of the external circulation production split coefficient◇ j (t) E

[0345] The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can calculate the pseudo-average formation pressure at time t and t+1: and Here are the results:

[0346]

[0347] The average formation pressure at time t and t+1 is calculated by formula (1): and Here are the results:

[0348]

[0349] r ej 、 and Substitute into the following formula (5) to calculate the final value of the external circulation production split coefficient◇ j (t) E ; The results are as follows:

[0350] Final value of external circulation production splitting coefficient Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[◇ j (t) E ]]> 63.16% 35.19% 33.37% 48.98% 19.78%

[0351] 7.2: Determine the outer loop rules

[0352] 7.2.1: When the inner loop has a solution, if the inner loop rule is reverse recursion, then the outer loop rule is forward recursion;

[0353] 7.2.2: When the inner loop has a solution, if the inner loop rule is forward recursion, then the outer loop rule is reverse recursion;

[0354] Determine the outer loop rules based on the inner loop rules

[0355] Loop Rules Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Inner loop rules Reverse recursion Reverse recursion Reverse recursion Reverse recursion Reverse recursion Outer loop rules Forward recursion Forward recursion Forward recursion Forward recursion Forward recursion

[0356] 7.3: Determine whether the outer loop converges

[0357] 7.3.1: Calculation |◇ j (t) E -◇ j (t) B | / ◇ j (t) B , and then judge whether it satisfies |◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j ),get:

[0358] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 <![CDATA[|◇ j (t) E -◇ j (t) B | / ◇ j (t) B ]]> 0.0087% 0.0345% 0.0798% 0.0432% 0.0918% <![CDATA[ε(◇ j )]]> 0.1% 0.1% 0.1% 0.1% 0.1% <![CDATA[Whether it meets | ◇ j (t) E -◇ j (t) B | / ◇ j (t) B ≤ε(◇ j )]]> satisfy satisfy satisfy satisfy satisfy

[0359] Since all wells and production layers meet the external circulation convergence conditions, the external circulation convergence is carried out in 7.3.2;

[0360] 7.3.2: At this point, the outer loop converges and the solution of the outer loop is obtained. j (t) B , so◇ j (t)=◇ j (t) B , output splitting coefficient◇ j (t):

[0361] parameter Well 1 layer 1 Well 1 layer 2 Well 2 layer 1 Well 2 layer 2 Well 2 layer 3 Outer loop solution 63.15% 35.18% 33.40% 49.00% 19.80% <![CDATA[Production splitting coefficient ◇ j (t)]]> 63.15% 35.18% 33.40% 49.00% 19.80%

[0362] This outer loop ends and proceeds to step 8.

[0363] Step 8: Yield Splitting Coefficient◇ j (t) Normalization

[0364] 8.1: Calculate the production splitting coefficient of all production layers in each well◇ j (t) and ∑◇ j (t), where j = 1, .., k, we get:

[0365] parameter Well 1 Well 2 <![CDATA[∑◇ j (t)]]> 98.33% 102.20%

[0366] At this time∑◇ j (t) is not equal to 1;

[0367] 8.2: Find the minimum value of the production splitting coefficient for each well min◇ j (t), where j = 1, .., k, we get:

[0368] parameter Well 1 layer 2 Well 2 layer 3 <![CDATA[min◇ j (t)]]> 35.18% 19.80%

[0369] The minimum value of the production splitting coefficient of Well 1 is min◇ j (t) is the minimum value of the production splitting coefficient min◇ of layer 2 and well 2 j (t) is layer 3;

[0370] 8.3: Use 1-∑◇ j (t)+min◇ j (t) is normalized, that is, 1-∑◇ j (t)+min◇ j (t) as min◇ j (t) New production splitting coefficient of the corresponding production layer◇ j (t), we get:

[0371] parameter Well 1 layer 2 Well 2 layer 3 <![CDATA[min◇ j (t)]]> 35.18% 19.80% <![CDATA[1-∑◇ j (t)+min◇ j (t)]]> 36.85% 17.60%

[0372] After normalization, we get:

[0373] parameter Well 1 Well 2 <![CDATA[∑◇ j (t)]]> 100% 100%

[0374] At this time, satisfying ∑◇ j (t)=1.

[0375] The calculation results of the internal and external dual circulation are compared with the gas production profile. The comparison results are shown in Figure 3 The comparison shows that the internal and external dual circulation has a more reliable accuracy than the gas production profile and is suitable for field application.

Claims

1. A gas well production splitting method driven by internal and external dual circulation, characterized by: Here’s how: Defining the yield split coefficient The cycle is the outer cycle, and the deflation radius r is defined ej The cycle is the inner cycle; Given the initial value of the external circulation production splitting coefficient Given the initial value r of the inner loop deflation radius ej B ; Initial value of the splitting coefficient of the external circulation output and the initial value of the inner circulation deflation radius r ej B Calculate the average formation pressure And the final value of the internal circulation deflation radius r ej E ; When the inner loop converges, the deflation radius r is obtained ej ,When the inner loop does not converge, the inner loop is performed according to the inner loop rules until the inner loop converges; By average formation pressure and deflation radius r ej Calculate the final value of the external circulation production split coefficient When the outer loop converges, the yield splitting coefficient is obtained When the outer loop does not converge, perform the outer loop according to the outer loop rules until the outer loop converges; During each cycle, the outer loop rules are always opposite to the inner loop rules.

2. The gas well production splitting method driven by internal and external dual circulation according to claim 1 is characterized by: The average formation pressure And the final value of the internal circulation deflation radius r ej E The calculation process is: The pseudo bottom hole flow pressure ψ[p wfj (t)]; Where: ψ[p wfj (t)] is the simulated bottom hole pressure of the production layer j at time t, MPa 2 / mPa·s; p wfj (t) is the bottom hole flowing pressure of the production layer j at time t, MPa; p0 is the reference pressure, MPa; p is pressure, MPa; μ is the gas viscosity, mPa·s; Z is the coefficient of deviation, dimensionless; The pseudo-average formation pressure of the production layer j at time t is calculated by the following formula (3): Where: is the pseudo-average formation pressure of the production layer j at time t, MPa 2 / mPa·s; is the average formation pressure of the production layer j at time t, MPa; p sc is the standard pressure, usually 0.101 MPa; Z scj is the standard deviation coefficient of pay zone j, dimensionless; T sc is the standard temperature, usually 293.15 K; T j is the temperature of the production layer j, K; is the production splitting coefficient of production layer j at time t, dimensionless; q sc (t) is the gas production at the wellhead of the gas well, m 3 / d; K j is the permeability of production layer j, 10 -3 μm 2 ; h j is the thickness of pay zone j, m; r ej is the gas release radius of production layer j, m; r w is the wellbore radius, m; S p is the pressure conversion skin, dimensionless; The average formation pressure of the production layer j at time t is calculated by the following formula (1): The final value of the inner circulation deflation radius r is calculated by the following formula (4): ej E ; Where: is the porosity of pay zone j, dimensionless; S gij is the original gas saturation of the production layer j, dimensionless; G pj (t) is the cumulative gas production of production layer j at time t, m 3 ; p ij is the original formation pressure of the production layer j, MPa; Z ij is the original deviation coefficient of pay zone j, dimensionless; Z rj (t) is The corresponding coefficient of deviation, dimensionless.

3. The gas well production splitting method driven by internal and external dual circulation according to claim 2 is characterized by: The judgment principle of the inner loop convergence is: calculate |r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ), if satisfied, the inner loop converges; otherwise, the inner loop does not converge; where ε(r ej ) is the upper limit of the inner loop error, satisfying ε(r ej )≤0.01%.

4. The gas well production splitting method driven by internal and external dual circulation according to claim 3 is characterized by: The final value of the external circulation production splitting coefficient The calculation process is: The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can calculate the pseudo-average formation pressure at time t and t+1: and The average formation pressure at time t and t+1 is calculated by formula (1): and r ej 、 and Substitute into the following formula (5) to calculate the final value of the external circulation production split coefficient Where: is the average formation pressure of the production layer j at time t+1, MPa; Z rj (t+1) is The corresponding coefficient of deviation, dimensionless.

5. The gas well production splitting method driven by internal and external dual circulation according to claim 4 is characterized by: The judgment principle of the outer loop convergence is: calculate Then determine whether it satisfies If it is satisfied, the outer loop converges; otherwise, the outer loop does not converge; is the upper limit of the outer loop error, satisfying 6. The gas well production splitting method driven by internal and external dual circulation according to claim 5 is characterized by: The inner loop rule and the outer loop rule both include forward recursion and reverse recursion; when the inner loop rule is reverse recursion, the outer loop rule is forward recursion; when the inner loop rule is forward recursion, the outer loop rule is reverse recursion.

7. The gas well production splitting method driven by internal and external dual circulation according to claim 6 is characterized by: The inner loop has just started, and the inner loop rules depend on the outer loop rules: (1) At the beginning of each inner loop, if the outer loop rule is unknown, the inner loop rule adopts reverse recursion and the outer loop rule adopts forward recursion; (2) At the beginning of each inner cycle, if the outer cycle rules are known, the inner cycle rules are always opposite to the outer cycle rules; The inner cycle is in progress, and the inner cycle rule depends on the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B The relationship between: (1) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is proportional to the value of the function, the inner loop is a forward recursion, and the outer loop is a reverse recursion; (2) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is inversely proportional, the inner loop is a reverse recursion, and the outer loop is a forward recursion.

8. The gas well production splitting method driven by internal and external dual circulation according to claim 7 is characterized by: Here’s how: Step 1: Set the loop step size and error limit; 1.1: Set the inner loop step size to Δ(r ej ), the initial value of the inner circulation deflation radius r ej B When it increases, it satisfies 0<Δ(r ej ), the initial value of the inner circulation deflation radius r ej B When decreasing, 0<Δ(r ej ) <r ej B ; 1.2: Set the outer loop step size to Initial value of external circulation production splitting coefficient Satisfied when increasing Initial value of external circulation production splitting coefficient Satisfied when reduced 1.3: Set the upper limit of the inner loop error to ε(r ej ), the value ε(r ej )≤0.01%; 1.4: Set the upper limit of the outer loop error to Value Step 2: Assume the initial value of the external cycle production split coefficient Assuming the initial value of the external circulation production split coefficient satisfy Step 3: Determine the initial value of the external circulation production splitting coefficient 3.1: At the beginning of each outer cycle, the initial value of the outer cycle output splitting coefficient is Right now 3.2: Let the production split coefficient 3.3: During each outer loop, if the outer loop is reverse recursive, proceed to step 3.3.1; if the outer loop is forward recursive, proceed to step 3.3.2; 3.3.1: When the outer loop is reverse recursive, the initial value of the outer loop output splitting coefficient for: (1) When the initial value of the external circulation production split coefficient When the output split coefficient Reduce the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now (2) When the initial value of the external circulation production split coefficient When the output split coefficient Increase the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now 3.3.2: When the outer loop is a forward recursive loop, the initial value of the outer loop output splitting coefficient for: (1) When the initial value of the external circulation production split coefficient When the output split coefficient Increase the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now (2) When the initial value of the external circulation production split coefficient When the output split coefficient Reduce the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now Step 4: Assume the initial value of the inner loop deflation radius r ej (0) Assume that the initial value of the inner circulation deflation radius r ej (0) , satisfying r w <r ej (0) ; Step 5: Determine the initial value r of the inner loop deflation radius ej B 5.1: At the beginning of each inner cycle, let the initial value of the inner cycle deflation radius be r ej B = Initial value of inner circulation deflation radius r ej (0) , that is, r ej B =r ej (0) ; 5.2: Let the deflation radius r ej = Initial value of inner circulation air leakage radius r ej B ; 5.3: During each inner loop, if the inner loop is forward recursive, proceed to step 5.3.1; if the inner loop is reverse recursive, proceed to step 5.3.2; 5.3.1: When the inner loop is a forward recursive loop, the initial value of the inner loop deflation radius r ej B for: (1) When the initial value of the inner circulation deflation radius r ej B > Final value of internal circulation deflation radius r ej E When the deflation radius r ej Increase the inner loop step size Δ(r ej ) is used as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej +Δ(r ej ); (2) When the initial value of the inner circulation leakage radius r ej B <The final value of the internal circulation deflation radius r ej E When the deflation radius r ej Reduce the inner loop step size Δ(r ej ) is used as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej -Δ(r ej ); 5.3.2: When the inner loop is reverse recursive, the initial value of the inner loop deflation radius r ej B for: (1) When the initial value of the inner circulation deflation radius r ej B > Final value of internal circulation deflation radius r ej E When the deflation radius r ej Reduce the inner loop step size Δ(r ej ) is used as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej -Δ(r ej ); (2) When the initial value of the inner circulation leakage radius r ej B <The final value of the internal circulation deflation radius r ej E When the deflation radius r ej Increase the inner loop step size Δ(r ej ) as the new initial value of the inner circulation deflation radius r ej B , that is, r ej B =r ej +Δ(r ej ); Step 6: Inner loop calculation of deflation radius r ej 6.1: Calculate the final value r of the inner circulation deflation radius ej E The pseudo bottom hole flow pressure ψ[p wfj (t)]; The pseudo-average formation pressure of the production layer j at time t is calculated by formula (3): The average formation pressure of production layer j at time t is calculated by formula (1): The final value of the inner circulation deflation radius r is calculated by formula (4): ej E ; 6.2: Determine the inner loop rules 6.2.1: If the inner loop has just started, proceed to step 6.2.2; if the inner loop is in progress, proceed to step 6.2.3; 6.2.2: The inner loop has just started, and the rules of the inner loop depend on the rules of the outer loop: (1) At the beginning of each inner loop, if the outer loop rule is unknown, the inner loop rule adopts reverse recursion and the outer loop rule adopts forward recursion; (2) At the beginning of each inner cycle, if the outer cycle rules are known, the inner cycle rules are always opposite to the outer cycle rules; 6.2.3: The inner cycle is in progress, and the inner cycle rules depend on the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B The relationship between: (1) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When the value is proportional to the value of the function, the inner loop is a forward recursion, and the outer loop is a reverse recursion; (2) During each inner cycle, when the inner cycle ratio r ej E / r ej B and the initial value of the inner circulation deflation radius r ej B When they are inversely proportional, the inner loop is reverse recursion, and the outer loop is forward recursion; 6.3: Determine whether the inner loop converges 6.3.1: Calculation of r ej E -r ej B | / r ej E , and then judge whether it satisfies |r ej E -r ej B | / r ej E ≤ε(r ej ), if satisfied, proceed to 6.3.2; if not satisfied, proceed to 6.3.3; 6.3.2: At this point, the inner loop converges, and the solution of the inner loop is the final value of the inner loop deflation radius r ej E , let r ej =r ej E , output leak radius r ej , the inner loop ends and proceeds to step 7; 6.3.3: At this point, the inner loop does not converge. Continue the inner loop according to the inner loop rules determined in 6.

2. (1) When the inner loop rule is forward recursion, proceed to step 6.4; (2) When the inner loop rule is reverse recursion, proceed to step 6.5; 6.4: If the inner loop is a forward recursion 6.4.1: Determine whether the inner loop has a solution at this time; (1) If there is no solution, proceed to step 6.4.2; (2) If there is a solution, proceed to step 6.4.3; 6.4.2: If there is no solution to the inner cycle, end the inner cycle and split the output coefficient Reduce the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now Return to step 4; 6.4.3: If the inner loop has a solution, perform the inner loop in the forward recursive direction, return to step 5, and repeat the inner loop until the inner loop converges; 6.5: If the inner loop is a reverse recursion 6.5.1: Determine whether the inner loop has a solution at this time; (1) If there is no solution, proceed to step 6.5.2; (2) If there is a solution, proceed to step 6.5.3; 6.5.2: If there is no solution to the internal cycle, end the internal cycle and split the output coefficient Reduce the outer loop step size Then it is used as the initial value of the new external circulation production splitting coefficient Right now Return to step 4; 6.5.3: If the inner loop has a solution, perform the inner loop in reverse recursion, return to step 5, and repeat the inner loop until the inner loop converges; Step 7: Calculate the production split coefficient in the outer loop 7.1: Calculate the final value of the external circulation production split coefficient The deflation radius r that satisfies the inner loop convergence condition ej Substituting into formula (3) we can calculate the pseudo-average formation pressure at time t and t+1: and The average formation pressure at time t and t+1 is calculated by formula (1): and r ej 、 and Substitute into the following formula (5) to calculate the final value of the external circulation production split coefficient 7.2: Determine the outer loop rules 7.2.1: When the inner loop has a solution, if the inner loop rule is reverse recursion, then the outer loop rule is forward recursion; 7.2.2: When the inner loop has a solution, if the inner loop rule is forward recursion, then the outer loop rule is reverse recursion; 7.3: Determine whether the outer loop converges 7.3.1: Calculation Then determine whether it satisfies If satisfied, proceed to 7.3.2; if not satisfied, proceed to 7.3.3; 7.3.2: When the outer loop converges, the solution of the outer loop is the final value of the outer loop production splitting coefficient make Output split coefficient End the outer loop and proceed to step 8; 7.3.3: If the outer loop does not converge, continue the outer loop according to the outer loop rules determined in 7.2; (1) When the outer loop rule is reverse recursion, proceed to step 7.4; (2) When the outer loop rule is forward recursion, proceed to step 7.5; 7.4: If the outer loop is a reverse recursion 7.4.1: Determine whether the outer loop has a solution at this time; (1) If there is no solution, proceed to step 7.4.2; (2) If there is a solution, proceed to step 7.4.3; 7.4.2: If there is no solution to the outer loop, end the reverse recursion; change the outer loop rule from reverse recursion to forward recursion, and change the inner loop rule from forward recursion to reverse recursion, and return to step 2; 7.4.3: If the outer loop has a solution, perform the outer loop in reverse recursion, return to step 3, and repeat the outer loop until the outer loop converges; 7.5: If the outer loop is a forward recursion 7.5.1: Determine whether the outer loop has a solution at this time; (1) If there is no solution, proceed to step 7.5.2; (2) If there is a solution, proceed to step 7.5.3; 7.5.2: If there is no solution to the outer loop, end the forward recursion and change the outer loop rule from forward recursion to reverse recursion. At the same time, change the inner loop rule from reverse recursion to forward recursion and return to step 2. 7.5.3: If there is a solution, perform the outer loop using forward recursion, return to step 3, and repeat the outer loop until the outer loop converges; Step 8: Yield Splitting Coefficient Normalization 8.1: Calculate the production split coefficient of each production layer in each well sum Where j = 1, .., k, then Usually not equal to 1; 8.2: Find the minimum value of the production split coefficient of all production layers in each well where j = 1, .., k; 8.3: Use Normalize, As New production splitting coefficient for the corresponding production layer After normalization,

Citation Information

Patent Citations

  • Method for calculating directional well target point coordinate set

    CN115563441A

  • Method for calculating single-well controlled reserve of low-permeability / tight gas reservoir and analyzing residual gas thereof

    US20210002999A1