Bonjour,

Je cherche à implémenter la fonction de Bessel "bessely()".

J'ai déjà implémenté la fonction "besselj()" comme ceci en m'inspirant des informations prises ici.

Voici le contenu du M-File "besselj.m":
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
function s=besselj(nu,z,nmax)
  for m=0:nmax-1
    a=(-1)^m;
    b=(z/2)^(2*m+nu);
    c=factorial(m);
    d=gamma(m+nu+1);
    e=a*b/c/d;
    J(m+1)=e;
  end
  s=sum(J);
end
Je l'ai testé en faisant ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
format long;
for z=0:.2:1
  besselj(1,z,100)
end
Et j'obtiens cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
s = 0.0
s = 0.09950083263923601
s = 0.19602657795531875
s = 0.2867009880639158
s = 0.36884204609417
s = 0.44005058574493355
à comparer à ceci.

Est-ce que quelqu'un a déjà essayé d'implémenter la fonction "bessely()"?
Merci.