Numerical simulation method for pore-scale microorganism-mediated mineral precipitation

By constructing the MICPFoam solver based on the microscopic-continuum theory of the Darcy-Brinkman-Stokes equation, the problem of pore-scale characteristics being ignored in existing MICP numerical simulations is solved, and the microscopic mechanism understanding and parameter data generation of the MICP process are achieved, which is suitable for low-cost numerical simulation of porous media.

CN120808954APending Publication Date: 2025-10-17BEIJING NORMAL UNIVERSITY
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510932778.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-07
Publication Date
2025-10-17

AI Technical Summary

Technical Problem

Existing MICP numerical simulation studies mostly use continuous-scale models, ignoring pore-scale characteristics such as porosity and permeability, and are unable to quantitatively analyze the microscopic mechanism of the complex coupling process of MICP. In addition, the microscopic influencing mechanism of the pore-scale MICP process is still unclear.

Method used

Using the microscopic-continuum theory based on the Darcy-Brinkman-Stokes equations, the governing equations of multiple physical fields, including the Navier-Stokes equations, convection-diffusion equations, and first-order reaction kinetics equations, were compiled into header files by writing C++ code. The MICPFoam solver was constructed to perform numerical simulations of pore-scale microbial-mediated mineral precipitation.

Benefits of technology

It has achieved an understanding of the microscopic mechanism of the MICP process, can accurately describe the seepage and reaction solute migration process in porous media, generate relevant parameter data, is suitable for numerical simulation of porous media, and has low cost.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120808954A_ABST
    Figure CN120808954A_ABST
Patent Text Reader

Abstract

The invention belongs to the field of computational fluid mechanics numerical simulation, and particularly relates to a pore-scale microorganism-mediated mineral precipitation numerical simulation method, which comprises the following steps of: S1, compiling a plurality of header files in. H formats according to a plurality of control equations for describing an MICP (Mineral Inductively Coupled Plasma) coupling process; s2, writing other header files; step S3, writing an MICP Foam.C file; step S4, naming a solver; step S5, compiling a solver; s6, on the basis of the heterogeneous porous medium structure, verifying the solver in the aspects of flow, solute transport and biogeochemical reaction; and step S7, operating an MICP Foam solver based on the heterogeneous porous medium example to obtain a related data result. The method is a numerical simulation method which is researched and developed on the basis of a DBS framework by adopting a computational fluid dynamics method aiming at the pore-scale MICP coupling process, the micromechanism of the MICP process in an underground complex environment medium can be understood, and the application of the MICP technology in the field of geological carbon sequestration is further promoted.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of numerical simulation of computational fluid dynamics, and particularly relates to a numerical simulation method for pore-scale microbial mediated mineral precipitation. BACKGROUND

[0002] Microbial Induced Calcite Precipitation (MICP) in the porous medium of underground environment is a highly coupled process of water flow, solute transport and biogeochemical reaction, and is widely applied in the technical fields of groundwater pollution remediation, foundation reinforcement, concrete crack repair, etc., and is collectively referred to as MICP technology. The structure of the porous medium, internal temperature, biomass density and other environmental factors can determine the application effect of the MICP technology, but the micro-influence mechanism of the environmental conditions on the MICP process is still lacking in-depth research, and the development of a pore-scale MICP process model and the numerical simulation under different environmental conditions can help to quantify the influence of different environmental conditions on the MICP process, and provide a theoretical basis and scientific and technological support for improving the application effect of the MICP technology.

[0003] With the rapid development of scientific computing, the computational fluid dynamics method has become a commonly used method for quantifying complex coupled processes in porous media. The existing numerical simulation researches on MICP mostly use continuous scale models, ignoring the changes of porosity, permeability and other pore-scale characteristics, and cannot quantitatively analyze the micro-mechanism of the complex coupled process of MICP. The emergence of the Micro-continuum theory makes it possible to solve this problem. The theory describes the water flow process in complex porous media based on the Darcy-Brinkman-Stokes (DBS) equation, and couples the porosity variation and the conservation equation through a set of control equations, which can quantitatively describe the complex process at the pore scale, and avoid the requirement of high resolution or significantly increased computing cost.

[0004] However, the pore-scale numerical simulation of MICP is still in its infancy, and in order to quickly quantify the results or match specific experiments, the MICP process is often simplified, or limited to one-dimensional and two-dimensional simulation of simple structures. Therefore, due to the development level of observation technology and model, the micro-process mechanism of pore-scale MICP in the underground changing environment is still unclear. SUMMARY

[0005] In order to solve at least one technical problem in the prior art, the application provides a numerical simulation method for pore-scale microbial mediated mineral precipitation.

[0006] The application discloses a numerical simulation method for pore-scale microbial mediated mineral precipitation, comprising the following steps:

[0007] Step S1, based on C++ code, a plurality of physical fields for describing the pore-scale microbial mediated mineral precipitation coupling process are incorporated into a plurality of.H format header files, wherein the control equations for describing the spatial and temporal variation of each physical field include: Navier-Stokes equation for depicting water flow movement, convection-diffusion equation for depicting solute transport, Michaelis-Menten kinetics equation for describing urea hydrolysis process, and first-order reaction kinetics equation for describing mineral precipitation process;

