查看: 121|回复: 2|关注: 0

[已解决] 在赋值 A(I)=B 中,B 和 I 中的元素数目必须相同。

[复制链接]

新手

34 麦片

财富积分


050


6

主题

13

帖子

0

最佳答案
R=50;
x0=0;
y0=0;
d_06=[10,20,30,40];
for j=1:4
for i=1:N_drops
   r(j)=(R-d_06(j))*(rand(1,num))+d_06(j);
theta1=2*pi*rand(1,num);

x6(j)=x0+r(j).*cos(theta1);
y6(j)=y0+r(j).*sin(theta1);
plot(x6(j),y6(j),'bo')
axis equal
d(j)=sqrt((x6(j)-x0).^2+(y6(j)-y0).^2);
MCL_free(j)=32.45+20*log10(f)+20*log10(d(j));
I(j)=Pmax+Gt-MCL_free(j)+Gr;
Iagg06(j)=10*log(sum(10.^(I(j)/10)));
I_agg06(j)=[I_agg(j),Iagg06(j)];
I_agg_average_06=mean(I_agg06(j))   
end
end
显示红色的行出现问题,
在赋值 A(I)=B 中,B 和 I 中的元素数目必须相同。

出错 suiji (line 159)
r(j)=(R-d_06(j))*(rand(1,num))+d_06(j);
请问该如何解决

MATLAB 基础讨论
版块优秀回答者

入门

393 麦片

财富积分


50500


8

主题

191

帖子

24

最佳答案
  • 关注者: 5
发表于 2019-7-11 21:00:42 | 显示全部楼层 |此回复为最佳答案
rand(1,num)返回的是一个长度为num的向量,这样导致等式右边计算结果是一个长为num的向量,而等式左边只是一个需要赋值的元素,两边数量不匹配,所以出错了

新手

34 麦片

财富积分


050


6

主题

13

帖子

0

最佳答案
 楼主| 发表于 2019-7-12 08:33:25 | 显示全部楼层
皮皮小龙虾 发表于 2019-7-11 21:00
rand(1,num)返回的是一个长度为num的向量,这样导致等式右边计算结果是一个长为num的向量,而等式左边只是 ...

好的,谢谢,现在问题解决了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表