查看: 125|回复: 3|关注: 0

[已解决] 很简单的循环累加 不出结果怎么回事

[复制链接]

新手

19 麦片

财富积分


050


8

主题

39

帖子

2

最佳答案
我就想得到一个五项的函数
累加总是报错  不知道错在哪里,,大佬们救救孩子吧
  1. f1=0
  2. A=[1 2 3 4 5]
  3. syms R Phi real
  4. for j=0:4
  5.     f1=f1+A(1,j+1).*R.^j.*legendre(j,cos(Phi));
  6. end
复制代码


我把勒让德函数这一项删了就能运行了,估计问题出在那,,但我不知道怎么修

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

中级

556 麦片

财富积分


5001500


0

主题

239

帖子

40

最佳答案
  • 关注者: 4
发表于 2019-11-10 22:03:19 | 显示全部楼层 |此回复为最佳答案
的确是勒让德函数这一项有问题
具体需要参照legendre帮助文档
可以试试以下,仅供参考
f1=0
A=[1 2 3 4 5]
syms R  real
dx = pi/60;
alt = -pi/2:dx:pi/2;
az = 0:dx:2*pi;
[phi,theta] = meshgrid(az,alt);
for j=0:4
    f1=f1+A(1,j+1).*R.^j.*legendre(3,cos(phi));
end

新手

19 麦片

财富积分


050


8

主题

39

帖子

2

最佳答案
 楼主| 发表于 2019-11-10 22:28:38 | 显示全部楼层
20141303 发表于 2019-11-10 22:03
的确是勒让德函数这一项有问题
具体需要参照legendre帮助文档
可以试试以下,仅供参考

对的,,可以赋值,,但这样就没法积分了,,matlab这一点就是很鸡肋

新手

19 麦片

财富积分


050


8

主题

39

帖子

2

最佳答案
 楼主| 发表于 2019-11-10 22:30:27 | 显示全部楼层
20141303 发表于 2019-11-10 22:03
的确是勒让德函数这一项有问题
具体需要参照legendre帮助文档
可以试试以下,仅供参考

没事没事,,我的问题还是解决了,,我把勒让德这个吊函数给他tylor了  
然后拿了前七项算,,
结果是他丫的有点误差,但差不了多少,,我凑合用
不等论坛的老哥们救我了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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