exponenta event banner

legendre

Связанные функции Legendre

Описание

пример

P = legendre(n,X) вычисляет связанные функции Legendre степени 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

x = 0x = 0.1x = 0.2m = 0P20 (0) P20 (0.1) P20 (  0.2) m = 1P21 (0) P21 (0.1)  P21 (0.2) m = 2P22 (0) P22 (0.1) P22 (0.2)

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

P2m (x) = (-1) m (1-x2) m/2dmdxm [12 (3x2-1)].

Поэтому значение P20 (0) равно

P20 (0) = [12 (3x2-1)] | x = 0 = -12.

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

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

Вычислите значения функции Лежандра первой степени P1m. Первая строка значений соответствует m = 0, а вторая строка - m = 1.

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

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

(-1) м2 (n-m)! (n + m)!.

Для первой строки две нормализации одинаковы, так как m = 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

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

(-1) m (n + 12) (n-m)! (n + m)!.

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

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 вычислять и визуализировать сферическую гармонику для Y32.

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

Ylm (θ) = (2l+1) (l-m)! (l+m)! Plm (cosθ) eimϕ,-l≤m≤l.

Сначала создайте сетку значений для представления всех комбинаций 0≤θ≤π (колатитовый угол) и 0≤ϕ≤2π (азимутальный угол). В данном случае колатитума в диапазоне от 0 на Северном полюсе, до λ/2 на Экваторе и до λ на Южном полюсе.

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

Рассчитайте Plm (cos start) на сетке для l = 3.

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

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

m = 2;
if l ~= 0
    Plm = reshape(Plm(m+1,:,:),size(phi));
end

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

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

Преобразуйте сферические координаты в декартовы. Здесь λ/2-λ становится углом широты, который колеблется от λ/2 на Северном полюсе, до 0 на Экваторе, и до -λ/2 на Южном полюсе. Постройте график сферической гармоники для Y32, используя как положительные, так и отрицательные вещественные значения.

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

Figure contains an axes. The axes with title $Y_3^2$ spherical harmonic contains an object of type surface.

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

свернуть все

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

Пример: legendre(2,X)

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

Пример: legendre(2,cos(theta))

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

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

Пример: legendre(n,X,'sch')

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

свернуть все

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

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

  • Если X является вектором, то P является матрицей размера (n+1)около-length(X). P(m+1,i) запись является связанной функцией Legendre степени n и порядок m оценено в X(i).

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

Ограничения

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

Подробнее

свернуть все

Связанные функции Legendre

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

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

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

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

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

Они определены в терминах производных многочленов Лежандра Pn (x), которые являются подмножеством решений, заданных

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

Первые несколько многочленов Лежандра

Значение nPn (x)
0P0 (x) = 1
1P1 (x) = x
2P2 (x) = 12 (3x2 − 1)

Шмидт Семинормализовал ассоциированные функции Legendre

Семинормированные связанные функции Лежандра Шмидта связаны с ненормированными ассоциированными функциями Лежандра Pnm (x)

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

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

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

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

Нормализованные функции связаны с ненормализованными ассоциированными функциями Лежандра Pnm (x)

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) м2 Qnm (x).

Ссылки

[1] Абрамовиц, М. и И. А. Стегун, Справочник математических функций, Dover Publications, 1965, Ch.8.

[2] Якобс, Дж. А., геомагнетизм, академическая пресса, 1987, Ch.4.

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

См. также

| | | |

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