找回密码
 注册
查看: 5027|回复: 14

VOF模型压力入口的udf问题

[复制链接]
发表于 2009-11-25 20:01:49 | 显示全部楼层 |阅读模式

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

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

x
我做一个矩形水槽的三维模拟,入口宽2m,高4m,z方向为竖直方向,z范围是(10m,14m),入口水位为12m
现在编了udf,编译通过了,却算不出合理的结果来,不知是什么地方不合适,恳请高手指教。
我怀疑z的值是不是给的不对,不知udf中z值与建模的z值坐标是否一致?能不能在计算完成后查询z的取值呢?
用下面的语句可以吗?但加了后我编译通不过,不知错在哪了

DEFINE_RW_FILE(writer,fp)
{
printf("Writing UDF data to data file...\n");
fprintf(fp,"%d",z);/*write out z to data file*/
}



#include"udf.h"
DEFINE_PROFILE(static_pressure,thread,index)
{
real x[ND_ND];
real z;
face_t f;
begin_f_loop(f,thread)
{
F_CENTROID(x,f,thread);
z=x[2]     //据说x[2]表示z轴,不知对否

F_PROFILE(f,thread,index)=998.2*9.81*(12-z);
}
end_f_loop(f,thread)
}
 楼主| 发表于 2009-11-26 20:17:12 | 显示全部楼层
怎么没人会啊?看样用Fluent的人真少啊
 楼主| 发表于 2009-11-29 09:41:46 | 显示全部楼层
还是没人会
发表于 2009-11-30 11:10:47 | 显示全部楼层

回复 3# lxy732801 的帖子

【x】2是表示z轴
 楼主| 发表于 2009-12-31 20:39:48 | 显示全部楼层
破论坛,没人懂
发表于 2009-12-31 23:22:37 | 显示全部楼层
这个这个,我认为,你的问题可能比较简单,但是你描述的不是很清楚。你udf的目的也没有用文字说明,因此就很少人有耐心去看。
发表于 2010-1-3 13:23:26 | 显示全部楼层
按照你的程序给定压力入口条件的话我感觉是没什么问题,是不是其他地方出了问题?
你可以通过在语句
z=x[2];
后面添加下面的命令查看z的取值。
Message("z:%g",z);
 楼主| 发表于 2010-5-5 14:05:41 | 显示全部楼层
好久没来了,终于有高人出招了啊,谢谢啊
 楼主| 发表于 2010-5-5 14:07:51 | 显示全部楼层
只要能查看出z值,就能知道问题出在哪了啊
发表于 2011-10-6 21:01:59 | 显示全部楼层
你解决了没有啊,我也遇到这个问题了,和你的一样
发表于 2011-10-10 09:31:34 | 显示全部楼层
原帖由 lxy732801 于 2009-11-25 12:01 发表
我做一个矩形水槽的三维模拟,入口宽2m,高4m,z方向为竖直方向,z范围是(10m,14m),入口水位为12m
现在编了udf,编译通过了,却算不出合理的结果来,不知是什么地方不合适,恳请高手指教。
我怀疑z的值是不是给 ...




不明白你出现了什么“不合理的结果”,如果仅仅考虑水面。请修改这段
z=x[2]
F_PROFILE(f,thread,index)=998.2*9.81*(12-z);

z=x[2] ;
if(z<12.0)
F_PROFILE(f,thread,index)=998.2*9.81*(12.0-z);
else
F_PROFILE(f,thread,index)=0.0;
发表于 2011-10-10 09:34:43 | 显示全部楼层

回复 2# lxy732801 的帖子

很多时候都是思维不严密造成的错误;
求人不如求己;
 楼主| 发表于 2011-10-23 11:21:16 | 显示全部楼层
我再看看
 楼主| 发表于 2011-10-29 18:05:10 | 显示全部楼层
高手也不多啊
发表于 2012-3-28 13:32:54 | 显示全部楼层
   路过学习的 呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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