|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
本帖最后由 伤痕累累 于 2012-4-19 17:23 编辑
为什么时域图不是按照周期波动的,而是一直递减或者递增呢?
在文献中,作者给的油膜力公式就是这样的啊。按照公式来,是没有错的。倒搞不通为什么是这样的结果
大家有兴趣的一起来讨论下吧
function book_oilfilm_force
clear all
clc
y0=[0.01;0.01;0.0;0.0];
ff=2*pi;
fs=256*3;
tspan=[0:ff/fs:1000*ff];
options=odeset('rel',1e-6,'abs','1e-6');
[t,y]=ode45(@oilfilm,tspan,y0,options);
plot(t,y(:,1));
title('水平方向时域图')
xlabel('时间/t')
ylabel('x')
figure
plot(y(:,1),y(:,3))
title('phase figure')
xlabel('x')
ylabel('dx')
function yy=oilfilm(t,y)
%油膜力表达式
%%%%%%%%%%%%%%%%
ppp1=(y(2)+2.0*y(3))/(y(1)-2.0*y(4));
sign1=sign(ppp1);
ppp2=y(2)+2.0*y(3);
sign2=sign(ppp2);
alpha=atan(ppp1)-pi/2.0*(sign1+sign2);
alphaa=atan((y(2)*cos(alpha)-y(1)*sin(alpha))/sqrt(abs(1.0-abs(y(1)*y(1))-abs(y(2)*y(2)))));
fg=2.0*(pi/2.0+alphaa)/sqrt(abs(1.0-abs(y(1)*y(1))-abs(y(2)*y(2))));
fv=(2.0+(y(2)*cos(alpha)-y(1)*sin(alpha))*fg)/(1.0-abs(y(1)*y(1))-abs(y(2)*y(2)));
fs=(y(1)*cos(alpha)+y(2)*sin(alpha))/(1.0-abs((y(1)*cos(alpha)+y(2)*sin(alpha))*(y(1)*cos(alpha)+y(2)*sin(alpha))));
f1=sqrt(abs(abs((y(1)-2.0*y(4))*(y(1)-2.0*y(4)))+abs((y(2)+2.0*y(3))*(y(2)+2.0*y(3)))))/(1.0-abs(y(1)*y(1))-abs(y(2)*y(2)));
fx=-1.0*f1*(3.0*y(1)*fv-sin(alpha)*fg-2.0*cos(alpha)*fs);
fy=-1.0*f1*(3.0*y(2)*fv+cos(alpha)*fg-2.0*sin(alpha)*fs);
%%%%%%%%%%%%%%%%%%%
%参数
segma=0.1;%文中的 σ
p=0.3;%小写的平,为 偏心率ρ
M=70.0;%文中的m
P=170/2.0;%转子重力,大写的P
Fx=fx/(segma*P);%无量纲化的油膜力
Fy=fy/(segma*P);
G=1/(segma*M); %无量纲化后的重力
yy=[y(3);
y(4);
p*sin(t)+Fx/M;
p*cos(t)-G+Fy/M;
];
|
-
|