Как я могу численно решить уравнения, содержащие функции Бесселя, в MATLAB?

Я столкнулся с уравнением, содержащим функции Бесселя первого типа с одной стороны и модифицированные функции Бесселя второго типа с другой. Я хочу знать его точные решения (значения u). Уравнение выглядит следующим образом:

u*besselj(s-1,u)/besselj(s,u)=-w*besselK(s-1,w)/besselk(s,w)

где s — произвольное целое число, например 2.

w можно записать как функцию от u:

w=sqrt(1-u^2);

и поэтому это уравнение имеет только одну переменную: u

Я новичок в MATLAB. Я понятия не имею о том, как я должен подойти к этому. Кто-нибудь может мне помочь?


person Aida    schedule 05.08.2010    source источник


Ответы (1)


Можно быстро попробовать функцию FZERO. , общий нелинейный искатель нуля. Чтобы узнать, как его использовать, вы можете реализовать примеры, приведенные в документации. Затем перепишите свою функцию, чтобы ее можно было ввести в fzero, и посмотрите, что получится.

(Примечание: я не пробовал это, но я только что заметил, что ответов еще не было, так что, возможно, это лучше, чем ничего.)

person Matt Mizumi    schedule 05.08.2010
comment
Дорогой Мэтт; спасибо за ваш ответ, я пробовал это раньше, и, к сожалению, он игнорирует некоторые основные ответы, которые я имею в виду в начале интервала. Я не знаю почему. - person Aida; 06.08.2010