# Fourier Neural Operator for Fluid Flow in Small-Shape 2D Simulated Porous Media Dataset
## 2 Problem Setup with Governing Equations  
The flow of fluids through porous media can be effectively described in terms of: (i) the Darcy (or momentum) law, (ii) mass conservation, (iii) energy drive, and (iv) case-specific rock-fluid correlations including compressibility and saturation equations, where more than one fluid is involved (e.g., gas, oil and/or water) [24]. Energy conservation can in many cases be disregarded if isothermal conditions are considered. However, for reservoir systems in which temperature changes over time, such as for surface water injected into subsurface reservoirs, energy conservation cannot be disregarded. For a single, incompressible fluid phase with constant viscosity in a 2D linear and isothermal system, [PERSON]'s law, assuming steady-state flow and ignoring gravitational effects, can be expressed as [24]:  
\[k^{-1}\mu u+\
abla p=0 \tag{1}\]  
where \(k\) = permeability, \(\mu\) = fluid viscosity, \(u\) = Darcy velocity, and \(\
abla p\) = gradient pressure \((\frac{3p}{3x},\ \frac{3p}{3y})\). The formulation for the mass conservation law (also known as the continuity equation) is [24]:  
\[\
abla.u=f \tag{2}\]  
here, \(\
abla.u=\) divergence velocity (\(\frac{\partial u_{x}}{\partial x}+\frac{\partial u_{y}}{\partial y}\)), and \(f=\) source term. By combining Equations (1) and (2) and assigning values to the viscosity and source term of one and zero, respectively, and assuming the permeability to be a diagonal tensor in the isotropic medium, the below is obtained [24]:  
\[\
abla.(-k\
abla p)=0 \tag{3}\]  
In a homogeneous porous medium, \(k\) is constant, so the formulation becomes [24]:  
\[k(\
abla.\
abla p)=k\Delta p=k(\frac{\partial^{2}p}{\partial x^{2}}+\frac{ \partial^{2}p}{\partial y^{2}})=0 \tag{4}\]  
where \(\Delta p=\) Laplace pressure. A heterogeneous porous medium indicates that it is not homogeneous, and thus formation-related properties can have multiple scales. For example, in petroleum reservoirs, there may be numerous fractures (connected or disconnected) with different lengths, whose width is much smaller than the domain size. For a heterogeneous medium, Equation (3) changes to [24]:  
\[\frac{\partial(k\frac{\partial p}{\partial x})}{\partial x}+\frac{\partial(k \frac{\partial p}{\partial y})}{\partial y}=0 \tag{5}\]  
To solve PDEs, Boundary Conditions (BCs) and Initial Conditions (ICs) need to be specified as additional constraints on the system. The main types of BCs applied are those defined by: (i) Dirichlet (the first kind), (ii) Neumann (the second kind), and (iii) Robin or Dankwerts (the mixed or third kind). In the first type, values are assigned to the certain dependent variable(s) (e.g., pressure) while the derivatives of the certain dependent variable(s) are known in Neumann's condition. [PERSON]'s BC is a weighted combination of the first two BCs. An IC refers to a value (or a correlation) of a parameter at time \(t=0\). For the system analyzed here, the computational domain was defined as \(\Omega=\) [0,1] \(\times\) [0,1], representing a square 2D domain. [PERSON]'s condition was applied on two sides: \(p=100\) (left-side boundary) and \(p=0\) (right-side boundary). [PERSON]'s condition was applied to the other two sides: \(\partial p=0\) (top and bottom sides). The grid selected to define each square system consisted of a 30 \(\times\) 30 uniform mesh with the option to incorporate (or not) horizontal and/or vertical fractures. The permeability is defined as the ability of a rock to permit fluids to pass through it. The permeability in fractures is generally much higher than that of the matrix. In this research, the permeability of the matrix (\(K_{\text{m}}\)) and fracture (\(K_{\text{f}}\)) were assigned fixed values of 1 and 1000 millidarcy (md), respectively. The number of fractures (\(N_{\text{f}}\)) available in a porous medium was set to 5, and fractures are allowed to intersect with each other. The length of individual fractures was randomly distributed.