流体力学
文章平均质量分 69
流体力学
beidou111
研究图形学流体仿真。个人学习笔记,仅作记录,侵权必删。曾经是搞CFD流化床生物质的。现北航计算机博士生在读。联系请发邮件。私信不看。邮箱:[email protected]
展开
-
【数学】张量通俗入门
1 张量张量就是一组有序数。或者说,张量就是一组有序数的表现方式,或者说是记号。比如向量是一种表现方式,矩阵是一种表现方式,张量同样也是一种表现方式。它本质就是一组有序的数字而已。值得指出的是,张量是比向量和矩阵更高级的记号。它向下包含了向量和矩阵。凡是向量和矩阵能表示的,张量都能更简洁地表示。在很多地方,我们不提是几阶张量,就默认是2阶。1.1 为什么张量记号简便为什么要用张量记号,说起来,无非是简便。当然,熟悉了之后,还可以将知识抽象到更高层次。为什么会简便?比如应力记号σ\sigmaσ原创 2022-03-17 23:10:28 · 11753 阅读 · 12 评论 -
PCISPH的通俗解释与简单实现
PCISPH是SPH的一个变种,针对压力求解部分进行了改进。本文参照Koschier, D., Bender, J., Solenthaler, B., & Teschner, M.(2020). Smoothed particle hydrodynamics techniques for thephysics based simulation of fluids and solids. arXiv preprintarXiv:2009.06944.(主要参考)主要是P14-原创 2021-11-23 15:35:39 · 825 阅读 · 0 评论 -
共轭梯度法的简单直观理解
共轭梯度法的简单直观理解共轭梯度法可以看作是梯度下降法(又称最速下降法)的一个改进。梯度下降法x移动的方向正是函数f的负梯度方向,这代表了局部上f减小最快的方向。但是局部上减小最快的方向并不代表全局上指向最终解的方向。所以梯度下降法会出现像醉汉下山一样走出zig-zag的路线。如下图为什么会走出这一Z形线呢?因为梯度下降的方向恰好与f垂直,也就是说和等高线垂直。沿着垂直于等高线的方向,一定能让函数减小,也就是下了一个台阶。但是最快下台阶并不意味着最快到达目标位置(即最优解)。为了修正这一路线,采原创 2021-11-03 17:56:58 · 7480 阅读 · 2 评论 -
邻域粒子搜索算法
前一个博文里面写了大致的思想,即基于网格的邻域粒子算法。这里讲一下具体实现,采用的语言是taichi。1 数据结构定义什么样的数据结构决定了我们思考问题的方式。我们现采用较简单的一种方式:首先定义par2Cell,即给定粒子ID,可以索引到网格ID的哈希表。由于键是唯一的,所以很好定义par2Cell = ti.field(int, numPar)其次定义cell2Par,即给定网格ID,可以索引出所有在其内部的粒子。这个哈希表同一个键对应了多个值,因为同一个网格内部可以有多个粒子。这里我们采原创 2021-10-30 22:03:36 · 1973 阅读 · 0 评论 -
利用taichi写一个最简单的SPH(光滑粒子动力学)
1程序概述二维SPH小程序,模拟溃坝问题。如图,蓝色方块为水。初始时设置如图,程序开始后水方块溃散。编程语言:taichi2程序主要模块说明主要步骤包含:1.定义核函数2.定义邻域搜索函数3.计算密度4.计算压力5.利用核函数计算三种力并得到加速度6.时间推进7.处理边界碰撞8.初始化(只需一次)附录:A.邻域搜索具体实现B.时间步的选定C.给定密度的选定2.1核函数函数/模块名称:kernel()输入:double r,为从当前粒子中心指向相邻粒子j中心的距离作原创 2021-10-23 17:57:46 · 2181 阅读 · 0 评论 -
一个FLIP solver源代码
先mark一下,待详细研究http://rlguy.com/gridfluidsim/原创 2021-10-17 20:39:53 · 100 阅读 · 0 评论 -
【读书笔记】Fluid Engine Development 1:封面作者和目录
封面随书代码https://fluidenginedevelopment.org/或github上https://github.com/doyubkim/fluid-engine-dev作者DOYUB KIM职业NVDIA软件工程师作者主页https://doyub.com/Google scholarhttps://scholar.google.com/citations?user=bkG57aEAAAAJ&hl=engithub主页https://github.c原创 2021-09-15 16:38:47 · 535 阅读 · 0 评论 -
【流体力学】加和不加湍流模型在NS方程上的体现
之前一直没弄懂为什么很多流化床模拟里面都不去提及的问题。这还是个比较复杂的问题,暂且搁置。但是我们起码要知道:加和不加湍流模型,区别到底体现在哪?这个影响大不大,量级如何?从工程上来说,我们只要知道这个影响的量级,就可以大致判定可不可以忽略该影响。假如同时存在其他主导规律的时候(比如颗粒对气体的曳力),该影响的量级远远小于曳力的量级,那么就可以放心地忽略该影响。所以湍流的影响是多大呢?如何估算他的影响的量级呢?首先,我们必须从CFD计算的NS方程上找源头。也就是说,要知道加不加湍流,在NS方程上的区别原创 2021-07-29 14:05:01 · 1869 阅读 · 0 评论 -
【流体力学】分享几本流体力学经典教材(持续更新)
Computational_Fluid_Dynamics_-Principles_and_Applications-_J._BlazekHirsch Numerical Computation Of Internal And External Flows 2ndThe Finite Volume Method in Computational Fluid Dynamics An Advanced Introduction with OpenFOAM and Matlab计算流体力学基础及其应用(美..原创 2021-05-06 21:47:22 · 8492 阅读 · 10 评论 -
【流体力学】从无量纲化的NS方程看几个准则数:施特劳哈尔数、雷诺数、弗劳德数
之前没怎么关注,今天偶然翻阅Ferziger的书发现几个准则数的意义可以从NS方程上找到:来自Ferziger的计算流体力学教材、首先把几个物理量无量纲化,如下:带入到NS方程中(这里给张量式)然后整理归纳,得到无量纲化的NS方程,如下(其中gamma是重力加速度)其中几个准则数为St是施特劳哈尔数Strouhal,表征流动非定常性Re是雷诺数Reynolds,表征粘性Fr是弗劳德数Froude,表示惯性力和重力量级的比从NS方程上来看St在是非定常项的系数,因此当St很小的时原创 2021-05-01 15:34:26 · 7023 阅读 · 0 评论