[0008] Step S2, all parameters and variables involved in the construction of the solver are recorded by code format into createFields.H header file, so as to define parameter and variable names, and to perfect alphaCourantNo.H, updateVariables.H and createPorousMediaFields.H system header files according to the parameters and variables;

[0009] Step S3, coupling the header files of step S1 and the system header files of step S2, MICPFoam.C file is written;

[0010] Step S4, the solver is named MICPFoam in the Make folder;

[0011] Step S5, the solver is compiled;

[0012] Step S6, numerical simulation is carried out, and the accuracy of the MICPFoam solver in simulating flow, solute transport and microbial chemical reaction process is verified respectively;

[0013] Step S7, the MICPFoam solver is run, and the numerical simulation results of the model are output.

[0014] In some embodiments, the control equations in step S1 include:

[0015]

[0016] Formula (1) is the Navier-Stokes equation for depicting water flow movement; wherein t represents time, unit is s; ε represents porosity; ρ represents fluid density, unit is m 2 / s; p represents pressure, unit is Pa; u represents velocity, unit is m / s; μ represents fluid viscosity, unit is m 2 / s; g represents gravitational acceleration, unit is m·s -2 ; k represents permeability, unit is m / s;

[0017]

[0018] Equation (2) is a general expression of convection-diffusion equation for describing solute transport, where C f represents solute concentration with unit of Kg / m 3 ; D represents dispersion / diffusion coefficient with unit of m 2 / s; K is the source term.

[0019] Specifically, for urea hydrolysis reaction, the calculation formula of source term K is as follows:

[0020]

[0021] where r ureolysis is urea hydrolysis rate; K u is urea decomposition specific rate with unit of 1 / s; C urea is urea concentration with unit of Kg / m 3 ; is ammonium concentration with unit of Kg / m 3 ; K m is half-saturation coefficient with unit of Kg / m 3 ; is ammonia inhibition constant with unit of Kg / m 3 ; M is biomass with unit of Kg / m 3 ;

[0022] For urea hydrolysis reaction, equation (2) can be specifically expressed as:

[0023]

[0024] where D urea is urea diffusion rate with unit of m 2 / s; is ammonium diffusion rate with unit of m 2 / s;

[0025] Specifically, for calcium carbonate mineralization reaction, the calculation formula of source term K is as follows:

[0026]

[0027] where r precipitation is precipitation rate; K p is precipitation rate constant with unit of 1 / s; C ca is Ca 2+ concentration with unit of Kg / m 3 ; is urea hydrolysis generated concentration with unit of Kg / m 3 ; S attach represents solid-liquid interface; represents porosity gradient;

[0028] For the calcium carbonate mineralization reaction, formula (2) can be specifically expressed as:

[0029]

[0030] wherein D ca is the diffusion rate of Ca 2+ , unit is m 2 / s; is the concentration of produced , unit is Kg / m 3 ; is the diffusion rate of , unit is m 2 / s.

[0031] In some embodiments, the plurality of header files in the step S1 in the.H format includes:

[0032] Cco3Eqn.H header file, Ccaco3Eqn.H header file, CcaEqn.H header file, Cnh4Eqn.H header file, CureaEqn.H header file, MEqn.H header file, pEqn.H header file, UEqn.H header file, CEqn.H header file, epsEqn.H header file.

[0033] In some embodiments, among the parameters and variables recorded in the createFields.H header file in the step S2, the scalar parameters include fluid viscosity mum, fluid density rhof, diffusion coefficient D, initial concentration C0, urea density rhoUrea, CaCO3 density rhoCaCO3, diffusion coefficient Durea of urea, diffusion coefficient Dnh4 of Ca 2+ , diffusion coefficient Dca of , diffusion coefficient Dco3 of CaCO3, urea hydrolysis rate Ku, half-saturation coefficient Km, ammonia inhibition constant Knh4, precipitation rate constant Kp, molecular mass of CaCO3 MWCaCO3; the coefficients include dimension correction coefficients a, b; the scalar variables include normalized concentration C by C0, urea concentration Curea, concentration Cnh4 of Ca 2+ , concentration Cca of , concentration Cco3 of CaCO3, calcium carbonate concentration Ccaco3, pressure p, porosity eps, solid volume fraction Solid; the vector variables include velocity U, pressure gradient GradP;

[0034] In addition, in the createPorousMediaFields.H header file and the updateVariables.H header file of the step S2, the scalar variables include the permeability K, and the scalar parameters include the square of the characteristic length k0.

[0035] In some embodiments, in the step S3, the header files coupled with the step S1 and the step S2 specifically include:

[0036] In order, before the control equation, add #include"CourantNo.H", #include"UEqn.H", #include"pEqn.H", #include"CEqn.H", #include"CureaEqn.H", #include"CNH4Eqn.H", #include"CcaEqn.H", #include"Cco3Eqn.H".

[0037] After describing the control equation, add the #include"updateVariables.H" header file.

[0038] In some embodiments, in the step S3, the MICPFoam.C file is obtained by writing the control equation as follows:

[0039]

