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

大家再来看看

[复制链接]
发表于 2006-8-8 10:46:05 | 显示全部楼层 |阅读模式

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

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

x
[这个贴子最后由lantian0606在 2006/08/08 10:48am 第 1 次编辑]

#include "udf.h"
#include "mem.h"
#include "dynamesh_tools.h"
static real v_x = 0.0,v_y=0.0,omega_z=0.0;
DEFINE_CG_MOTION(piston,dt,vel,omega,time,dtime)
{
face_t f;
cell_t c;
real f_glob[ND_ND],m_glob[ND_ND],x_cg[ND_ND],dv_x,dv_y,domega_z;
Domain *domain= Get_Domain (1);
Thread *tf1 = Lookup_Thread (domain, 3);
int i;
/* reset velocities */
NV_S(vel, =, 0.0);
NV_S(omega, =, 0.0);
if (!Data_Valid_P())
return;
for(i=0;i<=ND_ND;i++)
{
  f_glob=0;
  m_glob=0;
}
/* get the thread pointer for which this motion is defined */
for(i=0;i<ND_ND;i++)
x_cg=DT_CG(dt);

if(time<=0.001)
{
  vel[1]=34.5;
  Message ("\ntime=%f ,x=%.10lf ,y=%.10lf , force_x=%.1f ,force_y=%.1f ,moment_x=%f,moment_y=%f,moment_z=%f ,Vx=%f ,Vy=%f ,omega_z=%f\n", time,x_cg[0],x_cg[1],f_glob[0],f_glob[1],m_glob[0],m_glob[1],m_glob[2],v_x,v_y,omega_z);
  return;
}
/* compute pressure force , viscosity force and moment on body by looping through all faces */
Compute_Force_And_Moment (domain, tf1, x_cg, f_glob, m_glob, TRUE);
/* compute change in velocity and angle velocity, i.e., dv = F * dt / mass
velocity update using explicit Euler formula */
dv_x = dtime * f_glob[0] / 39400;
v_x += dv_x;
dv_y = dtime * f_glob[1] / 39400;
v_y += dv_y;
domega_z=dtime*m_glob[2]/390000;
omega_z+=domega_z;

Message ("\ntime=%f ,x=%.10lf ,y=%.10lf , force_x=%.1f ,force_y=%.1f ,moment_x=%f,moment_y=%f,moment_z=%f ,Vx=%f ,Vy=%f ,omega_z=%f\n", time,x_cg[0],x_cg[1],f_glob[0],f_glob[1],m_glob[0],m_glob[1],m_glob[2],v_x,v_y,omega_z);
/* set components of velocity */
vel[0] = v_x,vel[1]=v_y,omega[2]=omega_z;
}
本程序是求力和力矩,再根据牛顿定律计算出速度和角速度.物体先以34.5m/s平动,然后计算出它所受的X,Y向的力以及力矩Mz.
不过仅仅我通过程序显示出来的力和report--forces显示出来的力一样,但力矩不一样,程序出来的力很小,不知道怎么回事,大家来看看,帮我找找问题.谢谢大家
这个程序和我在<<我把我的程序粘上,大家看看出再错误的原因,帮帮忙>>这个贴子上的程序目的是一样的,这里只说是目的.因程序都有问题,所以谈不上功能啦,呵呵
大家多帮多看看,找找问题.
特别是周站长,快来看看
发表于 2006-8-15 20:27:11 | 显示全部楼层

大家再来看看

我看过了,,有些看不懂,,呵呵,学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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