UDF中编译for循环语句出错
浏览:86777 回答:9
UDF代码如下:
代码是为了实现对计算区域进行速度为梯形波的运动模式的加载,即速度由0加速(x正方向,达到一定速度时)→匀速(一段时间)→减速(到x反向速度)→反向匀速→减速(正向速度)……,为了实现这么一个运动模式。
#include "udf.h"
DEFINE_TRANSIENT_PROFILE(z_omiga,time)
{
real z_omiga = 0.0;
real T0 = 0.0741;
if(time<=1/2*T0)
{
z_omiga =63.6173*time;
}
else if(time>1/2*T0&&time<=T0)
{
z_omiga = 2.3562;
}
else if(time>T0&&time<=3/2*T0)
{
z_omiga = 2.3562-63.6173*(time-T0);
}
else if(time>3/2*T0)
{
for(i=0;i<=30;i++)
{
if(time>(3/2+5*i)*T0&&time<(2+5*i)*T0)
{
z_omiga = -63.6173*(time-(3/2+5*i)*T0);
}
else if(time>(2+5*i)*T0&&time<=(7/2+5*i)*T0)
{
z_omiga = -2.3562;
}
else if(time>(7/2+5*i)*T0&&time<(9/2+5*i)*T0)
{
z_omiga = 2.3562-63.6173*(time-(7/2+5*i)*T0);
}
else if(time>(9/2+5*i)*T0&&time<=(6+5*i)*T0)
{
z_omiga = 2.3562;
}
else if(time>(6+5*i)*T0&&time<(13/2+5*i)*T0)
{
z_omiga = 2.3562-63.6173*(time-(13/2+5*i)*T0);
}
}
}
z_omiga = 0.0;
return z_omiga;
}
interpreted到Fluent中,错误提示为:z_omiga_0.75pi_22rpm_30T_adv.c: line 20: i: undeclared variable,即标红的for语句行出错,大神们,应该如果改进? 或者如何重新编译这个UDF实现速度为梯形波的运动模式?
代码是为了实现对计算区域进行速度为梯形波的运动模式的加载,即速度由0加速(x正方向,达到一定速度时)→匀速(一段时间)→减速(到x反向速度)→反向匀速→减速(正向速度)……,为了实现这么一个运动模式。
#include "udf.h"
DEFINE_TRANSIENT_PROFILE(z_omiga,time)
{
real z_omiga = 0.0;
real T0 = 0.0741;
if(time<=1/2*T0)
{
z_omiga =63.6173*time;
}
else if(time>1/2*T0&&time<=T0)
{
z_omiga = 2.3562;
}
else if(time>T0&&time<=3/2*T0)
{
z_omiga = 2.3562-63.6173*(time-T0);
}
else if(time>3/2*T0)
{
for(i=0;i<=30;i++)
{
if(time>(3/2+5*i)*T0&&time<(2+5*i)*T0)
{
z_omiga = -63.6173*(time-(3/2+5*i)*T0);
}
else if(time>(2+5*i)*T0&&time<=(7/2+5*i)*T0)
{
z_omiga = -2.3562;
}
else if(time>(7/2+5*i)*T0&&time<(9/2+5*i)*T0)
{
z_omiga = 2.3562-63.6173*(time-(7/2+5*i)*T0);
}
else if(time>(9/2+5*i)*T0&&time<=(6+5*i)*T0)
{
z_omiga = 2.3562;
}
else if(time>(6+5*i)*T0&&time<(13/2+5*i)*T0)
{
z_omiga = 2.3562-63.6173*(time-(13/2+5*i)*T0);
}
}
}
z_omiga = 0.0;
return z_omiga;
}
interpreted到Fluent中,错误提示为:z_omiga_0.75pi_22rpm_30T_adv.c: line 20: i: undeclared variable,即标红的for语句行出错,大神们,应该如果改进? 或者如何重新编译这个UDF实现速度为梯形波的运动模式?
好人版主,遇到一个新问题,您得空看看哈
http://forums.caenet.cn/showtopic-552118.aspx