找回密码
 注册
查看: 2865|回复: 5

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

[复制链接]
发表于 2006-7-4 10:26:21 | 显示全部楼层 |阅读模式

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

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

x
想做三维管路的流场仿真,模拟参考资料上二维的情况写的udf.
想给定一个抛物曲面的入口速度,可是按照下面的程序,在编译的时候出现16行变量没有定义的错误。Error: D:\user\R\velocity-inlet.c: line 16: Z: undeclared variable请高手帮我看看到底哪里出了问题,谢谢。

/*******************************************************************/
/* vprofile.c                                              */
/* UDF for specifying steady-state velocity  boundary condition   */
/*****************************************************************/
#include "udf.h"
#include "math.h"
DEFINE_PROFILE(inlet_y_velocity, thread, position)
{      real x[ND_ND];   
      real y;
      real z;
      face_t f;
      begin_f_loop(f, thread)
    {
        F_CENTROID(x,f,thread);
        y= x[1];
        Z= x[2];
      F_PROFILE(f, thread, position) =2-(y*y+z*z)/(0.005*0.005)*2;
     }
     end_f_loop(f, thread)
}
发表于 2006-8-15 20:37:25 | 显示全部楼层

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

我试了一下,确实提示“Z”undeclared variable
不过我把z随便换成y1结果通过了,,奇怪,这个程序是没有错误的阿
发表于 2006-8-16 16:34:22 | 显示全部楼层

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

在C语言中,大写字母和小写字母分别代表不同的变量,在你的程序中 "real z "中的z是小写,而在“Z= x[2];”中Z是大写,因此会出错。
  
发表于 2006-8-16 19:08:56 | 显示全部楼层

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

楼上的够细心,,赞
发表于 2006-9-1 10:53:44 | 显示全部楼层

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

是啊,C编程要区分大小写
发表于 2006-9-20 18:34:49 | 显示全部楼层

[求助]高手能帮我看看三维速度入口的udf在哪里出现问题了么?

赞成,c语言对格式要求很严格
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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