执行水下爆炸的数字模拟的系统和方法技术领域
本发明总的涉及计算机辅助工程分析中使用的方法、系统和软件产品,更具体地,
涉及执行水下爆炸的有效数字模拟的方法。
背景技术
有限元分析(FEA)是使用数字技术的计算机执行的方法,用于寻找表示复杂系统
(例如三维非线性结构设计和分析)的偏微分方程式的合适解。FEA源于在民用和航空工程
中解决复杂弹性和结构分析问题的需要。随着计算机技术的进步,FEA已经成为辅助工程师
和科学家在改进结构设计(例如,汽车、飞机等)中做出决策的重要工具。当将FEA应用于时
域中解决物理问题或事件时,它被称为时间推进模拟。一般来说,时间推进模拟包括多个求
解周期。作为特定时间的总模拟的快照,在每个求解周期获得FEA结果或者解。
随着FEA的普及,FEA的使用已经适于模拟更加复杂的物理现象,例如,由于水下爆
炸的流体特性。为了数字模拟这样的特性,优选使用被称为基于任意拉格朗日-欧拉
(Arbitrary Lagrangian-Eulerian,ALE)的有限元分析方法。
使用基于ALE的FEA方法来执行水下爆炸的数字模拟的常见做法是,由于计算资源
的限制,仅对流体域的有限部分进行建模。源于流体域内的元应力波,作为爆炸的结果,将
会在FEA模型的边界处被反射。当边界被建模得离爆炸源太近时,这样的应力波反射引起不
正确的模拟结果。改正这种问题/缺点的现有技术的方法是放大FEA模型,或者在有限元模
型的边界应用人工法向和剪切应力,以补偿这种应力波反射的影响,虽然这种现有技术的
方法可以减少一些影响,但它不能消除它们。此外,现有技术的方法需要不容易实施的许多
特别技术。
因此,期望具有执行水下爆炸的时间推进数字模拟以避免上述缺点的改进系统和
方法。
发明内容
公开了执行水下爆炸的时间推进数字模拟的系统和方法。根据一方面,在计算机
系统中定义和接收水下爆炸源和有限元分析(FEA)模型的特征,FEA模型包含由多个有限元
连接的多个节点,多个有限元表示围绕爆炸源的流体域。基于任意拉格朗日-欧拉(ALE)的
有限元分析(FEA)应用模块被安装在计算机系统中。由于几何对称,FEA模型可表示流体域
的仅一部分。
位于流体域的初始外边界上的节点和元素分别被识别为初始边界节点和初始边
界元素。然后在初始边界节点和初始边界元素之间的流体域的初始外边界外,创建新边界
节点和新边界元素的一个额外层。新边界元素的尺寸使得,没有任何新边界元素比初始边
界元素的最小的那一个更小。每一个新边界元素/节点与作为对应的主元素/节点的初始边
界元素/节点之一相关联。
在时间推进数字模拟中,使用多个时间步长中预定持续时间的修改的FEA模型,获
得作为水下爆炸的结果的模拟流体特性,水下爆炸源于爆炸源。
在时间推进模拟的每个时间步长,采用基于ALE的FEA模型,为除了新边界元素的
所有元素计算模拟流体特性。然后计算的初始边界元素的流体特性被保存在各自的查找表
中,每个初始边界元素一个表。每个查找缓存都被配置为:为预定数量的时间步长、以先入
先出(FIFO)的方式存储所计算的流体特性。
通过采用计算的爆炸波从对应的主元素到每个新边界元素的传播时间,对对应的
主元素的查找缓存内存储的流体特性进行插值,确定每个新边界元素的模拟流体特性。
通过以下结合附图对具体实施方式的详细描述,本发明的其他目的、特征和优点
将会变得显而易见。
附图说明
参照以下的描述、后附的权利要求和附图,将会更好地理解本发明的这些和其它
特征、方面和优点,其中:
图1A-1B是根据本发明的一个实施例的阐述执行水下爆炸的时间推进数字模拟的
示例性过程的共同流程图。
图2是源自爆炸源的示例性水下爆炸的正视图;
图3A-3C是根据本发明的一个实施例的表示爆炸源的流体域和位置的示例性FEA
模型的示意图;
图4A是根据本发明的一个实施例的可用于表示二维空间中的流体的示例性4-节
点四边形有限元的示意图;
图4B是根据本发明的一个实施例的可用于表示三维空间的流体的示例性8节点六
面体的有限元的示意图;
图5是根据本发明的一个实施例的爆炸压力与时间的示例性关系的X-Y曲线图;
图6示出了根据本发明的一个实施例的创建示例性FEA的新边界节点/元素的额外
层的顺序的一系列示意图;
图7A-7B是根据本发明的实施例的将新边界节点/元素与对应的主节点/元素示例
性关联的示意图;
图8是根据本发明的实施例的示例性查找表的数据结构的示意图;
图9是根据本发明的实施例的时间推进数字模拟的持续时间的示例滑动时间窗口
的示意图;以及
图10为表示示例性计算机的主要部件的功能图,本发明的实施例可以在其中实
现。
具体实施方式
首先参照图1A-1B,它共同示出了根据本发明的实施例的执行水下爆炸的时间推
进数字模拟的示例性过程100。过程100可以在软件(例如,基于ALE的FEA应用模块)中实施,
并优选地参照其它附图理解。
图2描绘了具有爆炸波(以虚线圆示出)的爆炸源(示为实心点)的正面图,爆炸波
传播通过示例性水下爆炸中的流体域。这样的水下爆炸的数字模拟可以使用本发明的一个
实施例来进行。
通过在动作102中、在计算机系统(例如,图10的计算机系统1000)中接收水下爆炸
源和有限元分析(FEA)模块的特征,开始过程100,FEA模型表示爆炸源周围的流体域,计算
机系统上安装有基于任意拉格朗日(ALE)的FEA应用模块。
FEA模型包含由多个有限元连接的多个节点。具有爆炸源312的第一示例性FEA模
型310在图3A中示出。可替代地,由于几何对称,具有爆炸源322-332的第二和第三FEA模型
320-330分别在图3B和图3C中示出。为了说明的简单起见,这些FEA模型310-330在二维中画
出。本领域的普通技术人员将知道,FEA模型可以以三维绘制。
可以在示例性FEA模型中使用的示例性有限元在图4A-4B中示出:二维的4节点四
边形元素410和三维的8节点六面体有限元420。
水下爆炸源的特征至少包括爆炸源(例如,图3A-3C的爆炸源313、322、332)的位置
和爆炸波的速度和压力。图5是根据本发明的一个实施例的由于特定位置上的爆炸、压力
504与爆炸压力500的时间502的示例性曲线的X-Y曲线图。时间是零或t0时,爆炸压力500等
于初始环境压力P0520(例如,在开放空间中的大气压力),并且将保持不变,直到时间t1。爆
炸压力500然后跳转到峰值压力P1512,其对应于当爆炸波到达特定位置的时刻。峰值压力
P1512的幅度是特定位置和爆炸源之间的距离与爆炸源的质量的函数。爆炸压力500随后下
降。根据传输介质的类型(例如,空气、水)与特定位置,爆炸压力500的尾部部分514可以以
各种形式衰减。
返回参照过程100,在动作104,这些节点和位于流体域的初始外边界(即,FEA模型
的边界)上的有限元被分别识别为初始边界节点和初始边界元素。图6示出了示例性FEA模
型600,具有初始边界节点612(实心点)和初始边界元素614(较淡的阴影元素)。接着,在动
作106中,新边界节点622的一个额外层被创建,以形成初始边界节点612和新边界节点622
之间的新边界元素624(较深的阴影元素)的一个层。新边界元素624的尺寸使得,没有任何
新边界元素624比初始边界元素614的最小的一个更小。
在动作108中,每一个新边界元素与作为其主元素的最接近的相邻初始边界元素
相关联,每一个新边界节点与作为其主节点的初始边界节点的最接近的一个相关联。
节点关联的实施例在图7A示出,新边界节点702与作为其主节点的第一初始边界
节点712相关联。第二初始边界节点714是三个新边界节点704a-704c的主节点。此外,第三
初始边界节点716是新边界节点706的主节点。图7B示出了示例的元素关联。第一初始边界
元素732是新边界元素722的主元素。第二初始边界元素734是三个新边界元素724a-724c的
主元素。第三初始边界元素736是新边界元素726的主元素。
然后,在动作110,通过使用多个时间步长中预定持续时间的修改的FEA模型(即,
具有新边界元素的额外层的初始FEA模型)来执行时间推进数字模拟,获得作为水下爆炸的
结果的模拟流体特性,水下爆炸源于爆炸源。持续时间可以由用户或者由基于ALE的FEA应
用模块中的特征预先确定。在一个实施例中,用户可以通过输入值(例如,0.1秒、0.5秒等)
设置模拟的持续时间。在另一个实施例中,应用程序模块可具有默认值(例如,0.25秒,0.75
秒等)。在又一个实施例中,应用程序模块可具有选项,以检测特定的结束条件(例如,爆炸
波已经衰减低于阈值,等等)。
接着,在动作112,为了避免每次爆炸波(应力波)从初始外边界反射,以下操作/动
作由基于ALE的FEA模块执行。在动作112a,为除了新边界元素的所有元素计算模拟流体特
性。换句话说,初始FEA模型中的所有有限元像内部有限元那样被处理,因此没有爆炸波/应
力波的反射将会发生。模拟流体特性至少包括每个有限元的元素应力、元素应变和节点速
度。对于具有非线性材料属性的有限元,模拟流体特性进一步包括用于重构非线性事件(例
如,装卸路径)的元素历史变量。
在动作112b,所计算的初始边界元素和节点的模拟流体特性被保存到各自的查找
表中,每个初始边界元素一个表。每个表都被配置为:为预定数量的时间步长、以先入先出
(FIFO)的方式存储所计算的流体特性。图8示出了查找表的示例性数据结构。为预定数量的
时间步长(例如,步骤t、t-Δt、t-2Δt、…、t-nΔt)存储元素应力、元素应变、节点速度和可
选元素历史变量形式的流体特性。“t”表示当前模拟时间,而Δt表示每个时间步长的大小。
“n”是整数。在本实施例中,预定数量为“n+1”。
图9中所示的FIFO表包括时间推进模拟的持续时间的时间滑动窗口。查找表的大
小取决于预定数量的时间步长,这可以通过基于ALE的FEA应用模块中的某些特征(例如,默
认值、用户定义的值,等)来确定。本领域的普通技术人员将会知道,滑动窗口为预定数量的
时间步长保持计算结果,该预定数量的时间步长相对模拟时间(t)向前移动。换句话说,随
着模拟在时间上向前推进,最新计算的结果被存储到查找表中,而最旧的保存结果被移除
(即,先入先出)。
在动作112c,计算爆炸波从对应的主元素到每个新边界元素的传播时间。一个示
例性方案是通过声音在流体中的速度来划分这两个元素(即,主元素和每一个新边界元素)
之间的距离。由于主元素和每一个新边界元素可位于不与爆炸源对准的位置,距离计算可
以包括考虑爆炸波和主元素的方向之间的相对角度。
最后,在动作112d,通过采用计算的爆炸波传播时间,对对应的主元素的查找表的
之前存储的模拟流体特性进行插值,确定每个新边界元素的模拟流体特性。
根据一方面,本发明涉及一个或多个能够执行在此描述的功能的计算机系统。计
算机系统1000的例子在图10中示出。计算机系统1000包括一个或多个处理器,例如处理器
1004。处理器1004连接到计算机系统内部通信总线1002。关于该示范性的计算机系统,有各
种软件实现的描述。在读完这一描述后,相关技术领域的人员将会明白如何使用其它计算
机系统和/或计算机架构来实施本发明。
计算机系统1000还包括主存储器1008,优选随机存取存储器(RAM),还可包括辅助
存储器1010。辅助存储器1010包括例如一个或多个硬盘驱动器1012和/或一个或多个可移
除存储驱动器1014,它们代表软盘驱动器、磁带驱动器、光盘驱动器等。可移除存储驱动器
1014用已知的方式从可移除存储单元1018中读取和/或向可移除存储单元1018中写入。可
移除存储单元1018代表可以由可移除存储驱动器1014读取和写入的软盘、磁带、光盘等。可
以理解,可移除存储单元1018包括其上存储有计算机软件和/或数据的计算机可读媒介。
在可选实施例中,辅助存储器1010可包括其它类似的机制,允许计算机程序或者
其它指令被装载到计算机系统1000。这样的机制包括例如可移除存储单元1022和接口
1020。这样的例子可包括程序盒式存储器和盒式存储器接口(例如,视频游戏设备中的那
些)、可移除存储芯片(例如可擦除可编程只读存储器(EPROM))、通用串行总线(USB)闪存、
或者PROM)以及相关的插槽、以及其它可移除存储单元1022和允许软件和数据从可移除存
储单元1022传递到计算机系统1000的接口1020。通常,计算机系统1000由操作系统(OS)软
件控制和管理,操作系统执行例如进程调度、存储器管理、网络连接和I/O服务。
可能还设有连接到总线1002的通信接口1024。通信接口1024允许软件和数据在计
算机系统1000和外部设备之间传递。通信接口1024的例子包括调制解调器、网络接口(例如
以太网卡)、通信端口、个人计算机存储卡国际协会(PCMCIA)插槽和卡等等。
计算机1000基于一组特定的规则(也就是,协议)通过数据网络与其它计算设备通
信。通用协议的其中一种是在互联网中通用的TCP/IP(传输控制协议/互联网协议)。通常,
通信接口1024将数据文件组合处理成较小的数据包以通过数据网络传输,或将接收到的数
据包重新组合成原始的数据文件。此外,通信接口1024处理每个数据包的地址部分以使其
到达正确的目的地,或者中途截取发往计算机1000的数据包。
在这份文件中,术语“计算机程序媒介”和“计算机可用媒介”都用来指代媒介,例
如可移除存储驱动器1014和/或设置在硬盘驱动器1012中的硬盘。这些计算机程序产品是
用于将软件提供给计算机系统1000的手段。本发明涉及这样的计算机程序产品。
计算机系统1000还包括输入/输出(I/O)接口1030,它使得计算机系统1000能够接
入显示器、键盘、鼠标、打印机、扫描仪、绘图仪、以及类似设备。
计算机程序(也被称为计算机控制逻辑)作为应用模块1006存储在主存储器1008
和/或辅助存储器1010中。也可通过通信接口1024接收计算机程序。这样的计算机程序被执
行时,使得计算机系统1000执行如在此所讨论的本发明的特征。特别地,当执行该计算机程
序时,使得处理器1004执行本发明的特征。因此,这样的计算机程序代表计算机系统1000的
控制器。
在本发明采用软件实现的实施例中,该软件可存储在计算机程序产品中,并可使
用可移除存储驱动器1014、硬盘驱动器1012、或者通信接口1024加载到计算机系统1000中。
应用模块1006被处理器1004执行时,使得处理器1004执行如在此所述的本发明的功能。
主存储器1008可被加载有一个或多个应用模块1006(例如,离散元方法),所述应
用模块1006可被一个或多个处理器1004执行以实现期望的任务,所述处理器可具有或不具
有通过I/O接口1030输入的用户输入。在运行中,当至少一个处理器1004执行一个应用模块
1006时,结果被计算并存储在辅助存储器1010(也就是,硬盘驱动器1012)中。有限元分析的
结果和/或状态(例如,裂纹扩展)以文字或者图形表示在耦合到计算机的监视器的方式通
过I/O接口1030报告给用户。
虽然参照特定的实施例对本发明进行了描述,但是这些实施例仅仅是解释性的,
并不用于限制本发明。本技术领域的人员可得到暗示,对具体公开的示范性实施例做出各
种修改和改变。例如,尽管时间步长大小(Δt)被示为常数,但非常数的时间步长大小也可
以用来实现时间步长。总之,本发明的范围不限于在此公开的特定示范性实施例,对本技术
领域人员来说暗含的所有修改都将被包括在本申请的精神和范围以及后附权利要求的范
围内。