fluent非错误提示



  • 给位老师同学,我最近有个case一计算就提示我数据类型的问题,但是计算并没有发散。我用的版本是14.0,计算用了欧拉双流体,开了传质和反应,开了PBM模型,加载了UDF。百度了,也查了fluent手册,都没有说明这个提示是什么意思。是c语言的提示么?有没有同学老师遇到过类似的问题?这是为什么?

    2020-09-02_161117.jpg 2020-09-02_161110.jpg



  • @walten
    没有老师遇到过么。。这是c的问题还是udf的问题啊。。。:mihu:


  • Linux讲师 OpenFOAM讲师

    c 的问题,数据类型在不同的系统上位数不一样,一般 long 和double 的位数和系统对齐,int 小一倍。 这估计是系统位数没对上, int 是 32 位的,long 不是 32 就该是 64。如果是32那不会出现异常,应该是定为64又找不到64,就成0了。

    可能是因为 fluent 不是在 x64 commander 里开的。



  • @bestucan
    之前从来没遇到这个问题,这个怎么解决呢老师?我需要修改c还是fluent启动项?而且我UDF里并没有用到int型,,用的是real。。。


  • Linux讲师 OpenFOAM讲师

    @walten 这样,把所有的程序都用“ /* */ ”包住,只留个 #include<udf.h>。然后编译。如果还出错,那就是 fluent 或者 visual studio 的问题了。如果没有出错,就移动 "/*" 的位置,把代码慢慢解除注释,看解除到哪里错误出现,就知道了。



  • @bestucan
    我也这么想过,看来也只能如此逐行破解了,谢谢老师,我回头试试,不过只是在启动软件首次开始算的时候会出现,暂停计算,然后继续,就不会提示了。



  • @bestucan
    试了试,并不是udf的问题,而是fluent自带pbm的问题,我试了14.0和19.2两个版本,合并模型用luo的,破碎模型选择luo和 lehr的都会出现该问题。合并和破碎都用常数或者合并用湍流模型,不会出现该提示,其他模型暂时没有试,所以我感觉就是fluent在调用luo和lehr的合并破碎模型的时候出的问题,究竟为啥,咱也不知道。。也没法知道。。。


  • Linux讲师 OpenFOAM讲师

    @walten 开 fluent 的时候那个小窗口选的是双精度浮点么?如果是,我唯一能想到的就是把visual sutdio 卸干净再装了:mihu:

    按说这种错误出现在预编译阶段,设定编译的位数什么的



  • @bestucan 开的是双精度的,之前用pbm都是自己写UDF的,这次用的自带的,第一次遇到这个问题。。。回头有空搞搞,这感觉是软件自身的问题,我装个低版本的c试试,现在装的是 2012,改明儿装个2010,我还是感觉2010比较稳定。


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2