Introduction to Aspects of Multiscale Modeling as Applied to Porous Media Part II Todd Arbogast Department of Mathematics and Center for Subsurface Modeling, Institute for Computational Engineering and Sciences (ICES) The University of Texas at Austin
A Multiscale System: Natural Porous Media
Scaling and Multi-Scale Phenomena Complex physical phenomena almost always occur on widely varying scales. A continuing challenge in mathematical and computational modeling is to handle all the relevant scales properly. Fine scale effects can and often do have a profound influence on coarser scales, so it is imperative to express each modeled phenomenon appropriately on the scale of interest, and to properly account for their interactions. Examples: Porous media Composite materials Crystallography/phase transformations Atmospheric modeling Turbulence in free fluids Chaotic systems
A Multitude of Scales Fault Rock Facies ( 3 m) ( 3 m) Fracture ( 4 m) Rock Facies Shale ( m) ( 3 m) Vugs ( m) Aquifer or petroleum reservoir ( 3 4 m) Rock Grains and Voids ( m) Problem: Features on the scale of affect behavior on scales of 4. We have a scale range of 9! Computational limitations prevent us from resolving -scale features over 4 -scale distances (in 3-D).
Millimeter-Scale Natural Heterogeneity in Permeability K Arco thin slice data, mm scale (ranges by a factor of 4)
Meter-Scale Natural Heterogeneity in Permeability K Log X Permeability of Lawyer Canyon Log Z Permeability of Lawyer Canyon -. -.9 -.6-3.3-4. -4.7 -.4-6. -. -.9 -.7-3.4-4. -4.9 -.6-6.3 Lawyer Canyon data, meter scale (ranges by a factor of 6 ) Problem: Fine-scale variation in K (the permeability) leads to fine-scale variation in the solution (u, p).
The Problem of Scale Suppose K varies on the scale ǫ. Then p = O(ǫ ) and D k p = O(ǫ k ) Typical error estimates. From polynomial approximation theory, the best approximation on a finite element partition T h is inf p q C p k h k C q P k (T h ) ( ) k h If h > ǫ, this is not small! To resolve p, we need a spatial discretization h < ǫ. That is, we must resolve K in some way! ǫ
The Brute Force Approach The computational load is excessive for a fully resolved h < ǫ and fully coupled system. Small size: 3 3 m Permeability accurate to m (perhaps) = 8 resolution needed. About chemical species in 3 phases At least realizations for uncertainty quantification At least 3 time steps for 4 years simulation = 6 times 8 resolution needed. Conclusion. We must solve the system as fast as possible! Remark. There are additional fine-scale features that we would like to resolve if it were possible. Merely waiting for computer technology to improve will not solve the problem!
Volume Averaging
Effective Properties We want to solve the problem on a coarse grid. Upscaling: The system is represented on a larger scale by defining average or effective or macroscopic parameters in place of the true parameters (in our case, K). Naive averaging: Consider -D. Select ǫ > as an averaging window, define the averages ū(x) = ǫ p(x) = ǫ x+ǫ/ x ǫ/ x+ǫ/ x ǫ/ u(ξ) dξ f(x) p(ξ) dξ k(x) = ǫ = ǫ and upscale the micromodel to the macromodel { u = kp u = f = ū = ǫ ū = f x+ǫ/ x ǫ/ x+ǫ/ x ǫ/ x+ǫ/ Fundamental problem in upscaling: Nonlinearities: average of f(x) f(average of x) f(ξ) dξ k(ξ) dξ x ǫ/ kp? = k p
Simple Averaging of the Data Replace K by some local average K, which varies on a larger scale, so the coarse grid solution is accurate..4..8.6.4...4.8.6.4...4.6.8 k(x) = ǫ The macromodel: x+ǫ/ x ǫ/ ū = k p ū = f ū ν = k(ξ) dξ in Ω in Ω on Ω The questions are: Is this the right way to average k? Is (ū, p) (u, p)? That is, is k p k p?
What is the correct average? Arithmetic averaging: K = n Harmonic averaging: K = Simple Averaging of the Data ( n n i= n i= K i. K i ). The reciprocal of the average of the reciprocals. Emphasizes the small values. Something else? What?
Simple Averaging of the Data 3 Consider a small -D problem. Log-permeability and local averages:............ 3 3 8 6 4 4 6 8 8 6 4 4 6 8 Computed pressure: 3 3 3 3 3 3 3 3 3 3 3 3 3 3 8 8 arithmetic average 8 8 harmonic average Question: Which average is better? What is the correct average?
-D Solution along Layers p = k k p = Let k take on values as above, and consider the problem u =, < x <, < y < u = k p p(, y) = and p(, y) = The solution is p(x, y) = x, u =, and u (x, y) = The average flux is ū = k = (k + k )/. k, y >. k, y <. Equivalent Solution: p and ū solve the same problem with k in place of k. The arithmetic average is therefore the correct average along layers!
-D Solution across Layers p = k k p = Let k take on values as above, and consider the problem The solution is p(x, y) = u =, < x <, < y < u = k p p(, y) = and p(, y) = x k/k, x <. ( x) k/k, x >., u =, and u (x, y) = k, where k = /(/k + /k ) is the harmonic average. The average flow is fixed ū = k. Equivalent Solution: p = x and ū solve the same problem with k in place of k. The harmonic average is therefore the correct average across layers!
Microscale Averaging of the Solution Over a small region (which will become a grid element), solve the problem of unit flow in each direction. p = p = h Compute the average velocity ū in the direction of flow, ū = u dy = u dy, right face left face and define k by u = k p: ū = k (/h) = k = hū. Do this for both directions. Remark: This is a computer simulation of Darcy s original experiment!
We get a tensor for k: Microscale Averaging of the Solution Question: Why is k diagonal? k = ( k k Closure assumption: To get the local solution, we imposed a unit pressure drop in a certain direction. That is, we imposed boundary conditions, which are not seen in the true flow. We call this assumption a closure assumption. It is the source of our upscaling error. )
Microscale Averaging of the Solution 3 In our small -D problem, we obtain the following. Log-permeability and x and y local averages:............ 3 3 8 6 4 4 6 8 8 6 4 4 6 8 Computed pressure: 3 3 3 3 3 3 3 3 3 3 3 3 3 3 8 8 computed average 8 8 harmonic average Relative errors: Arithmetic.43, Harmonic.4, Computational.8.
Anisotropy Locally the medium is isotropic (i.e., the same in all directions). However, k should be a full tensor! That is, k is anisotropic. k = ( k k k k ) Remark: It is not so easy to quantify this anisotropy computationally. What BCs should we impose?