[0040] Formula (10) describes the calcium carbonate precipitation process, wherein, is the formation amount of the calcium carbonate mineral, and the unit is m 2 / s; is the relative molecular mass of the calcium carbonate, and the value is 100, and the unit is g / mol;

[0041]

[0042] Formula (11) describes the change relationship between the calcium carbonate mineral and the porosity, wherein, is the molecular mass of CaCO3; is the density of CaCO3, and the unit is Kg / m 3 ;ρ urea is the density of urea, and the unit is Kg / m 3 ; represents the change of the mass concentration of CaCO3 with time; represents the change of the mass concentration of urea with time;

[0043] Finally, the relationship between the porosity and the permeability is described by the following Kozeny-Carman equation:

[0044]

[0045] where k is the permeability with unit of m 2 ; k0 represents the square of characteristic length with unit of m 2 .

[0046] In some embodiments, the step S5, the compiling the solver specifically includes:

[0047] The formula (1) to formula (12) are sequentially compiled into the MICPFoam solver corresponding file, and in the OpenFOAM-7 environment, the file directory is compiled using the wmake command, and the MICPFoam program source code is placed in the same folder.

[0048] In some embodiments, in the step S6, a two-dimensional heterogeneous porous medium structure with a size of 0.025m*0.0125m is used for numerical simulation, and the initial conditions and boundary conditions of each verification process are as follows:

[0049] In the verification of flow, the initial condition is that the p at the inlet is 101.375Pa and the p at the outlet is 0Pa; the boundary condition is that the U of the top surface and the bottom surface is a fixed value of (0 0 0) and the p is a zero gradient, the U of the inlet and the outlet is a zero gradient and the p is a fixed value;

[0050] In the verification of solute transport, the initial condition is that the C at the inlet is 1Kg / m 3 , and the p at the outlet is 0Pa; the boundary condition is that the C and the p of the top surface and the bottom surface are zero gradients, the p of the inlet is a zero gradient and the C is a fixed value, and the C of the outlet is a zero gradient and the p is a fixed value;

[0051] In the verification of microbial chemical reaction process, the initial condition is that the p at the inlet is 10 -5 Pa and the p at the outlet is 0Pa; the boundary condition is that the C and the p of the top surface and the bottom surface are zero gradients, the C of the inlet and the outlet is a zero gradient and the p is a fixed value.

[0052] In some embodiments, in the step S7, the initial conditions of the two-dimensional heterogeneous porous medium structure are as follows: the U at the inlet is 10 -6 m / s, the p is 10 -8 Pa, the Cca is 0.35Kg / m 3 , the Ccaco3 is 0Kg / m 3 , the Cco3 is 0Kg / m 3 , and the CNH4 is 0Kg / m 3 .

[0053] The boundary conditions of the two-dimensional heterogeneous porous medium structure are: the top and bottom surfaces of the structure are periodic boundary conditions, the inlet is a fixed value, the outlet is a zero gradient, and the front and back surfaces are empty.

[0054] In some embodiments, in the step S7, at least the following simulation processes are included when running the MICPFoam solver:

[0055] flow processes in the porous medium, Ca 2+ , CO3 2- , migration processes of urea and biomass solutes, microbial chemical processes of urea hydrolysis and calcium carbonate mineralization in the porous medium;

[0056] In addition, the output model numerical simulation results at least include the following data:

[0057] velocity field, pressure field, concentration field, and porosity field.

[0058] The present application has at least the following beneficial technical effects:

[0059] 1) The pore-scale microbial mediated mineral precipitation numerical simulation method of the present application is a numerical simulation method independently developed by using computational fluid dynamics (CFD) method and based on DBS framework for pore-scale MICP coupling process, which helps to understand the micro mechanism of MICP process in complex underground environment medium, and further promotes the application of MICP technology in the field of geological carbon sequestration;

[0060] 2) The pore-scale microbial mediated mineral precipitation numerical simulation method of the present application is a solver generation idea, which can provide a reference for the numerical simulation research of seepage and reaction solute migration process in complex porous medium;

[0061] 3) In the pore-scale microbial mediated mineral precipitation numerical simulation method of the present application, the MICPFoam solver is verified in terms of flow, solute transport and reaction, which can describe the MICP coupling process and obtain relevant parameter data under the premise of ensuring accuracy;

[0062] 4) The pore-scale microbial mediated mineral precipitation numerical simulation method of the present application has universality, which is applicable to most porous media within the range of computer or server computing power, and the cost is extremely low because the core software OpenFOAM used in the present application is open source software. BRIEF DESCRIPTION OF DRAWINGS

[0063] Figure 1 is a flow diagram of the pore-scale microbial mediated mineral precipitation numerical simulation method of the present application;

[0064] Figure 2 is a schematic diagram of a heterogeneous porous medium example used in a preferred embodiment of the pore-scale microbial mediated mineral precipitation numerical simulation method of the present application;

[0065] Figure 3 is Figure 2 is a schematic diagram of the flow field streamline distribution and the generation of calcium carbonate precipitation at 0.01 s and 5 s in the heterogeneous porous medium example of the embodiment shown in FIG. 5;

[0066] Figure 4 is Figure 2 is a graph of the verification results in terms of flow in the heterogeneous porous medium example of the embodiment shown in FIG. 6;

