第 2 章function VTB2(m,c,k,x0,v0,tf,w,f0)%单自由度系统得谐迫振动clcwn=sqrt(k/m);z=c/2/m/wn;lan=w/wnwd=wn*sqrt(1-z^2);A=sqrt(((v0+z*wn*x0)^2+(x0*wd)^2)/wd^2);t=0:tf/1000:tf;phi1=atan2(x0*wd,v0+z*wn*x0);phi2=atan2(2*z*lan,1-lan^2);B=wn^2*f0/k/sqrt((wn^2-w^2)^2+(2*z*wn*w)^2);x=A*exp(-z*wn*t)、*sin(sqrt(1-z^2)*wn*t+phi1)+B*sin(w*t-phi2);plot(t,x),gridxlabel('时间(s)')ylabel('位移')title('位移与时间得关系')function VTB1(m,c,k,x0,v0,tf)%VTB1 用来计算单自由度有阻尼自由振动系统得响应%VTB1 绘出单自由度有阻尼自由振动系统得响应图%m 为质量;c 为阻尼;k 为刚度;x0 为初始位移;v0 为初始速度;tf 为仿真时间%VTB1(zeta,w,x0,v0,tf)绘出单自由度有阻尼自由振动系统得响应图%程序中 z 为阻尼系数 ξ;wn 为固有频率 ωn;A 为振动幅度;phi 为初相位 θclcwn=sqrt(k/m);z=c/2/m/wn;wd=wn*sqrt(1-z^2);fprintf('固有频率为%、3g、rad/s、\n',wd);fprintf('阻尼系数为%、3g、\n',z);fprintf('有阻尼得固有频率为%、3g、rad/s、\n',wd);t=0:tf/10