Fluid Simulation
文章平均质量分 83
hijackedbycsdn
这个作者很懒,什么都没留下…
展开
-
用于模拟颗粒流的直接强迫浸没边界法 An immersed boundary method with direct forcing 笔记
使用固定且均匀的计算网格来计算悬浮刚性颗粒周围的不可压缩粘性流主要思想是将 Peskin 的正则化 delta 函数方法 [Acta Numerica 11 (2002) 1] 纳入流固相互作用力的直接公式中,以便允许欧拉和拉格朗日表示之间的平滑转换,同时避免时间步长的严格限制。该技术是在有限差分和分数步环境中实现的。我们提出了一种改进的浸入边界方法,直接公式化了流固相互作用力。Peskin [23] 的正则化 delta 函数用于任意拉格朗日位置和离散欧拉位置之间的关联。原创 2024-02-26 11:26:10 · 1180 阅读 · 0 评论 -
RLE 稀疏水平集 RLE sparse level sets 论文阅读笔记
看上去核心就是那个随机访问的过程但是我理解不了他是怎么做到的。原创 2024-02-20 11:19:27 · 1270 阅读 · 0 评论 -
动态管状网格:高分辨率水平集的有效数据结构和算法 Dynamic tubular grid: An efficient data structure... 论文阅读笔记
XN−1X_{N-1}XN−1表示对于 N 维情况,把网格点投影到前 N - 1 维张成的空间里得到的点集称为 p-column (projection column 的简称) number所以对于 2 维情况,p-column 就是一维的N 维的连通分量 connected component 被定义为 p-column 内相邻网格点的最大集合例如,在 2D 中,p-column x 被定义为管状网格中通过正交投影到 X 轴而投影到 (x, 0) 的网格点集。原创 2024-02-20 01:29:12 · 1069 阅读 · 0 评论 -
使用动态网格的流体动画 Fluid Animation with Dynamic Meshes 论文阅读笔记
原文:Klingner, Bryan M., et al. “Fluid animation with dynamic meshes.” ACM SIGGRAPH 2006 Papers. 2006. 820-825.使用 [Alliez et al., 2005] 的方法动态生成不规则的四面体网格根据边界的位置、边界的形状、基于流体和速度场的视觉重点部分的标准来构建一个尺寸场。这个尺寸场表明要生成的四面体网格在某点处的尺寸使用不规则的网格,而不是轴对称的,因为不规则的网格更加适应弯曲边界和不规则边界并且不原创 2024-02-19 00:50:04 · 1237 阅读 · 0 评论 -
使用八叉树模拟水和烟雾 Simulating Water and Smoke with an Octree Data Structure 论文阅读笔记
后面的都无关紧要了总之他这个文章的核心就是,现在八叉树的两个网格就只考虑彼此,暴力忽略其他网格,就这么得到了对称的模板忽然发现称为模板隐含着一个很优雅的事情,就是它可以包括某个点是流体或者是固体的情况这样,我们只需要最后讨论一下边界条件怎么放进来就好了,一开始推公式的时候就不用想边界好酷啊总之好羡慕啊,我现在的心情就跟我第一次看到半拉格朗日平流的 stable fluid 一样,感觉这么简单但是有效的东西,他们就能够研究到,然后发出来,就很优雅,很有应用上的美感的这么一件事。原创 2024-02-18 01:17:25 · 1187 阅读 · 0 评论 -
Windows 编译 yangfengzzz/fluid-engine-OpenVDB
我想将 OpenVDB 接入 doyubkim 的流体引擎然后搜到已经有人做过这件事了。原创 2024-02-17 10:04:50 · 1112 阅读 · 0 评论 -
OpenVDB Cookbook 笔记
如果不是对应同一个世界坐标,那就是两个网格的变换不同,一般的方法是先将一个网格重新采样到另一个网格的索引空间。可以获得元数据的 string 形式的类型名称,进而得知某个元数据的数据类型,进而进行类型转换。两层循环,外层迭代树结构的所有叶子节点,内层对于每一个叶子节点,根据属性的名字构建。遍历到的元素的 SDF 值如果在这个区间内,也就是在窄带内,那么就赋值,否则跳过。为了单线程调试 TBB,可以把输入的范围做成没有拆分的,对于。,这个迭代器的范围是由 tbb 划分的,原始迭代范围的子区间。原创 2024-02-15 15:51:27 · 1220 阅读 · 0 评论 -
Fluid Engine Development 创建 PIC, FLIP, Level Set 演示 Demo
然后他这个 Marching Cube 的算法里面写了对于边界的处理,原仓库的代码里面特意设置了不创建底部的面的标志,我不知道为什么要这么做。一开始我还不知道有这个标记,于是等那个溃坝的模拟,一帧五分钟,等了五十帧,之后才开始做,这个时候才开始发现模型没有底面……用 Blender 渲染的话,为了做光线追踪,液体网格应该封闭才能达成正确的光线反射,现在这个不创建底面直接就没有那个正确的效果了。提供了自己创建求解器的模板,但是现在暂时应该用不到,现在想输出他的求解器的图像。项目的 CMakeList。原创 2024-01-30 14:58:16 · 392 阅读 · 0 评论 -
Fluid Engine Development PIC/FLIP 代码分析
把 Fluid Engine Development 看完了,但是仍然感觉不懂感觉还是应该了解整体代码怎么写的,所以做个总结看着看着,感觉还是从底层开始看起从底层重新开始看的时候,感觉就来了而且作者也有很多注释,感觉能够体会到别人的思路他这里也有很多内容,我选择从 PIC/FLIP 开始看起然后我选择它的 hybrid_liquid_sim 工程它的 main 文件就很容易找到了,在 src\examples\hybrid_liquid_sim\main.cpp。原创 2024-01-24 10:09:17 · 896 阅读 · 0 评论 -
Fluid Engine Development Windows 编译出现 xmemory ‘_invalid_parameter‘: is not a member of ‘`global 解决方法
Windows 编译《Fluid Engine Development》配套的代码时出现了 ‘_invalid_parameter’: is not a member of ‘`global namespace’’ 类似的错误。在代码中找到 pybind11 的 common.h 去更改如下部分的代码。原创 2024-01-23 14:28:10 · 348 阅读 · 0 评论 -
计算机图形学流体模拟 blender 渲染脚本
做流体模拟的时候,想要复现别人的成果,但是别人的代码都是每帧输出 ply 格式的文件,渲染部分需要自己完成看了一下,似乎用 blender 是最简单的,于是记录一下过程中用到的代码Blender 版本 4.0。原创 2024-01-09 17:00:37 · 1001 阅读 · 0 评论