лежандр

Связанные функции Лежандра

Синтаксис

P = legendre(n,X)
P = legendre(n,X,normalization)

Описание

пример

P = legendre(n,X) вычисляет связанные Функции Лежандра градуса n и порядок m = 0, 1, ..., n, оцененный для каждого элемента в X.

пример

P = legendre(n,X,normalization) вычисляет нормализованные версии связанных Функций Лежандра. normalization может быть 'unnorm' (значение по умолчанию), 'sch' или 'norm'.

Примеры

свернуть все

Используйте функцию legendre, чтобы работать с вектором и затем исследовать формат вывода.

Вычислите значения Функции Лежандра второй степени вектора.

deg = 2;
x = 0:0.1:0.2;
P = legendre(deg,x)
P = 3×3

   -0.5000   -0.4850   -0.4400
         0   -0.2985   -0.5879
    3.0000    2.9700    2.8800

Формат вывода таков что:

  • Каждая строка содержит значение функции для различных значений m (порядок связанной Функции Лежандра)

  • Каждый столбец содержит значение функции для различного значения x

Уравнение для связанной Функции Лежандра второй степени

Поэтому значение

Этот результат соглашается с P(1,1) = -0.5000.

Вычислите связанные значения Функции Лежандра с несколькими нормализацией.

Вычислите ненормализованные значения Функции Лежандра первой степени. Первая строка значений соответствует, и вторая строка к.

x = 0:0.2:1;
n = 1;
P_unnorm = legendre(n,x)
P_unnorm = 2×6

         0    0.2000    0.4000    0.6000    0.8000    1.0000
   -1.0000   -0.9798   -0.9165   -0.8000   -0.6000         0

Затем, вычислите полунормализованные значения функции Шмидта. По сравнению с ненормализованными значениями форма Шмидта отличается когда масштабированием

Для первой строки эти две нормализации является тем же самым с тех пор. Для второй строки масштабирующееся постоянное умножение каждого значения-1.

P_sch = legendre(n,x,'sch')
P_sch = 2×6

         0    0.2000    0.4000    0.6000    0.8000    1.0000
    1.0000    0.9798    0.9165    0.8000    0.6000         0

C1 = (-1) * sqrt(2*factorial(0)/factorial(2))
C1 = -1

Наконец, вычислите полностью нормализованные значения функции. По сравнению с ненормализованными значениями полностью нормализованная форма отличается масштабным коэффициентом

Этот масштабный коэффициент запрашивает все значения, таким образом, первые и вторые строки имеют различные масштабные коэффициенты.

P_norm = legendre(n,x,'norm')
P_norm = 2×6

         0    0.2449    0.4899    0.7348    0.9798    1.2247
    0.8660    0.8485    0.7937    0.6928    0.5196         0

Cm0 = sqrt((3/2))
Cm0 = 1.2247
Cm1 = (-1) * sqrt((3/2)/2)
Cm1 = -0.8660

Сферические гармоники возникают в решении уравнения Лапласа и используются, чтобы представлять функции, определяемые на поверхности сферы. Используйте legendre, чтобы вычислить и визуализировать сферическую гармонику для.

Уравнение для сферических гармоник включает термин для Функции Лежандра, а также комплексный экспоненциал:

Во-первых, создайте сетку значений, чтобы представлять все комбинации (высотный угол) и (азимутальный угол).

dx = pi/60;
alt = -pi/2:dx:pi/2;
az = 0:dx:2*pi;
[phi,theta] = meshgrid(az,alt);

Вычислите на сетке для.

l = 3;
Plm = legendre(l,cos(theta));

Поскольку legendre вычисляет ответ для всех значений, Plm содержит некоторые дополнительные значения функции. Извлеките значения для и отбросьте остальных. Используйте функцию reshape, чтобы ориентировать результаты как матрицу с тем же размером как phi и theta.

m = 2;
P32 = reshape(Plm(m+1,:,:), size(phi));

Вычислите сферические гармонические значения для.

a = (2*l+1)*factorial(l-m);
b = 4*pi*factorial(l+m);
C = sqrt(a/b);
Y32 = C .* P32 .* exp(1i*m*phi);

Преобразуйте в Декартовы координаты и постройте график сферической гармоники для использования только действительных значений.

