Я попытался реализовать функцию Бесселя, используя эту формулу, это код:
function result=Bessel(num);
if num==0
result=bessel(0,1);
elseif num==1
result=bessel(1,1);
else
result=2*(num-1)*Bessel(num-1)-Bessel(num-2);
end;
Но если я использую функцию Бесселя MATLAB, чтобы сравнить ее с этой, я получаю слишком большие разные значения. Например, если я наберу Bessel(20), это даст мне 3.1689e+005 в результате, если вместо этого я наберу bessel(20,1), это даст мне 3.8735e-025, совершенно другой результат.