24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1472  |  回复: 7

Cavalier2008

铁杆木虫 (正式写手)

[交流] 【讨论】请问大家用UDF的时候,有没有碰到如下代码,很重要的已有2人参与

请问大家用UDF的时候,有没有碰到如下代码:cpp -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/cortex/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/client/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/multiport/src" -I. -DUDFCONFIG_H="" "E:\work\moni\udf
xample.c"
temp definition shadows previous definition
这些代码是表示编译成功嘛?还是有错误?
请各位高手指点一二~
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

Just do it!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Cavalier2008

铁杆木虫 (正式写手)

nono2009:专业区请不要纯表。谢谢。 2010-08-24 08:34:20
2楼2010-08-23 18:40:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sghudng

铜虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
Cavalier2008(金币+1):谢谢交流~ 2010-08-24 19:06:56
robert2020(金币+1):多谢应助,鼓励继续解答! 2010-08-25 02:00:12
引用回帖:
Originally posted by Cavalier2008 at 2010-08-23 18:37:57:
请问大家用UDF的时候,有没有碰到如下代码:cpp -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/cortex/src" -I"D:\PROGRA~1\Fluent.Inc\fluent ...

没事,就是说你的定义或者赋值覆盖了前面的
3楼2010-08-24 10:52:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Cavalier2008

铁杆木虫 (正式写手)

引用回帖:
Originally posted by sghudng at 2010-08-24 10:52:51:

没事,就是说你的定义或者赋值覆盖了前面的

覆盖前面的什么呢?
大侠以前也碰到这样的问题没呢?
Just do it!
4楼2010-08-24 19:03:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Cavalier2008

铁杆木虫 (正式写手)

引用回帖:
Originally posted by sghudng at 2010-08-24 10:52:51:

没事,就是说你的定义或者赋值覆盖了前面的

udf最多支持多少位的有效数字啊?
Just do it!
5楼2010-08-25 10:09:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sghudng

铜虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
zzuwangshilei(金币+1):鼓励讨论 2010-08-26 21:26:11
引用回帖:
Originally posted by Cavalier2008 at 2010-08-24 19:03:44:

覆盖前面的什么呢?
大侠以前也碰到这样的问题没呢?

比如说,系统默认里有INLET这个变量,但是你又定义了一个INLET变量,你就把前面的定义给覆盖掉了。这只是一个提醒,并不是报错
6楼2010-08-26 16:13:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sghudng

铜虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
zzuwangshilei(金币+1):鼓励讨论 2010-08-26 21:26:17
Cavalier2008(金币+1):谢谢热心交流以及帮助 2010-08-27 08:53:12
引用回帖:
Originally posted by Cavalier2008 at 2010-08-25 10:09:03:

udf最多支持多少位的有效数字啊?

这个我倒不敢说,但是我编的时候会多写几位的,反正超过了范围被忽略掉也没什么,但是你要是有效数字写少了,碰到小面或者小体叠加造成的误差就郁闷了
7楼2010-08-26 16:16:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Cavalier2008

铁杆木虫 (正式写手)

引用回帖:
Originally posted by sghudng at 2010-08-26 16:16:01:

这个我倒不敢说,但是我编的时候会多写几位的,反正超过了范围被忽略掉也没什么,但是你要是有效数字写少了,碰到小面或者小体叠加造成的误差就郁闷了

你有没有看UDF编译后的编译文件啊,我看了下,怎么双精度的都默认只支持六位啊?
如下所示:
cpp -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/cortex/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/client/src" -I"D:\PROGRA~1\Fluent.Inc\fluent6.3.26/multiport/src" -I. -DUDFCONFIG_H="" "E:\water\water\udf
xample.c"
temp definition shadows previous definition
                .entry
cell_viscosity:
                .local.int cell (r0)
                .local.pointer thread (r1)
    0           .local.end
    0           save
                .local.double mu_lam (r3)
    1           push.double 0
                .local.double temp (r4)
    3           ld.pointer thread (r1)
    5           push.int 56
    7           pointer.incr
    8           push.int 464
   10           pointer.incr
   11           slda.pointer
   12           ld.int cell (r0)
   14           push.int 8
   16           mul.int
   17           pointer.incr
   18           slda.double
   19           push.double 2787.23
   21           push.double 41.8107
   23           ld.double temp (r4)
   25           mul.double
   26           sub.double
   27           push.double 0.250623
   29           ld.double temp (r4)
   31           mul.double
   32           ld.double temp (r4)
   34           mul.double
   35           add.double
   36           push.double 0.000750299
   38           ld.double temp (r4)
   40           mul.double
   41           ld.double temp (r4)
   43           mul.double
   44           ld.double temp (r4)
   46           mul.double
   47           sub.double
   48           push.double 1.12172e-006
   50           ld.double temp (r4)
   52           mul.double
   53           ld.double temp (r4)
   55           mul.double
   56           ld.double temp (r4)
   58           mul.double
   59           ld.double temp (r4)
   61           mul.double
   62           add.double
   63           push.double 6.69932e-010
   65           ld.double temp (r4)
   67           mul.double
   68           ld.double temp (r4)
   70           mul.double
   71           ld.double temp (r4)
   73           mul.double
   74           ld.double temp (r4)
   76           mul.double
   77           ld.double temp (r4)
   79           mul.double
   80           sub.double
   81           sto.double mu_lam (r3)
   83           pop.double
   84           ld.double mu_lam (r3)
   86           ret.double
   87           restore
   88           ret.v
请看,怎么push.double 后面跟的都是6位有效数字啊,我这个是用interpreted编译的,我的原来的数字都是10位有效数字,编译时选display assembly listing,在fluent控制窗口显示的这个让我感觉udf到底支不支持双精度,C语言可是支持双精度,默认15~16位的,难道Udf基于C语言,却不支持双精度这么长的有效数字?

[ Last edited by Cavalier2008 on 2010-8-27 at 08:54 ]
Just do it!
8楼2010-08-27 08:52:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 Cavalier2008 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见