找回密码
 注册
查看: 2232|回复: 6

动量方程及UDS原项都有函数f(x)请问udf怎么写

[复制链接]
发表于 2012-10-9 19:01:14 | 显示全部楼层 |阅读模式

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

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

x
RT
动量方程和UDS方程中的原项都是f1(x,y)和f2(x,y)的函数,我在哪儿定义这几个函数然后写udf的时候直接调用呢,菜鸟求教各位高手,万分感谢
 楼主| 发表于 2012-10-10 14:08:45 | 显示全部楼层
高手在哪儿,能不能给个建议怎么写啊,我以前是不定义这个函数f1(x)和f2(x),因为这两个函数都是已知的多项式形式,我直接在原项里面把这个多项式给写进来,但是现在函数太长了,我直接写的话那是好长一串,我就想把多项式先给定义成函数,然后直接调用就行了,但是我不知道怎么定义,求教啊求教,有没有好心人呐
发表于 2012-10-10 16:17:07 | 显示全部楼层
原帖由 HATA 于 2012-10-10 06:08 发表
高手在哪儿,能不能给个建议怎么写啊,我以前是不定义这个函数f1(x)和f2(x),因为这两个函数都是已知的多项式形式,我直接在原项里面把这个多项式给写进来,但是现在函数太长了,我直接写的话那是好长一串,我就想把多 ...

把DEFINE_SOURCE当成一个函数来写就行。在DEFINE_SOURCE中调用f1,f2之前先申明,然后就可以调用了。
#include "udf.h"
real f1(real x,real y);
real f2(real x,real y);

DEFINE_SOURCE(source,c,t,dS,eqn)
{
.....
}

real f1(real x,real y)
{

......
}

real f2(real x,real y)
{
......
}

[ 本帖最后由 gearboy78 于 2012-10-10 08:18 编辑 ]
 楼主| 发表于 2012-10-11 10:09:40 | 显示全部楼层

回复 3# gearboy78 的帖子

那是不是我需要多项式写在前面的那个f(x)上啊就是
#include "udf.h"
real f1(real x,real y)=ax+by+cx^2......;
real f2(real x,real y)=dx+ey+......;
还有DEFINE下面那个
real f1(real x,real y)
real f2(real x,real y)是做什么的啊,声明变量?我是菜鸟,以前的c语言早还给老师了
 楼主| 发表于 2012-10-11 10:22:16 | 显示全部楼层

回复 3# gearboy78 的帖子

呃,忘了感谢这位高手了,一激动忘了 大哥我谢你了,求求你再帮我解说明白呗
发表于 2012-10-11 15:07:19 | 显示全部楼层

回复 4# HATA 的帖子

定义成子函数,调用就成了
real f1_function(real x,real y)
{........};
real f2_function(real x,real y)
{........};
DEFINE_SOURCE(source,c,t,dS,eqn)
{

f1=f1_function;
f2=f2_function;

}
 楼主| 发表于 2012-10-11 15:18:22 | 显示全部楼层

回复 6# madongdong 的帖子

嗯,我貌似明白了,谢谢我爱罗同学O(∩_∩)O
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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