(报错):
在赋值 A(I)=B 中,B 和 I 中的元素数目必须相同。
出错 ouheqichuanshu (line 8)
R(j)=T*A; %第一经过耦合器干涉情况特殊
(源代码):
global R;
A=[0;10;0]; %最初始1,2,3端口输入信号功率矩阵
T=[1/2 (1i*2^0.5)/2 -1/2;
(1i*2^0.5)/2 0 (1i*2^0.5)/2;
-1/2 (1i*2^0.5)/2 1/2]; %理想3*3耦合器的传输矩阵
for j=1:10 %设置循环得到每次经过耦合器干涉后的输出功率
if j==1;
R(j)=T*A; %第一经过耦合器干涉情况特殊
else
R(j)=T*R(j-1); %第j次经过耦合器干涉后的输出功率
bar(R(j)); %画出各端口功率,柱状图表示
title('经过耦合器在Loop1的4,5,6端口输出功率'); %设置显示图像名称
end
end
求告知怎么改,谢谢!
【MATLAB】在赋值 A(I)=B 中,B 和 I 中的元素数目必须相同。
答案:2 悬赏:0
解决时间 2021-04-28 06:54
- 提问者网友:✐ۖ﹏ℳ๓北风
- 2021-04-27 13:08
最佳答案
- 二级知识专家网友:眠于流年
- 2021-04-27 14:03
biterrorrate是矩阵吧?你用mean(biterrorrate(:))代替 mean(biterrorrate);
全部回答
- 1楼网友:时光挺欠揍
- 2021-04-27 15:13
循环语句中的
z(i)是z的第i个元素,matlab默认z(i)为一个数字,长度为1。后面赋值是一个行向量,得到的结果长度和x、y相同(长度201)
这造成等号左右的元素数目不同。
考虑z是一个矩阵,矩阵第一行存储i=1的结果。
你把赋值语句改成
for i=1:2
z(i,:)=c.*(d-x.^2................................
end
即可
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