刘洪地质地球所的博客分享 http://blog.sciencenet.cn/u/liuhong59 地球物理:用量子力学和平均场描述的多尺度系统

博文

哪种有限差分算法,速度又高、精度又高、适用性又强且稳定

已有 11188 次阅读 2013-8-7 08:46 |系统分类:教学心得

      地震资料处理解释群里有人问:“想做一个三维全波场数值模拟软件,包括声波介质、弹性波介质、黏弹性介质,还有各向异性,目前哪种有限差分算法,速度又高、精度又高、适用性又强且稳定”
      对这个问题,张宇做了很好的工作,得到了Hoffman奖。我的粗浅看法如下,供讨论。
      对“精度高”的需求,解决方案之一是差分阶数和格式(隐格式、显格式),裴正林的书有解释。
      对“速度高”的需求,解决方案依赖于模型大小、硬件、软件、成本以及研发时间。对单炮模拟,二维,弹性波模拟大学本科毕业设计,可望用单机实现。三维,如果不限时间,且三维模型尺度跨度(模型长度与单元长度比值)不大,可用单机CPU实现。如果希望在可容忍的时间内模拟单炮(1个小时),三维模型尺度跨度比较大,也许需要考虑GPU实现。在多炮情况下,如果不考虑成本,CPU集群是个解决方案。GPU实现也有一些难题,其中CPU与GPU之间的PCIE总线,往往是最后的瓶颈。刘红伟和李博做了很多研究。具体模型和计算时间参数,依赖与硬件和CUDA版本,细节会有变化。目前刘红伟的GPU声波三维模拟正通过吉星吉达公司和中科联衡在南阳、库尔勒推广,实践中还有少量问题。
      有限差分算法,相同阶数隐格式精度高一些,如果在CPU上实现,用隐格式好。但隐格式在GPU上实现,计算速度不高;用更高阶显格式,与相同精度隐格式比,速度更快。
      三维全波场数值模拟软件,包括声波介质、弹性波介质、黏弹性介质,还有各向异性,在选择差分格式时,可能还需要考虑单元存放方式;一种是传统的螺旋坐标存储,一种是多尺度(加密)网格存储,前者算大模型时会有一定困难,后者也许可适应大模型,显格式(甚至积分解)对后者有利,但还需要解决局部网格之间的数据交换。目前对多尺度网格,快速多极算法是一个有潜力的研究方向。
      快速多极算法,是基于积分解的算法,用来解多体问题和边界积分方程,可使的矩阵向量乘法从N*N,小降到NlogN。原来由V Rokhlin、CW Chew等人提出和发展,广泛用于天文、材料,据说可以与快速Fourier算法的地位一样高。近两年,我们对此关注,试图把他们的语言和问题与我们的语言和问题对上号。目前在我们领域的研究还很不成熟,需要在基础上创新,不仅仅是技术。这个方法大致的特点是将微分方程的积分解(格林函数)分为远区和近区,矩阵向量相乘时,近区直接在空间域乘,远区在波数域乘,但远区要展开成多极子,并截断。
 
 
      根据1楼回复,第3段做了一些修改。
      对“精度高”的需求,解决方案之一是空间导数的差分逼近的阶数和格式:隐格式、显格式,前者又称为空间导数的紧有限差分格式(compact finite-difference schemes )。时间方向的隐格式需要大矩阵求逆,实践中目前还较少采用。时间方向的显格式,发展了各种辛格式方法,还可能利用快速多极算法。

 



https://blog.sciencenet.cn/blog-804650-714782.html

上一篇:给e起个中文译名“易”?
下一篇:从作用量到多尺度计算
收藏 IP: 159.226.119.*| 热度|

4 夏新宇 杨正瓴 张明武 彭真明

该博文允许注册用户评论 请点击登录 评论 (10 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-23 19:34

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部