ne=10.^12;
syms k,r,s;
Te=6000;
a=3.3*10.^5;
E0=6.2;
b=pi/4;
B=0.5;
k=linspace(0,10,0.01);
w=solve('k^2/(w^2-k^2)*(E0)*[-(cos(b)*cos(b))/(w+k^2)-(sin(b)*sin(b))/(w+a*k^2)+(cos(b)*cos(b))/(w-k^2)+(sin(b)*sin(b))/(w-k^2)]+2*k^2/(w^2-k^2)*(sin(b)*cos(b))/(w-k^2)*B*(E0)','w')
r=imag(w);
s=abs(r);
plot(int(k),double(s));
这是程序想要得到一个二维图,但是最后提示 未定义与 'double' 类型的输入参数相对应的函数 'int'
求大神来解答
改动之后显示
Invalid indexing or function definition. When defining a function, ensure that the body of the function is a SYM object. When indexing,the input must be numeric, logical or ':'.
你先看看工作区,有没有r,s,w这几个量,还有你的k和s的元素数目是否一致,一致的话你就最后一句输入plot(k,s);
追问r s w在解方程中都有
改动之后变成
错误使用 plot
无法从 sym 转换为 double。