先说流场、温度场、凝固是不是应该一起计算。
首先一般是要考虑凝固的,因为有凝固坯壳后,对计算域内的流动是有一定的影响的。考虑凝固坯壳的形成重点是对凝固坯壳移动的处理,因为如果不考虑坯壳随着拉速的移动,就会出现坯壳静止的冷却过程,计算到最后是结晶器内部钢液完全凝固,而后面二冷区内钢液温度仍然较高,这和实际情况是不同的。可以采用fluent中有pull velocity来设置凝固后的坯壳随着拉速的移动,要重点注意patch格式的理解,保证patch是有效且正确的。可以这么说,如果要计算温度,就必须考虑坯壳,考虑坯壳的潜热、凝固后被拉出计算域。如果只计算流场,可以忽略坯壳。所以,如果计算温度的话,必须考虑坯壳的影响,并且这个过程必须用非稳态来计算,不能用稳态计算。而且从水口进入的钢水使得结晶器内的流动很复杂,要求计算的时间步要很小,否则极易发散。并且,即使是在计算温度场的时候关闭了流场,已经存在的流场还是会对温度场的计算造成影响的。所以计算过程是:
- 计算钢液不是从水口进入,而是从弯月面进入,得到一个比较稳定的流场,这个的目的主要是为了后面温度计算时时间步可以大一点;这个用稳态计算。
- 流场收敛后,关闭流场,开启温度场,开启凝固融化模型,要记得给pull velocity,很重要,如果是直的结晶器直接就是和出口一样的方向,如果是弧形或者整个铸坯,就在最后铸坯拉出的方向上给patch 一个pull velocity。其他表面还是静止的wall,不用设置移动。这个用非稳态计算,很重要。总的时间是根据拉速和铸坯长度估计。
- 温度场、坯壳计算好后。可以关闭温度场,在开启从水口进入的流动,计算有坯壳的流场,用稳态计算。到此就完成了流场和温度场的计算。
- 但是有个问题,就是水口对流场的影响,流场又对温度场有影响,在上面的计算中没有体现,因为在3中并没有同时计算流场和温度场,只是在温度场计算后获得的坯壳的基础上计算了流场,没有考虑注流向两侧坯壳的冲击,导致两侧温度升高,坯壳减薄,因此这种计算方法得到的坯壳厚度是从弯月面向下逐渐增厚,并没有出现冲击区域的坯壳减薄。解决方法是在最后同时开启流场、温度场、用非稳态计算进行耦合,研究水口对流场、温度场的影响。
这些过程可以结合对jou脚本文件的理解,写成一个jou脚本文件,一次进行所有的计算设置就可以了。在写jou脚本文件之前,首先在fluent中,定义水口入口为速度入口的边界条件,定义弯月面为速度入口的边界条件,patch pull velocity,定义非稳态计算的时间步。定义好边界条件后,调整为步骤1计算所需的模式,由于公司的高性能计算平台不支持断点续算,因为没有办法在完成一个计算步骤后,对cas文件进行修改然后上传计算下一步,因此要求在最开始的jou脚本文件中对稳态/非稳态、边界条件的切换和定义、时间步的调整进行控制,具体可以参考jou文件。
具体过程如下:
- 造型与网格划分
如果是自己建立模型,和一般的数值模拟的过程是相同的。如果有CAD的二位图纸,可以导入到ProE中,拉伸生成铸坯三维,然后在画水口就可以了,这样的优势是可以保留弯曲和矫直的细节。
关于CAD怎么导入到ProE中,可以将CAD文件保存为dxf格式,然后打开ProE,在草绘模块下---插入----数据来自文件----文件系统----找到位置。
- 简化流场的计算
在计算过程中,由于直接将凝固壳与连铸坯流场耦合计算时即使将网格划分较小,其结果仍然发散,因此在计算过程中首先对连铸坯的凝固壳进行计算,计算方式如下:首先假设钢液从弯月面加入,在凝固壳的计算过程中,忽略从水口进入的注流对凝固壳的影响。在计算过程中首先将流场加入到弯月面上,在初始化后冻结温度场的计算,然后稳态方式进行流场计算。其具体设置见文件夹《流场从弯月面加入》。
从弯月面加入的流场速度为下式所示。
|
1 |
式中,vmeniscus是弯月面处加入的流场速度;vc是连铸机拉坯速度;Sc是连铸坯断面面积;Smeniscus是弯月面的面积。
- 简化凝固壳的计算
在“钢液从弯月面加入”这一步计算完成后,冻结流场计算,采用非稳态方式计算凝固壳。时间步长可以设置0.1~0.2,一般以0.1为佳,计算步数一般采用下式进行估计。具体设置见文件夹《凝固壳计算》。
|
|
在计算完成后会得到如文件夹《凝固壳计算》中的结果
- 准真实流场的计算
在得到稳定的凝固壳以后,冻结温度场计算,将流场加入到水口处,将弯月面的边界条件设置为wall,然后采用稳态的方式进行流场计算。具体设置和结果见文件《夹杂物计算结果》。
- 夹杂物计算
在得到稳定的流场后进行夹杂物计算,在DPM模型的injection面中选择group类型,可以控制粒子数量,便于后续的上浮率的统计,并且保证定义的粒子进入区域在水口内部。在计算过程中设置多个标记面,标记面的定义是在沿着铸坯方向间隔一定的距离定义一个plane,要尽量保证plane是和垂直于拉坯方向的,记录夹杂物在标记面上的通过状况。计算设置如图1所示。计算结果见文件夹《夹杂物计算结果》。
Injection面设置
图1 夹杂物计算示意
- 夹杂物处理说明
在夹杂物运动过程中,由于一些夹杂物会做回旋运动,因此在一些标记面上标记的夹杂物是重复的,因此需要将这些重复的夹杂物去除,其处理后的结果见文件夹《处理后标记面上的结果》。
然后考虑夹杂物被凝固坯壳捕捉时凝固壳的固相分数得到夹杂物被捕捉的温度Ttrapped,然后去除温度高于Ttrapped的夹杂物,说明当时粒子经过的区域为液相,不能被捕获,而温度低的可以被捕获,由于从fluent中输出的是各个面的实际座标位置,并不能直接进行叠加,需要首先进行左边的映射转换,这个过程通过几何关系完成,然后将各个标记面上的夹杂物整合到一起,这时可以采用origin进行画图,也可采用文件夹《图片处理》中matlab文件gang0进行处理,即可得到夹杂物在连铸坯内的概率分布的等值线云图。同时,如果为了显示结果更加美观,可以采用surfer进行后处理。
- 公司高性能平台使用说明
使用前需要先联系CAE的张瑶,获得账号才可以计算。
网址:http://10.64.11.110:9016/servlet/ShowQueue?state=801
1、新建project,其中的billing选择CAE
2、其中solver中有多个软件,fluent有MPI和SMP两种并行模式,建议选SMP。由于fluent正版限制,CPU个数最多可以选择8个,超过8个就会license error。
3、上传计算文件,保证计算cas和jou文件在一个文件夹中,并且压缩成zip的压缩包上传。上传后平台自动解压,然后定义cas文件为M文件,定义jou文件为J文件。提交就可以计算。计算过程中可以点开log文件查看计算过程。
- 高性能平台计算用jou文件
/file/read-case 设置读入case,或者mesh,可以自己录制这个命令。
CC-steady.cas cas的名字
/file/auto-save/data-frequency/500 设置500次保存一次data,页可以对cas保存进行设置
/solve/initialize/initialize-flow 初始化
/solve/patchfluid () y-pull-velocity 0.01166 对PULL速度初始化,一定要有名字,这里是fluid
/solve/iterate 3002 稳态方式计算3002次,
/define/models/unsteady-1st-order? y 改为非稳态计算
/solve/set/equations/flow no 关闭流场
/solve/set/equations/ke no 关闭流场
/solve/set/equations/temperature yes 开启温度场
/solve/set/time-step 0.001 时间步长0.001
/solve/dual-time-iterate
2000 计算2000个时间步
20 每个时间步内最多20次计算
/solve/set/time-step 0.005 修改时间步长为0.005
/solve/dual-time-iterate
20000
20
/solve/set/time-step 0.01
/solve/dual-time-iterate
20000
20
/solve/set/time-step 0.05
/solve/dual-time-iterate
20000
20
/define/models/steady? y 在改回来,改成稳态计算
/define/boundary-conditions/zone-type up wall 对边界条件的修改,up是名字,wall是类型
/define/boundary-conditions/zone-type in velocity-inlet 把in改成速度入口
/define/boundary-conditions/velocity-inlet in no no yes yes no 1.869 no 0. no 1825. no no no yes 5. 1.修改类型后,对速度入口进行定义,中间有很多空格,是固定的格式,可以在fluent中先用TUI模式录下jou文件,然后根据需要去改正。
/solve/set/equations/flow yes 开启流场
/solve/set/equations/ke yes 开启流场
/solve/set/equations/temperature no 关闭温度
/solve/iterate 5000 稳态计算5000次
/file/write-case-data 这是最后了,保存cas和data
/file/confirm-overwrite no 需要注意,问是否覆盖,就覆盖吧,
!chmod +x cleanup*.sh 下面这几行是固定的,不需要管。
!./cleanup*.sh 或者是因为公司是服务器的原因才有的,删除试试也行。可能个人PC就不用这几句。
!rm -f cleanup*.sh
exit
- jou文件在后处理中的一些应用拓展
一般的计算多是平行的计算,通过改变某个量的值,观察结果的变化,从而找到最优的取值范围,因此在后处理的时候就会出现很多重复的步骤,这样可以通过录制jou文件,对一系列的结果进行处理,提高工作效率;同时,为了方便后处理的结果具有好的对比性,往往需要统一标尺、放大比例等操作,这个过程也可以录制到jou文件中,可以保证后处理保存的图片的一致性,方便对结果的分析。