[0067] Figure 5 is Figure 2 is a graph of the verification results in terms of solute transport in the heterogeneous porous medium example of the embodiment shown in FIG. 7;

[0068] Figure 6 is Figure 2 is a graph of the verification results in terms of reaction process in the heterogeneous porous medium example of the embodiment shown in FIG. 8. DETAILED DESCRIPTION

[0069] In order to make the purposes, technical solutions and advantages of the present application clearer, the technical solutions in the embodiments of the present application will be described in more detail below with reference to the accompanying drawings in the embodiments of the present application.

[0070] The present application discloses a pore-scale microbial mediated mineral precipitation numerical simulation method, as shown in FIG. 1, which specifically comprises the following steps: Figure 1

[0071] Step S1, compiling a header file.

[0072] Specifically, this step is to compile a plurality of control equations for describing the MICP coupling process into a plurality of header files in the Eqn.H format, wherein the control equations at least include: Navier-Stokes equation for depicting water flow movement, convection-diffusion equation for depicting solute transport, equation for describing urea hydrolysis process, and first-order reaction kinetics equation for describing mineral precipitation process.

[0073] ​In the embodiment, the plurality of header files obtained by compiling include: Cco3Eqn.H header file of numerical solution formula (9), Ccaco3Eqn.H header file of numerical solution formula (10), CcaEqn.H header file of numerical solution formula (8), Cnh4Eqn.H header file of numerical solution formula (5), CureaEqn.H header file of numerical solution formula (4), MEqn.H header file of numerical discrete biomass M, pEqn.H header file of numerical solution formula (1), UEqn.H header file of numerical solution formula (1), CEqn.H header file of numerical solution formula (2), and epsEqn.H header file of numerical solution formula (11).

[0074] Further, the control equations in the embodiment include:

[0075]

[0076] Formula (1) is the Navier-Stokes equation for describing water flow movement; wherein t represents time, the unit is s; ε represents porosity; ρ represents fluid density, the unit is m 2 / s; p represents pressure, the unit is Pa; u represents velocity, the unit is m / s; μ represents fluid viscosity, the unit is m 2 / s; g represents gravitational acceleration, the unit is m·s -2 ; k represents permeability, the unit is m / s;

[0077]

[0078] Formula (2) is a general expression of the convection-diffusion equation for describing solute transport, wherein C f represents solute concentration, the unit is Kg / m 3 ; D represents diffusion / dispersion coefficient, the unit is m 2 / s; K is a reaction source term;

[0079] Specifically, for the urea hydrolysis reaction, the calculation formula of the source term K is as follows:

[0080]

[0081] Wherein r ureolysis is the urea hydrolysis rate; K u is the urea decomposition specific rate, the unit is 1 / s; C urea is the urea concentration, the unit is Kg / m 3 ; is the ammonium concentration, the unit is Kg / m 3 ; K m is the half-saturation coefficient, the unit is Kg / m 3 ; is the ammonia inhibition constant with unit Kg / m 3 ; M is the biomass with unit Kg / m 3 ;

[0082] For urea hydrolysis reaction, equation (2) can be specifically expressed as:

[0083]

[0084]

[0085] where D urea is the urea diffusion rate with unit m 2 / s; is the ammonium diffusion rate with unit m 2 / s;

[0086] Specifically, for calcium carbonate mineralization reaction, the calculation formula of source term K is as follows:

[0087]

[0088] where r precipitation is the precipitation rate; K p is the precipitation rate constant with unit 1 / s; C ca is the Ca 2+ concentration with unit Kg / m 3 ; is the concentration of produced with unit Kg / m 3 ; S attach represents the solid-liquid interface; represents the porosity gradient;

[0089] For calcium carbonate mineralization reaction, equation (2) can be specifically expressed as:

[0090]

[0091] where D ca is the Ca 2+ diffusion rate with unit m 2 / s; is the concentration of produced with unit Kg / m 3 ; is the diffusion rate with unit m 2 / s.

[0092] Further, the C++ codes of the above header files are as follows:

[0093] 1) The C++ code of Cco3Eqn.H is as follows:

[0094]

[0095]

[0096] 2) Ccaco3Eqn.H C++ code is as follows:

[0097]

[0098] 3) CcaEqn.H C++ code is as follows:

[0099]

[0100] 4) CNH4Eqn.H C++ code is as follows:

[0101]

[0102]

[0103] 5) CureaEqn.H C++ code is as follows:

[0104]

[0105] 6) MEqn.H C++ code is as follows:

[0106]

[0107]

[0108] 7) pEqn.H C++ code is as follows:

[0109]

[0110]

[0111]

[0112] 8) UEqn.H C++ code is as follows:

[0113]

[0114]

[0115] 9) CEqn.H C++ code is as follows:

[0116]

[0117] 10) epsEqn.H C++ code is as follows:

[0118]

[0119]

[0120] Step S2, write other header files.

[0121] Specifically, the embodiment perfects the parameter variables in createFields.H, alphaCourantNo.H, updateVariables.H, createPorousMediaFields.H files, and the above formulas are written as C++ codes.

