24小时热门版块排行榜    

查看: 2424  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

kevinzz

金虫 (正式写手)

[求助] udf 不起作用

一个简单的能量方程udf,加了之后不起作用,不知哪里出了问题,
计算中time step size 是0.001s
/*****************************************************/
/*To be defined source term is S=A*sin(2*PI*F*t)*/

#include "udf.h"
#define A 11
#define F 1000
#define PI 3.1415926

DEFINE_SOURCE(energy_source,cell,thread,dS,eqn)
{
real source;
real current_time=CURRENT_TIME;
  
source=A*sin(2*PI*F*current_time);
dS[eqn]=A*2*PI*F*cos(2*PI*F*current_time);

return source;
}
回复此楼

» 猜你喜欢

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

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

kevinzz

金虫 (正式写手)


xiegangmai(金币+1): 鼓励讨论交流! 2011-12-14 22:35:55
引用回帖:
: Originally posted by 47425804 at 2011-12-13 09:26:23:
看程序似乎没有啥大问题。
CURRENT_TIME有赋值,所以是对的。
dS[eqn]应该是对温度求导,不过对结果应该没大影响,建议等于零就行。

不起作用是怎么个不起作用法,温度没有任何变化?

现在加这个UDF和不加,算出来结果一样
是不是和我设的时间步长有关,我计算里面时间步长是0.001s, 这样对应于任意流动时间(current_time), 源项sin(2*pi*f*t)都是0, 这里f=1000.
5楼2011-12-13 10:57:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

heattransfet

新虫 (职业作家)

【答案】应助回帖


感谢参与,应助指数 +1
xiegangmai(金币+1): 谢谢应助! 2011-12-12 22:50:43
current_time应该大写吧

能量 源相的ds应该是对温度求导
此号从今天(2012-06-25)开始不用了。。。。。。。。
2楼2011-12-12 20:55:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kylafree

至尊木虫 (知名作家)


臭水沟(金币+1): 谢谢交流~~ 2011-12-13 15:02:53
随时间而变化的源项确实没碰到过;不知道为什么;期待把这个问题搞定然后分享下经验。
3楼2011-12-12 20:56:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)


【答案】应助回帖

★ ★
感谢参与,应助指数 +1
臭水沟(金币+2): 谢谢交流~~ 2011-12-13 15:03:06
看程序似乎没有啥大问题。
CURRENT_TIME有赋值,所以是对的。
dS[eqn]应该是对温度求导,不过对结果应该没大影响,建议等于零就行。

不起作用是怎么个不起作用法,温度没有任何变化?
4楼2011-12-13 09:26:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见