Многочлены Чебышёва первого рода
чебышевТ (n, x)chebyshevT( представляет n,x)nмногочлен Чебышева первой степени в точке 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] Хохштрассер, У. В. «Ортогональные многочлены». Справочник по математическим функциям с формулами, графиками и математическими таблицами. (М. Абрамовиц и И. А. Стегун, ред.). Нью-Йорк: Дувр, 1972.
[2] Коул, Говард С. и Коннор Маккензи. «Обобщения и специализации генерирующих функций для полиномов Якоби, Гегенбауэра, Чебышева и Лежандра с определёнными интегралами». Журнал классического анализа, № 1 (2013): 17-33. https://doi.org/10.7153/jca-03-02.
chebyshevU | gegenbauerC | hermiteH | jacobiP | laguerreL | legendreP