HELP: Eigenvalue solution for Bessel Function

In the course of studying heat conduction, we will always encounter the solution of eigenvalues. When it comes to Bessel functions, I try to solve the eigenvalues with matlab. But it prompts "Cannot find explicit solution" or "Cannot solve symbolically. Returning a numeric approximation instead."
Attached below is the equation I want to solve and my code:
syms n r Beta Lambda ;
eqn=n/r*besselj(n,Beta*r)-Beta*besselj(n+1,Beta*r)+Lambda*besselj(n,Beta*r)==0;
[solx,params,conds]=solve(eqn,Beta,'IgnoreAnalyticConstraints',1,'ReturnConditions', true);
pretty(solx);
I don't know if there is no analytical solution to this problem. If there is no analytical solution, how to deal with such a problem? I would appreciate it if you have good suggestions.

 Respuesta aceptada

Walter Roberson
Walter Roberson el 7 de Mayo de 2020

1 voto

There is no analytic solution to the zeros of bessel functions. There are known algorithms for computing the solutions numerically when all of the inputs are numeric.
Because your inputs are non-numeric (at least in the code you posted), it is not possible to find explicit solutions in terms of the remaining variables.
There is not much you can do until you get to the point in your code where you have specific numeric values to substitute in for everything except Beta, at which point you can go for a numeric solution.
But be warned that for given numeric values of the coefficients, there are an infinite number of Beta values that lead to zeros of your eqn.

3 comentarios

yannan wu
yannan wu el 7 de Mayo de 2020
Thank you very much for your prompt and effective answer. I have benefited a lot after reading. The current situation is that, the variables other than "Beta" are all constants, but at this time they can only be represented by letters (or called parameters). Could I find some approaches to use these parameters to express "Beta"? If it is still not possible, when they are specific numbers, for example, "n = 1, r = 1, Lambda = 0.1", then, is there any way you can solve this infinite number of solutions?
gratitude
yannan wu
yannan wu el 8 de Mayo de 2020
Thank you very much for your guidance, and so I understand this question well.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Preguntada:

el 7 de Mayo de 2020

Editada:

el 8 de Mayo de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by