2023年SU2会议中的涡轮仿真教程 - part1:配置文件
2023年SU2会议中的涡轮仿真教程
教程的目的
- 帮助初学者学习SU2
- 提供一个轴流式涡轮计算的参考测试案例
学习目标
- 学习稳态(RANS)涡轮计算时相关配置选项
- 模拟计算和后处理
需要具备的知识
-
熟悉基本的CFD概念,比如:CFL number, numerics , schemes …
-
Linux终端的基本知识
-
在你的电脑上已安装SU2 v.8.0 new_turbo_outputs 和 Tecplot(后处理使用)
注:
-
由于我下载的SU2是master分支版本,配置文件中不存在
TURBO_PERF_KIND
这个选项,但new_turbo_outputs分支中的配置文件有这个选项,目前来看TURBO_PERF_KIND
对结果影响并不大,如果下载的是其他分支,注释掉这个选项就可以运行了。
测试对象
Aachen turbine
- 叶片数量:36个定子,41个转子,36个定子
- 转子以3500RMP的转速旋转
- 膨胀比:≈1.4
- 质量流量:≈7kg/s
参考:
Stephan, B., et al, https://doi.org/10.1115/2000-GT-0613
Gallus, H.E… et al https://doi.org/10.1115/1.2836568
相关文件说明
- aachen_turbine_3D_41blade.su2 --> 3D Aachen turbine (stator1 + rotor + stator2) all adjusted to 41 blade per row
- aachen_3D_MP.cfg --> SU2 configuration file for a mixplane calculation at design point (low mass flow rate case)
- stator1.cfg --> sub-configuration file with first stator settings
- rotor.cfg --> sub-configuration file with rotor settings
- stator2.cfg --> sub-configuration file with second stator settings
- 1st_order_sol folder --> 1st order solution files (flow and surface_flow)
- R_Theta_MachRel.eqn --> set of tecplot equation for the post-processing
文件点击下载
网格
Aachen turbine:
- 大约800000单元(240+360+220)
- 边界层细化
- 没有尖端间隙
- 不是为了实验验证
使用TurboGrid完成的,是结构化网格
SU2网格中边界定义
- .su2扩展名
- 可读的ASCII格式
- Marker_tag(Mesh boundaries)
边界条件(BC)
非特异性边界条件(Non-specific BCs)
-
绝热无滑移边界条件(Adiabatic No-slip BC):
MARKER_HEATFLUX= (MARKER_TAG,Value) eg: MARKER_HEATFLUX= (BLADE1, 0.0, HUB1, 0.0, SHROUD1, 0.0)
注:Value 是flux value,设置为0.0
-
周期性边界条件(Periodic BC):
MARKER_PERIODIC= (periodic marker,donor marker, rot_cen_x,rot_cen_y,rot_cen_z, rot_angle_x-axis,rot_angle_y-axis,rot_angle_z-axis, translation_x, translation_y, translation_z) eg: MARKER_PERIODIC= (PER1_STATOR1,PER2_STATOR1,0.0,0.0,0.0,0.0,0.0,8.7804878,0.0,0.0,0.0)
注:这是绕Z轴旋转的周期性边界条件,没有平移,rot_angle_z-axis=8.7804878表示紫色区域以(0,0,0)为中心点,绕Z轴旋转8.7804878获得棕色区域,就是说第一个周期旋转这个角度获得第二个周期。
非反射边界条件(Non-reflective BCs)
-
MARKER_GILES
-
inlet: marker, TOTAL_CONDITIONS_PT, Total Press.,Total Temp.,Flow dir-norm, Flow dir-tang, Flow dir-span,under-relax-avg,under-relax-fourier
-
outlet: marker, STATIC_PRESSURE_1D,Static Pres.,-, -, -,-,under-relax-avg,under-relax-fourier)
eg: MARKER_GLE5=(INFLOW_STATOR1,TOTAL_CONDITIONS_PT,153846.05,308.26,1.0,0.0,0.0,0.3,0.0,OUTFLOW_STATOR2,STATIC_PRESSURE_1D,110050.96,0.0,0.0,0.0,0.0,1.0,0.0) SPATIAL_FOURIER= YES GILES_EXTRA_RELAXFACTOR= (0.05, 0.05)
-
Mixing-plane: marker,MIXING_IN or MIXING_OUT,-,-,-,-,-,-,under-relax-avg,under-relax-fourier
eg: % 一个混合面: MARKER_GILES= (INFLOW_STATOR1, TOTAL_CONDITIONS_PT, 158245.38, 308.26, 1.0, 0.0, 0.0, 0.3, 0.0, OUTFLOW_STATOR1, MIXING_OUT, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, INFLOW_ROTOR, MIXING_IN, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, OUTFLOW_STATOR2, STATIC_PRESSURE_1D, 110050.96, 0.0, 0.0, 0.0, 0.0 , 1.0, 0.0) % 两个混合平面 MARKER_GILES= (INFLOW_STATOR1, TOTAL_CONDITIONS_PT, 158245.38, 308.26, 1.0, 0.0, 0.0, 0.3, 0.0, OUTFLOW_STATOR1, MIXING_OUT, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, INFLOW_ROTOR, MIXING_IN, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, OUTFLOW_ROTOR, MIXING_OUT, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, INFLOW_STATOR2, MIXING_IN, 0.0, 0.0, 0.0, 0.0, 0.0, 0.3, 0.0, OUTFLOW_STATOR2, STATIC_PRESSURE_1D, 110050.96, 0.0, 0.0, 0.0, 0.0 , 1.0, 0.0) % 必须指定混合平面接口标记,以激活区域之间的信息传递 % 一个混合面: MARKER_ZONE_INTERFACE= (OUTFLOW_STATOR1, INFLOW_ROTOR) % 两个混合平面 MARKER_ZONE_INTERFACE= (OUTFLOW_STATOR1, INFLOW_ROTOR, OUTFLOW_ROTOR, INFLOW_STATOR2)
-
注:
入口条件:总压,总温,流的方向:与边界垂直方向;与边界相切方向;从hub到shroud方向
出口条件:静压
想要边界条件在计算时真的是非反射边界条件,需要激活
SPATIAL_FOURIER
GILES_EXTRA_RELAXFACTOR
:Giles边界条件在hub和shroud上的额外的松弛因子在
MARKER_GILES
中使用混合平面时必须指定MARKER_ZONE_INTERFACE
Shroud BC
当我们进行稳态计算时,必须指定转子的转速,但实际上,Shroud是涡轮最大半径的表面,也就是涡轮外壳,它是不动的,也意味着Shroud不跟随转子一起旋转,可以使用下面的方式定义Shroud
MARKER_SHROUD= (marker_tag1, marker_tag2, ...)
eg:
MARKER_SHROUD= (SHROUD1, SHROUD2, SHROUD3)
注:
只适用于旋转域
如果ROTATING_FRAME选项被激活,该选项强制将边界上的速度设置为0,即GRID_VELOCITY = 0
Turbo Performance BCs
MARKER_TURBOMACHINERY=(zone_inflow,zone_outflow)
eg:
% 1对标记
MARKER_TURBOMACHINERY= (INFLOW_STATOR1, OUTFLOW_STATOR1)
% 3对标记
MARKER_TURBOMACHINERY= (INFLOW_STATOR1, OUTFLOW_STATOR1, INFLOW_ROTOR, OUTFLOW_ROTOR, INFLOW_STATOR2, OUTFLOW_STATOR2)
注:
必须为每个叶片(区域)指定流入和流出标记,遵循机器的自然生长(即从第一个叶片到最后一个叶片)。
TURBOMACHINERY_KIND=layout_1, layout_2, ... ,as many as the number of zones
eg:
TURBOMACHINERY_KIND= AXIAL AXIAL AXIAL
注:
- 指定涡轮机的类型:AXIAL, CENTRIPETAL, CENTRIFUGAL, CENTRIPETAL_AXIAL
- 对应
MARKER_TURBOMACHINERY
中的三个区域,即3对流入和流出标记
% 指定用于性能分析的机器结构(涡轮机,压缩机,螺旋桨)
TURBO_PERF_KIND = TURBINE TURBINE
注:由于我下载的SU2是master分支的版本,配置文件中不存在
TURBO_PERF_KIND
这个选项,但SU2 v.8.0 new_turbo_outputs分支中的配置文件有这个选项。
Rotating Frame
在rotor的子配置文件中,为使rotor转动,需要设置GRID_MOVEMENT
为ROTATING_FRAME
,另外还要设置原点和旋转轴,即MOTION_ORIGIN= 0.0 0.0 0.0
和ROTATION_RATE= 0.0 0.0 -366.52
% 动态网格类型 (NONE, ROTATING_FRAME)
GRID_MOVEMENT= ROTATING_FRAME
% 运动马赫数(无量纲)。用于初始化粘性流的雷诺数和计算力系数。使用动态网格
MACH_MOTION= 0.35
% 原点
MOTION_ORIGIN= 0.0 0.0 0.0
% 关于运动原点的角速度矢量(rad/s) eg: 1250 RPM -> 130.89969389957471 rad/s 转子转速是:3500RPM
ROTATION_RATE= 0.0 0.0 -366.52
% 指定旋转框架的斜坡选项(YES, NO)默认为NO
RAMP_ROTATING_FRAME= NO
% 旋转框架坡道参数(启动转速、更新-迭代-频率、坡道迭代总次数)
RAMP_ROTATING_FRAME_COEFF= (0.0, 39.0, 500)
g: 1250 RPM -> 130.89969389957471 rad/s 转子转速是:3500RPM
ROTATION_RATE= 0.0 0.0 -366.52
% 指定旋转框架的斜坡选项(YES, NO)默认为NO
RAMP_ROTATING_FRAME= NO
% 旋转框架坡道参数(启动转速、更新-迭代-频率、坡道迭代总次数)
RAMP_ROTATING_FRAME_COEFF= (0.0, 39.0, 500)
注:ROTATION_RATE= 0.0 0.0 -366.52:表示绕Z轴以366.52rad/s角速度旋转,使用右手定则判断方向,“负号”表示顺时针
Analysis & Post-proc. BCs
MARKER_PLOTTING= (BLADE1, BLADE2, BLADE3)
注:
- 流体在求解文件中的表面标记
- 涡轮仿真需要计算叶片上的情况,这里就需要设置BLADE1, BLADE2, BLADE3三个面,求解结束之后会得到三个表面的计算数据。所以在解文件夹中可以看到三个表面的解文件(surface_flow_0.dat,surface_flow_1.dat,surface_flow_2.dat),分别对应这三个叶片。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!