M2Di: Concise and efficient MATLAB 2‐D Stokes solvers using the Finite Difference Method

M2Di: Concise and efficient MATLAB 2‐D Stokes solvers using the Finite Difference Method
复制标题

M2Di:使用有限差分法的简洁高效的 MATLAB 2-D Stokes 求解器

DOI:
--
复制
发表时间:
2017
期刊:
影响因子:
--
通讯作者:
S. Schmalholz
S. Schmalholz
中科院分区:
--
文献类型:
--
作者:
L. Räss;T. Duretz;Y. Podladchikov;S. Schmalholz

文献摘要

被引文献

相似文献

近年来,多物理场模拟工具的发展反映了地球科学中耦合过程研究的兴趣日益增长。这些工具的核心应该依赖于快速而强大的机械求解器。在这里,我们提供了M2Di,这是一套基于有限差分离散的二维线性和幂律不可压缩粘性流的例程。二维代码以简洁的矢量化MATLAB方式编写,使用标准个人计算机在10002个网格点上求解线性粘性流的时间为22 s。我们提供了应用实例,从精细分辨的晶体熔体动力学,非均匀幂律粘性流体的变形到柱坐标下地幔流动的瞬时模型。该例程进行了验证,对线性粘性流动的解析解与高度可变的粘度和幂律粘性折叠和颈缩的解析和数值解进行比较。在幂律的情况下,皮卡德和牛顿迭代计划的实施。对于线性Stokes流和Picard线性化,离散化结果在笛卡尔网格上得到对称正定矩阵算子,网格间距可以是规则的,也可以是可变的,从而可以优化求解过程。对于牛顿线性化,矩阵算子不再是对称的,并提供了一个适当的解决方案。线性和幂律斯托克斯流的性能报告最后分析的壁时间。所有MATLAB代码都提供了,可以很容易地用于教育和研究目的。M2Di例程可从Bitbucket和洛桑大学科学计算组网站获得,也是本文的补充材料。
Recent development of many multiphysics modeling tools reflects the currently growing interest for studying coupled processes in Earth Sciences. The core of such tools should rely on fast and robust mechanical solvers. Here we provide M2Di, a set of routines for 2‐D linear and power law incompressible viscous flow based on Finite Difference discretizations. The 2‐D codes are written in a concise vectorized MATLAB fashion and can achieve a time to solution of 22 s for linear viscous flow on 10002 grid points using a standard personal computer. We provide application examples spanning from finely resolved crystal‐melt dynamics, deformation of heterogeneous power law viscous fluids to instantaneous models of mantle flow in cylindrical coordinates. The routines are validated against analytical solution for linear viscous flow with highly variable viscosity and compared against analytical and numerical solutions of power law viscous folding and necking. In the power law case, both Picard and Newton iterations schemes are implemented. For linear Stokes flow and Picard linearization, the discretization results in symmetric positive‐definite matrix operators on Cartesian grids with either regular or variable grid spacing allowing for an optimized solving procedure. For Newton linearization, the matrix operator is no longer symmetric and an adequate solving procedure is provided. The reported performance of linear and power law Stokes flow is finally analyzed in terms of wall time. All MATLAB codes are provided and can readily be used for educational as well as research purposes. The M2Di routines are available from Bitbucket and the University of Lausanne Scientific Computing Group website, and are also supplementary material to this article.