[0122] Wherein, createFields.H represents the header file of variable field required by the creation of main program and other header file contents; updateVariables.H represents the header file of variable update; createPorousMediaFields.H represents the supplementary header file of variable field required by the creation of main program and other header file contents.

[0123] This step adds parameters and variable names in createFields.H, wherein, the scalar parameters include fluid viscosity mum, fluid density rhof, diffusion coefficient D, initial concentration C0, urea density rhoUrea, CaCO3 density rhoCaCO3, diffusion coefficient Durea of urea, diffusion coefficient Dnh4 of Ca 2+ diffusion coefficient Dca of Ca diffusion coefficient Dco3 of CaCO3, urea hydrolysis rate Ku, half-saturation coefficient Km, ammonia inhibition constant Knh4, precipitation rate constant Kp, molecular weight MWCaCO3 of CaCO3; the coefficients include dimension correction coefficients a, b; the scalar variables include normalized concentration Cby C0, urea concentration Curea, concentration Cnh4 of Ca 2+ concentration Cca of Ca concentration Cco3 of CaCO3, calcium carbonate concentration Ccaco3, pressure p, porosity eps, solid volume fraction Solid; the vector variables include velocity U, pressure gradient GradP.

[0124] The following Tables 1, 2 and 3 respectively list all scalar parameters, scalar variables and vector variables of MICPFoam solver:

[0125] Table 1 Scalar parameters

[0126]

[0127]

[0128] Table 2 Scalar variables

[0129]

[0130] Table 3 Vector variable

[0131]

[0132] The above physical parameters are entered in createFields.H in code format and stored in OpenFOAM environment as the parameter part of the solver after compilation.

[0133] The C++ code of one quantity of scalar, volume field and surface field will be given respectively as follows:

[0134] 1) Take the fluid viscosity mum as an example of scalar parameter, the code is as follows:

[0135]

[0136] 2) Take the pressure p as an example of scalar field, the code is as follows:

[0137]

[0138] 3) Take rhofPhi as an example of vector field, the code is as follows:

[0139]

[0140] Further, the parameter and variable name are added in createPorousMediaFields.H and updateVariables.H, wherein the scalar variable includes the permeability K, the scalar parameter includes the square of characteristic length k0, the volume field includes K, k0, M, Drag, and the surface field includes k0f, Solidf.

[0141] The above physical parameters are entered in createPorousMediaFields.H and updateVariables.H in code format and stored in OpenFOAM environment as the parameter part of the solver after compilation.

[0142] The C++ code of createPorousMediaFields.H is as follows:

[0143]

[0144]

[0145] The C++ code of updateVariables.H is as follows:

[0146]

[0147] Step S3, obtaining the MICPFoam.C file.

[0148] Specifically, the header files of the step S1 and the step S2 are coupled, and the MICPFoam.C file is written.

[0149] The coupling of the header files of the step S1 and the step S2 specifically includes:

[0150] The header files are added in sequence before the control equation: #include"CourantNo.H", #include"UEqn.H", #include"pEqn.H", #include"CEqn.H", #include"CureaEqn.H", #include"CNH4Eqn.H", #include"CcaEqn.H", #include"Cco3Eqn.H"; and other header files are added after the description of the control equation: #include"updateVariables.H".

[0151] Further, in the step S3, the MICPFoam.C file is perfected by continuing to write the following control equation:

[0152]

[0153] The formula (10) describes the calcium carbonate precipitation process, wherein, is the generation amount of calcium carbonate mineral, the unit is m 2 / s; is the relative molecular mass of calcium carbonate, the value is 100, the unit is g / mol.

[0154]

[0155] The formula (11) describes the change relationship between the calcium carbonate mineral and the porosity, wherein, is the molecular mass of CaCO3; is the density of CaCO3, the unit is Kg / m 3 ;ρ urea is the density of urea, the unit is Kg / m 3 ; represents the change of CaCO3 mass concentration with time; represents the change of urea mass concentration with time;

[0156] Finally, the relationship between the porosity and the permeability is described by the following Kozeny-Carman equation:

[0157]

[0158] where k is the permeability with unit of m 2 ; k0 represents the square of characteristic length with unit of m 2 .

[0159] Finally, the MICPFoam.C file is obtained, and the C++ code is as follows:

[0160]

[0161]

[0162] Step S4, naming the solver.

[0163] Specifically, in the file file in the Make folder, the solver is named “MICPFoam”.

[0164] The above process is operated on the computer as follows:

[0165] 1) In the Make / files file in the MICPFoam folder, the name of the solver is changed to “MICPFoam”;

[0166] 2) The modified files file code is as follows:

[0167] MICPFoam.C

[0168] EXE=$(FOAM_USER_APPBIN) / MICPFoam

[0169] Step S5, compiling the solver.

[0170] In this embodiment, the above formulas (1) to (12) are programmed into the MICPFoam solver, and in the OpenFOAM-7 environment, the file directory is compiled using the wmake command. The top-level source file of the compiled OpenFOAM program is named.C, and the OpenFOAM program source code is placed in the same named folder. The same named folder includes a Make folder, and the Make folder includes an options file and a files file.

[0171] The above process is operated on the computer as follows:

[0172] 1) Enter the MICPFoam folder directory in the server terminal, and enter the following command wmake;