[Xm,Ym,Zm] = sph2cart(phi, theta, real(Y32));
surf(Xm,Ym,Zm)
title('$Y_3^2$ spherical harmonic','interpreter','latex')

Входные параметры

свернуть все

Градус Функции Лежандра, заданной как положительное целое число. Для заданного градуса legendre вычисляет Pnm(x) для всех порядков m от m = 0 к m = n.

Пример: Лежандр (2, X)

Входные значения, заданные как скаляр, вектор, матрица или многомерный массив действительных значений в области значений [-1,1]. Например, со сферическими гармониками распространено использовать X = cos(theta) в качестве входных значений, чтобы вычислить Pnm(cosθ).

Пример: Лежандр (2, because(тета))

Типы данных: single | double

Тип нормализации, заданный как одно из этих значений.

Пример: Лежандр (n, X, 'sch')

Выходные аргументы

свернуть все

Связанные значения Функции Лежандра, возвращенные как скаляр, вектор, матрица или многомерный массив. Нормализация P зависит от значения normalization.

Размер P зависит от размера X:

  • Если X является вектором, то P является матрицей размера (n+1)-by-length(X). Записью P(m+1,i) является связанная Функция Лежандра градуса n и порядок m, оцененный в X(i).

  • В целом P имеет еще одну размерность, чем X и каждый элемент, P(m+1,i,j,k,...) содержит связанную Функцию Лежандра градуса n и порядок m, оцененный в X(i,j,k,...).

Ограничения

Значения ненормализованной сопоставленной Функции Лежандра переполняют области значений с двойной точностью чисел для n > 150 и области значений чисел с одинарной точностью для n > 28. Это переполнение приводит к значениям NaN и Inf. Для порядков, больше, чем эти пороги, рассмотрите использование 'sch' или нормализации 'norm' вместо этого.

Больше о

свернуть все

Связанные функции Лежандра

Связанные Функции Лежандра y=Pnm (x) являются решениями дифференциального уравнения генерала Лежандра

(1−x2) d2ydx2−2xdydx + [n (n+1) −m21−x2] y=0 .

n является целочисленным градусом, и m является целочисленным порядком связанной Функции Лежандра, такой что 0≤m≤n.

Связанные Функции Лежандра являются самыми общими решениями этого уравнения, данного

Pnm(x) = (−1) m (1−x2) m/2dmdxmPn (x) .

Они заданы с точки зрения производных Полиномов лежандра, которые являются подмножеством решений, данных

Pn(x) =12nn!      dndxn (x2−1) n .

Первые несколько Полиномов лежандра

Значение n
0
1
2

Шмидт полунормализованные связанные функции Лежандра

Полунормализованные сопоставленные Функции Лежандра Шмидта связаны с ненормализованными сопоставленными Функциями Лежандра

Pn(x) для m=0, Snm(x) = (−1) m 2 (n−m)! (n+m)!  Pnm (x) для m> 0.

Полностью нормализованные связанные функции Лежандра

Полностью нормализованные связанные Функции Лежандра нормализованы таким образом что

−11 [Nnm(x)]  2dx=1 .

Нормализованные функции связаны с ненормализованными сопоставленными Функциями Лежандра

Nnm(x) = (−1) m (n+12) (n−m)! (n+m)! Pnm(x) .

Алгоритмы

legendre использует обратное отношение рекурсии с тремя терминами в m. Эта рекурсия находится на версии полунормализованных сопоставленных Функций Лежандра Шмидта Qnm(x), которые являются комплексными сферическими гармониками. Эти функции связаны со стандартным Abramowitz и функциями Stegun [1] Pnm(x)

Pnm(x) = (n+m)! (n−m)!    Qnm(x) .

Они связаны с формой Шмидта

m=0:        Snm(x) =Qn0 (x) m> 0:       Snm(x) = (−1) m2  Qnm (x) .

Ссылки

[1] Abramowitz, M. и я. A. Stegun, руководство математических функций, Дуврские публикации, 1965, Ch.8.

[2] Джейкобс, J. A., геомагнетизм, Academic Press, 1987, Ch.4.

Расширенные возможности

Смотрите также

| | | |

Представлено до R2006a

Была ли эта тема полезной?