Иллюстрированный самоучитель по MatLab

Функции Бесселя

Линейное дифференциальное уравнение второго порядка вида:

Иллюстрированный самоучитель по MatLab › Специальные математические функции › Функции Бесселя

Где v – неотрицательная константа, называется уравнением Бесселя, а его решения известны как функции Бесселя. Функции J v (z) и J_ v (z) формируют фундаментальное множество решений уравнения Бесселя для неотрицательных значений п (это так называемые функции Бесселя первого рода): где для гамма-функции используется следующее представление:

Второе решение уравнения Бесселя, линейно независимое от J v (z), определяется как и задает функции Бесселя второго рода Yv(z).

Функции Бесселя третьего рода (функции Ханкеля) и функция Бесселя первого и второго рода связаны следующим выражением:

Иллюстрированный самоучитель по MatLab › Специальные математические функции › Функции Бесселя

Иллюстрированный самоучитель по MatLab › Специальные математические функции › Функции Бесселя

  • besselj(nu,Z) – возвращает функцию Бесселя первого рода, J v (z), для каждого элемента комплексного массива Z. Порядок ш может не быть целым, однако должен быть вещественным. Аргумент Z может быть комплексным. Результат вещественный, если Z положительно. Если nu и Z – массивы одинакового размера, то результат имеет тот же размер. Если любая входная величина – скаляр, результат расширяется до размера другой входной величины. Если одна входная величина – вектор-строка, а другая – вектор-столбец, результат представляет собой двумерный массив значений функции.
  • bessely(nu.Z) – возвращает функцию Бесселя второго рода, Yv (z).
  • [J.ierr] = besselj(nu,Z) и [Y.ierr] = bessely(nu.Z) функции всегда возвращают массив с флагами ошибок:
    • ierr = 1 – запрещенные аргументы;
    • ierr = 2 – переполнение (возвращает Inf);
    • ierr = 3 – некоторая потеря точности при приведении аргумента;
    • ierr = 4 – недопустимая потеря точности: Z или nu слишком велики;
    • ierr = 5 – нет сходимости (возвращает NaN).

Примеры:

>> S=[2-51.4.7];T=[8.l.3]:g=besselj(T,S)
g=
0.1114-0.05081-0.0660-0.1676
>> S-[2-5i,4.7];T=[8.1.3J;[g.ierr]=bessely(T,S)
g=
0.1871-0.03241 0.3979 0.2681
ierr =
0 0 0
  • besselh(nu,К,Z) – для К=1 или 2 возвращает функцию Бесселя третьего рода (функцию Ханкеля) для каждого элемента комплексного массива Z. Если nu и Z – массивы одинакового размера, то результат имеет тот же размер. Если одна из входных величин – скаляр, результат формируется по размеру другой входной величины. Если одна входная величина – вектор-строка, а другая – вектор-столбец, результат представляет собой двумерный массив значений функции.
  • besselh(nu.Z) – использует по умолчанию К = 1.
  • besselh(nu.l.Z.l) – масштабирует H(1) v (z) с коэффициентом exp(-i*z).
  • besselh(nu,2,Z.l) – масштабирует H(2) v (z) с коэффициентом exp(+i*z).
  • [H.ierr] = besselh(…) – всегда возвращает массив с флагами ошибок:
    • ierr = 1 – запрещенные аргументы;
    • ierr = 2 – переполнение (возвращает Inf);
    • ierr = 3 – некоторая потеря точности при приведении аргумента;
    • ierr = 4 – недопустимая потеря точности: Z или nu слишком велики;
    • ierr = 5 – нет сходимости (возвращает NaN).
>> D=[1.3+2i];F=[3.2]:[K.ierr]=besselk(F,D)
K =
7.1013-0.0401-0.02851
lerr =
0 0
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.