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

[已解决] 无法执行赋值,因为左侧和右侧的元素数目不同

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
function f=fun(a,b,c)
d=1356:1511;
r=zeros(1,146);
for i=1:146
%     r(i)=(1./(sqrt(2.*pi).*a)).*exp(-(d.*0.1-143.9).^2./(2.*a.^2));
      r(i)=normpdf(d(i)*0.1,143.9,a);
end
d=265;
for i=1:28
%     u(i)=(1/(sqrt(2*pi)*b))*exp(-(d*0.1-27.9)^2/(2*b.^2));
u(i)=normpdf(d*0.1,27.9,b);
    d=d+1;
end
d=256;
for i=1:28
%     z(i)=(1/(sqrt(2*pi)*c))*exp(-(d*0.1-27)^2/(2*c^2));
z(i)=normpdf(d*0.1,27.9,c);
    d=d+1;
end
w=conv(r,u);
W=conv(w,z);
d=1888;
for i=1:200
    r1(i)=((1/(sqrt(2*pi)*2))).*exp(-(d*0.1-198.8)^2/(2*2^2));
    d=d+1;
end
for i=1:200
    q(i)=(W(i)-r1(i))^2;
end
f=sum(q);
end
无法执行赋值,因为左侧和右侧的元素数目不同。
出错 fun (line 11)
      r(i)=normpdf(d(i)*0.1,143.9,a);

出错 fmincon (line 546)
      initVals.f = feval(funfcn{3},X,varargin{:});

出错 anlifenx (line 59)
[x,y]=fmincon(@fun,[1,1,1],[],[])


回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

9

主题

1650

帖子

354

最佳答案
  • 关注者: 81
发表于 5 天前 | 显示全部楼层 |此回复为最佳答案
仅供参考
  1. [x,y]=fmincon(@fun,[1,1,1],[],[])
  2. function f=fun(m)
  3. a=m(1);
  4. b=m(2);
  5. c=m(3);
  6. d=1356:1511;
  7. r=zeros(146,3);
  8. for i=1:146
  9. %     r(i)=(1./(sqrt(2.*pi).*a)).*exp(-(d.*0.1-143.9).^2./(2.*a.^2));
  10.       r(i,:)=normpdf(d(i)*0.1,143.9,a);
  11. end
  12. d=265;
  13. for i=1:28
  14. %     u(i)=(1/(sqrt(2*pi)*b))*exp(-(d*0.1-27.9)^2/(2*b.^2));
  15. u(i,:)=normpdf(d*0.1,27.9,b);
  16.     d=d+1;
  17. end
  18. d=256;
  19. for i=1:28
  20. %     z(i)=(1/(sqrt(2*pi)*c))*exp(-(d*0.1-27)^2/(2*c^2));
  21. z(i)=normpdf(d*0.1,27.9,c);
  22.     d=d+1;
  23. end
  24. w=conv(sum(r,2),u);
  25. W=conv(w,z);
  26. d=1888;
  27. for i=1:200
  28.     r1(i)=((1/(sqrt(2*pi)*2))).*exp(-(d*0.1-198.8)^2/(2*2^2));
  29.     d=d+1;
  30. end
  31. for i=1:200
  32.     q(i)=(W(i)-r1(i))^2;
  33. end
  34. f=sum(q);
  35. end
复制代码
回复此楼 已获打赏: 0 积分

举报

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 5 天前 | 显示全部楼层

太感谢您了
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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