|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
- % newmark方法的程序实现
- clc
- clear
- m=[6/12,1/12;1/12,2/12];
- k=[2*3,-1*2;-1*2,1*2];
- f1=[0;1];
- d2=inv(m)*f1;
- b=0.25;
- r=0.5;
- dt=0.12;
- a0=1/(b*(dt)^2);
- a1=r/(b*dt);
- a2=1/(b*dt);
- a3=1/(2*b)-1;
- a4=r/b-1;
- a5=0.5*dt*((r/b)-2);
- a6=dt*(1-r);
- a7=r*dt;
- pk=k+a0*m;
- pk=inv(pk);
- d0=[0;0];
- d1=[0;0];
- for i=1:10
- t=0.12*i;
- if t>0.5
- f1(2)=0;
- end
- ff=0.0;
- d00=0.0;
- ff=ff+m*(a0*d0+a2*d1+a3*d2);
- pf1=f1+ff;
- d00=d00+pk*pf1;
- d22=a0*(d00-d0)-a2*d1-a3*d2;
- d11=d1+a6*d2+a7*d22;
- d0=d00;
- d1=d11;
- d2=d22;
- a(i)=d00(1);
- b(i)=d00(2);
- end
- a
- b
复制代码 |
|