24小时热门版块排行榜    

查看: 365  |  回复: 1

sunjie2668

木虫 (小有名气)

[求助] 关于调用函数解方程组(带系数)的问题,求大神帮忙已有1人参与

%程序为
clc
clear
l=0.51;
f=2;
m=0.0055;
p=m/(2*l);
T=2.695;
z=sqrt(p*T);
w=0:0.1:10;
k=w/(z/p);
y=amplitude(f,k,l);
y=abs(y);
w=w/(2*pi);
figure
plot(w,y,*k*,*LineWidth*,1.1)




%函数为
function y=amplitude(f,k,l)
syms f k l A1 A2 B1 B2 C1 C2 D1 D2 M11 M12 M21 M22 M31 M32 M41 M42;
[A1,A2,B1,B2,C1,C2,D1,D2,M11,M12,M21,M22,M31,M32,M41,M42] = solve(A1+A2==0,B1+B2==0,A1==M11*exp(-1i*k*l),A2==M12*exp(1i*k*l), ...
B1==M21*exp(-1i*k*l),B2==M22*exp(1i*k*l),C1+C2==0,C1==M31*exp(1i*k*l),C2==M32*exp(-1i*k*l),D1+D2==f,D1==M41*exp(1i*k*l),D2==M42*exp(-1i*k*l), ...
M11+M12==M21+M22,M21+M22==M31+M32,M31+M32==M41+M42,M12+M22+M41+M31==M11+M21+M42+M32,A1,A2,B1,B2,C1,C2,D1,D2,M11,M12,M21,M22,M31,M32,M41,M42);
y= A1*exp(1i*k*l)+A2*exp(-1i*k*l);
y = simplify(y);




错误为
Error using plot
Conversion to double from sym is not possible.


Error in uM_freq_k_l__plot (line 21)
plot(w,y,*k*,*LineWidth*,1.1)
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

做自己认为重要的事是最好的生活方式!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

847717213

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
sunjie2668: 金币+5, 有帮助, 谢谢,已解决,plot前面加上eval函数就可以了 2014-11-04 23:00:58
相关版块跳转 我要订阅楼主 sunjie2668 的主题更新
信息提示
请填处理意见