马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
<P>本例子是实现一个简单的RC二阶环相位阶跃响应时间图,程序中有一个laplace变换,之后还有一个反laplace变换,程序划线部分是问题所在:theta2关于t的函数的一个数组,我想给t赋一组数值[0.1:0.1:10],可是不对,出以下错误:<br>??? Error using ==> reshape<br>To RESHAPE the number of elements must not change.</P>
<P>Error in ==> D:\tools\MATLAB6p5\toolbox\symbolic\@sym\double.m<br>On line 45 ==> D = reshape(eval(X),m,n);</P>
<P>Error in ==> D:\tools\MATLAB6p5\toolbox\symbolic\@sym\subs.m<br>On line 164 ==> NEWf = double(sym(maple('map','F',char(sym([NEWexpr{:}])))));</P>
<P>Error in ==> D:\tools\MATLAB6p5\work\ip_07_11_eXXXXX.m<br>On line 13 ==> theta2=subs(theta2,t,0.1:dt:10);</P>
<P>小弟水平有限,不知道如何赋值,请高人指点!谢谢了<br>程序流程如下:<br><br>echo on;<br>syms t s;<br>w_n=100; %无阻尼振荡频率<br>L=0.5; %阻尼系数<br>dt=0.1;<br>theta1=ones(1,100); %输入相位(时域)<br>theta1_s=laplace(theta1,t,s); %输入相位(S域)<br>H_s=w_n^2/(s^2+2*L*w_n*s+w_n^2); %闭环传递函数<br>theta2_s=H_s*theta1_s; %输出相位(S域)<br>echo off;<br>echo on;<br>theta2=ilaplace(theta2_s,s,t);输出相位(时域)<br><U>theta2=subs(theta2,t,0.1:dt:10);</U><br>y=theta2./theta1; %系统响应<br>echo off;<br>plot(t,y)<br>title('RC二阶环相位阶跃响应时间图')<br><br></P>[em04]
[此贴子已经被aspen于2006-1-7 14:10:33编辑过]
|