有限单元法基本原理和数值方法_SPH法介绍

SPH法介绍

Smoothed Particle Hydrodynamics

c7d90dad1d05cf92467a73e68928bd77.png

基于网格的数值方法虽然已经有广泛的应用,但是在很多方面仍存在不足之处,比如在计算流体动力学的大变形、运动物质交界面、自由表面等问题时,由于网格产生畸变导致计算误差过大或无法进行,从而使其在许多问题的应用上受到限制。近年来,无网格法倍受关注,这种方法在许多应用中都优于传统的基于网格的有限元法、有限差分法以及有限体积法等数值方法。本文主要介绍光滑粒子流体动力学方法(SPH)。

数值计算方法通常可以分为基于网格的方法和无网格方法两种。通常对于物理控制方程的描述有两种基本方法:欧拉描述法和拉格朗日描述法。欧拉描述法是对空间的描述方法,其典型代表是有限差分法;拉格朗日描述法是对物质点的描述方法,其典型代表是有限元法。欧拉描述和拉格朗日描述对应着两种不同的区域离散化网格:欧拉网格和拉格朗日网格。针对不同类型的问题,这两种网格在数值方法中都得到广泛应用。

拉格朗日网格

881d84469e1b2c278c81f20166178849.gif

拉格朗日网格,基于拉格朗日网格的数值方法在整个计算过程中网格是固定附着于物质上的,网格会随着物质的运动而运动,所以在物质点上的所有场变量的整个时间历程都可以很容易地追踪,常见的方法如有限元法等。

基于拉格朗日网格方法的优点是:由于在相关的偏微分方程里不存在迁移项,所以程序在方案设计上会变得相对简单而且运行较快;由于只需在问题域内布置网格,问题域外不需要布置,所以计算效率很高;不规则或者复杂的几何形状可以用不规则的网格来处理。由于具有以上这些优点,拉格朗日方法得到广泛的应用,并且能成功地求解计算固体力学问题。

但是,基于拉格朗日网格的方法难以应用于具有极大网格变形的情况,因为其公式的形式是以网格为基础的,当网格变形太大的时候,公式的精度和求解都会受到很大的影响。另外,由于时间步长是由最小单元尺寸所控制,若网格太小就会影响计算的效率,甚至会导致计算失败。

欧拉网格

881d84469e1b2c278c81f20166178849.gif

相对于拉格朗日网格,欧拉网格刚好相反,它是固定在模拟对象所处的空间上,模拟对象在固定网格单元上运动。因此,在物质流过网格时,所有网格节点和单元依然固定在空间上而且不会随时间的改变而改变。通过模拟质量、动量和能量经过网格单元边界的通量,可以计算质量、速度和能量等等的分布。在整个计算过程中网格单元的形状和体积都保持不变。

由于欧拉网格在时间和空间上都是固定的,物体的大变形不会引起网格本身的任何变化,所以在以物质流动为主体的计算流体力学领域里,较为广泛的应用欧拉法。

但是,欧拉法依然有很多缺点。由于欧拉法不能用固定网格来追踪物质的运动,所以很难分析物质上固定点的场变量的变化情况而只能得到空间上固定的欧拉网格的场变量的变化情况;由于欧拉法追踪的是流过网格单元边界的质量、动量和能量的通量,所以自由表面、变形边界和运动物质交界面的位置就很难精确确定;由于欧拉法需要在整个计算区域上都覆盖网格,所以有时为了提高计算效率而使用较粗糙的网格,这样就会降低离散化区域的求解精度。

局限性

881d84469e1b2c278c81f20166178849.gif

传统的基于网格的数值方法如有限差分法(FDM)、有限体积法(FVM)和有限元法(FEM)已经广泛地应用在计算流体力学和计算固体力学的各个领域中,是目前进行区域离散化和数值离散化模拟的主要方法。但是基于网格的数值方法在很多方面仍存在不足之处,比如在计算流体动力学中的大变形、运动物质交界面、自由表面等问题时,由于网格产生畸变导致计算误差过大或无法进行,使其在许多问题的应用上受到限制。

