我用fluent模拟含不凝气体水蒸气凝结的例子,自编udf,运行时存在问题,希望大神们帮忙看一下



  • 案例中有air、水蒸气和液体水,自己编写了定义物性的udf和水蒸气、液体水的源项以及能量源项所有的udf都可正常编译和加载。
    单独加载物性udf时,模拟正常运行。
    当加载水蒸气源项时,一运行就会提示error:received a fatal sognal (segmentation fault)
    当加载液体水源项时,一运行就会提示error:divergence detected in amg solve : x-momentum
    1.png
    (该案例所打开的模型,vof模型和组分输运模型,组分输运模型定义气体mixture包含air和水蒸气,vof模型:第一相是气体mixture,第二相是液体水)
    5.png
    6.png
    (所加载的液体源项)
    7.png
    (加载气体源项时,运行出现的错误)
    8.png
    (加载液体源项时,运行出现的错误)
    下面是我所修改的蒸汽源项的udf
    11.png
    12.png
    液体的源项udf跟气相udf大致相同
    QQ图片20210317193807.png
    (这个是源项的公式)
    求大神们帮忙看一下问题出在大概那个位置
    拜谢!!!



  • 按我的经验来看,自定义源项后发散,一般都是源项太大了。你可以这么测试,

    1. 设定源项大小为较小的常数,比如 1e-6,如果不发散,基本就确定是源项太大了;
    2. 用 UDM 把源项储存下来,看看大小。


  • @zousiyu 感谢大神的建议,上午的时候我将源项直接设定为一个很小的常数,fluent还是运行不了,还是udf本身存在问题我准备一块一块的试错,看看到底是那个地方出现了问题



  • 问题已经解决了,是因为上面的程序没有对网格进行循环,只是对一个网格的所有面进行了循环,所以才存在问题


Log in to reply
 


CFD中文网 | 东岳流体学术 | 东岳流体商业 | 吉ICP备20003622号-1