转载自:http://blog.163.com/wanglei2146073@126/blog/static/90689607201282555055144/
fluent是我们常用的CFD软件,但由于fluent在结果展示上功能不是特别强大,所以往往需要tecplot进行后处理。这里我就经常遇到的问题"tecplot里的云图(contour)选项里没有Ma数"该如何处理进行简单的说明。
解决办法:
1.利用fluent导出tecplot格式的data
在fluent里导出格式里选择tecplot,在function write里选中要导出的数据,只要包括Mach number这项,在tecplot的contour里就有Ma了。这个比较简单了,就不详细说明了。
2.在tecplot里编写Ma计算的函数
(1)这种方法其实也很简单,只是在网上不容易查到。在tecplot里选择File->load data file(s)->Fluent data loader,然后选择相应的case和data文件,便将fluent计算结果导入tecplot里了。
(2)Data->data set informations,如图所示:
在数据信息里对我们有用的是variable(s),图中红色标出来的区域。所有的变量在tecplot调用格式为"Vx",x代表数字。比如V3就是压力pressure,V1就是X坐标值,V2就是Y坐标值。这个很有用的,一定要记住调用格式哦!
(3)编写函数
Data->Alter->Specify Equations,弹出下图:
Equation(s)区域就是编写函数的地方,计算Ma数的函数非常简单,即:
{c}=sqrt(1.4*287*V17) %%计算当地声速,注意V17是表示在我这个例子里,V17为temperature,具体是V多少需要从步骤(2)里获得
{v}=sqrt(V12*V12+V13*V13) %%计算速度,即sqrt(Vx^2+Vy^2+Vz^2
{Ma}={v}/{c} %%计算马赫数
然后点Compute,如果出现了如图所示的,就OK了
这个时候可以去contour下看,就会出现新的三个变量,分别是c,v和Ma。
注:有可能出现
TECPLOT编辑公式求马赫数出现overflow or underflow in divide operation
原因:是因为temperature为0,导致除法出现0
解决办法:在temperature的基础上0.0001,只要比0大一点就行。