|
楼主 |
发表于 2010-3-28 17:16
|
显示全部楼层
恩恩 多谢提醒,我附上图形,
分别为t<50 ,t<10 ,t<5,t<0.5
谢谢您!
=========
顺便附上我的程式档
副程式:testx.m
function dx=testx(t,x)
global M K P n
if t<10
V=sin(3*t)
else
V=0
end
dx=[x(n+1:end,1);-inv(M)*K*x(1:n,1)+inv(M)*P*V]
主程式:
clear all
global M K P n
n=3
m1=1 ;
m2=1 ;
m3=1;
k1=2;
k2=2;
k3=1;
k4=2;
M=[m1,0,0;0,m2,0;0,0,m3];
K=[k1+k2,-k2,0;-k2,k2+k3,-k3;0,-k3,k3+k4]
P=[1;0;0];
tinterv=0:0.1:50
yinit=[0 0 0 0 0 0]
[t,x]=ode45('testx',tinterv,yinit)
plot(t,x(:,1))
[ 本帖最后由 inoran 于 2010-3-28 17:59 编辑 ] |
|