作业帮 > 综合 > 作业

matlab运行老是报错.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/01 22:02:27
matlab运行老是报错.
syms L I Rs Rr a Rg Z x y
Z=(Rg*(Rs+Rr))^(0.5)
a=((Rs+Rr)/Rg)^(0.5)
I=1000
L=2
Rg=15
Rs=0.026
Rr=0.0001
x=0:0.1:2
y=-I*Z*Rs*tanh(a*L/2)*cosh(a*x)/(Rs+Rr)+I*Z*Rs*sinh(a*x)/(Rs+Rr)
plot(x,y)
grid on
报错为:
Error using ==> plot
Conversion to double from sym is not possible.
Error in ==> Untitled at 11
plot(x,y)
1.你的程序里是按照符号运算的.符号运算不用plot,好像用要用ezplot的.
2.我不知道你程序里的物理概念,但改一下就行:
%syms L I Rs Rr a Rg Z x y
I=1000
L=2
Rg=15
Rs=0.026
Rr=0.0001
Z=(Rg*(Rs+Rr))^(0.5)
a=((Rs+Rr)/Rg)^(0.5)
x=0:0.1:2
y=-I*Z*Rs*tanh(a*L/2)*cosh(a*x)/(Rs+Rr)+I*Z*Rs*sinh(a*x)/(Rs+Rr)
plot(x,y)
grid on
再问: 谢谢你啊。。我想搞懂,我运行出来说错误是,从“sym转换到double出现错误”这个是什么意思?字符转向数值么?谢谢了。。%syms L I Rs Rr a Rg Z x y %是什么干嘛呢?不胜感激
再答: %表示这句后面的东西是注解,不是程序。 我这是偷懒,懒得把后面删掉。 sym转换为双精度的数据,我也没有时间去查,我也不是老手啊,边用边学还一边查!