|
发表于 2011-12-24 05:58:35
|
显示全部楼层
原帖由 su_junwei 于 2011-12-23 22:46 发表
lbm和fvm我都做过一点。 两者并行的思想是一样的, 不管你是粒子碰撞还是用求解散度、梯度和拉普拉斯。 个人感觉,lbm之所以scalability好,并不是由于粒子碰撞,而是不用求解代数方程组。他是一种显式的时间推进,各 ...
呵呵,如果基于区域分裂,fvm,fdm,lbm等等都一样,这是肯定的。我以前也在一个CFD公司也参与过FVM代码的并行化处理,所以算起来两方面都了解一点,思路当然都没啥差别,呵呵。但如果在向量计算机上,似乎lb的并行就会更好一些,这个我不懂,仅仅有这方面的印象。另外,我测OpenFOAM的LES求解器的时候,是一个很简单的长方体模型,而且多种并行方式都测试过,呵呵。
军伟,lbm是在求解代数方程组的,呵呵。lbm的显式时间推进就是显式求解常系数代数方程组,迁移就来自于空间一阶迎风离散。lb算稳态问题,确实没fvm之类的快,这方面有一些文献可以看看。但对于非稳态问题,且涉及大规模计算的时候,lbm在计算效率方面的优势就凸显出来了。另外,咱们最开始搞的那个版本的fvmlbm慢并不是主要因为边界处理。我对每一部分的效率测试过。在我后来改进的版本里,即使只计算边界梯度信息,提速不到10%;而且有的边界处理不需要梯度信息。最耗时的其实是对流项,按照最初的处理方式,首先离散方向就增加了几倍。改成Succi他们的法子会好一些。我后来还修改了隐式显式的那些格式,加了外力模型。结论是,即使使用最高效的隐式显式格式,最省时的空间离散,计算效率也不太符合我需求,而且数值粘性比我预期的大(OF里面能用的都尝试过,包括不同权系数的混合格式,算湍流,高阶不稳定,低阶又粘性大)。呵呵,所以就没继续搞了。我们还尝试了加LES,呵呵。
[ 本帖最后由 ywang 于 2011-12-25 02:05 编辑 ] |
|