关于使用v2206版本计算Uprime2mean 和urms有一个很奇怪的问题
-
我也一直纠结这玩意儿。
如果你算channel的时候用的是meanVelocityForce,那么程序会根据UMean来调整压力梯度。当你在20s开始统计的时候,最初的几个时间步UMean波动会很大,连带的添加的这个压力梯度也会很大幅度地变化,流场还需要很久才能平稳。
momentumSource { type meanVelocityForce; active yes; meanVelocityForceCoeffs { selectionMode all; fields (U); Ubar (1.0363 0 0); relaxation 1.0; } }
就算不用meanVelocityForce,用的是vectorSemiImplicitSource。在重启FieldAverage的时候,最初的一段时间UMean还是波动很大的,UPrime2Mean也需要一段时间才能平稳。
最根本的原因还是FieldAverage它每一步计算平均值,都是将当前时间步的U和上一个时间步存下来的UMean进行计算,只有算一段时间后,才能平稳。
下面是我用的v2012版本的FieldAverage介绍,虽然这里是几个数的平均值,但实际上计算的时候也会将时间、时间步长考虑在内。但要知道的就是这个平均值每一个时间步都是新算出来的,平方均值也是每一个时间步新算出来的。
你20s发展完全,使用FieldAverage统计可能还得往后面算。或者自己以一定时间间隔保存全场数据然后进行后处理。
-
@SSSSK
restartTime 20;
和
startTime 20;
在20s之后输出的UMean,是一样的。
湍流是否完全发展,还可以看摩擦雷诺数的时间历程;10、20、30……这样不同时刻的速度剖面。得综合判断。我感觉是不是从100s开始统计的时候,其实是把前面的时间步也考虑了,在平均下来就会很小
100s开始统计不会考虑前面时间步的。你想如果它能一瞬间把前面100s的数据都考虑进去的话,那就是前面100s内每个时间步的全流场数据都存着,没那么大的内存或者硬盘容量的。
研究一下源代码吧。有个大佬的笔记讲得挺好↓
https://xiaopingqiu.github.io/2015/04/12/fieldAverage/