Полиномы Чебышева первого вида
chebyshevT(n,x)
chebyshevT(
представляет n
,x
)n
th Полином Чебышева степени первого вида в точке x
.
Найдите первые пять Полиномов Чебышева первого вида для переменной x
.
syms x chebyshevT([0, 1, 2, 3, 4], x)
ans = [ 1, x, 2*x^2 - 1, 4*x^3 - 3*x, 8*x^4 - 8*x^2 + 1]
В зависимости от его аргументов chebyshevT
возвращает или точные символьные результаты с плавающей точкой.
Найдите значение Полинома Чебышева пятой степени первого вида в этих точках. Поскольку эти числа не являются символьными объектами, chebyshevT
возвращает результаты с плавающей точкой.
chebyshevT(5, [1/6, 1/4, 1/3, 1/2, 2/3, 3/4])
ans = 0.7428 0.9531 0.9918 0.5000 -0.4856 -0.8906
Найдите значение Полинома Чебышева пятой степени первого вида для тех же чисел преобразованным в символьные объекты. Для символьных чисел chebyshevT
возвращает точные символьные результаты.
chebyshevT(5, sym([1/6, 1/4, 1/3, 1/2, 2/3, 3/4]))
ans = [ 361/486, 61/64, 241/243, 1/2, -118/243, -57/64]
Оценка с плавающей точкой Полиномов Чебышева прямыми вызовами chebyshevT
численно стабильна. Однако сначала вычисление полинома с помощью символьной переменной, и затем заменяя значениями переменной точности в это выражение может быть численно нестабильным.
Найдите значение Полинома Чебышева 500-й степени первого вида в 1/3
и vpa(1/3)
. Оценка с плавающей точкой численно стабильна.
chebyshevT(500, 1/3) chebyshevT(500, vpa(1/3))
ans = 0.9631 ans = 0.963114126817085233778571286718
Теперь, найдите символьный полиномиальный T500 = chebyshevT(500, x)
и замените x = vpa(1/3)
в результат. Этот подход численно нестабилен.
syms x T500 = chebyshevT(500, x); subs(T500, x, vpa(1/3))
ans = -3293905791337500897482813472768.0
Аппроксимируйте полиномиальные коэффициенты при помощи vpa
, и затем замените x = sym(1/3)
в результат. Этот подход также численно нестабилен.
subs(vpa(T500), x, sym(1/3))
ans = 1202292431349342132757038366720.0
Постройте первые пять Полиномов Чебышева первого вида.
syms x y fplot(chebyshevT(0:4,x)) axis([-1.5 1.5 -2 2]) grid on ylabel('T_n(x)') legend('T_0(x)','T_1(x)','T_2(x)','T_3(x)','T_4(x)','Location','Best') title('Chebyshev polynomials of the first kind')
chebyshevT
возвращает результаты с плавающей точкой для числовых аргументов, которые не являются символьными объектами.
Действия chebyshevT
, поэлементные на нескалярных входных параметрах.
По крайней мере один входной параметр должен быть скаляром, или оба аргумента должны быть векторами или матрицами, одного размера. Если один входной параметр является скаляром, и другой является вектором или матрицей, то chebyshevT
расширяет скаляр в вектор или матрицу, одного размера в качестве другого аргумента со всеми элементами, равными тому скаляру.
[1] Hochstrasser, U. W. “Ортогональные Полиномы”. Руководство Математических функций с Формулами, Графиками и Математическими Таблицами. (М. Абрамовиц и я. А. Стегун, редакторы). Нью-Йорк: Дувр, 1972.
chebyshevU
| gegenbauerC
| hermiteH
| jacobiP
| laguerreL
| legendreP