百科知识

如何用matlab求出Q的方程并画出图形程序如下symstrw=

2011-10-24 15:25:391***
程序如下 syms t r w=2*pi*50 l=0.05 l0=l b=0.1 u0=4*pi*10^-7 Im=0.1 v=0.01 i=Im*sin(w*t) H=i/(2*pi*r) B=u0*H y=int(u0*i*b/(2*pi*r),r,r,r+l) r=l0+v*t Q=diff(y,'t') subs(Q,r,x) t=0:0.1:10 plot(t,Q) 问题1是:Q中含有r的变量不能画图,而r可以用t表示用subs(Q,r,x)带入常数不对吗? 问题2是:Q=diff(y,'t')程序运算出的值怎么跟理论值不一样呢,也是因为没有把r=l0+v*t带入就微分的吗? 问题3是:想要就时间t和电动势Q进行画图,t取t>0,程序应该怎么写? 这几个问题应该如何解决呢?如何用matlab求出Q的方程并画出图形程序如下symstrw=2*pi*50l=0.05l0=lb=0.1u0=4*pi*10^-7Im=0.1v=0.01i?

最佳回答

  • 不会不会不会不会
    2011-10-25 15:42:27
  • clear,clc syms t r w=2*pi*50; l=0.05; l0=l; b=0.1; u0=4*pi*10^-7; Im=0.1; v=0.01; i=Im*sin(w*t); H=i/(2*pi*r); B=u0*H; y=int(u0*i*b/(2*pi*r),r); y=subs(y,r,r+l)-y; y=subs(y,r,l0+v*t); Q=diff(y); eval(['f=@(t)' char(Q) ';']) t=0:0.1:10; for i=1:length(t) y(i)=f(t(i)); end plot(t,y)
    2011-10-25 14:02:11
  • 很赞哦! (228)