[0173] 2) After compiling, no “Error” error is found, which means that the compilation is successful.

[0174] Step S6: Verify the solver.

[0175] This example uses a heterogeneous porous media structure to carry out numerical simulations to verify the accuracy of the MICPFoam solver in simulating flow, solute transport, and microbial chemical reaction processes.

[0176] like Figure 2 As shown in the figure, the heterogeneous porous media verification example used in this step is based on a two-dimensional heterogeneous porous media structure of 0.025m×0.0125m. When verifying the flow, the initial conditions are: p is 101.375Pa at the inlet and p is 0Pa at the outlet; its boundary conditions are: U is fixed at the top and bottom surfaces (0 0 0), p is zero gradient, U is zero gradient at the inlet and outlet, and p is a fixed value. When verifying solute transport, the initial conditions are: C at the inlet is 1Kg / m 3 , p is 0Pa at the outlet; its boundary conditions are: C and p are zero gradient at the top and bottom surfaces, p is zero gradient and C is a fixed value at the inlet, and C is zero gradient and p is a fixed value at the outlet. When verifying the reaction, its initial conditions are: p is 10 at the inlet -5 Pa, and p at the outlet are 0Pa; its boundary conditions are: C and p at the top and bottom surfaces have zero gradient, and C at the inlet and outlet have zero gradient and p is a fixed value. The example is solved in the OpenFOAM environment using a solver to generate file data recorded every 0.1 time step.

[0177] The calculation example uses a grid of 250 × 125 × 0.01 and uses the PISO algorithm. The operation on the computer is as follows:

[0178] 1) Set the vertices, mesh blocks, and edges in the blockMeshDict dictionary in the example system folder;

[0179] 2) Set the solution algorithm PISO in fvSolution in the system folder, and the number of iterations of the p equation to 2;

[0180] 3) Set the physical parameters of the control equation in the transportProperties dictionary of the constant folder. The specific parameters include muf, rhof, and D.

[0181] 4) Set the initial field conditions in the 0 folder, that is, set U to 0m / s and p to 10 -5 , C is 0Kg / m 3 , and add the boundary information of C, eps, K, p, U, rhof, and rhos to the 0 folder;

[0182] 5) Run the DBSFoam solver and the MICPFoam solver respectively based on the example, and compare the results of the two to complete the verification, the specific commands input in the server terminal are:

[0183] blockMesh

[0184] DBSFoam

[0185] If End appears after the solution is completed, it means that the solution is successful.

[0186] blockMesh

[0187] MICPFoam

[0188] If End appears after the solution is completed, it means that the solution is successful.

[0189] 6) The files under each time step file are post-processed by paraview, and on this basis, the jupyter notebook is used for drawing, and the verification results of flow and solute transport are as shown in Figure 4 、 Figure 5 .

[0190] 7) The verification process of complex reactions is completed in the OpenFOAM-7 version environment and the PHREEQC software, and the verification results are as shown in Figure 6 .

[0191] Step S7, running the solver.

[0192] Specifically, this step is to run the MICPFoam solver taking the heterogeneous porous medium structure as an example, and simulate the following processes in turn: the flow process in the porous medium, the migration process of solutes such as Ca 2+ , CO3 2- , urea, biomass, etc. in the porous medium, the microbial chemical process of urea hydrolysis and calcium carbonate mineralization in the porous medium, and output the velocity field, pressure field, concentration field, porosity field, etc. as the model numerical simulation results.

[0193] As shown in Figure 2 , the heterogeneous porous medium example used in this step is also based on a two-dimensional heterogeneous porous medium structure of 0.025m x 0.0125m, and the initial conditions are: U at the inlet is 10 -6 m / s, p is 10 -8 Pa, Cca is 0.35Kg / m 3 , Ccaco3 is 0Kg / m 3 , Cco3 is 0Kg / m 3 , CNH4 is 0Kg / m 3; its boundary conditions are: the top and bottom surfaces of the structure are periodic boundary conditions, the inlet is a fixed value, the outlet is zero gradient, the front and back are empty; the example uses the solver to generate file data recorded every 0.1 time step under the OpenFOAM environment.

[0194] Wherein, the grid number of the calculation example is 250*125*0.01, and the PISO algorithm is used for solving; the operation mode on the computer is as follows:

[0195] 1) Set the vertices, blocks and edges in the b1ockMeshDict dictionary of the example system folder;

[0196] 2) Set the decomposition mode to scotch in the decomposeParDict dictionary of the system folder, wherein the number of subdomains is 8;

[0197] 3) Set the solving algorithm PISO and the iteration number of p equation to 2 in the fvSolution of the system folder;

[0198] 4) Set the physical parameters parameters of the control equation in the transportProperties dictionary of the constant folder, and the specific parameters include muf, rhof, D, Db, Mmax, ks, ms, mum, Yxs, ops, C0, a, b, c, Durea, DNH4, Dca, Dco3, Ku, Kp, Km, KNH4, rhoCaCO3, rhoUrea, rhoMb, MWCaCO3;

