Abstract
Matrix acidizing is one of carbonate reservoirs' most efficient and widely implemented stimulation techniques. It improves productivity and flow capacity by creating new conductive flow channels called wormholes. The propagation of these channels has been a topic of interest as many researchers tried to investigate this phenomenon experimentally, theoretically, and numerically. Among various models, the two-scale continuum (TSC) model is the most common and reliable model due to its ability to predict better results as it combines Darcy and pore scales to capture the phenomenon. However, the main disadvantage of using the TSC model is its high computational cost. This highlights the need for a computationally efficient model that reduces that cost while maintaining solution accuracy. Also, examining wormhole propagation in 3D perforation is untouched yet. In this paper, we developed a numerical model in-house using MATLAB® software to simulate the wormhole generation considering the perforation in three-dimensional space based on the two-scale continuum mathematical model. The model performance is optimized to be a time-efficient simulation model that considers thermal energy transfer beside flowing and reactive mass transfer. Computation efficiency is achieved using the Darcy equation, vectorizing code operations, and implementing a proposed iterative algorithm that is based on the GMRES method. The associated tuning parameters and a proper preconditioner are obtained, which improved the model efficiency by more than 90%. The model used typical data reported in experimental acidizing work.
Similar content being viewed by others
Notes
Other complex effective acid diffusion expressions are provided in the literature (Xue et al. 2018).
References
Akanni, O. O., & Nasr-El-Din, H. A. (2015). The accuracy of carbonate matrix-acidizing models in predicting optimum injection and wormhole propagation rates. In: SPE Middle East oil and gas show and conference (2015) 618–635. https://doi.org/10.2118/172575-MS
Aldhayee, K., Ali, M.T., Nasr-El-Din, H.A.: Modeling wormhole propagation during closed-fracture-acidizing stimulation in tight-carbonate formations. SPE J. 25(5), 2373–2400 (2020). https://doi.org/10.2118/201252-PA
Ali, M., Nasr-El-Din, H.A.: A robust model to simulate dolomite-matrix acidizing. SPE Prod. Oper. 34(1), 109–129 (2019). https://doi.org/10.2118/191136-PA
Ali, M., Ziauddin, M.: Carbonate acidizing: a mechanistic model for wormhole growth in linear and radial flow. J. Petrol. Sci. Eng. 186, 106776 (2020). https://doi.org/10.1016/j.petrol.2019.106776
Ali, M.T., Ezzat, A.A., Nasr-El-Din, H.A.: A model to simulate matrix-acid stimulation for wells in dolomite reservoirs with vugs and natural fractures. SPE J. 25(02), 0609–0631 (2020). https://doi.org/10.2118/199341-PA
Aljawad, M.S.: Identifying formation mineralogy composition in acid fracturing from distributed temperature measurements. SPE Reser. Eval. Eng. 23(01), 200–211 (2020). https://doi.org/10.2118/195537-PA
Aljawad, M.S., Aboluhom, H., Schwalbert, M.P., Al-Mubarak, A., Alafnan, S., Mahmoud, M.: Temperature impact on linear and radial wormhole propagation in limestone, dolomite, and mixed mineralogy. J. Nat. Gas Sci. Eng. 93, 104031 (2021). https://doi.org/10.1016/j.jngse.2021.104031
Aljawad, M.S., Zhu, D., Hill, A.D.: Temperature and geometry effects on the fracture surfaces dissolution patterns in acid fracturing. In: Society of petroleum engineers-SPE Europec featured at 80th EAGE conference and exhibition (2018). https://doi.org/10.2118/190819-ms
Buijse, M., Glasbergen, G.: A semiempirical model to calculate wormhole growth in carbonate acidizing. SPE Ann. Tech. Conf. Proc. (2005). https://doi.org/10.2118/96892-ms
Cheng, H., Palharini Schwalbert, M., Hill, A.D., Zhu, D.: A fundamental model for wormhole formation including multiphase flow. SPE Prod. Oper. (2020). https://doi.org/10.2118/201213-PA
Daccord, G., Touboul, E., Lenormand, R.: Carbonate acidizing: toward a quantitative model of the wormholing phenomenon. SPE Prod. Eng. 4(1), 63–68 (1989). https://doi.org/10.2118/16887-PA
de Paulo Ferreira, L., Surmas, R., Tonietto, S.N., da Silva, M.A.P., Peçanha, R.P.: Modeling reactive flow on carbonates with realistic porosity and permeability fields. Adv. Water Res. 139, 103564 (2020). https://doi.org/10.1016/j.advwatres.2020.103564
Golfier, F., Quintard, M., Bazin, B., & Lenormand, R. (2006). Core-scale description of porous media dissolution during acid injection - part II: calculation of the effective properties. Computational & Applied Mathematics, 25(1), 55–78. https://www.scielo.br/scielo.php?script=sci_arttext&pid=S1807-03022006000100003
Gong, M., El-Rabaa, A.M.: Quantitative model of wormholing process in carbonate acidizing. All Days (1999). https://doi.org/10.2118/52165-MS
Huang, T., Hill, A.D., Schechter, R.S.: Reaction rate and fluid loss: the keys to wormhole initiation and propagation in carbonate acidizing. SPE J. 5(03), 287–292 (2000). https://doi.org/10.2118/65400-PA
Hung, K.M., Hill, A.D., Sepehrnoori, K.: A Mechanistic Model of Wormhole Growth in Carbonate Matrix Acidizing and Acid Fracturing. J. Petrol. Technol. 41(01), 59–66 (1989). https://doi.org/10.2118/16886-PA
Istchenko, C.M.M., Gates, I.D.D.: Well/wormhole model of cold heavy-oil production with sand. SPE J. 19(02), 260–269 (2014). https://doi.org/10.2118/150633-PA
Izgec, O., Zhu, D., Hill, A.D.: Numerical and experimental investigation of acid wormholing during acidization of vuggy carbonate rocks. J. Petrol. Sci. Eng. 74(1–2), 51–66 (2010). https://doi.org/10.1016/j.petrol.2010.08.006
Izgec, O., Zhu, D., Hill, A.D.: Models and methods for understanding of early acid breakthrough observed in acid core-floods of vuggy carbonates. In: 8th European formation damage conference (p. SPE-122357-MS) (2009). https://doi.org/10.2118/122357-MS
Jia, C., Huang, Z., Sepehrnoori, K., Yao, J.: Modification of two-scale continuum model and numerical studies for carbonate matrix acidizing. J. Petrol. Sci. Eng. (2020). https://doi.org/10.1016/j.petrol.2020.107972
Kalia, N., Balakotaiah, V.: Modeling and analysis of wormhole formation in reactive dissolution of carbonate rocks. Chem. Eng. Sci. 62(4), 919–928 (2007). https://doi.org/10.1016/j.ces.2006.10.021
Kumar, H., Muhemmed, S., Nasr-El-Din, H.: The role of CO2 in carbonate acidizing at the field scale–A multi-phase perspective. In: SPE Annual Technical Conference and Exhibition Day 2 Wed, September 22, 2021, 2021-Septe. (2021) https://doi.org/10.2118/206033-MS
Li, Y., Deng, Q., Zhao, J., Liao, Y., Jiang, Y.: Simulation and analysis of matrix stimulation by diverting acid system considering temperature field. J. Petrol. Sci. Eng. 170, 932–944 (2018). https://doi.org/10.1016/j.petrol.2018.06.050
Liu, M., Zhang, S., Mou, J., Zhou, F.: Wormhole propagation behavior under reservoir condition in carbonate acidizing. Transp. Porous Media 96(1), 203–220 (2013). https://doi.org/10.1007/s11242-012-0084-z
Liu, P., Yao, J., Couples, G.D., Ma, J., Huang, Z., Sun, H.: Modeling and simulation of wormhole formation during acidization of fractured carbonate rocks. J. Petrol. Sci. Eng. 154, 284–301 (2017). https://doi.org/10.1016/j.petrol.2017.04.040
Liu, P., Yan, X., Yao, J., Sun, S.: Modeling and analysis of the acidizing process in carbonate rocks using a two-phase thermal-hydrologic-chemical coupled model. Chem. Eng. Sci. 207, 215–234 (2019). https://doi.org/10.1016/j.ces.2019.06.017
Maheshwari, P., Balakotaiah, V.: 3-D simulation of carbonate acidization with Hcl: comparison with experiments. SPE Prod. Oper. Symp. (2013). https://doi.org/10.2118/164517-MS
Maheshwari, P., Balakotaiah, V.: Comparison of carbonate HCl acidizing experiments with 3D simulations. SPE Prod. Oper. 28(04), 402–413 (2013b). https://doi.org/10.2118/164517-PA
Maheshwari, P., Ratnakar, R.R., Kalia, N., Balakotaiah, V.: 3-D simulation and analysis of reactive dissolution and wormhole formation in carbonate rocks. Chem. Eng. Sci. 90, 258–274 (2013). https://doi.org/10.1016/j.ces.2012.12.032
Maheshwari, P., Maxey, J., Balakotaiah, V.: Reactive-dissolution modeling and experimental comparison of wormhole formation in carbonates with gelled and emulsified acids. SPE Prod. Oper. 31(02), 103–119 (2016). https://doi.org/10.2118/171731-PA
Mahmoodi, A., Javadi, A., Sedaee Sola, B.: Porous media acidizing simulation: New two-phase two-scale continuum modeling approach. J. Petrol. Sci. Eng. 166(March), 679–692 (2018). https://doi.org/10.1016/j.petrol.2018.03.072
McDuff, D.R., Shuchart, C.E., Jackson, S.K., Postl, D., Brown, J.S.: Understanding wormholes in carbonates: unprecedented experimental scale and 3-D visualization. Proc. SPE Ann. Tech. Conf. Exhib. 3, 2321–2329 (2010). https://doi.org/10.2118/129329-JPT
Motta, A.B.G., Thompson, R.L., Favero, J.L., Dias, R.A.C., Silva, L.F.L.R., Costa, F.G., Schwalbert, M.P.: Rheological effects on the acidizing process in carbonate reservoirs. J. Petrol. Sci. Eng. 207, 109122 (2021). https://doi.org/10.1016/j.petrol.2021.109122
Panga, M.K.R., Ziauddin, M., Balakotaiah, V.: Two-scale continuum model for simulation of wormholes in carbonate acidization. AIChE J. 51(12), 3231–3248 (2005). https://doi.org/10.1002/aic.10574
Pichler, T., Frick, T.P., Economides, M.J., Nittmann, J.: Stochastic modeling of wormhole growth in carbonate acidizing with biased randomness. In European petroleum conference (p. SPE-25004-MS) (1992). https://doi.org/10.2118/25004-MS
Pomès, V., Bazin, B., Golfier, F., Zarcone, C., Lenormand, R., Quintard, M.: On The Use of Upscaling Methods to Describe Acid Injection in Carbonates. In: SPE annual technical conference and exhibition (p. SPE-71511-MS) (2001). https://doi.org/10.2118/71511-MS
Qi, N., Chen, G., Liang, C., Guo, T., Liu, G., Zhang, K.: Numerical simulation and analysis of the influence of fracture geometry on wormhole propagation in carbonate reservoirs. Chem. Eng. Sci. 198, 124–143 (2019). https://doi.org/10.1016/j.ces.2018.12.047
Qiu, X., Aidagulov, G., Ghommem, M., Abbad, M.: Experimental investigation of radial and linear acid injection into carbonates for well stimulation operations. In: Society of petroleum engineers-SPE Kingdom of Saudi Arabia annual technical symposium and exhibition 2018, SATS 2018, 1–15. (2018) https://doi.org/10.2118/192261-ms
Ratnakar, R.R., Kalia, N., Balakotaiah, V.: Modeling, analysis and simulation of wormhole formation in carbonate rocks with in situ cross-linked acids. Chem. Eng. Sci. 90, 179–199 (2013). https://doi.org/10.1016/j.ces.2012.12.019
Terrill, R.M.: Heat transfer in laminar flow between parallel porous plates. Int. J. Heat Mass Transf. 8(12), 1491–1497 (1965). https://doi.org/10.1016/0017-9310(65)90034-7
Wang, L., Mou, J., Mo, S., Zhao, B., Liu, Z., Tian, X.: Modeling matrix acidizing in naturally fractured carbonate reservoirs. J. Petrol. Sci. Eng. 186, 106685 (2020). https://doi.org/10.1016/j.petrol.2019.106685
Wei, W., Varavei, A., Sepehrnoori, K.: Modeling and analysis on the effect of two-phase flow on wormhole propagation in carbonate acidizing. SPE J. 22(6), 2067–2083 (2017). https://doi.org/10.2118/186111-pa
Wei, Wan, Yu, W., Chen, Y., Sepehrnoori, K.: Geochemical modeling of wormhole propagation during carbonate acidizing with consideration of fractures. In: SPE improved oil recovery conference, 2020-Augus. (2020) https://doi.org/10.2118/200319-MS
Xiaogang, L., Jie, T., Zhaozhong, Y.: Simulation of wormhole in carbonate acidizing using a new diffusion limited aggregation model. Int. Conf. Comput. Inf. Sci. 2010, 340–343 (2010). https://doi.org/10.1109/ICCIS.2010.89
Xue, H., Huang, Z., Zhao, L., Wang, H., Kang, B., Liu, P., Liu, F., Cheng, Y., Xin, J.: Influence of acid-rock reaction heat and heat transmission on wormholing in carbonate rock. J. Nat. Gas Sci. Eng. 50, 189–204 (2018). https://doi.org/10.1016/j.jngse.2017.12.008
You, J., Lee, K. J.: Analyzing the dynamics of mineral dissolution during acid fracturing by pore–scale modeling of acid–rock interaction. In: SPE improved oil recovery conference, (2020). https://doi.org/10.2118/200406-MS
Yuan, J.Y., Babchin, A., Tremblay, B.: Modelling wormhole flow in cold production. J. Can. Petrol. Technol. (2000). https://doi.org/10.2118/00-04-02
Zhang, Y., Jiang, F., Tsuji, T.: Influence of pore space heterogeneity on mineral dissolution and permeability evolution investigated using lattice Boltzmann method. Chem. Eng. Sci. 247, 117048 (2022). https://doi.org/10.1016/j.ces.2021.117048
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors have not disclosed any conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix
The following steps were taken to reduce the computational time:
Minimize coefficient matrix construction time
Typically, a loop is required to perform computations per each dimension. Thus, a three-level nested loop is common for the conventional 3D problem. Apart from the matrix inversion time, the time required to execute code commands and perform all calculations is optimized through two investigation steps: changing nested loops' order and vectorizing the computations. Usually, field values are indexed in (row, column, and page) order where i, j, and k are the corresponding indices, as shown in Fig.
15.
A simple code that performs a single computation is written to reach a conclusion for this question alternating both the order of nested loops and the number of elements in each direction. Figure
16 shows that the execution time could vary significantly upon changing the order and size; however, the trend is quite difficult to be captured and generalized apart from avoiding looping along the first dimension in the innermost loop. When the code is vectorized, all loops and nested loops that circle calculations in 3D arrays are removed and replaced by element wise-operations. It is important to figure out the relationships that control indexing inside loops for a proper replacement. Vectorizing reduced the required time to perform loops’ calculations significantly.
Minimize coefficient matrix inversion time
Even though the model was optimized to enhance its execution time, solving the system of linear equations is the major time consumer. Therefore, several methods are investigated to speed up finding the solution of \(\mathbf{A}\overrightarrow{\mathrm{x}}=\overrightarrow{\mathrm{b}}\). Some methods are related to filling patterns and elements’ order within the coefficient matrix, while others are connected to solution-obtaining methods.
Actions related to elements’ order
For large sparse matrices like those we have in all three models, it is crucial to predefine the coefficient matrices as sparse matrices. This saves computation costs in terms of memory and time. The sparsity bandwidth showed a critical effect on solution speed. Therefore, the TRF model is equipped with a function that dynamically minimizes the bandwidth of the coefficient matrix upon mesh size. Furthermore, different matrix reordering algorithms were applied to the coefficient matrices to select the one that speeds up the solution. These algorithms are listed in Table
6. Unfortunately, none of them could speed up solving the system of linear equations in all sub-models within the TRF model.
Actions Related to Solution Methods
5.1 Direct Methods
Finding coefficient matrix inversion is not a wise option. Instead, the solution of a linear system of equations could be obtained directly using Gaussian elimination after performing LU, QR, or Cholesky factorization. The speed of solving a linear system with a direct method strongly depends on the density and fill pattern of the coefficient matrix. Based on that, the most suitable direct method is automatically selected when using the backslash command or mldivide built-in MATLAB® function. These practices are satisfactory when solving the system of linear equations in the flow model in both 2D and 3D. This is attributed to the features of the coefficient matrix, such as having a very low condition number and being symmetric and positive definite. In contrast, they consume an increasingly huge amount of time in thermal and reactive models. This increase with mesh size is nonlinear and may behave exponentially when obtaining, for instance, the concentration distribution in 3D.
5.2 Preconditioning the Coefficient Matrix
Preconditioning a matrix is a process in which the conditional number of a matrix is changed by multiplying it by a proper matrix targeting its conditionality improvement. MATLAB® has a function that does such a job. It is called equilibrate. It was used to precondition the coefficient matrices in both thermal and reactive models and exhibited no or minimal improvement in speeding up the solution in the best scenarios. Other preconditioning matrices are the partially computed LU and Cholesky factorizations which performed worse than the direct methods when tested. These preconditioning methods, listed in Table
7, did not improve the solution speed. Apart from that, using the transpose of the coefficient matrix as a preconditioner has only speeded up the solution of the reaction model which is the incomparably most expensive model.
5.3 Indirect Methods
Although the fill pattern of the coefficient matrix does not affect solution speed, solving a linear system with iterative methods typically requires tuning parameters for each specific problem. This explains why direct methods are usually faster and more generally applicable than indirect methods.
Convergence and accuracy are always concerning points when dealing with iterative methods. Hence, the last option is to approximate the solution iteratively if speed enhancement compensates well for the precession loss. Unfortunately, all tested iterative algorithms, listed in Table
8, failed to converge using their default and typical tuning parameters values.
The generic iterative algorithm starts with an initial guess for the solution vector, \(\overrightarrow{{\mathrm{x}}_{0}}\), followed by:
-
1.
Computing the residual norm \(\mathrm{res}=\mathrm{norm}(\mathrm{A}\overrightarrow{{\mathrm{x}}_{0}}-\overrightarrow{\mathrm{b}})\) and comparing it against a specified tolerance. Return the solution \(\overrightarrow{{\mathrm{x}}_{0}}\) if its residual is within the tolerance.
-
2.
Updating the magnitude and direction of the vector \(\overrightarrow{{\mathrm{x}}_{0}}\) based on the value of the residual and other calculated quantities if its value is not accepted.
-
3.
Repeating steps 1 and 2 until the tolerance is satisfied or a maximum number of iterations is reached.
The iterative methods differ in updating step (step 2), and some have slightly different convergence criteria in step 1. In TRF model, an additional step is added that cleans the solution and adjusts the tolerance accordingly for further accuracy.
5.4 Combine Iterative Methods with Preconditioning
A window to efficient computation, in terms of memory and time, in wormhole modeling is opened by this idea. The preconditioning procedure is repeated, and the tuning parameters of all iterative methods are varied by ten equal steps per order of magnitude. Consequently, forty distinct values per numerical tuning parameter per iterative method are tested. Other options that control the convergence of each iterative method are operated too. The action is repeated for all models at different mesh sizes and time steps. These time-consuming efforts led to an inexpensive solution to the system of linear equations, mainly in reaction and thermal models.
Fast Algorithm Used in TRF Model
TRF model enhanced the computation speed in two stages. In the construction stage, all calculations are vectorized, the constructed coefficient matrices are defined as sparse matrices, and their sparsity bandwidth is minimized. In the solution stage, the flow model is solved directly while both the reaction and the thermal models are first preconditioned and then solved iteratively using the generalized minimum residuals method according to the following algorithm:
-
Calculate a preconditioner using incomplete LU decomposition: Control partial filling by drop tolerance of \(3.0\times {10}^{-2}\) in the reaction model and \(3.0\times {10}^{-1}\) in the thermal model.
-
Use the generalized minimum residual iterative method: Set the maximum number of iterations to be 200 and the tolerance to be \(1.0\times {10}^{-12}\) and \(1.0\times {10}^{-14}\) in reaction and thermal models, respectively.
-
Clean the solution and adjust the tolerance for further accuracy: Remove negative, less than a threshold, or extreme values.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Aboluhom, H., Aljawad, M.S. Computationally Efficient 3D Fully Coupled Reactive Transport Model for Wormhole Propagation in Carbonate Formation. Transp Porous Med 150, 229–256 (2023). https://doi.org/10.1007/s11242-023-02007-2
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11242-023-02007-2