正在加载图片...
除衍睿等:面向视网膜脱离手术的硅油填充模拟 1239 该过程仅使用流体粒子的密度和压力,并遵 量项用于选择与α值相似的范围内的B值,其中 循牛顿第二定律,使从流体粒子到刚体边界粒子 B≈α.由于固液边界处压强力可防止流体在刚体 压强力为式(16)取反: 边界附近聚集,因此将黏附力设计为仅吸引间距 Fb=-8 (17) 为r/2<1≤r的流体粒子 边界力的大小基于流体粒子的压强力,该力 3实验 随着流体粒子接近眼球刚体边界粒子而增加.由 于靠近刚体边界的流体粒子的压力将导致其远离 为验证本文方法的有效性,本节首先进行 边界,且流体之间的压强作用亦会反映在边界压 硅油-水两相流交互实验以及表面张力对比实验, 强上,因此本方法无需使用额外的力或位置校正, 随后对眼球硅油填充进行仿真,最后进行硅油填 便可消除流体黏附伪影,并防止流体粒子渗透出 充术医疗场景下注硅油排水的模拟场景.本文仿 眼球边界 真算法基于C+编写,并使用OpenMP进行多线程 2.2.3流体对固体的黏附力 并行计算,利用Eigen作为数学计算工具.可视化 为表现流体对于固体的黏附效应,参考式(11), 方面,使用OpenGL作为流体粒子可视化工具,显 将流体与边界粒子之间的黏附力计算为: 示实时仿真效果,并使用Blender进行离线动画 渲染. Fr=gmym二 IC(xf-xbl) (18) 3.1水与硅油的交互模拟验证 xf-xb 本节通过实验验证两相流交互模型有效性 式中,B是类似于α的附着系数,C是样条函数: 图6中为两相流溃坝实验,硅油和水分别为两相 42 流体,两种流体在模拟开始时因重力作用而下落, 0.007 C()= +6l-2r 325 2<lr (19) 随后接触并逐渐混合.该过程中由于硅油密度略 0 others 低于水,会因压强力与界面力的作用而不断上浮; 分母中的3.25项为归一化因子,可以使该力针 而拥有较大密度的水相则会不断下沉.最终两相 对不同的支撑半径产生相同的加速度.前面的标 流体实现完全分层,并具有明显交界面 (a) (b) (c) d (e (g) 图6两相流遗坝实验.(a~d)流体运动过程粒子状态:(e~h)渲染后效果 Fig.6 Dam break experiment of two-phase flow:(a-d)particle state of fluid motion;(e-h)post-render effect 该实验表现了眼球内部两相流体交互运动过 以观察到液体呈均匀分布,覆盖绝大部分底板,未 程中受重力与表面张力影响而产生的分层作用, 出现聚集现象,无高度突起.在张力系数逐渐增大 证明了本文方法可有效模拟硅油-水两相流体的 过程中,以第22帧为例,由于表面张力的作用,液 动力学交互过程. 体溅开的范围逐渐变小,液体内聚力同时增大,使 3.2流体表面张力实验 得水珠趋向于聚集效果.由第503帧(静止)可以 本实验通过令水块跌落入容器并观察液体形 看到,因为系数增大,底板上液体覆盖面积也越来 态,验证本文表面张力方法有效性.图7展示了水 越小,侧面说明了表面张力是影响液体聚集增加 块掉落在水平平板上后形成的溅落水面情况.水 高度的主要原因 块掉落后先水平平铺,并散至四周,最终静止 表面张力实验不同参数情况下液体表面积总 当张力系数设置为0时(无表面张力作用),可 和随时间变化折线如图8所示.纵轴代表表面积,该过程仅使用流体粒子的密度和压力,并遵 循牛顿第二定律,使从流体粒子到刚体边界粒子 压强力为式(16)取反: F p f→b = −F p b→f (17) 边界力的大小基于流体粒子的压强力,该力 随着流体粒子接近眼球刚体边界粒子而增加. 由 于靠近刚体边界的流体粒子的压力将导致其远离 边界,且流体之间的压强作用亦会反映在边界压 强上,因此本方法无需使用额外的力或位置校正, 便可消除流体黏附伪影,并防止流体粒子渗透出 眼球边界. 2.2.3    流体对固体的黏附力 为表现流体对于固体的黏附效应,参考式(11), 将流体与边界粒子之间的黏附力计算为[27] : F a b→f = −βmf m (f) b xf − xb xf − xb C ( xf − xb ) (18) 式中, β 是类似于α的附着系数, C 是样条函数: C(l) = 0.007 r 3.25    4 √ − 4l 2 r +6l−2r r 2 < l ⩽ r 0 others (19) r 分母中的 3.25 项为归一化因子,可以使该力针 对不同的支撑半径产生相同的加速度. 前面的标 α β β ≈ α r/2 < l ⩽ r 量项用于选择与 值相似的范围内的 值,其中 . 由于固液边界处压强力可防止流体在刚体 边界附近聚集,因此将黏附力设计为仅吸引间距 为 的流体粒子. 3    实验 为验证本文方法的有效性 ,本节首先进行 硅油‒水两相流交互实验以及表面张力对比实验, 随后对眼球硅油填充进行仿真,最后进行硅油填 充术医疗场景下注硅油排水的模拟场景. 本文仿 真算法基于 C++编写,并使用 OpenMP 进行多线程 并行计算,利用 Eigen 作为数学计算工具. 可视化 方面,使用 OpenGL 作为流体粒子可视化工具,显 示实时仿真效果,并使用 Blender 进行离线动画 渲染. 3.1    水与硅油的交互模拟验证 本节通过实验验证两相流交互模型有效性. 图 6 中为两相流溃坝实验,硅油和水分别为两相 流体,两种流体在模拟开始时因重力作用而下落, 随后接触并逐渐混合. 该过程中由于硅油密度略 低于水,会因压强力与界面力的作用而不断上浮; 而拥有较大密度的水相则会不断下沉. 最终两相 流体实现完全分层,并具有明显交界面. (a) (b) (c) (d) (e) (f) (g) (h) 图 6    两相流溃坝实验. (a~d)流体运动过程粒子状态;(e~h)渲染后效果 Fig.6    Dam break experiment of two-phase flow: (a–d) particle state of fluid motion; (e–h) post-render effect 该实验表现了眼球内部两相流体交互运动过 程中受重力与表面张力影响而产生的分层作用, 证明了本文方法可有效模拟硅油‒水两相流体的 动力学交互过程. 3.2    流体表面张力实验 本实验通过令水块跌落入容器并观察液体形 态,验证本文表面张力方法有效性. 图 7 展示了水 块掉落在水平平板上后形成的溅落水面情况. 水 块掉落后先水平平铺,并散至四周,最终静止. 当张力系数设置为 0 时(无表面张力作用),可 以观察到液体呈均匀分布,覆盖绝大部分底板,未 出现聚集现象,无高度突起. 在张力系数逐渐增大 过程中,以第 22 帧为例,由于表面张力的作用,液 体溅开的范围逐渐变小,液体内聚力同时增大,使 得水珠趋向于聚集效果. 由第 503 帧(静止)可以 看到,因为系数增大,底板上液体覆盖面积也越来 越小,侧面说明了表面张力是影响液体聚集增加 高度的主要原因. 表面张力实验不同参数情况下液体表面积总 和随时间变化折线如图 8 所示. 纵轴代表表面积, 徐衍睿等: 面向视网膜脱离手术的硅油填充模拟 · 1239 ·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有