#include "udf.h"
DEFINE_ZONE_MOTION(motion_ypos,omega,axis,origin,velocity,time,dtime)
{
real ang_vel_outer =
4.0;
real
x1,y1,x2,y2,current_angle,next_angle ;
real offset_angle =
0.0;
current_angle =
ang_vel_outer * (CURRENT_TIME ) + offset_angle ;
next_angle =
ang_vel_outer * (CURRENT_TIME + CURRENT_TIMESTEP) + offset_angle
;
x1=
-1.0*sin(current_angle);
y1=
1.0*cos(current_angle);
x2=
-1.0*sin(next_angle);
y2=
1.0*cos(next_angle);
velocity[0] = (x2 - x1) /
CURRENT_TIMESTEP;
velocity[1] = (y2 - y1) /
CURRENT_TIMESTEP;
origin[0] = x2;
origin[1] =
y2;
*omega = ang_vel_outer /
2.0;
return;
}
DEFINE_ZONE_MOTION(motion_xpos,omega,axis,origin,velocity,time,dtime)
{
real ang_vel_outer =
4.0;
real
x1,y1,x2,y2,current_angle,next_angle ;
real offset_angle =
-M_PI/2.0;;
current_angle =
ang_vel_outer * (CURRENT_TIME ) + offset_angle ;
next_angle =
ang_vel_outer * (CURRENT_TIME + CURRENT_TIMESTEP) + offset_angle
;
x1=
-1.0*sin(current_angle);
y1=
1.0*cos(current_angle);
x2=
-1.0*sin(next_angle);
y2=
1.0*cos(next_angle);
velocity[0] = (x2 - x1) /
CURRENT_TIMESTEP;
velocity[1] = (y2 - y1) /
CURRENT_TIMESTEP;
origin[0] = x2;
origin[1] =
y2;
*omega = ang_vel_outer /
2.0;
return;
}
DEFINE_ZONE_MOTION(motion_yneg,omega,axis,origin,velocity,time,dtime)
{
real ang_vel_outer =
4.0;
real
x1,y1,x2,y2,current_angle,next_angle ;
real offset_angle =
M_PI;
current_angle =
ang_vel_outer * (CURRENT_TIME ) + offset_angle ;
next_angle =
ang_vel_outer * (CURRENT_TIME + CURRENT_TIMESTEP) + offset_angle
;
x1=
-1.0*sin(current_angle);
y1=
1.0*cos(current_angle);
x2=
-1.0*sin(next_angle);
y2=
1.0*cos(next_angle);
velocity[0] = (x2 - x1) /
CURRENT_TIMESTEP;
velocity[1] = (y2 - y1) /
CURRENT_TIMESTEP;
origin[0] = x2;
origin[1] =
y2;
*omega = ang_vel_outer /
2.0;
return;
}
DEFINE_ZONE_MOTION(motion_xneg,omega,axis,origin,velocity,time,dtime)
{
real ang_vel_outer =
4.0;
real
x1,y1,x2,y2,current_angle,next_angle ;
real offset_angle =
M_PI/2.0;
current_angle =
ang_vel_outer * (CURRENT_TIME ) + offset_angle ;
next_angle =
ang_vel_outer * (CURRENT_TIME + CURRENT_TIMESTEP) + offset_angle
;
x1=
-1.0*sin(current_angle);
y1=
1.0*cos(current_angle);
x2=
-1.0*sin(next_angle);
y2=
1.0*cos(next_angle);
velocity[0] = (x2 - x1) /
CURRENT_TIMESTEP;
velocity[1] = (y2 - y1) /
CURRENT_TIMESTEP;
origin[0] = x2;
origin[1] =
y2;
*omega = ang_vel_outer /
2.0;
return;
}
###################################
#include "udf.h"
DEFINE_ZONE_MOTION(fmotion,omega,axis,origin,velocity,time,dtime)
{
if (time < 0.1)
{
*omega = 2500.0 *
time;
}
else
{
*omega = 250.0;
}
N3V_D (velocity,=,1.0,0.0,0.0);
N3V_S(origin,=,0.0);
N3V_D(axis,=,0.0,0.0,1.0);
return;
}
####################################
加载中,请稍候......