[0199] 5) Set the initial field in the 0 folder, wherein U is set to 10 -6 m / s, p is set to 10 -8 Pa, Cca is set to 0.35Kg / m 3 , Ccaco3 is set to 0Kg / m 3 , Cco3 is set to 0Kg / m 3 , CNH4 is set to 0Kg / m 3 , and the boundary information of C, CbyC0, Cca, Ccaco3, Cco3, CNH4, Curea, eps, K, MbbyMmax, p, U is added in the 0 folder;

[0200] The specific command input in the server terminal is:

[0201] blockMesh

[0202] decomposePar

[0203] MICP Foam

[0204] reconstructPar

[0205] If End appears after the solution is completed, it means the solution is successful.

[0206] 6) The files under each time step file are post-processed by paraview, and the generated data images are processed to realize the visualization of the streamlines and calcium carbonate precipitation distribution at the time points of 0.01 s and 5 s, as shown in FIG. 5. Figure 3

[0207] The above merely illustrates the specific embodiments of the present application, but the protection scope of the present application is not limited to this. Any person skilled in the art can easily think of the changes or replacements within the technical range disclosed by the present application, which should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.​

Claims

1. A numerical simulation method for pore-scale microbial-mediated mineral precipitation, characterized in that: The following steps are involved: Step S1: Based on C++ code, multiple physical fields used to describe the coupled process of mineral precipitation mediated by pore-scale microorganisms are compiled into multiple .H format header files, where the governing equations describing the spatiotemporal changes of each physical field include: the Navier-Stokes equations for describing water flow, the convection-diffusion equations for describing solute transport, the Michaelis-Menten kinetic equations for describing the urea hydrolysis process, and the first-order reaction kinetic equations for describing the mineral precipitation process; Step S2: Enter all parameters and variables involved in building the solver into the createFields.H header file in code format, thereby defining the parameter and variable names, and improve the alphaCourantNo.H, updateVariables.H, and createPorousMediaFields.H system header files based on the parameters and variables; Step S3, coupling the header file of step S1 and the system header file of step S2 to compile and obtain the MICPFoam.C file; Step S4: Name the solver MICPFoam in the Make folder; Step S5, compile the solver; Step S6: Conduct numerical simulations to verify the accuracy of the MICPFoam solver in simulating flow, solute transport, and microbial chemical reaction processes; Step S7: Run the MICPFoam solver and output the model numerical simulation results.

2. The method for numerical simulation of mineral precipitation according to claim 1, characterized in that: The control equation in step S1 includes: Formula (1) is the Navier-Stokes equation describing water flow; where t represents time in seconds; ε represents porosity; and ρ represents fluid density in m. 2 / s; p represents pressure, the unit is Pa; y represents velocity, the unit is m / s; μ represents fluid viscosity, the unit is m 2 / s; g represents the acceleration due to gravity, and the unit is m·s -2 ; k represents permeability, the unit is m / s; Formula (2) is the general expression of the convection-diffusion equation describing solute transport, where C f Represents the solute concentration in kg / m 3 ; D represents the diffusion coefficient, the unit is m 2 / s; K is the reaction source term; Specifically, for the urea hydrolysis reaction, the calculation formula of the source term K is as follows: Among them, r ureolysis is the urea hydrolysis rate; K u is the urea decomposition rate, in 1 / s; C urea is the urea concentration, unit is Kg / m 3 ; is the ammonium concentration, unit is Kg / m 3 ;K m is the half-saturation coefficient, the unit is Kg / m 3 ; is the ammonia inhibition constant, in kg / m 3 ; M is biomass, unit is Kg / m 3 ; For the urea hydrolysis reaction, formula (2) can be specifically expressed as: Among them, D urea is the urea diffusion rate, in m 2 / s; is the ammonium diffusion rate, in m 2 / s; Specifically, for the calcium carbonate mineralization reaction, the calculation formula of the source term K is as follows: Among them, r precipitation is the precipitation rate; K p is the precipitation rate constant, in 1 / s; C ca It is Ca 2+ Concentration, unit is Kg / m 3 ; Produced by urea hydrolysis Concentration, unit is Kg / m 3 ;S attach represents the solid-liquid interface; represents the porosity gradient; For the calcium carbonate mineralization reaction, formula (2) can be specifically expressed as: Among them, D ca It is Ca 2+ Diffusion rate, in m 2 / s; is generated Concentration, unit is Kg / m 3 ; yes Diffusion rate, in m 2 / s.

3. The method for numerical simulation of mineral precipitation according to claim 2, characterized in that: The multiple .H format header files in step S1 include: Cco3Eqn.H header file, Ccaco3Eqn.H header file, CcaEqn.H header file, Cnh4Eqn.H header file, CureaEqn.H header file, MEqn.H header file, pEqn.H header file, UEqn.H header file, CEqn.H header file, epsEqn.H header file.

