Руководство MATLAB:эффективное вычисление полиномиальных производных
В математике производная представляет собой скорость изменения функции по отношению к переменной. Проще говоря, он говорит нам, как функция изменяется в любой заданной точке. Производные играют фундаментальную роль в исчислении и широко используются в таких областях, как физика, техника и экономика, для моделирования изменений и движения.
Например, если у вас есть функция, описывающая положение автомобиля во времени, производная этой функции даст вам скорость автомобиля (скорость изменения положения).
Производные полиномов
Полином — это математическое выражение, состоящее из переменных, возведенных в разные степени, в сочетании с коэффициентами. Например, полином P(x) =3x2 + 2x + 5 является полиномом второй степени.
Производная полиномиальной функции находится с помощью простого правила:для каждого члена умножьте коэффициент на показатель степени, а затем уменьшите показатель степени на 1. Этот процесс повторяется для каждого члена многочлена.
Например, рассмотрим полином:
P(x) = 3x3 + 4x2 + 2x + 1
Производная P(x) рассчитывается как −
- Для члена 3x3:умножьте 3 на 3 (показатель степени), в результате чего получится 9x2.
- Для выражения 4x2:умножьте 4 на 2, получите 8x.
- Для выражения 2x:умножьте 2 на 1, получите 2.
- Постоянный член (1) имеет производную 0.
Итак, производная —
P(x) = 9x2 + 8x + 2
Производные в MATLAB
MATLAB позволяет легко вычислять производные полиномов с помощью встроенных функций. Полином в MATLAB представлен вектором, содержащим его коэффициенты, упорядоченные по убыванию степени переменной.
Чтобы найти производную полинома, MATLAB предоставляет функцию Polyder.
Синтаксис
k = polyder(p) k = polyder(a,b) [q,d] = polyder(a,b)
Пояснение синтаксиса
k =polyder(p) вычисляет производную полинома, заданного коэффициентами в p, в результате чего получается новый полином k(x), который представляет производную d/dx p(x).
k =Polyder(a,b) вычисляет производную произведения двух полиномов a и b, в результате чего получается новый полином k(x), который представляет.
$$\mathrm{\frac{d}{dx}[a(x) \:\cdot \:b(x)]}$$
[q, d] =polyder(a, b) вычисляет производную частного двух многочленов a и b, возвращая два многочлена:q(x) (числитель) и d(x) (знаменатель), представляющие производную a(x)/b(x).
Пример 1:Вычисление производной с использованием Polyder(p)
Предположим, у нас есть полином
P(x) = 4x3 + 3x2 + 2x + 1
Этот многочлен может быть представлен вектором его коэффициентов в MATLAB −
p = [4 3 2 1];
Чтобы вычислить производную этого полинома, мы используем функцию Polyder в MATLAB —
k = polyder(p);
При выполнении кода в командном окне Matlab выводится результат.
>> p = [4 3 2 1]; k = polyder(p) k = 12 6 2 >>
Для члена 4x3 производная равна 12x2 (умножьте коэффициент 4 на показатель степени 3 и уменьшите показатель степени на 1).
Для члена 3x2 производная равна 6x.
Для члена 2x производная равна 2.
Поскольку постоянный член 1 имеет производную 0.
Таким образом, производный полином равен:
k(x) = 12x2 + 6x + 2
В Matlab результатом k будет:[12 6 2]
Пример 2:Еще один пример поиска производных многочлена
Рассмотрим следующий полином
p(x) = 5x4 + 2x3 + 7x2 - 3x + 8
Этот полином может быть представлен вектором его коэффициентов в MATLAB −
p = [5 -2 7 -3 8]
Чтобы найти производную этого полинома, воспользуемся функцией Polyder в Matlab.
k = polyder(p)
Эта команда вернет коэффициенты производной полинома p.
Когда вы выполняете код в командном окне Matlab, выходные данные:
>> p = [5 -2 7 -3 8]; k = polyder(p) k = 20 -6 14 -3 >>
Вектор k =[20 -6 14 -3] представляет собой полином
k(x) = 20x3 - 6x2 + 14x - 3
Пример 3:Производная произведения двух полиномов с использованием Polyder(a, b)
Рассмотрим два многочлена
a(x) = 2x2 + 3x + 1 b(x) = 4x + 5
Эти полиномы могут быть представлены векторами их коэффициентов в MATLAB:
a = [2 3 1] b = [4 5]
Чтобы вычислить производную произведения этих двух полиномов, мы используем функцию Polyder с двумя входными аргументами.
k = polyder(a, b);
Это вернет коэффициенты производной произведения a(x) и b(x).
Когда вы выполняете код в командном окне Matlab, мы получаем следующий результат:
>> a = [2 3 1]; b = [4 5]; k = polyder(a, b) k = 24 44 19 >>
Итак, производный полином:k(x) =24x2 + 44x + 19
Пример 4:Производная двух заданных многочленов
Рассмотрим два разных многочлена.
a(x) = 3x3 + 2x2 + x + 4 b(x) = x2 - 5x + 6
Эти полиномы могут быть представлены следующими векторами коэффициентов в MATLAB.
a = [3 2 1 4]; b = [1 -5 6];
Чтобы вычислить производную произведения этих двух полиномов, мы используем функцию Polyder с векторами a и b в качестве входных данных
k = polyder(a, b);
Эта команда вернет коэффициенты производной произведения a(x) и b(x).
Когда код выполняется в командном окне Matlab, выходные данные:
>> a = [3 2 1 4]; b = [1 -5 6]; k = polyder(a, b) k = 15 -52 27 22 -14 >>
Итак, производный полином равен —
k(x) = 15x4 - 52x3 + 27x2 + 22x - 14
Пример 5:Производная частного двух многочленов с использованием [q, d] =Polyder(a, b)
Давайте рассмотрим два полинома —
a(x) = 4x2 + 3x + 2 b(x) = x2 - 2x + 1
Эти полиномы могут быть представлены векторами их коэффициентов в Matlab.
a = [4 3 2]; b = [1 -2 1];
Чтобы вычислить производную частного a(x)/b(x), мы используем функцию Polyder с двумя выходными аргументами q и d.
[q,d] = polyder(a,b)
Это вернет два полинома:q(x) (числитель) и d(x) (знаменатель) производной a(x)/b(x).
Когда код выполняется в командном окне Matlab, выходные данные:
>> a = [4 3 2]; b = [1 -2 1]; [q,d] = polyder(a,b) q = -11 4 7 d = 1 -4 6 -4 1 >>
MATLAB