对函数序列求前n个正零点

例如对整数阶贝塞尔函数求前n个正零点,并且这些正零点要求为从小到大的

贝塞尔函数为 。n分别取1,2,3时,编程求出 , 前三个根。

n     x1      x2     x3

0    2.405   5.520   8.654

1    3.832   7.016   10.174

2    5.135   8.417   11.620

global rootBessel

maxv = 3;                % 最大贝塞尔函数阶数-1,表示从0到9阶

maxs = 3;                % 所需要计算贝塞尔函数的零点的数目

j = zeros(maxv, maxs);    % 贝塞尔函数的根

incr = 4.0;

for v=0:maxv-1

h = v+1.9*v^(1/3)+1;

if (v==0)             % 0阶贝塞尔函数的第一个零点

j(v+1,1) = fzero(@(x)besselj(v,x),2);

else                  % 1阶及以上阶贝塞尔函数的第一个零点

j(v+1,1) = fzero(@(x)besselj(v,x),h);

end

for s=2:maxs          % 贝塞尔函数的第2个及后面的零点

j(v+1,s) = fzero(@(x)besselj(v,x),j(v+1,s-1)+incr);

end

end

rootBessel = j

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632