提高记忆力 点击: 2015-05-03
自适应网格方法概述
自适应网格方法概述
自适应网格方法是指计算中,在某些变化较为剧烈的区域,如大变形、激波面、接触间断面和滑移面等,网格在迭代过程不断调节,将网格细化,做到网格点分布与物理解的耦合,从而提高解的精度和分辨率的一种技术。自适应网格希望在物理解变动较大的区域网格自动密集,而在物理解变化平缓区域网格相对稀疏,这样在保持计算高效率的同时得到高精度的解。自适应网格技术主要有移动网格方法和局部细化或粗化的网格方法。近三十年来,自适应网格方法一直引起国际学术界和各类应用部门的高度重视,并且成为网格方法研究的热点问题,发展了很多方法,在一些领域应用非常广泛。
比如在成型过程模拟中,坯料遇到比较剧烈的变形时可以自动进行局部区域的网格细分,以提高这些部位计算的准确度,如图9-1所示。自适应网格技术对冲压成型是至关重要的,因为初始的冲压板材通常比较平坦、形状很简单,采用有限元网格离散化时,如果网格较粗,可能引起较大误差。但如果采用细密的有限元网格,将增加单元的总数,并且由于单元尺寸减小将降低极限时步长,增加计算的机时。虽然采用局部细分网格可以节省机时,但由于板料大变形和在模具中相对滑动,难以预测局部细分网格在初始状态板料上的位置,而且局部细分网格在前处理时也有很大麻烦。自适应网格技术刚好解决了这一问题,并在时间与精度上巧妙地取得了平衡。自适应网格技术提高了对零件的表面质量(表面缺陷、擦伤、微皱纹等现象)判断的准确性,并且可以节约大量的计算时间。
9.2 h-adaptive方法和r-adapdve方法
在LS-DYNA中,自适应网格划分方法可以分为两种:h-adaptive方法和r-adaptive方法。h-adaptive方法是指单元变形较大时,将单元细分为更小的单元以改善精度,目前仅适用于壳单元,主要用于金属成型模拟、薄壁结构受压屈曲等问题。
在h-adaptive方法中,某些单元分割为更小的单元以改善计算精度,如图9-2所示,薄壁方形梁屈曲分析采用的是一级自适应网格划分计算。LS-DYNA中采用自适应网格方法的目的在于使用有限的计算资源获得最大的计算精度。用户设置好初始网格和自适应划分级别后,程序根据需要将某些单元进行分割。虽然这种方法并不能完全解决求解过程中的误差,但与固定网格相比,可以使用较少的单元和计算资源来尽可能地提高求解精度。
h-adaptive方法中,某些单元由于精度需要细分为更小的单元,这个过程称为裂变。裂变后,新单元的边长尺寸是原来的1/2,通过各边中点以及单元质心,一个四边形单元可以分割为四个四边形单元,如图9-3所示。{一种基于历史信息的自适应动态网格作业调度方法}.
多重网格、自适应网格和无网格 (2011-08-03 09:46:28)
标签: 分类: 工作篇 校园
多重网格法简介(Multi Grid){一种基于历史信息的自适应动态网格作业调度方法}.
多重网格法是一种用于求解方程组的方法,可用于插值、解微分方程等。 从专业角度讲多重网格法实际上是一种多分辨率的算法,由于直接在高分辨率(用于求解的间隔小)上进行求解时对于低频部分收敛较慢,与间隔的平方成反比。就想到先在低分辨率(间隔较大)上进行求解,因为此时,间隔小,数据量小,进行松弛时的时空耗费小,而且收敛快,而且一个很重要的优点是在低分辨率上对初值的敏感度显然要低于对高分辨率的初值的要求。这一点是显而易见的,例如我们平时看一个很复杂的物体,在很远的地方,你可能就觉得它是一个点或一个球,但是在近处你就不能这么近似,或许发明多重网格法的人就是从这一基本生活常识发现的吧。{一种基于历史信息的自适应动态网格作业调度方法}.
多重网格法可以直接在低分辨率上以一个随意的初值进行计算,然后再进行插值,提高其分辨率,再在更高分辨率进行计算;也可以现在高分辨率以随意初值进行计算,得到一个结果,再将其限制(插值)到低分辨率去,再在低分辨率上进行解算,最终再从低分辨率经插值计算达到高分辨率。
有关多重网格法的资料可以到这里下载:
https://computation.llnl.gov/casc/people/henson/mgtut/ps/mgtut.pdf
多重网格技术(multigrid solver)
微分方程的误差分量可以分为两大类,一类是频率变化较缓慢的低频分量;另一类是频率高,摆动快的高频分量。一般的迭代方法可以迅速地将摆动误差衰减,但对那些低频分量,迭代法的效果不是很显著。高频分量和低频分量是相对的,与网格尺度有关,在细网格上被视为低频的分量,在粗网格上可能为高频分量。 多重网格方法作为一种快速计算方法,迭代求解由偏微分方程组离散以后组成的代数方程组,其基本原理在于一定的网格最容易消除波长与网格步长相对应的误差分量。该方法采用不同尺度的网格,不同疏密的网格消除不同波长的误差分量,首先在细网格上采用迭代法,当收敛速度变缓慢时暗示误差已经光滑,则转移到较粗的网格上消除与该层网格上相对应的较易消除的那些误差分量,这样逐层进行下去直到消除各种误差分量,再逐层返回到细网格上。
目前两层网格方法从理论上已证明是收敛的,并且其收敛速度与网格尺度无关
[哈克布思,1988]。多重网格法是迭代法与粗网格修正的组合,经过证明,迭代法可迅速地将那些高频分量去掉,粗网格修正则可以帮助消除那些光滑了的低频分量,而对那些高频分量基本不起作用。
在多重网格计算中,需要一些媒介把细网格上的信息传递到粗网格上去,同时还需要一些媒介把粗网格上的信息传递到细网格上去。限制算子Iih(i-1)h是把细网格i-1层上的残余限制到粗网格i层上的算子,最简单的算子是平凡单射,另
外还有特殊加权限制;插值算子Iih(i-1)h是把粗网格i层上的结果插值到细网格i-1层上的算子,一般采用线性插值或完全加权限制算子。
需要说明的是在多重网格迭代方法中,粗网格修正之前,细网格必须进行光滑迭代,以消除高频误差,使粗网格修正最有效地发挥其作用;在粗网格修正之后,不可避免的引入高频误差,所以也必须进行光滑迭代,不过高频误差能很快的通过光滑迭代消除。
多重网格,最开始是用来求解椭圆型方程的。其原理为:数值求解的误差可以展开成级数的形式,从级数的的形式我们可以看出误差的振动分量有很多频段,只要消除了这些频段的误差,整个解也就收敛了。而网格,我们则可以看成一种滤波器,不同尺度的网格可以滤掉不同频段上的误差。如果网格一定,那么对于某些误差来说,可以很快滤掉,对于与其频段不匹配的误差来说,这种网格可能完全失败而根本无法滤掉。于是,人们开始采用多重网格技术进行数值求解,这样可以很快的滤掉各个频段上的误差,从而加速求解。上面所说的是多重网格理论上的技术,而实行多重网格技术却还有很多困难,首要的困难粗糙网格的生成,对于结构网格来说这是比较容易的,只需要进行相应的采样即可,对于非结构网格,粗网格的构造要麻烦的多,所以我说多重网格技术也是一种网格生成技术。对于我们自己编程序来说,非结构网格是一个难点,生成了非结构网格,再形成多重网格更是一个难点,与其相比,数值格式的确很简单。对于双曲型方程的多重网格方法大家见到过没有?其实,这方面的资料特别的少,这主要是有双曲型方程的本性和多重网格法的原理决定的。目前来说,双曲型方程的多重网格法,在理论上还有很多问题要解决,与实际的工程应用还有很大距离。
多重网格对于椭圆型方程有比较完备的理论,尤其是对于线性椭圆型方程,其理论收敛速度为每步下降一个量级.对于双曲型方程,至今没有很完备的理论,最早是Brandtl,后来Ni应用于Euler方程求解,Jameson把该方法应用于他的Runge-Kutta显式推进技术,效率非常高.非结构网格,法国人走的比较快,采用聚合体技术,使得粗网格可以比较容易得到,收敛效果比较好
对于euler方程这种双曲方程,虽然没有完备的multigrid收敛理论,但是却已经应用比较长时间了(从Jamson算起)。好像做CFD的暂时先实用化了,不管理论上如何。Fluent里面对于非结构网格叶实现了凝聚式的多重网格。刘超群的那本多重网格书里面就有一个multigrid用于叶栅跨音速无粘计算的例子,记得是4层网格,FVM,Roe格式配合四阶龙格库塔推进。一般来说,似乎都用多重网格加速显示推进的,因为显示步长受限制,少而有隐格式配合多重网格的。记得好像在王保国的叶栅计算的书里面,提到了隐式推进的多重网格,不记得他实现了没有。不过SIMPLE算法配合多重网格其实就是一种隐格式的多重网格了。 Multi-grid是一种加速收敛技术,多为译‘多重网格' Multi-block是网格生成技术,多为译‘多块网格'
AMG(代数多重网格) 直接根据离散后的Matrix生成"COARSER" MATRIX, 和网格不发生直接关系.上面讨论的是几何为基础的多重网格法. 几何多重网格法一般在粗网格上直接构造守恒方程, 对合适的问题, 收敛会很快. 缺点是对复杂几何形状, 粗网格很难生成. AMG 收敛也很好而且不受网格限制. AMG已经被很多
CFD商用软件采用. 好象FLUENT就一直用AMG作为主求解器. 谁用过FLUENT的几何多重网格法?
一种新的并行代数多重网格粗化算法
<<计算数学 >>2005年03期 徐小文 , 莫则尧
近年来,受实际应用领域中大规模科学计算问题的驱动,在大规模并行机上实现代数多重网格(AMG)算法成为数值计算领域的研究热点.本文针对经典AMG方法,提出一种新的并行网格粗化算法--多阶段并行RS算法(MPRS).我们将新算法集成到了高性能预条件子软件包Hypre中.大量数值实验结果显示,新算法适合更广泛的问题,相对其他并行粗化算法,明显地改善了AMG并行计算的可扩展性.对三维27点格式有限差分离散的Poisson方程,在64个处理机上并行AMG求解,含8百万个未知量,新算法比RS3算法减少了近60的三维Poisson方程,近32万个未知量,在16个处理机上并行AMG-GMRES求解,新算法所需的迭代步数大约为其他粗化算法的一半,显示了很好的算法可扩展性.参考资料:
/retype/zoom/b7b19f1d6bd97f192279e9ba?pn=5&x=0&y=94&raww=200&rawh=70&o=png_6_0_0_144_360_225_79_892.979_1262.879&type=pic&aimh=70&md5sum=ec96ded41fd6151ffdd58237234cf279&sign=2ac0b135ed&zoom=&png=9574-20170&jpg=0-0" target="_blank">
在LS-DYNA中,自适应网格划分方法可以分为两种:h-adaptive方法和r-adaptive方法。h-adaptive方法是指单元变形较大时,将单元细分为更小的单元以改善精度,目前仅适用于壳单元,主要用于金属成型模拟、薄壁结构受压屈曲等问题。{一种基于历史信息的自适应动态网格作业调度方法}.
在h-adaptive方法中,某些单元分割为更小的单元以改善计算精度,如图9-2所示,薄壁方形梁屈曲分析采用的是一级自适应网格划分计算。LS-DYNA中采用自适应网格方法的目的在于使用有限的计算资源获得最大的计算精度。用户设臵好初始网格和自适应划分级别后,程序根据需要将某些单元进行分割。虽然这种方法并不能完全解决求解过程中的误差,但与固定网格相比,可以使用较少的单元和计算资源来尽可能地提高求解精度。{一种基于历史信息的自适应动态网格作业调度方法}.
h-adaptive方法中,某些单元由于精度需要细分为更小的单元,这个过程称为裂变。裂变后,新单元的边长尺寸是原来的1/2,通过各边中点以及单元质心,一个四边形单元可以分割为四个四边形单元,如图9-3所示。
模拟高度复杂流动的自适应网格算法
李椿萱, 杨弘炜
北京航空航天大学流体力学研究所, 北京, 100083
视频: 自适应网格划分
无网格法(Mesh-less method)
无网格方法(Mesh-less method)是在数值计算中不需要生成网格,而是按照一些任意分布的坐标点构造插值函数离散控制方程,就可方便地模拟各种复杂形状的流场。