帮忙看看这个程序哪出问题了,老提示n没定义a=linspace(400,1200,40);r=300;k=2*pi/r;Sr=1.56;Smax=9.75;Wp=1.36e+7;Wt=1.45e+5;Uo=pi*4e-7;So=8.85e-12;S1=sqrt(Uo*So);W=k/S1;Sd=Smax-Wp*Wp/W/(W+i*Wt);m=2;n=sqrt(Sd*Sr/(Sd+Sr)-((m-1)/(k*a))^2);
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/27 19:18:03
帮忙看看这个程序哪出问题了,老提示n没定义a=linspace(400,1200,40);r=300;k=2*pi/r;Sr=1.56;Smax=9.75;Wp=1.36e+7;Wt=1.45e+5;Uo=pi*4e-7;So=8.85e-12;S1=sqrt(Uo*So);W=k/S1;Sd=Smax-Wp*Wp/W/(W+i*Wt);m=2;n=sqrt(Sd*Sr/(Sd+Sr)-((m-1)/(k*a))^2);
帮忙看看这个程序哪出问题了,老提示n没定义
a=linspace(400,1200,40);
r=300;
k=2*pi/r;
Sr=1.56;
Smax=9.75;
Wp=1.36e+7;
Wt=1.45e+5;
Uo=pi*4e-7;
So=8.85e-12;
S1=sqrt(Uo*So);
W=k/S1;
Sd=Smax-Wp*Wp/W/(W+i*Wt);
m=2;
n=sqrt(Sd*Sr/(Sd+Sr)-((m-1)/(k*a))^2);
plot(a,n);
帮忙看看这个程序哪出问题了,老提示n没定义a=linspace(400,1200,40);r=300;k=2*pi/r;Sr=1.56;Smax=9.75;Wp=1.36e+7;Wt=1.45e+5;Uo=pi*4e-7;So=8.85e-12;S1=sqrt(Uo*So);W=k/S1;Sd=Smax-Wp*Wp/W/(W+i*Wt);m=2;n=sqrt(Sd*Sr/(Sd+Sr)-((m-1)/(k*a))^2);
你程序我运行了,不是n没定义,是(k*a)^2语句非法,因为^只能用于标量或者方阵,而你的a为行向量,改为power(k*a,2)(不知道你的目的是什么,那个平方的目的是什么?)
不明白继续问;
希望采纳!
另外其他人别乱回答,这个是matlab语言,不是c或c++,对变量不用定义,更不用double!希望不要误导别人;刚接触matlab的人很容易在矩阵维数上犯错误!
就是这句中的n=sqrt(Sd*Sr/(Sd+Sr)-((m-1)/(k*a))^2); 矩阵维数不对;