我正在尝试解决特征值问题 微分方程是贝塞尔方程。解由第一类贝塞尔函数y(x)=J_\lambda(x)给出。第 2 类贝塞尔函数因其在x=0处的奇异性而被省略。特征值λ必须使用x=1处的边界条件来确定。使用恒等式 J'_\lambda(x)=\frac{1}{2}\left(J_{\lambda-1}\left(x\right)-J_{\lambda+1}\left(x\ right)\right) x=1 处的边界条件可以改写为
现在我想使用 MATLAB/GNU Octave 的 fzero 例程用上面的等式确定代码如下。
%% initial guess
xguess=1;
%% function handle
f=@(l) besselj(l-1,1)-2*besselj(l,1)+besselj(l+1,1)
%% set tolerance
opts=optimset('TolX',1e-12);
%% determine zero
xzero=fzero(f,xguess,opts);
如果您绘制函数 f, click here,您会发现大多数零都在中。
要获得排序序列,我想仅在负方向上从“最后一个”零搜索到“下一个”零。有没有办法在 fzero 例程中实现这一点?
预先感谢!
