|
发表于 2012-1-9 12:48:06
|
显示全部楼层
原帖由 lixl-imech 于 2012-1-9 10:12 发表
嗯,我感觉这种扫描方法也可以用。但感觉效果应当不如按照i+j+k=const 面进行扫描好。因为流体每个点的信息依赖于周围的信息,如果扫描的点基本上保持连续,则信息更新的效率会高些。如果按照i=1-> N, j=1->N, k=1 ...
我把我的程序修改了一下,发现两种扫描顺序计算出来的结果是一模一样的,残值曲线都是一模一样的。我个人的理解为:向前扫描:由于计算过程的局部性,在计算(i,j,k)的时候,只用到了(i-1,j,k),(i,j-1,k),(i,j,k-1)点的值,只要这三个的值已经更新过,不管什么时候用它都可以;而且每个点在一次扫描中都只可能被更新一次,也都只可能由那三个固定的点来更新,所以我觉得所有的扫描顺序都应该是等价的,只要保证计算(i,j,k)的时候,(i-1,j,k),(i,j-1,k),(i,j,k-1)点的值都已经被更新过了。 个人的理解,还请李老师指正。
下图为了方便观察,y方向有0.1的偏移,实际结果是两条曲线完全重合。
[ 本帖最后由 fanghongfox 于 2012-1-9 12:49 编辑 ] |
|