4. The method for numerical simulation of mineral precipitation according to claim 2, characterized in that: In the parameters and variables recorded in the createFields.H header file in step S2, the scalar parameters include fluid viscosity mum, fluid density rhof, diffusion coefficient D, initial concentration C0, urea density rhoUrea, CaCO3 density rhoCaCO3, urea diffusion coefficient Durea, Diffusion coefficients of Dnh4 and Ca 2+ The diffusion coefficient Dca, The diffusion coefficient Dco3, urea hydrolysis rate Ku, half-saturation coefficient Km, ammonia inhibition constant Knh4, precipitation rate constant Kp, molecular weight of CaCO3 MWCaCO3; coefficients include dimension correction coefficients a, b; scalar variables include normalized concentration CbyC0, urea concentration Curea, Concentration of Cnh4, Ca 2+ Concentration Cca, Concentration Cco3, calcium carbonate concentration Ccaco3, pressure p, porosity eps, solid volume fraction Solid; vector variables include velocity U, pressure gradient GradP; In addition, in the createPorousMediaFields.H header file and the updateVariables.H header file of step S2, the scalar variable includes the permeability K, and the scalar parameter includes the square of the characteristic length k0.

5. The method for numerical simulation of mineral precipitation according to claim 2, characterized in that: In step S3, the header file coupling step S1 and step S2 specifically includes: Add in order before the control equations: #include"CourantNo.H", #include"UEqn.H", #include"pEqn.H", #include"CEqn.H", #include"CureaEqn.H", #include"CNH4Eqn.H", #include"CcaEqn.H", #include"Cco3Eqn.H"; and Add: #include "updateVariables.H" header file after describing the control equation.

6. The method for numerical simulation of mineral precipitation according to claim 5, characterized in that: In step S3, the MICPFoam.C file is obtained by writing the following control equation: Formula (10) describes the calcium carbonate precipitation process, where is the amount of calcium carbonate mineral produced, in m 2 / s; is the relative molecular mass of calcium carbonate, which is 100 and the unit is g / mol; Formula (11) describes the relationship between calcium carbonate minerals and porosity, where is the molecular mass of CaCO3; is the density of CaCO3 in kg / m 3 ρ urea is the urea density, unit is Kg / m 3 ; Indicates the change of CaCO3 mass concentration over time; Indicates the change of urea mass concentration over time; Finally, the relationship between porosity and permeability is described by the following Kozeny-Carman equation: Where k is the permeability, the unit is m 2 ; k0 represents the square of the characteristic length, the unit is m 2 .

7. The method for numerical simulation of mineral precipitation according to claim 6, characterized in that: In step S5, compiling the solver specifically includes: Formulas (1) to (12) are compiled into the corresponding files of the MICPFoam solver in sequence, and in the OpenFOAM-7 environment, the file directory is compiled using the wmake command, and the MICPFoam program source code is placed in a folder with the same name.

8. The method for numerical simulation of mineral precipitation according to claim 7, characterized in that: In step S6, a numerical simulation is carried out on a two-dimensional heterogeneous porous medium structure of 0.025 m×0.0125 m. The initial conditions and boundary conditions of each verification process are as follows: When verifying the flow, the initial conditions are: p is 101.375 Pa at the inlet and 0 Pa at the outlet; the boundary conditions are: U is fixed at (0 0 0) on the top and bottom surfaces, p is zero gradient, and U is zero gradient and p is fixed at the inlet and outlet; When verifying solute transport, the initial conditions are: C at the inlet is 1Kg / m 3 , p is 0Pa at the outlet; its boundary conditions are: C and p on the top and bottom surfaces are zero gradient, p at the inlet is zero gradient and C is a fixed value, and C at the outlet is zero gradient and p is a fixed value; When verifying the microbial chemical reaction process, the initial conditions are: p at the entrance is 10 -5 Pa, p at the outlet is 0Pa; its boundary conditions are: C and p at the top and bottom surfaces are zero gradient, C at the inlet and outlet is zero gradient, and p is a fixed value.

9. The method for numerical simulation of mineral precipitation according to claim 8, characterized in that: In step S7, the initial conditions of the two-dimensional heterogeneous porous medium structure are: U at the inlet is 10 -6 m / s, p is 10 -8 Pa and Cca are 0.35Kg / m 3 , Ccaco3 is 0Kg / m 3 、Cco3 is 0Kg / m 3 、CNH4 is 0Kg / m 3 ; The boundary conditions of the two-dimensional heterogeneous porous media structure are as follows: the top and bottom surfaces of the structure are periodic boundary conditions, the inlet is a fixed value, the outlet is zero gradient, and the front and back are empty.

10. The method for numerical simulation of mineral precipitation according to claim 9, characterized in that: In step S7, running the MICPFoam solver includes at least the following simulation process: Flow process in porous media, Ca in porous media 2+ 、CO3 2- , urea, migration process of biomass solutes, microbial chemical process of urea hydrolysis and calcium carbonate mineralization in porous media; In addition, the output model numerical simulation results include at least the following data: Velocity field, pressure field, concentration field and porosity field.

Citation Information

Patent Citations

  • Pipeline turbulence chemical devitrification coupling numerical simulation method and system based on dynamic grid

    CN114974449A

  • Complex porous medium gridding method

    CN117911652A

  • Method for simulating pore-scale microorganism induced calcium carbonate precipitation process

    CN118098396A

  • Method for constructing pore-scale multi-field coupling model for salt precipitation caused by CO2 injection in saline water layer

    CN119560040A

  • Method and system for simulating transport of reactive solute in groundwater in three-dimensional fracture network

    WO2025060232A1