Solving equations for Bessel functions

2 visualizaciones (últimos 30 días)
菲
el 3 de Abr. de 2023
Comentada: el 3 de Abr. de 2023
I want to use matlab to solve this equation,
the Bessel function of order 1 to 20, My equation is as follows:
jmi=(besselj(m-1, k_i.*a)+besselj(m+1, k_i.*a))./2;
jmo=(besselj(m-1, k_o.*a)+besselj(m+1, k_o.*a))./2;
ymo=(bessely(m-1, k_o.*a)+bessely(m+1, k_o.*a))./2;
f1 = (n_i .*jmi) ./ n_o .* besselj(m, k_o.*a);
f2 = ((besselj(m, k_o.*a).*jmo)+ (bessely(m, k_o.*a).*ymo))/(besselj(m, k_o.*a).^2+ bessely(m, k_o.*a).^2);
h=f1-f2;
[~,loc] = min(abs(h));
disp(lamda(loc));
It is quite different from the expected result. What is the problem?Thanks for help.

Respuestas (1)

Torsten
Torsten el 3 de Abr. de 2023
Movida: Torsten el 3 de Abr. de 2023
I cannot recover your equation from the code you posted.
Does that help ?
syms x
syms m integer
J = besselj(m,x)
J = 
Y = bessely(m,x)
Y = 
diff(J,x)
ans = 
diff(Y,x)
ans = 
  1 comentario
菲
el 3 de Abr. de 2023
Thank you very much. I'll give it a try

Iniciar sesión para comentar.

Categorías

Más información sobre Bessel functions en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by