找回密码
 注册
查看: 2264|回复: 1

udf程序,哪个大神知道怎么改吗?谢谢啊

[复制链接]
发表于 2013-9-5 09:04:12 | 显示全部楼层 |阅读模式

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

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

x
include"udf.h"
#include<stdio.h>
#include<math.h>
DEFINE_SOURCE(qxbqx_source,c,t,dS,eqn)
{
#define H 0.1
#define h 0.7
#define k 00
#define w 3.1415
#define g 9.81
#define pi 3.1415
#define rol 1

real dt;
real deltat;
real c1;
real x[ND_ND];
real y;
real source;

C_CENTROID(x,c,t);
y=x[1];
dt=RP_Get_Real("flow-time");
deltat=RP_Get_Real("physical-time-step");

if(x[0]>=5&&x[0]<=10)
{
        if(y>=-0.7&&y<=0)
{
                c1=sin((x[0]-5)*pi/10);

        source=rol*(c1-1)*((H*w*cosh(k*y+k*h)*cos(k*x[0]-w*dt)/(2*sinh(k*h)))-C_U(x,t))/deltat    (第121行,提示这行错了)
                 +rol*(1-c1)*(((-g*y-g*H*cosh(k*y+k*h)*sin(k*x[0]-w*dt)*k)/(2*cosh(k*h)))
                 +(C_U(c,t)-C_U_M1(c,t))/deltat+C_U(c,t)*C_DUDX(c,t)+C_V(c,t)*C_DUDY(c,t))
                 -rol*(c1*c1-1)*((H*w*cosh(k*y+k*h)*cos(k*x[0]-w*dt)/(2*sinh(k*h)))*
                    (-H*w*cosh(k*y+k*h)*sin(k*x[0]-w*dt)*k/(2*sinh(k*h)))+
                        (H*w*sinh(k*y+k*h)*sin(k*x[0]-w*dt)/(2*sinh(k*h)))*
                        (H*w*sinh(k*y+k*h)*cos(k*x[0]-w*dt)*k/(2*sinh(k*h))))
                 -rol*(1-c1)*(1-c1)*(C_U(c,t)*C_DUDX(c,t)+C_V(c,t)*C_DUDY(c,t))
                 +rol*c1*(c1-1)*((H*w*cosh(k*y+k*h)*cos(k*x[0]-w*dt)*k/(2*sinh(k*h)))*C_DUDX(c,t)+
                    (H*w*sinh(k*y+k*h)*sin(k*x[0]-w*dt)/(2*sinh(k*h)))*C_DUDY(c,t)+
                        C_U(c,t)*(-H*w*cosh(k*y+k*h)*sin(k*x[0]-w*dt)*k/(2*sinh(k*h)))+
             C_V(c,t)*(H*w*sinh(k*y+k*h)*cos(k*x[0]-w*dt)*k/(2*sinh(k*h))));
        dS[eqn]=0;
        }
}
    return source;
}

..\..\src\zaobo.c(121) : error C2107: illegal index, indirection not allowed
..\..\src\zaobo.c(121) : error C2113: pointer can only be subtracted from another pointe
发表于 2013-9-5 16:36:58 | 显示全部楼层
你把式子简略点写,H*w*cosh(k*y+k*h)*sin(k*x[0]-w*dt)*k/(2*sinh(k*h))这种我就看到好几个,把这些类似的项先算成系数,比如A、B什么的,然后再算。式子太长,没法读,错误更容易出现。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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