升力系数算出来后面收缩了,一开始以为是涡脱落被数值耗散掉了。查了一圈发现大概率是时间步长设太大了。圆柱绕流的涡脱落频率是 St*U/D,时间步要取到涡脱落周期的二十分之一以下才能捕捉到完整的正弦波形。步长太大会把高频涡抹平,升力系数振幅自然就往下掉。
时间步长不是唯一原因。计算域宽度不够也常见,侧边界离圆柱太近会强迫流动提前分离,尾流被挤窄,涡街摆不开。圆柱直径D,侧边界要放到10D以外,出口要拉到20D到25D。下游回流区算不完整的时候,升力系数也会衰减。
网格分辨率。圆柱壁面附近第一层网格要能捕捉边界层,y+控制在1左右。尾流区沿着中心线要加密,尤其是圆柱后方5D到10D的范围,涡核就在那一带生成。网格尺寸突变也会引起数值耗散,相邻网格的尺寸比不能超过1.2。

之前算一个Re=100的二维圆柱绕流,升力系数前几个周期振幅在0.3左右,跑到第十个周期变成0.15,再往后基本是一条直线。第一反应是收敛了,后来发现是时间步给了0.01秒,涡脱落周期大概是0.32秒,每步转了快两度,相位分辨率不够,涡对在尾流里被数值黏性耗散了。改成0.005秒之后,前五个周期振幅稳定在0.32附近,跟文献里的0.33对上了。那天在等一个算例的结果,屏幕上的残差曲线一直往下掉,我盯着看了一个多小时,后来才发现曲线是掉了,升力系数的波形也掉下去了。
湍流模型选k-ω SST和k-ε对升力系数的预测差很多。SST在分离区预测更准,升力系数振幅跟实验对得上,k-ε在圆柱后方分离点位置偏后,涡脱落频率算出来偏低。Re小于300的时候用层流模型,不需要湍流模型,直接用Laminar,加了湍流模型反而把涡黏性加进去,涡被抹平了。

参考值设置要检查。Report Reference Values里面面积和长度输错的话,升力系数的绝对值会差一个量级,但周期性的收缩形态不会变。如果曲线形状对但数值偏小,先查参考值的Area和Length,Length填圆柱直径,Area填圆柱的投影面积。
监测点放在圆柱表面的一侧,不要放在尾流中心线上。放在尾流中心线上的话,升力系数的正负波动会被平均掉,看起来就像衰减了一样。放在圆柱上表面或者下表面,压力脉动能直接反映涡脱落的交替过程。
路径汇总:时间步长按 St*U/D 算,取周期的二十分之一以下。计算域侧边界10D,出口25D。y+控制在1左右,尾流区加密。湍流模型Re小于300用层流。参考值检查Area和Length。监测点放圆柱表面不要放尾流中心线。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删