Fluent导出残差总结

在使用Fluent进行求解的时候,有时候我们需要将求解的残差提取出来,进行后续的处理,我们可以采用下面的方法将Fluent求解残差输出。下面我们用一个简单的二维算例来说明(算例来源于:https://confluence.cornell.edu/display/SIMULATION/FLUENT+-+Laminar+Pipe+Flow),算例的具体设置见上面链接

方法一:使用Transcript

初始化算例以后,在进行计算以前(也就是点击“Calculate”按钮以前),我们先点击File->Write->Start Transcript…

在弹出的对话框中输入保存的文件名,这里我输入为“demo

然后点击“Calculate”按钮进行计算

在计算完成以后,我们点击File->Write->Stop Transcript…

然后我们打开demo文件,删除掉其中我们不需要的信息,即可得到残差的数值

方法二:采用Fluent命令行下的重定向输出

我们可以现在图形界面下将算例设置好并初始化以后,然后存为casdat文件,然后我们打开cmd命令行,以命令行模式启动Fluent

首先我们需要在cmd下转换到算例目录下 

新建一个后缀名为.jou的文本文件,这里我们命名为demo.jou,在文件当中添加如下内容:

/file/read-case-data demo.cas

/solve/iterate 100000

/exit yes

然后保存,我们返回cmd,输入下面的命令:

"D:\Program Files\ANSYS Inc\v191\fluent\ntbin\win64\fluent.exe" -g -t0 2ddp -i demo.jou > demo.txt 

其中:

"D:\Program Files\ANSYS Inc\v191\fluent\ntbin\win64\fluent.exe"Fluent安装目录可执行文件的绝对路径

-g参数表示无图形界面

-t0表示单核启动

2ddp表示二维双精度

-i表示启动Fluent的时候跟上脚本

demo.jou为脚本名称

剩下的就是等待计算结束,然后我们可以看到算例目录下多出来一个demo.txt的文本文件,删除掉其中我们不需要的信息,即可得到残差的数值

方法三:采用scheme脚本

我们新建一个demo1.scm文本文件

我们在其中编写如下代码:

(define port)

(set! port (open-output-file "residuals.dat"))

 

(do

((i 0 (+ i 1)))

((= i (length (solver-residuals))))

(format port "~a ~2t" (car (list-ref (solver-residuals) i)))

)

(newline port)

然后设置算例

我们在Fluent读入该scheme脚本

我们再新建一个demo.jou文本文件

我们在其中编写如下代码:

(do

((i 0 (+ i 1)))

((= i (length (solver-residuals))))

(format port "~a ~2t" (cdr (list-ref (solver-residuals) i)))

)

(newline port)

然后运行程序,开始计算

计算完成以后,在算例目录下就多出来了一个“residual.dat”文件

Fluent导出残差总结

就是我们需要的残差

posted @ 2018-08-06 16:11  硫酸亚铜  阅读(4589)  评论(0编辑  收藏  举报