<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Environ. Sci.</journal-id>
<journal-title>Frontiers in Environmental Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Environ. Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-665X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1244543</article-id>
<article-id pub-id-type="doi">10.3389/fenvs.2023.1244543</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Environmental Science</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Enhancing oil-water flow simulation in shale reservoirs with fractal theory and meshless method</article-title>
<alt-title alt-title-type="left-running-head">Liu and Zhang</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fenvs.2023.1244543">10.3389/fenvs.2023.1244543</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Liu</surname>
<given-names>Wenbo</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/2355129/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Zhang</surname>
<given-names>Guangming</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
</contrib>
</contrib-group>
<aff>
<institution>School of Petroleum Engineering</institution>, <institution>Yangtze University</institution>, <addr-line>Wuhan</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1347572/overview">Shiming Wei</ext-link>, China University of Petroleum, China</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2143032/overview">Can Shi</ext-link>, Chengdu University of Technology, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2359613/overview">Zhi Chang</ext-link>, CNPC Engineering Technology R &#x26; D Company Limited, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Guangming Zhang, <email>1849798714@qq.com</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>27</day>
<month>07</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>11</volume>
<elocation-id>1244543</elocation-id>
<history>
<date date-type="received">
<day>22</day>
<month>06</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>17</day>
<month>07</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Liu and Zhang.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Liu and Zhang</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>
<bold>Introduction:</bold> Simulating oil and water flow in shale reservoirs is challenging due to heterogeneity caused by fractures. Conventional grid-based methods often have convergence issues. We propose a new approach using fractal theory and meshless methods to accurately model flow.</p>
<p>
<bold>Methods:</bold> A mathematical model describing oil-water flow in fractured horizontal shale wells was developed. The meshless weighted least squares (MWLS) method was used to numerically solve the model. Modeling points were placed flexibly, informed by fractal theory.</p>
<p>
<bold>Results:</bold> The MWLS solution aligned well with reference solutions but had enhanced flexibility. Comprehensive analysis showed the effects of modeling parameters like fracture properties on production.</p>
<p>
<bold>Discussion:</bold> The proposed methodology enabled accurate prediction of shale oil production. Convergence was improved compared to grid-based methods. The flexible modeling approach can be tailored to specific reservoir conditions. Further work could expand the model complexity and types of reservoirs.</p>
</abstract>
<kwd-group>
<kwd>shale reservoir</kwd>
<kwd>oil-water flow</kwd>
<kwd>MWLS method</kwd>
<kwd>multi-fractured horizontal well</kwd>
<kwd>reservoir simulation</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Environmental Informatics and Remote Sensing</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>Shale oil is an unconventional type of oil found in organic-rich black shale or nanoscale pores in shale. With vast reserves distributed worldwide, shale oil has become the most promising unconventional oil resource for development. However, shale oil reservoirs exhibit low matrix pore permeability and significant heterogeneity (<xref ref-type="bibr" rid="B7">Jia et al., 2019</xref>). Consequently, low fracture flowback rates often occur during the flowback process (<xref ref-type="bibr" rid="B29">Zhang et al., 2019</xref>), making accurate prediction of the oil and water flow in shale reservoirs crucial (<xref ref-type="bibr" rid="B5">Daneshy, 2004</xref>; <xref ref-type="bibr" rid="B3">Bertoncello et al., 2014</xref>; <xref ref-type="bibr" rid="B21">Su et al., 2016</xref>).</p>
<p>Due to the multi-scale nature and complex fluid distribution in shale oil reservoirs, traditional Darcy flow equations are insufficient for accurately depicting their flow characteristics. Researchers have adopted apparent porosity and permeability models to characterize the unique migration mechanisms in shales. These models can be grouped into three primary categories: Javadour models (based on fracture aperture) (<xref ref-type="bibr" rid="B6">Javadpour, 2009</xref>; <xref ref-type="bibr" rid="B1">Akkutlu et al., 2015</xref>; <xref ref-type="bibr" rid="B19">Singh and Javadpour, 2016</xref>), Civan models (based on the Knudsen number) (<xref ref-type="bibr" rid="B4">Civan, 2010</xref>; <xref ref-type="bibr" rid="B25">Wu et al., 2015</xref>; <xref ref-type="bibr" rid="B20">Song et al., 2016</xref>), Civan models (based on the Knudsen number) (<xref ref-type="bibr" rid="B11">Mason et al., 1983</xref>; <xref ref-type="bibr" rid="B9">Li et al., 2017</xref>; <xref ref-type="bibr" rid="B28">Zeng et al., 2017</xref>). In the study of oil behavior within nanopores, researchers have explored the use of organic/inorganic apparent porosity models. These models offer a valuable approach to characterize the oil state within nanopores, considering the influence of both organic and inorganic components. By incorporating the concept of apparent porosity, researchers aim to gain a deeper understanding of the distribution and behavior of oil within these nanoscale spaces (<xref ref-type="bibr" rid="B16">Sheng et al., 2019</xref>; <xref ref-type="bibr" rid="B17">Sheng et al., 2020</xref>). Furthermore, integrating the conventional dual-medium model with apparent permeability/porosity models has been found to provide a more accurate depiction of shale oil flow behavior (<xref ref-type="bibr" rid="B15">Sheng et al., 2018</xref>).</p>
<p>The heterogeneity of porosity and permeability in shale oil reservoirs poses challenges for numerical simulation, such as high computational costs and poor convergence (<xref ref-type="bibr" rid="B8">Li et al., 2023</xref>). Conventional grid-based finite difference methods are complex and not suitable for complex boundary conditions. Wei (<xref ref-type="bibr" rid="B23">Wei et al., 2021a</xref>) proposed a discontinuous discrete fracture model for coupled flow and geomechanics and used the finite element method to optimize the reservoir stress evolution (<xref ref-type="bibr" rid="B18">Shiming et al., 2022</xref>) and fracturing schemes for encrypted wells throughout the drilling-fracturing-producing wells (<xref ref-type="bibr" rid="B22">Wei et al., 2021b</xref>). Finite element meshes may experience severe distortion, requiring remeshing, which increases computational time and significantly affects accuracy. Describing complex geometric computational domains becomes cumbersome as further mesh refinement complicates preprocessing. Finite difference/volume methods are known for their accuracy; however, they have limitations when it comes to grid uniformity. High-precision difference schemes are often designed for regular Cartesian grids, which poses challenges when dealing with complex boundaries or reservoirs with intricate geological conditions. As a result, handling such situations becomes difficult using traditional finite difference/volume methods (<xref ref-type="bibr" rid="B12">Rao et al., 2020</xref>; <xref ref-type="bibr" rid="B13">Rao et al., 2022</xref>). Given the limitations of conventional numerical methods in simulating shale oil reservoirs, the meshless method emerges as a promising and efficient alternative. This method entails positioning points throughout the reservoir area to precisely delineate the intricate boundary of the shale oil reservoir. In this manner, the meshless technique develops a potent numerical model to emulate the movement of oil and water inside the shale oil deposit.</p>
<p>Introduced by Lucy in 1977, the Smoothed Particle Hydrodynamics (SPH) method is a mesh-free approach that has found success in addressing astrophysical problems. This method has been widely utilized in the simulation of various astrophysical phenomena, showcasing its effectiveness in capturing complex dynamics and fluid behavior without relying on traditional meshes (<xref ref-type="bibr" rid="B10">Lucy, 1977</xref>). Radial Basis Function (RBF) interpolation is an effective approach for generating smooth, continuous approximations of scattered data. In this technique, a collection of radial basis functions, such as Gaussian or multiquadric functions, are employed to estimate the solution at any point within the domain (<xref ref-type="bibr" rid="B24">Wright, 2003</xref>). The Element-free Galerkin (EFG) method is a meshless alternative to the Galerkin method, which is widely used in finite element analysis. Utilizing moving least squares (MLS) approximation, EFG constructs shape functions and integrates the PDE&#x2019;s weak form throughout the domain. This method is applicable to both linear and nonlinear problems. (<xref ref-type="bibr" rid="B2">Belytschko et al., 1995</xref>). Li (<xref ref-type="bibr" rid="B27">Yu-kun, 2007</xref>) proposed the Mesh-Free Weighted Least Squares (MWLS) method, which has been recognized for its high accuracy and excellent stability, particularly in generating a symmetric coefficient matrix. Unlike the Galerkin method, the MWLS method does not require Gaussian integration, making it more efficient. Xu and Rao (<xref ref-type="bibr" rid="B14">Rao et al., 2021</xref>; <xref ref-type="bibr" rid="B26">Xu et al., 2021</xref>) applied the MWLS method to study shale gas water seepage problems, analyzing the influence of weight functions and nodes in the MWLS method. However, they did not specifically analyze the characteristics of shale oil.</p>
<p>In this paper, the concept of fractal permeability is introduced, and a numerical model is developed to simulate oil and water flow in a fractured horizontal well situated in a fractal shale oil reservoir. The Mesh-Free Weighted Least Squares (MWLS) method is employed to solve the problem. Additionally, a comparative analysis is conducted to evaluate the impacts of fracture distribution patterns, initial water saturation, and reservoir reconstruction degree on reservoir utilization scope and production performance. Through this analysis, insights are gained into the effective utilization and production performance of reservoirs under different conditions.</p>
</sec>
<sec id="s2">
<title>2 Equations for the meshless method in modeling oil-water flow in shale oil reservoirs</title>
<p>The meshless technique employs a collection of field nodes distributed across the computational domain&#x2019;s boundary and body to delineate the boundary and the domain itself. Because these field nodes do not form any mesh, this technique can overcome the constraints of the finite difference approach, which necessitates a Cartesian mesh, as well as the finite element approach, which demands high-quality mesh production and remodeling.</p>
<p>The meshless method unfolds in three primary stages:</p>
<p>
<statement content-type="step" id="Step_1">
<label>Step 1</label>
<p>Field Nodes in Meshless Techniques for Conveying Field Variable Values</p>
<p>Within the meshless approach, field variable values, encompassing unknown functions, are expressed by the nodal values assigned to field points. The precision of the computation is directly impacted by the concentration of these field points, which are typically spread evenly across the domain.</p>
</statement>
</p>
<p>
<statement content-type="step" id="Step_2">
<label>Step 2</label>
<p>Localized Approximation of Field Variables in Meshless Techniques</p>
<p>In meshless techniques, where a grid is not utilized, the field variables at a specific point <italic>x</italic>&#x3d;(<italic>x</italic>
<sub>1</sub>,<italic>x</italic>
<sub>2</sub>) within the computational domain are approximated through interpolation using the field node values within the localized superconductive area centered around that point. This approach enables accurate estimation of field variable values at arbitrary locations, ensuring precise representation of the underlying physical phenomena.<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>Where, <italic>n</italic> denotes quantity of field nodes within a specific point&#x2019;s local support domain <italic>x</italic>, <italic>u</italic>
<sub>
<italic>i</italic>
</sub> signifies the nodes&#x2019;s value of the <italic>i</italic>th field node; <italic>U</italic>
<sub>
<italic>s</italic>
</sub> is The vector composed of the values at each field node; and <italic>&#x03c6;</italic>
<sub>
<italic>i</italic>
</sub>(<italic>x</italic>) represents the shape function associated with the <italic>i</italic>th node in the support region of a given point <italic>x</italic>.</p>
</statement>
</p>
<p>
<statement content-type="step" id="Step_3">
<label>Step 3</label>
<p>Deriving Nodal Values of the Unknown Function in Meshless Techniques</p>
<p>Through the application of localized field variable approximations, the derivation of the shape function is done for the field points. The MLS approach is proficient in providing a shape function of high continuity across the overall problem sphere. Generally, when considering a global optimization problem, MLS simplifies the attainment of a globally optimal solution. Consequently, this paper leverages the MLS approach for the local approximation of field variables. In the scope of MLS, the approximation of the unknown function <italic>u(x)</italic> within x&#x2019;s influence domain is performed.<disp-formula id="e2">
<mml:math id="m2">
<mml:mrow>
<mml:msup>
<mml:mi>u</mml:mi>
<mml:mi>h</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>Here, <italic>x</italic> represents the position in space of every node within the support region <inline-formula id="inf1">
<mml:math id="m3">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> of the node under consideration, <inline-formula id="inf2">
<mml:math id="m4">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> operates as the principle basis function, <italic>m</italic> denotes the count of basis functions, and <inline-formula id="inf3">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> denotes the vector of coefficients tied to the location coordinates. In the context of the MLS approximation <inline-formula id="inf4">
<mml:math id="m6">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, The decision on coefficients ensures the validity of the approximation function <inline-formula id="inf5">
<mml:math id="m7">
<mml:mrow>
<mml:msup>
<mml:mi>u</mml:mi>
<mml:mi>h</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> optimally approximates the function to be solved in terms of the least squares within the <inline-formula id="inf6">
<mml:math id="m8">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> of the node under review. These coefficients minimize the weighted norm in Eq. <xref ref-type="disp-formula" rid="e3">3</xref>.<disp-formula id="e3">
<mml:math id="m9">
<mml:mrow>
<mml:mi>J</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>
</p>
<p>Where <italic>n</italic> represents the quantity of nodes held in the support domain of the weight function <inline-formula id="inf7">
<mml:math id="m10">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="normal">W</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2260;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, and <italic>u</italic>
<sub>
<italic>i</italic>
</sub> indicates the nodal parameter at the location <italic>x</italic> equals to <italic>xi</italic>.</p>
<p>The necessary condition of making Eq. <xref ref-type="disp-formula" rid="e3">3</xref> minimum is<disp-formula id="e4">
<mml:math id="m11">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>J</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>That is,<disp-formula id="e5">
<mml:math id="m12">
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>In which,<disp-formula id="e6">
<mml:math id="m13">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mo>&#x22ef;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mover accent="true">
<mml:mi>W</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>
</p>
<p>Then <italic>a</italic>(<italic>x</italic>) is:<disp-formula id="e7">
<mml:math id="m14">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<p>On substituting Eq. <xref ref-type="disp-formula" rid="e6">6</xref> into Eq. <xref ref-type="disp-formula" rid="e2">2</xref>, it leads us to the conclusion that<disp-formula id="e8">
<mml:math id="m15">
<mml:mrow>
<mml:msup>
<mml:mi>u</mml:mi>
<mml:mi>h</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>
</p>
<p>In this context, <italic>&#x3a6;</italic>(<italic>x</italic>) represents a vector built from shape functions, determined by<disp-formula id="e9">
<mml:math id="m16">
<mml:mrow>
<mml:msup>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="}" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22ef;</mml:mo>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msup>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>So <italic>&#x03c6;</italic> <sub>
<italic>i</italic>
</sub>(<italic>x</italic>) is defined as<disp-formula id="e10">
<mml:math id="m17">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>m</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi>A</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mi>B</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>It is important to note that while the shape function constructed on the basis of the point interpolation local approximation method possesses the Kronecker property, its usage of the local support domain fails to ensure compatibility throughout the entire domain.</p>
</statement>
</p>
<sec id="s2-1">
<title>2.1 Oil-water flow model of shale oil reservoir</title>
<p>In the geologic model for fractured horizontal wells within shale oil reservoirs, a binary porosity medium is proposed, comprised of two parts: the matrix substance and the fracture web. The matrix substance functions as the primary storage space, while the fracture network operates as the main channel for shale oil. Both oil and water have the capacity to move within the fractures, however, only oil has the ability to flow within the matrix. The dual-porosity model encompasses both the matrix and fracture systems: the former is the chief repository for shale oil, and the latter is the primary passage for it. Three basic assumptions are taken into account:<list list-type="simple">
<list-item>
<p>(1) The flow of oil-water takes place in the fracture system, while solely single-phase shale oil migrates towards fractures in the matrix, disregarding the flow within the matrix system;</p>
</list-item>
<list-item>
<p>(2) The influence of gravity and capillary forces is disregarded;</p>
</list-item>
<list-item>
<p>(3) Fluids exhibit minor compressibility, while rock material remains incompressible.</p>
</list-item>
</list>
</p>
<sec id="s2-1-1">
<title>2.1.1 Flow model for the matrix system</title>
<p>Adhering to the principles of mass conservation and the Darcy flow equation, the oil flow equation within the matrix can be articulated as follows:<disp-formula id="e11">
<mml:math id="m18">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>where <italic>&#x3bc;</italic>
<sub>
<italic>o</italic>
</sub> denotes the oil viscosity, in mPa&#xb7;s; <italic>&#x3c1;</italic>
<sub>o</sub> denotes the oil density, in kg/m&#xb3;; <italic>k</italic>
<sub>
<italic>app</italic>
</sub> represents the matrix apparent permeability, in mD; <italic>p</italic>
<sub>
<italic>m</italic>
</sub> refers to the matrix pressure, in MPa; <italic>p</italic>
<sub>
<italic>f</italic>
</sub> signifies the fracture network pressure, in MPa; <italic>&#x3c6;</italic>
<sub>
<italic>app</italic>
</sub> stands for the matrix apparent porosity and <italic>t</italic> denotes time; <inline-formula id="inf8">
<mml:math id="m19">
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the interfacial flow coefficient, 1/m<sup>2</sup>.</p>
<p>The fracture system under scrutiny in this study is planar, possessing a uniform fracture spacing equal to 12/Lm, where Lm corresponds to the length of the matrix rock block&#x2019;s side.</p>
</sec>
<sec id="s2-1-2">
<title>2.1.2 Flow model for the fracture system</title>
<p>Considering the principle of mass conservation along with Darcy&#x2019;s law of flow, the equation for the water phase within a fracture system can be expressed as follows:<disp-formula id="e12">
<mml:math id="m20">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mo>&#x2207;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>The oil flow within the fracture is described as follows:<disp-formula id="e13">
<mml:math id="m21">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mo>&#x2207;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>where <italic>&#x3c1;</italic>
<sub>
<italic>w</italic>
</sub> signifies the water&#x2019;s density, kg/m<sup>3</sup>; <italic>k</italic>
<sub>
<italic>rw</italic>
</sub>, <italic>k</italic>
<sub>
<italic>ro</italic>
</sub> denote the relative permeability of water and oil, respectively, mD; <italic>k</italic>
<sub>
<italic>f</italic>
</sub> represents the fracture&#x2019;s permeability, mD;<italic>&#x3bc;</italic>
<sub>
<italic>w</italic>
</sub> is the water&#x2019;s viscosity, mPa&#x2022;s; <italic>p</italic>
<sub>
<italic>wf</italic>
</sub> is the pressure within the water phase of the fracture, in MPa; <italic>&#x3c6;</italic>
<sub>
<italic>f</italic>
</sub> is the fracture&#x2019;s porosity; <italic>S</italic>
<sub>w</sub> and <italic>S</italic>
<sub>
<italic>o</italic>
</sub> indicate the water and oil saturations within the fracture, respectively; <italic>Q</italic>
<sub>mo</sub> is the mass flow rate, as shown in Eq. <xref ref-type="disp-formula" rid="e14">14</xref>,<disp-formula id="e14">
<mml:math id="m22">
<mml:mrow>
<mml:msub>
<mml:mi>Q</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
</p>
<p>Characteristics of the fracture system, like porosity and permeability, can be articulated as follows:<disp-formula id="equ1">
<mml:math id="m23">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ2">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</disp-formula>in this context, <italic>x</italic> denotes the distance from the origin, measured in meters (m), and <italic>x</italic>
<sub>
<italic>w</italic>
</sub> refers to the hydraulic fracture&#x2019;s width, also measured in meters (m). The parameters <inline-formula id="inf9">
<mml:math id="m25">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and kw represent the starting point&#x2019;s porosity and permeability, respectively, in the matrix and fracture system medium, stated in millidarcies (mD). <italic>D</italic>
<sub>
<italic>f</italic>
</sub> is utilized to depict the fracture system medium&#x2019;s geometric attributes, capturing the fractal fracture&#x2019;s geometric nuances and intricacy. The anomaly diffusion index of the fracture system medium is conveyed by <inline-formula id="inf10">
<mml:math id="m26">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</sec>
<sec id="s2-1-3">
<title>2.1.3 Supporting equations</title>
<p>For the purpose of this analysis, capillary forces are not considered. Therefore, the pressure of the oil within the fracture system equilibrates with the pressure of the water phase, resulting in the flow of only oil within the matrix system. Consequently, the pressures within the fracture and the matrix are denoted by <italic>P</italic>
<sub>
<italic>f</italic>
</sub> and <italic>P</italic>
<sub>
<italic>m</italic>
</sub>, respectively.<disp-formula id="e15">
<mml:math id="m27">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
<disp-formula id="e16">
<mml:math id="m28">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>Initial:<disp-formula id="e17">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
</p>
</sec>
</sec>
<sec id="s2-2">
<title>2.2 Model solution</title>
<p>The meshless method, which is based on the weighted residual technique, utilizes the moving least squares (MLS) strategy to construct the approximation function. The governing equation is discretized using the least square method, resulting in the development of MWLS, a meshless technique. For a comprehensive understanding of the MWLS, please refer to the cited literature. (<xref ref-type="bibr" rid="B27">Yu-kun, 2007</xref>).</p>
<p>By reorganizing Eqs <xref ref-type="disp-formula" rid="e11">11</xref>&#x2013;<xref ref-type="disp-formula" rid="e13">13</xref>, we can derive the subsequent Eq. 18.<disp-formula id="e18">
<mml:math id="m30">
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>q</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msup>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x2460;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x2461;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mo>&#x2462;</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
</p>
<p>In the process of executing MWLS for inferential purposes, the problem domain, represented by &#x3a9;, and its boundary, denoted by &#x413;, undergo discretization through the use of <italic>n</italic> points. The fracture system&#x2019;s pressure and water saturation are then modeled by meshless approximate functions, established courtesy of MLS, which can be expressed following the template of Eq. <xref ref-type="disp-formula" rid="e19">19</xref>.<disp-formula id="e19">
<mml:math id="m31">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo>&#x2248;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>N</mml:mi>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>where <inline-formula id="inf11">
<mml:math id="m32">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22ef;</mml:mo>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is a shape function, <inline-formula id="inf12">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#xa0;</mml:mtext>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x22ef;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>By replacing Eq. <xref ref-type="disp-formula" rid="e18">18</xref>-&#x2460;) with Eq. <xref ref-type="disp-formula" rid="e19">19</xref> from above, the residual can be derived, as depicted in Eq. <xref ref-type="disp-formula" rid="e20">20</xref>.<disp-formula id="e20">
<mml:math id="m34">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
</p>
<p>Thus, the computational scheme of MWLS for determining the pressure in the fracture system unfolds as follows:<disp-formula id="e21">
<mml:math id="m35">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="normal">&#x3a0;</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munder>
<mml:mo>&#x222b;</mml:mo>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:munder>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:mi>d</mml:mi>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munder>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munder>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munder>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:munder>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
</mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2202;</mml:mo>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>
</p>
<p>In Eq. <xref ref-type="disp-formula" rid="e21">21</xref>, <inline-formula id="inf13">
<mml:math id="m36">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf14">
<mml:math id="m37">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> symbolize the penalty functions for the boundary conditions. By identifying the least value of Eq. <xref ref-type="disp-formula" rid="e21">21</xref> and transposing it into a discrete format, we arrive at Eq. <xref ref-type="disp-formula" rid="e22">22</xref>:<disp-formula id="e22">
<mml:math id="m38">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">&#x3a0;</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
<mml:msub>
<mml:mo>&#x7c;</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
</p>
<p>By transforming Eq. <xref ref-type="disp-formula" rid="e22">22</xref> into matrix system and taking into account the freedom of <inline-formula id="inf15">
<mml:math id="m39">
<mml:mrow>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> , we derive Eq. <xref ref-type="disp-formula" rid="e23">23</xref>.<disp-formula id="e23">
<mml:math id="m40">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>
</p>
<p>Among them:<disp-formula id="equ3">
<mml:math id="m41">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="" close=")" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close="" separators="|">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2207;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mi>N</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msup>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2207;</mml:mo>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ4">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="" close=")" separators="|">
<mml:mrow>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close="" separators="|">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Eq. <xref ref-type="disp-formula" rid="e24">24</xref> provides the fracture&#x2019;s pressure at the t&#x2b;1 time step. This value is then utilized in Eq. <xref ref-type="disp-formula" rid="e18">(18</xref>-&#x2461;) for substitution. Subsequently, the MLS method is employed to construct an approximate equation for the <italic>Sw</italic> in the fracture. Ultimately, Eq. <xref ref-type="disp-formula" rid="e24">24</xref> is derived:<disp-formula id="e24">
<mml:math id="m43">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
</p>
<p>Eq. <xref ref-type="disp-formula" rid="e24">24</xref> provides the fracture&#x2019;s <italic>Sw</italic> at the next time step.</p>
<p>The variables and parameters involved are as follows:<disp-formula id="equ5">
<mml:math id="m44">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2207;</mml:mo>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ6">
<mml:math id="m45">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mi mathvariant="normal">f</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x394;</mml:mo>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>w</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2207;</mml:mo>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>The matrix system&#x2019;s pressure can be determined using a similar approach. By inserting the fracture system&#x2019;s pressure at the next time step into <xref ref-type="disp-formula" rid="e18">formula (18</xref>-&#x2462;), the final MWLS equation can be derived:<disp-formula id="e25">
<mml:math id="m46">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>
</p>
<p>Eq. <xref ref-type="disp-formula" rid="e25">25</xref> provides the matrix&#x2019;s pressure at the next time step.</p>
<p>The variables and parameters involved are as follows:<disp-formula id="equ7">
<mml:math id="m47">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mi>N</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2207;</mml:mo>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>&#x2207;</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="equ8">
<mml:math id="m48">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:msub>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3d5;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>N</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">&#x393;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</p>
<p>Where <italic>s</italic> represents the number of points used for calculations; Let <italic>n</italic> represent t the total number of points used for calculations within the neighborhood &#x3a9;, and let <italic>ni</italic> (i &#x3d; 1,2) represent the total number of points used for calculations on boundary <italic>&#x393;i</italic>.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Examining and confirming the accuracy of computational examples</title>
<sec id="s3-1">
<title>3.1 Model validation</title>
<p>A field case was constructed to validate the model&#x2019;s accuracy, considering the fractal features in a shale oil reservoir where the horizontal well is fractured. The reservoir area are 500 m &#xd7; 400 m &#xd7; 10m, with the model and layout depicted in <xref ref-type="fig" rid="F1">Figure 1</xref>. The corresponding physical properties of the reservoir can be found in <xref ref-type="table" rid="T1">Table 1</xref>. Due to its superior continuity and higher computational accuracy, we used the Gaussian formulation as the weighting function in the grid-independent approach. The layout scheme used is 50 &#xd7; 40, and a node spacing of 3 times (30&#xa0;m) is used for the node influence domain.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Model figure.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g001.tif"/>
</fig>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Parameters of reservoir.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Parameters</th>
<th align="center">Values</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Initial pressure <italic>p</italic>
<sub>
<italic>i</italic>
</sub>/Bar</td>
<td align="center">300</td>
</tr>
<tr>
<td align="center">Wellbore flow pressure p<sub>wf</sub>/Bar</td>
<td align="center">150</td>
</tr>
<tr>
<td align="center">Fracture system porosity<italic>&#x3c6;</italic>
<sub>
<italic>f</italic>
</sub>/%</td>
<td align="center">0.4</td>
</tr>
<tr>
<td align="center">Fracture starting point&#x2019;s permeability <italic>k</italic>
<sub>
<italic>w</italic>
</sub>/mD</td>
<td align="center">100000</td>
</tr>
<tr>
<td align="center">Initial <italic>Sw</italic>/%</td>
<td align="center">20</td>
</tr>
<tr>
<td align="center">Fractal index <italic>a</italic>
</td>
<td align="center">&#x2212;0.1</td>
</tr>
<tr>
<td align="center">Matrix mass size <italic>l</italic>
<sub>
<italic>m</italic>
</sub>/m</td>
<td align="center">10</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>This study incorporated <xref ref-type="table" rid="T1">Table 1</xref> data into the oil-water flow fractal shale reservoir model to obtain daily oil production variations. This paper set a result calculated using EDFM as the reference solution. The results were then compared to those of a reference solution, as shown in <xref ref-type="fig" rid="F2">Figure 2</xref>. The proposed method closely matched the reference solution, demonstrating its reliability, accuracy, and high computational efficiency. Furthermore, <xref ref-type="fig" rid="F3">Figure 3</xref> presents the pressure distribution at different times, showing that the matrix pressure gradually decreases during production. Although there were some discrepancies between the reference solution and the MWLS results, these errors fall within acceptable bounds and can be attributed to inherent differences between the approaches.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>WOPR.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g002.tif"/>
</fig>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>The Distribution of fracture pressure. <bold>(A)</bold> MWLS, 1&#x00a0;day; <bold>(B)</bold> Refence solution, 1&#x00a0;day; <bold>(C)</bold> MWLS, 50&#x00a0;day; <bold>(D)</bold> Refence solution, 50&#x00a0;day; <bold>(E)</bold> MWLS, 100&#x00a0;day; <bold>(F)</bold> Refence solution, 100&#x00a0;day.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g003.tif"/>
</fig>
</sec>
<sec id="s3-2">
<title>3.2 Sensitivity analysis of nodal influence domain</title>
<p>After applying the theories and solutions mentioned earlier, a sensitivity analysis of the nodal influence domain is conducted to evaluate its impact on the accuracy of meshless method computations. The solution of the flow of oil and water in horizontally fractured wells. is used to verify the validity of the method. While the MWLS method is inherently precise, the accuracy of its results is also dependent on the process of choosing the nodal influence domain. The optimal parameter values vary depending on the specific problem at hand.</p>
<p>Consequently, the nodal influence domain was chosen to be 2, 3, 4, and 5 times the nodal spacing (10&#xa0;m), with the initial water saturation is 0.25 while keeping other parameters constant. By doing so, the established mathematical model is further validated and analyzed to ensure its reliability and applicability in solving real-world problems associated with the flow of oil and water in horizontally fractured wells.</p>
<p>
<xref ref-type="fig" rid="F4">Figure 4</xref> demonstrates the variation curves of daily oil and water production for different nodal influence domains. The calculated results demonstrate varying levels of consistency when the nodal influence domain is set at 2, 3, 4, and 5 times the nodal spacing. This suggests that the method is characterized by good stability and convergence in its calculations. This validates its effectiveness and robustness for simulating the flow of oil and water in horizontally fractured wells. <xref ref-type="fig" rid="F5">Figure 5</xref> shows the crack pressure distribution at 100 days for different nodal influence domains. The calculated crack pressure distributions do not differ significantly under different conditions. When the influence domain size is 5 times the nodal spacing, the pressure drop area is marginally larger than that for the influence domain size of 2, 3, and 4 times the nodal spacing. However, the overall difference is less than 2% because the area of pressure drop increases slightly with the size of the influence domain.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Comparsion of production. <bold>(A)</bold> Oil production; <bold>(B)</bold> Water production.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g004.tif"/>
</fig>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>The distribution of frature pressure under different node influence domains. <bold>(A)</bold> 2; <bold>(B)</bold> 3; <bold>(C)</bold> 4; <bold>(D)</bold> 5.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g005.tif"/>
</fig>
</sec>
<sec id="s3-3">
<title>3.3 Sensitivity analysis of initial <italic>Sw</italic>
</title>
<p>The initial <italic>Sw</italic> level is a crucial factor affecting shale oil production. To investigate the impact of different initial <italic>Sw</italic> levels on reservoir recovery and fractured well production while keeping other parameters constant, data from <xref ref-type="table" rid="T1">Table 1</xref> were utilized. The initial <italic>Sw</italic> values were set at 0.35, 0.45, 0.55, and 0.65. <xref ref-type="fig" rid="F6">Figure 6</xref> illustrates the pressure in the reservoir for different initial levels of Sw after 100 days of production. It is evident that an increase in the initial <italic>Sw</italic> level leads to a reduction in the pressure difference between the matrix and fracture in the reservoir. This underscores the importance of accurately modeling and understanding initial <italic>Sw</italic> when simulating and predicting shale oil production. At an initial <italic>Sw</italic> of 0.35, the matrix pressure in the upper part of the model is about 30&#xa0;MPa at 100 days, while at this value of 0.65, the matrix pressure in the upper part of the model is only about 26&#xa0;MPa.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Pressure distribution under different initial Sw. <bold>(A)</bold> Swi &#x3d; 0.35; <bold>(B)</bold> Swi &#x3d; 0.45; <bold>(C)</bold> Swi &#x3d; 0.55; <bold>(D)</bold> Swi &#x3d; 0.65.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g006.tif"/>
</fig>
<p>In <xref ref-type="fig" rid="F7">Figure 7</xref>, the <italic>Sw</italic> distribution in the reservoir at 100 days are shown for different initial <italic>Sw</italic> levels. When the initial <italic>Sw</italic> is set at 0.35, the <italic>Sw</italic> at the fracture increases slightly to 0.3506 after 100 days. However, as the initial <italic>Sw</italic> level increases, the <italic>Sw</italic> at the fracture decreases after 100 days. This phenomenon is mainly due to the increase in <italic>Sw</italic>, which results in a significant rise in water flow capacity. Accurately modeling and predicting the behavior of oil-water flow in shale reservoirs requires an understanding of the relationship between initial <italic>Sw</italic> and its impact on fracture <italic>Sw</italic> over time.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Fracture <italic>Sw</italic> distribution under different initial <italic>Sw</italic>. <bold>(A)</bold> Swi &#x3d; 0.35; <bold>(B)</bold> Swi &#x3d; 0.45; <bold>(C)</bold> Swi &#x3d; 0.55; <bold>(D)</bold> Swi &#x3d; 0.65.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g007.tif"/>
</fig>
<p>In <xref ref-type="fig" rid="F8">Figure 8</xref>, the fluid production under different initial <italic>Sw</italic> conditions is displayed. As the initial <italic>Sw</italic> increases, there is less free oil stored in the fractures and reservoirs. Consequently, the initial oil production is significantly reduced when the initial <italic>Sw</italic> is higher. Moreover, higher <italic>Sw</italic> reduces the relative permeability of the oil phase, hindering oil flow within the reservoir. Thus, larger initial <italic>Sw</italic> levels result in lower daily oil production and higher daily water production. For instance, when the initial <italic>Sw</italic> is set at 0.65, the initial daily well water production rate can reach 1024&#xa0;m&#xb3;/day. Understanding these relationships is crucial for optimizing reservoir management and production strategies.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Production of different initial water saturation conditions. <bold>(A)</bold> Oil production; <bold>(B)</bold> Water production.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g008.tif"/>
</fig>
</sec>
<sec id="s3-4">
<title>3.4 Sensitivity analysis of fracture half-lengths</title>
<p>We investigate the effects of different fracture half-lengths on the proposed model by setting the values to 100&#xa0;m, 150&#xa0;m, 200&#xa0;m, 250&#xa0;m, and 300&#xa0;m, while keeping other parameters unchanged. This analysis helps to understand how variations in fracture half-length and SRV influence the production performance and recovery efficiency in shale oil reservoirs.</p>
<p>
<xref ref-type="fig" rid="F9">Figure 9</xref> displays the pressure distribution field for different fracture half-lengths at 100 days. Increasing the fracture half-length results in a more rapid and extensive drop in matrix pressure. For instance, with a fracture half-length of 100&#xa0;m, the matrix pressure in the upper part of the reservoir was maintained at 30&#xa0;MPa, while at a fracture half-length of 300&#xa0;m, it decreased to 27&#xa0;MPa.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Pressure distribution of different fracture half-lengths. <bold>(A)</bold> 100&#x00a0;m; <bold>(B)</bold> 150&#x00a0;m; <bold>(C)</bold> 200&#x00a0;m; <bold>(D)</bold> 250&#x00a0;m; <bold>(E)</bold> 300&#x00a0;m.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g009.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F10">Figure 10</xref> depicts the comparison curves of daily and cumulative oil production for various fracture half-lengths. Daily oil production rises with an increase in the fracture half-length, as shown in <xref ref-type="fig" rid="F10">Figure 10A</xref>. <xref ref-type="fig" rid="F10">Figure 10B</xref> indicates a positive correlation between cumulative oil production and fracture half-length, mainly due to the larger stimulated reservoir volume and pressure ripple area as the fracture half-length increases. Despite this, the incremental gain in cumulative oil production diminishes as the fracture half-length increases. For example, when the fracture half-length is 100&#xa0;m, the cumulative oil production for 100 days is 8075&#xa0;m<sup>3</sup>. When the fracture half-length is extended to 150&#xa0;m, the cumulative oil production increases by 1556&#xa0;m<sup>3</sup> to reach 9631&#xa0;m<sup>3</sup>. However, when the fracture half-length is increased from 250&#xa0;m to 300&#xa0;m, the increase in cumulative oil production is only 602&#xa0;m<sup>3</sup>.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>WOPR and FOPT of different fracture half-lengths. <bold>(A)</bold> WOPR; <bold>(B)</bold> FOPT.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g010.tif"/>
</fig>
</sec>
<sec id="s3-5">
<title>3.5 Effects of fracture numbers</title>
<p>There are multiple factors affecting oil well productivity, among which the number of fractures is one of the key factors. The optimization of fracture numbers is also an important aspect of design of hydraulic fractures for horizontal wells. By fixing fracture half-length at 200&#xa0;m, setting the initial <italic>Sw</italic> at 0.65, we change the number of fractures to 2, 3, 4, and 5, keeping other parameters consistent with the previous example.</p>
<p>The pressure distribution at 100 days for different fracture numbers is displayed in <xref ref-type="fig" rid="F11">Figure 11</xref>. The relationship between the number of fractures and the pressure in the reservoir is evident, with an increase in fractures leading to a more rapid decline in pressure and a larger affected area. For example, when there are 2 fractures, the matrix pressure at the upper end of the reservoir can still be maintained at 25&#xa0;MPa. However, when there are 5 fractures, the matrix pressure at the upper end of the reservoir is only 20&#xa0;MPa. <xref ref-type="fig" rid="F12">Figure 12</xref> presents the changes in production capacity under different fracture numbers. <xref ref-type="fig" rid="F12">Figures 12A, B</xref> display the wopr and wwpr curves, respectively, indicating that as the number of fractures increases, the corresponding WOPR and WWPR also increase. <xref ref-type="fig" rid="F12">Figure 12C</xref> shows the FOPT curve, which is also shows a positive correlation with the number of fractures, but the rate of increase is diminishing. Increasing the number of fractures from 2 to 4 results in a 1.28-fold increase in cumulative oil production. However, increasing the number of fractures from 4 to 5 only leads to a 1.05-fold increase in cumulative oil production.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Pressure distribution at 100&#x00a0;days. <bold>(A)</bold> 2 fractures; <bold>(B)</bold> 23 fractures; <bold>(C)</bold> 4 fractures; <bold>(D)</bold> 5 fractures.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g011.tif"/>
</fig>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Production capacity analysis. <bold>(A)</bold> WOPR; <bold>(B)</bold> WWPR; <bold>(C)</bold> FOPT.</p>
</caption>
<graphic xlink:href="fenvs-11-1244543-g012.tif"/>
</fig>
</sec>
</sec>
<sec sec-type="conclusion" id="s4">
<title>4 Conclusion</title>
<p>
<list list-type="simple">
<list-item>
<p>1) A mathematical model for oil-water fractal diffusion in fractured horizontal wells considering fracture network heterogeneity was developed and numerically solved using the MWLS method. Field example validation confirmed the model&#x2019;s accuracy.</p>
</list-item>
<list-item>
<p>2) The impact of nodal domains in MWLS method was explored. The method shows robust stability. With an expanding nodal influence domain, the calculated results converge towards true values.</p>
</list-item>
<list-item>
<p>3) Employing the model, we examined the effects of initial Sw and reservoir modification on reservoir utilization and production. Increasing initial Sw increases oil flow resistance, hence reducing oil production. During reservoir modification, expanding fracture half-length and count enhances oil production, but with diminishing growth rate.</p>
</list-item>
</list>
</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s5">
<title>Data availability statement</title>
<p>The raw data supporting the conclusion of this article will be made available by the authors, without undue reservation.</p>
</sec>
<sec id="s6">
<title>Author contributions</title>
<p>WL conceptualization, methodology, software, writing&#x2014;original draft, formal analysis GZ supervision, Project administration. All authors contributed to the article and approved the submitted version.</p>
</sec>
<sec sec-type="COI-statement" id="s7">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s8">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Akkutlu</surname>
<given-names>I. Y.</given-names>
</name>
<name>
<surname>Efendiev</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Savatorova</surname>
<given-names>V. J. T. i. P. M.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Multi-scale asymptotic analysis of gas transport in shale matrix</article-title>. <source>Transp. Porous Media</source> <volume>107</volume>, <fpage>235</fpage>&#x2013;<lpage>260</lpage>. <pub-id pub-id-type="doi">10.1007/s11242-014-0435-z</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Belytschko</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>Y. Y.</given-names>
</name>
<name>
<surname>Gu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Tabbara</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>1995</year>). <article-title>Element-free Galerkin methods for static and dynamic fracture</article-title>. <source>Int. J. Solids Struct.</source> <volume>32</volume>, <fpage>2547</fpage>&#x2013;<lpage>2570</lpage>. <pub-id pub-id-type="doi">10.1016/0020-7683(94)00282-2</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Bertoncello</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Wallace</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Blyton</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Honarpour</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Kabir</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Imbibition and water blockage in unconventional reservoirs: well-management implications during flowback and early production</article-title>. <source>SPE Res. Eval. &#x26; Eng.</source> <volume>17</volume>, <fpage>497</fpage>&#x2013;<lpage>506</lpage>. <pub-id pub-id-type="doi">10.2118/167698-PA</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Civan</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Effective correlation of apparent gas permeability in tight porous media</article-title>. <source>Transp. Porous Media</source> <volume>82</volume>, <fpage>375</fpage>&#x2013;<lpage>384</lpage>. <pub-id pub-id-type="doi">10.1007/s11242-009-9432-z</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Daneshy</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2004</year>). &#x201c;<article-title>Analysis of off-balance fracture extension and fall-off pressures</article-title>,&#x201d; in <conf-name>SPE International Symposium and Exhibition on Formation Damage Control</conf-name>, <conf-loc>Lafayette, Louisiana</conf-loc>, <conf-date>February 2004</conf-date>. <pub-id pub-id-type="doi">10.2118/86471-MS</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Javadpour</surname>
<given-names>F. J. J. o. C. P. T.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Nanopores and apparent permeability of gas flow in mudrocks (shales and siltstone)</article-title>. <source>J. Can. Pet. Technol.</source> <volume>48</volume>, <fpage>16</fpage>&#x2013;<lpage>21</lpage>. <pub-id pub-id-type="doi">10.2118/09-08-16-da</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jia</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Tsau</surname>
<given-names>J. S.</given-names>
</name>
<name>
<surname>Barati</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>A review of the current progress of CO2 injection EOR and carbon storage in shale oil reservoirs</article-title>. <source>Fuel</source> <volume>236</volume>, <fpage>404</fpage>&#x2013;<lpage>427</lpage>. <pub-id pub-id-type="doi">10.1016/j.fuel.2018.08.103</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Lei</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Martyushev</surname>
<given-names>D. A.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>A comprehensive review of the oil flow mechanism and numerical simulations in shale oil reservoirs</article-title>. <source>Energies</source> <volume>16</volume>, <fpage>3516</fpage>. <pub-id pub-id-type="doi">10.3390/en16083516</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Y. J. G.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Pore-scale simulation of gas diffusion in unsaturated soil aggregates: Accuracy of the dusty-gas model and the impact of saturation</article-title>. <source>Geoderma</source> <volume>303</volume>, <fpage>196</fpage>&#x2013;<lpage>203</lpage>. <pub-id pub-id-type="doi">10.1016/j.geoderma.2017.05.008</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lucy</surname>
<given-names>L. B.</given-names>
</name>
</person-group> (<year>1977</year>). <article-title>A numerical approach to the testing of the fission hypothesis</article-title>. <source>Astronomical J.</source> <volume>82</volume>, <fpage>1013</fpage>&#x2013;<lpage>1024</lpage>. <pub-id pub-id-type="doi">10.1086/112164</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Mason</surname>
<given-names>E. A.</given-names>
</name>
<name>
<surname>Ea</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ap</surname>
<given-names>M.</given-names>
</name>
</person-group>(<year>1983</year>). <source>Gas transportin porous media: The dusty-gas model</source>.</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Cheng</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Jia</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>A modified projection-based embedded discrete fracture model (pEDFM) for practical and accurate numerical simulation of fractured reservoir</article-title>. <source>J. Petroleum Sci. Eng.</source> <volume>187</volume>, <fpage>106852</fpage>. <pub-id pub-id-type="doi">10.1016/j.petrol.2019.106852</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xin</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>He</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Fang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Gong</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>F.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Numerical simulation of two-phase heat and mass transfer in fractured reservoirs based on projection-based embedded discrete fracture model (pEDFM)</article-title>. <source>J. Petroleum Sci. Eng.</source> <volume>208</volume>, <fpage>109323</fpage>. <pub-id pub-id-type="doi">10.1016/j.petrol.2021.109323</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhan</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Dai</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Application of the least-square meshless method to gas-water flow simulation of complex-shape shale gas reservoirs</article-title>. <source>Eng. Analysis Bound. Elem.</source> <volume>129</volume>, <fpage>39</fpage>&#x2013;<lpage>54</lpage>. <pub-id pub-id-type="doi">10.1016/j.enganabound.2021.04.018</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sheng</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Javadpour</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Su</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Effect of microscale compressibility on apparent porosity and permeability in shale gas reservoirs</article-title>. <source>Int. J. Heat Mass Transf.</source> <volume>120</volume>, <fpage>56</fpage>&#x2013;<lpage>65</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijheatmasstransfer.2017.12.014</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sheng</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Javadpour</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Su</surname>
<given-names>Y. J. F.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Dynamic porosity and apparent permeability in porous organic matter of shale gas reservoirs</article-title>. <source>Fuel</source> <volume>251</volume>, <fpage>341</fpage>&#x2013;<lpage>351</lpage>. <pub-id pub-id-type="doi">10.1016/j.fuel.2019.04.044</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sheng</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Su</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Javadpour</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>An analytical model to couple gas storage and transport capacity in organic matter with noncircular pores</article-title>. <source>Fuel</source> <volume>268</volume>, <fpage>117288</fpage>. <pub-id pub-id-type="doi">10.1016/j.fuel.2020.117288</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shiming</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jiawei</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Botao</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Reservoir stress evolution and fracture optimization of infill wells during the drilling-fracturing-production process</article-title>. <source>Acta Pet. Sin.</source> <volume>43</volume>, <fpage>1305</fpage>. <pub-id pub-id-type="doi">10.7623/syxb202209009</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Singh</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Javadpour</surname>
<given-names>F. J. F.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Langmuir slip-Langmuir sorption permeability model of shale</article-title>. <source>Fuel</source> <volume>164</volume>, <fpage>28</fpage>&#x2013;<lpage>37</lpage>. <pub-id pub-id-type="doi">10.1016/j.fuel.2015.09.073</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Song</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2016</year>). <article-title>Apparent gas permeability in an organic-rich shale reservoir</article-title>. <source>Fuel</source> <volume>181</volume>, <fpage>973</fpage>&#x2013;<lpage>984</lpage>. <pub-id pub-id-type="doi">10.1016/j.fuel.2016.05.011</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Su</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sheng</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ren</surname>
<given-names>L. J. F.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>A mixed-fractal flow model for stimulated fractured vertical wells in tight oil reservoirs</article-title>. <source>Fractals</source> <volume>24</volume>, <fpage>1650006</fpage>. <pub-id pub-id-type="doi">10.1142/s0218348x16500067</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Wei</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xia</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2021b</year>). &#x201c;<article-title>The optimization of infill well fracturing using an integrated numerical simulation method of fracturing and production processes</article-title>,&#x201d; in <conf-name>Abu Dhabi International Petroleum Exhibition &#x26; Conference</conf-name>, <conf-loc>Abu Dhabi, UAE</conf-loc>, <conf-date>November 2021</conf-date>. <pub-id pub-id-type="doi">10.2118/207978-MS</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wei</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Kao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Shi</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021a</year>). <article-title>A discontinuous discrete fracture model for coupled flow and geomechanics based on FEM</article-title>. <source>J. Petroleum Sci. Eng.</source> <volume>204</volume>, <fpage>108677</fpage>. <pub-id pub-id-type="doi">10.1016/j.petrol.2021.108677</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Wright</surname>
<given-names>G. B.</given-names>
</name>
</person-group> (<year>2003</year>). <source>Radial basis function interpolation: Numerical and analytical developments</source>. <publisher-loc>Colorado</publisher-loc>: <publisher-name>University of Colorado at Boulder</publisher-name>.</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>W. J. A. J.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>A model for gas transport in microfractures of shale and tight gas reservoirs</article-title>. <source>AIChE J.</source> <volume>61</volume>, <fpage>2079</fpage>&#x2013;<lpage>2088</lpage>. <pub-id pub-id-type="doi">10.1002/aic.14791</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Sheng</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Hui</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>A new approach for gas-water flow simulation in multi-fractured horizontal wells of shale gas reservoirs</article-title>. <source>J. Petroleum Sci. Eng.</source> <volume>199</volume>, <fpage>108292</fpage>. <pub-id pub-id-type="doi">10.1016/j.petrol.2020.108292</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Yu-kun</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2007</year>). <source>Meshless numerical well-test on complex fault-block reservoir</source>.</citation>
</ref>
<ref id="B28">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Zeng</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Ning</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Lei</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Lv</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Hou</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Analytical model for shale gas transportation from matrix to fracture network</article-title>,&#x201d; in <conf-name>SPE Europec featured at 79th EAGE Conference and Exhibition</conf-name>, <conf-loc>Paris, France</conf-loc>, <conf-date>June 2017</conf-date>. <pub-id pub-id-type="doi">10.2118/185794-MS</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>zhang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>liu</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Low-cost drilling Technology for horizontal wells with atmospheric shale gas in the outer margin of sichuan basin</article-title>. <source>IOP Conf. Ser. Earth Environ. Sci.</source> <volume>295</volume>, <fpage>042098</fpage>. <pub-id pub-id-type="doi">10.1088/1755-1315/295/4/042098</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>