OpenFOAM可以动态设定求解区域嘛?
-
@东岳 我曾经尝试着计算完后,将固定的点速度置0,但是这样就存在一个问题,就是这些点附近的流畅是不满足连续方程的。我希望能从矩阵上对这些点进行处理(类似与有限元中处理固定边界条件时用的置1法),这样求解出来的值就是满足连续方程。
这个的应用背景是凝固过程的流动计算。目前比较流行计算流动的模型是连续模型,其思想是在整个计算域内建立NS方程,然后动量方程中加入一个阻力项-Ku,对于完全凝固的区域,K是一个很大的数,液相区域K=0。这样最终的求解结果里,固相速度就近似为0,看上去和固体一样,而液相区域正常流动。现在遇到的问题是,凝固后期,固相占据大部分区域,按理说这一部分是不需要求解的,但是计算中还是会计算,浪费很多计算时间,还容易不收敛。我希望将凝固的部分忽略不算,只算液相区域,但是这个区域是不断变化的。
关于chtMultiRegionFoam求解器,他是通过对不同区域建立独立的矩阵求解,而不是统一的矩阵,这样求解是不是会在边界处产生误差?这种误差大吗? -
chtMultiRegionFoam边界是通过插值处理的,先求左边,插值到右边。求右边,插值到左边。跟AMI原理一样。
这个的应用背景是凝固过程的流动计算。目前比较流行计算流动的模型是连续模型,其思想是在整个计算域内建立NS方程,然后动量方程中加入一个阻力项-Ku,对于完全凝固的区域,K是一个很大的数,液相区域K=0。这样最终的求解结果里,固相速度就近似为0,看上去和固体一样,而液相区域正常流动。现在遇到的问题是,凝固后期,固相占据大部分区域,按理说这一部分是不需要求解的,但是计算中还是会计算,浪费很多计算时间,还容易不收敛。我希望将凝固的部分忽略不算,只算液相区域,但是这个区域是不断变化的。
这个很有意思。类似多孔介质的处理。
我希望能从矩阵上对这些点进行处理(类似与有限元中处理固定边界条件时用的置1法),这样求解出来的值就是满足连续方程。
我觉得是可以的,但从代码上感觉实现很费事,另外,你还需要处理这部分的网格连接性和边界问题。原本某个网格和某个网格连接,但你去掉后,网格和边界连接。
感觉可行,不过目前我也没思路看起来和网格生死单元类似,要不你看看死亡单元那面怎么处理的?这块的代码我没看过