PISO法 — 非定常计算的故障排除

分类:流体解析 | 2026-02-20
本文已迁移至综合版本
更全面的内容请查看 piso-algorithm.html
CAE visualization for piso algorithm troubleshoot - technical simulation diagram
PISO法 — 非定常计算的故障排除

PISO法的典型问题

🙋

用PISO法进行非定常计算时发散了,原因是什么?


🎓

让我们看看PISO法发散的五大原因。


1. CFL数太大

🎓

症状:计算开始直后或流场发展后发散


对策


2. 初始条件不适当

🎓

症状:在最初几个时间步长发散


对策


3. 边界条件处的反流

🙋

出口处反流会导致发散吗?


🎓

特别是在涡脱落等问题中,出口处容易出现局部反流。


对策


4. 网格质量问题

🎓

PISO特别关注的质量指标


指标允许值PISO特有的注意事项
非正交性< 70度用nNonOrthogonalCorrectors进行修正
歪斜度< 0.85启用Skewness Correction
单元体积比< 10:1急剧变化会导致压力振荡

5. 时间离散化与空间离散化不匹配

🎓

症状:计算稳定但结果非物理


原因:使用2阶时间离散化(backward)但空间采用1阶迎风格式→时间和空间精度不平衡


对策:使时间和空间精度相匹配。如果时间是2阶,空间也应该是2阶或更高。


PISO vs PIMPLE的选择判断

🙋

请告诉我应该使用PISO还是PIMPLE的判断标准。


🎓
条件推荐理由
CFL < 1 可维持PISO简单高效
CFL > 1 需要PIMPLE外部迭代提供稳定性
移动网格PIMPLE大位移时CFL容易波动
LES/DNS(学术)PISOCFL控制下最高效
工业LESPIMPLE强调鲁棒性
🙋

如果困惑的话,PIMPLE比较安全,追求精度就用PISO,这样理解对吗?


🎓

完全正确。将PIMPLE的nOuterCorrectors=1就相当于PISO,所以也可以先用PIMPLE开始,稳定后再将nOuterCorrectors=1减少这样的策略。


Coffee Break 闲话

"用PISO进行计算,但压力振荡不停"——常见陷阱

用PISO进行非定常计算时,压力场呈锯齿状振荡——这样的咨询意外地很多。原因大多是"nCorrectors(修正循环次数)设为1"。在默认为1的求解器中,每个时间步只进行1次压力修正,所以PISO的真正优势无法发挥。改成2~3次的话,会明显变光滑。另一个原因是边界条件的时间步不一致——入口条件随时间呈阶梯状变化的话,这种不连续会在PISO迭代中被放大。PISO的故障排除,从"算法设置参数"和"边界条件的时间一致性"这两点怀疑是诊断的定石。

本文的评价
感谢您的回答!
有参考
价值
希望
更详细
报告
错误
有参考价值
0
希望更详细
0
报告错误
0
撰写者:NovaSolver Contributors
匿名工程师 & AI — 网站地图
查看个人资料

🔧 相关模拟器

通过改变参数可以实际体验这个理论 → 模拟器集合