|
一直想做一个时期,
比较瞬态流场结果跟时均化后流场之间的差别。
具体讲,是因为看过Bogar的一篇文章。
里面对比了瞬态流场对时均化流场的相对速度。
大体思路是这样的。
1. Fluent导出多个结果;
2. 对多个结果做时间平均处理;
3. 比较单个瞬态结果跟时均化结果的差别。
这里涉及2个问题:
A. 如何比较两个流场结果呢?
B. 如何比较瞬态流场和时均化后的结果呢?
时均化结果实际是后处理的,
怎么后处理?让它跟软件直接生成的结果相容,
然后能够放在一起比较呢?
回答问题A好办。
用CFD Post就可以。
回答问题B的话,
需要能够在后处理中做时均化的方法。
最简单的方式就是手动编个程序,
把多个结果读进来,然后平均就OK了。
但问题是,一般的CFD结果都是二进制的。
用文本编辑器没法读取的。
有没有文本编辑器能够读取的呢?
有!
fluent能够导出CFD-Post Compatible形式的文件。
其中,有个选项,可以让结果文件是ASCII格式,
这样就可以在文本编辑器中读取了。
不过缺点是,生成的文件相当地大。
所以,回到开头。
具体怎么做呢?
1. Fluent生成一堆cas/dat文件
2. 批处理生成一堆CFD-Post Compatible形式的文件
3. 用c++读取第2步中生成的文件,平均化之后,输出一个CFD-Post Compatible形式的文件
4. 用CFD Post读取任意一个瞬态结果+时均化的结果
5. 正式后处理,生成各种contour
下面列出关键图
1. Fluent生成一堆cas/dat文件
这个好办,计算的时候,隔几个时间步,保存一下。
就能生成一堆文件。
2. 批处理生成一堆CFD-Post Compatible形式的文件
批处理需要写个fluent的journal文件。
可以在fluent中录制一段,File-Write-Start Journal
然后运行。File-Read-Journal
关键是怎么输出。列图如下:
这样会生成三类文件:
.cas .cst .cdat
3. 用c++读取第2步中生成的文件,平均化之后,输出一个CFD-Post Compatible形式的文件
上一步中,.cdat文件可以通过文本编辑器读取,也可以被c++读取。
具体实施方法不列。
4. 用CFD Post读取任意一个瞬态结果+时均化的结果
这个需要注意,一次读取两个.cdat文件,按住ctrl键
读取完了,
在右侧会出现两个view,即视图,对应了两个文件的结果。
同时,会出现 case comparison
编辑它,
然后,
在右侧区域会出现第3个view,对应的二者差别的视图。
5. 正式后处理,生成各种contour
建立一个contour后,
在三个视图都会出现。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-16 13:20
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社