当前位置: 首页 > 专利查询>西门子公司专利>正文

简化的光滑粒子流体动力学制造技术

技术编号:7953683 阅读:213 留言:0更新日期:2012-11-08 23:04
本发明专利技术涉及简化的光滑粒子流体动力学。为了使用更多粒子信息来实现有效率的光滑粒子流体动力学,创建虚拟粒子。每个虚拟粒子代表针对一个单元中的流体粒子的平均特性。对于给定流体粒子的密度、力或其它计算,计算单元内的粒子之间的交互作用。为了计算该单元外部的粒子对该单元内的粒子的影响,使用来自相邻单元的虚拟粒子。与这些集合的粒子的交互作用会减少计算的次数,同时仍然包括来自其它单元的粒子的影响。

【技术实现步骤摘要】

本实施例涉及基于粒子的流体仿真。在光滑的粒子流体动力学(SPH)中,计算流体仿真基于蒙特卡洛方法。内部力是在粒子对之间计算的。例如,密度被计算为Pi = mJ'力f),其中i和j是相邻的粒子,m是质量,r是半径 ,h是限制对范围的J J交互作用的光滑半径,W是核函数。压力被计算为 , . (p/ + p{WW(ru-,hf) ψ-η =-mJ τ--^——。粘度力被计算为 Jf f. 9 .f.' hJ )=f-£_。这些力被用于对粒子的平流输送 jpJ(advecting)进行仿真。通过多次迭代,速度被计算为vj ( + |) = vj ( - ^) + αΔ£ ,以及位置被计算为if (t) = l{(£-V)+vf (t + 。 1 1
技术介绍
由于只有光滑半径h内的粒子彼此交互作用,因此可以在该仿真避免以所有粒子的0(n2)计算。以交互作用速度对流体进行仿真的需要进一步导致了基于GPU的实施。通过将仿真空间分为多个单元(cell),每一次缩小等于光滑半径h,可以在一个粒子的所有邻居上以0(mn)为数量级迭代,其中m是每个单元的平均粒子数。如果粒子i位于,iec3lHx,y,z),则相邻粒子j属于€以/1(尤±1,7±1,2±1)。即使具有这样的效率,以交互作用速度进行仿真仍然是困难的。在光滑半径外部的粒子的影响并未得到考虑。
技术实现思路
在各种实施例中,提供了系统、方法和计算机可读介质来用于光滑粒子流体动力学(SPH)。为了使用更多粒子信息来实现有效率的SPH,创建虚拟粒子。每个虚拟粒子代表针对单元中的流体粒子的平均特性。对于给定流体粒子的密度、力或其它计算,计算单元内的粒子之间的交互作用。为了计算该单元外部的粒子对该单元内的粒子的影响,使用来自相邻单元的虚拟粒子。与这些集合的粒子的交互作用减少了计算的次数,同时仍然包括来自其它单元的粒子的影响。在第一方面中,非临时性计算机可读存储介质在其中存储了代表可由编程的处理器执行以用于光滑粒子流体动力学的指令的数据。该存储介质包括用于定义第一粒子的指令,每个第一粒子代表一个或多个第二粒子,并且对每个第二粒子都针对一定范围内的第二粒子仿真第二粒子对第二粒子交互作用,并且仿真在该范围内的每个第二粒子与该范围外部的第一粒子的第二粒子对第一粒子交互作用。在第二方面,非临时性计算机可读存储介质在其中存储了代表可由编程的处理器执行以用于光滑粒子流体动力学的指令的数据。该存储介质 包括用于以下步骤的指令将仿真空间划分为单元;将流体粒子分配给这些单元;对每个单元用至少一个流体粒子创建质心粒子,质心粒子从各自单元的流体粒子中创建;确定每个质心粒子的质量;根据相邻单元的质心粒子以及该流体粒子的单元的粒子来确定每个流体粒子的密度;以及作为流体粒子的密度和质心粒子的密度的函数来平流输送流体粒子。在第三方面,提供用于光滑粒子流体动力学的方法。处理器将体积划分为子体积。这些子体积被流体粒子填充。虚拟粒子代表每个子体积的流体粒子。对于每个流体粒子的力被基于在与该流体粒子相同的子体积中的流体粒子以及相邻子体积的虚拟粒子来计算。该计算不是基于相邻子体积的单个流体粒子的。上述任何一个或多个方面可以单独或组合使用。这些以及其它方面、特征和优点将由于下面对优选实施例的详细描述而变得明显,该详细描述是要结合附图来阅读的。本专利技术通过下面的权利要求定义的,并且在这一节中不应当有任何内容作为对这些权利要求的限制。下面结合优选实施例讨论本专利技术的其它方面和优点,并且稍后可以独立或组合地要求保护。附图说明组件和附图不一定是按比例的,而是重点在于图解实施例的原理。此外在附图中,贯穿不同的视图相似的附图标记表示对应的部分。图I是用于光滑粒子流体动力学仿真的一个实施例的流程 图2是将粒子分布划分为多个单元的一个实施例的图解; 图3是创建虚拟粒子的一个实施例的图解; 图4是在光滑粒子流体动力学中使用流体粒子和虚拟粒子的一个实施例的图解;以及 图5是用于光滑粒子流体动力学仿真的系统的一个实施例的框图。具体实施例方式基于粒子的流体仿真方法,例如光滑粒子流体动力学(SPH),可以被用于实现交互作用的流体仿真。为了提供仿真而同时保持交互作用速度,创建代表每个单元的一个或多个粒子的虚拟粒子。为了交互作用,该仿真通常以每周期(以毫秒为单位)为基础来更新。因此,流体交互作用的计算有效率地进行以保持交互作用速度。用于以交互作用速度的SPH的有效率的方法可以是用更大的虚拟粒子来替换每个单元的多个流体粒子。替换虚拟粒子被用于计算未在单元内的粒子对与该单元内的给定流体粒子的交互作用的贡献。SPH实施可以比现有技术更快,并且适于交互作用的应用,同时提供类似的仿真质量。光滑距离可以减小以进一步增加速度,但是会减小对降低仿真质量的给定流体粒子贡献力的粒子的数量。增强型SPH包括密度和/或内部力的计算。这些计算基于使用仍然捕获整体流体仿真行为的组合的粒子(例如虚拟粒子)来代表相同的流体体积。虚拟粒子被表示为空间中的具有给定质量的点(即,代表空间中质量的存在),其中在网格单元内的一组粒子的密度被集合。为了保持流体仿真的小细节特征,这些计算包括在单元水平上的流体粒子对流体粒子的交互作用。为了在流体仿真中包括通过其它单元贡献的特征,这些计算还包括流体粒子对虚拟粒子的交互作用。 图I示出在基于粒子的仿真中的光滑粒子流体动力学方法。该方法通过图5的系统和/或不同的系统来实施。处理器执行动作。可以提供额外的、不同的或更少的动作。例如,动作34,36,37和38未被执行。作为另一个示例,动作37未被执行。动作34-38可以在不使用动作28,30和32的情况下执行,至少使用不使用虚拟粒子的动作28,30和32。在又一个示例中,提供移动固体对象和调整粒子运动的额外的动作。可以添加任何进一步的基于粒子的流体仿真动作。该方法以所示出的顺序提供。动作22和24可以顺序地执行或者与动作26并行地执行。可以提供其它顺序。在一个实施例中,动作22和24是在仿真之前执行的初始化的一部分。对流体粒子的运动进行仿真而不进一步执行初始化动作。动作26,28,30,32和34作为仿真流体流程的一部分重复地或迭代地执行。在该仿真中,作用于被仿真的粒子的内部力以及粒子和任何固体对象之间的力被重复地计算。在动作22中,仿真空间被划分为多个单元。该仿真空间是体积、面积或其它区域。所述仿真空间是有边界的,例如通过表面,或者是无边界的,例如代表流体内的流动区域。基于预先确定的参数和/或通过用户输入的信息,处理器将仿真空间划分为所述多个单元。每个单元是子区域。例如,处理器将体积划分为多个子体积。为了进行基于粒子的流体仿真,将这些粒子分为有规则间隔的网格单元。这些粒子被分组为三维的单元分布。所述仿真空间被细分为三维(3D)的网格,使得在任何仿真迭代期间流体粒子仅位于一个单元中。图2示出4个这样的单元40,每一个单元包括流体粒子42。这些网格单元分割了粒子分布并且也被用于计算对流体仿真的演变有所贡献的特性。可以使用任何数量的单元。单元的数量以及这些单元的对应体积可以基于粒子密度、每个单元的粒子数量和/或流体的仿真体积来确定。这些单元40具有相同的尺寸和形状,但是本文档来自技高网...

【技术保护点】
在非临时性计算机可读存储介质中,在其中存储了代表能由编程的处理器执行的用于光滑粒子流体动力学的指令的数据,该存储介质包括用于以下步骤的指令:将仿真空间划分为单元;将流体粒子分配给这些单元;为每个具有至少一个流体粒子的单元创建虚拟粒子,所述虚拟粒子是从各自单元的流体粒子中创建的;确定每个虚拟粒子的质量;根据相邻单元的虚拟粒子以及该流体粒子的单元的粒子确定每个流体粒子的周围的密度;以及作为流体粒子的密度和虚拟粒子的密度的函数来平流输送流体粒子。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:RG麦丹尼尔Z塔米米
申请(专利权)人:西门子公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1