在基于网格的数值方法中,数值模拟的先决条件就是在问题域生成网格。对于基于欧拉网格的方法,在固定的欧拉网格上要精确确定自由表面、变形边界、运动交界面和不均匀物质之间的位置是一项非常困难的工作。并且欧拉方法也不适用于研究如粒子流动这类问题。即需要在固定的物质体内监控材料特性的问题。对于拉格朗日网格法如有限元法,进行模拟前必须要在研究对象上建立网格,这项操作常常占用很大的计算工作量。当所研究对象是一系列离散的物质点时,同样不适合使用基于网格的方法,用连续的基于网格的方法对这些离散系统进行模拟通常不是好的选择。

在计算大变形问题时,比如高速碰撞、金属加工成型、动态裂纹扩展、流固耦合和应变局部化等,基于网格的方法遇到的困难更大。原因是发生大变形时,网格畸变过大,使得计算中断,有限元方法通常采用单元“销蚀”法或重分网格技术来克服这种困难。但是单元“销蚀”法本身缺乏物理依据,纯粹是为了使计算进行下去的一种数值手段。而网格重分技术在节点重新分配物理量时,很难保证系统动量、能量守恒,因而导致计算的精度下降。此外,网格重分技术不是很容易实现,为了更好地解决大变形问题,必须对网格有新的处理方法或去除网格,所以各种无网格方法相继被提出来。

无网格方法

881d84469e1b2c278c81f20166178849.gif

无网格方法产生于三十多年以前,当时发展很慢,直到近几年,由于无网格方法的近似函数不依赖于网格,在分析涉及大变形的问题中被认为优于传统的基于网格的有限差分法和有限元法,才受到了众多研究者的高度重视,成为国际计算仿真界的研究热点之一,并得到了迅速的发展。

无网格方法的主要思想是:通过使用一系列任意分布的节点(或粒子)来求解具有各种边界条件的积分方程或偏微分方程组,从而得到精确稳定的数值解,这些节点或粒子之间不需要网格进行连接。由于无网格法采用基于点的近似,可以彻底或部分地消除网格,不需要网格的初始划分和重构,因此不仅可以保证计算的精度,而且可以减小计算的难度。经过几十年的研究,目前已发展了十余种无网格方法。

光滑粒子动力学方法

881d84469e1b2c278c81f20166178849.gif

光滑粒子流体动力学(SPH-Smoothedparticle hydrodynamics)方法是近30年发展起来的一种新的纯拉格朗日无网格粒子法,它最初是用于解决三维开放空间的天体物理学问题,现已被广泛地研究和扩展,并被应用于具有材料强度的动态响应问题和具有大变形的流体动力学问题。

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
new_sph2d.rar是一个文件压缩包,里面包含了一段用于模拟二维流体力学问题的程序代码。该程序主要基于SPH(Smoothed Particle Hydrodynamics)算,该算是一种基于粒子的无网格方法,主要用于求解连续介质力学问题。该程序通过在二维空间中运用SPH,计算粒子之间的相互作用力,从而模拟出流体在给定条件下的运动、变形、旋转等物理现象。 new_sph2d.rar中的程序代码主要分为两部分:核心模块和辅助模块。核心模块主要包含了SPH中各个子模块的实现,如粒子初始化、加速度计算、密度更新、速度更新、压强计算等。辅助模块主要包含了数据输出模块、图形绘制模块以及输入参数的控制模块。通过这些辅助模块的调用和控制,用户可以对程序进行参数设置、数据输出以及流体模拟结果的可视化展示。 new_sph2d.rar的使用需要具备一定的编程和流体力学模拟知识。用户需要了解SPH的原理和流体力学基础知识,同时具备一定的编程能力。在使用该程序时,用户可以根据自己的需求进行参数设置和修改,以获得所需的流体模拟结果。 总之,new_sph2d.rar是一个用于模拟二维流体力学问题的程序,通过SPH模拟粒子之间的相互作用力,获得流体的运动、变形和旋转等物理现象。同时,该程序需要具备一定的编程和流体力学模拟知识,以较好地应用于实际问题求解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值