找回密码
 注册
查看: 2160|回复: 4

有哪位高手帮我看一下这个UDF程序哪里出了问题?

[复制链接]
发表于 2013-4-15 08:22:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
以下是我编的程序,物理问题是把日平均温度赋给空气温度。日平均温度是随时间变化,会有不同的数值。在此UDF程序中,我只列出了两天的日平均温度。
  #include "udf.h"
#define c 24;
Domain*domain;
face_t f;
Thread*t;
real n,current_time;

DEFINE_PROFILE(air_temp,t,i)
{

domain=Get_Domain(1);
t=Lookup_Thread(domain,4);
current_time=RP_Get_Real("flow-time");

begin_f_loop(f,t)
{
for(n=0;n<=10;n++)
{
if(current_time>=n*8760&&current_time<=n*8760+c)
F_PROFILE(f,t,i)= 0.47;

else if(current_time>(c+n*8760)&&current_time<=(n*8760+2*c))
F_PROFILE(f,t,i)= 1.91;
}
}
end_f_loop(f,t)
}


这个程序运行之后出现错误,错误提示如下:

.\..\src\air_temprature.c(19) : error C2143: syntax error : missing ')' before ';'
..\..\src\air_temprature.c(19) : error C2059: syntax error : ')'
..\..\src\air_temprature.c(22) : error C2181: illegal else without matching if
..\..\src\air_temprature.c(22) : error C2143: syntax error : missing ')' before ';'
..\..\src\air_temprature.c(22) : error C2059: syntax error : ')'
有哪位高手帮我看一下,我的程序是哪里出了问题?
 楼主| 发表于 2013-4-15 08:35:52 | 显示全部楼层

回复 1# 希望drm 的帖子

知道了,把#define c 24; 改成const c=24;就没有问题了。
发表于 2013-4-15 10:47:17 | 显示全部楼层
t=Lookup_Thread(domain,4);
这句有必要吗
 楼主| 发表于 2013-4-15 18:56:25 | 显示全部楼层

回复 3# liyanppkdc12 的帖子

我做的赋给空气的值,但是在我的模型里没有专门做空气的模型,只有与空气接触的土壤的模型,因为我要做土壤与空气的换热,因此我试着把这个温度值先加到这个土壤的上表面上,看看能不能再土壤上表面的初始条件中找到这个空气温度的udf赋值程序。
发表于 2015-8-31 10:31:16 | 显示全部楼层
这是做什么呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表