В этом руководстве по Python мы узнаем о «Производной массива Python Scipy», позволяющей дифференцировать данную функцию или функции в массиве и находить производную этих функций.
Скорость изменения функции относительно независимой переменной может варьироваться, и это и есть производные. Когда существуют переменная величина и переменная скорость изменения, чаще всего используется производная.
В Python Scipy есть метод Derivative() в модуле scipy.misc, который находит значение точки для n-й производной функции.
Синтаксис:
scipy.misc.derivative(func, x0, dx=1.0, n=1, args=(), order=3)
Где параметры:
- func: это функция ввода.
- x0 (float): точка, в которой можно найти n-ю производную.
- dx (float): это пробел.
- n (int): порядок производной. Значение по умолчанию — 1.
- args (tuple): используется для предоставления аргументов.
- order (int): используйте только нечетное количество точек.
Давайте найдем производную любой функции, выполнив следующие шаги:
- Импортируйте необходимые библиотеки, используя приведенный ниже код Python.
from scipy import misc
- Определите функцию x2+x3, производную которой нам нужно найти, используя приведенный ниже код.
def fun(x): return x**2 + x**3
- Теперь найдите производную вышеуказанной функции, используя приведенный ниже код.
misc.derivative(fun, 1.5, dx=1e-2)
- Вторая производная функции
- Функция производной
- Вторая производная массива
- Производная графика от массива
- Пример
Вторая производная функции
Вторая производная, грубо говоря, измеряет, как меняется скорость изменения самой величины. Например, вторая производная положения объекта относительно времени — это мгновенное ускорение объекта или скорость изменения скорости объекта относительно времени.
Давайте найдем вторую производную любой функции, выполнив следующие шаги:
- Импортируйте необходимые библиотеки, используя приведенный ниже код Python.
from scipy import misc
- Определите функцию x3+x2, производную которой нам нужно найти, используя приведенный ниже код.
def fun(x): return x**3 + x**2
- Теперь найдите производную вышеуказанной функции, используя приведенный ниже код.
misc.derivative(fun,1, n=2, dx=1e-4)
Функция производной
Чтобы вычислить производную массива, мы будем использовать цикл Python с функцией производной в этом разделе.
Давайте посмотрим на примере, выполнив следующие шаги:
- Импортируйте необходимые библиотеки, используя приведенный ниже код Python.
from scipy import misc
- Определите функции, используя лямбда-функцию, производную которой нам нужно найти, используя приведенный ниже код.
fun1 = lambda x: x**2+3*x+2 fun2 = lambda x: x**3+3*x+2
- Создайте массив вышеуказанных функций, используя приведенный ниже код.
fun=[fun1,fun2]
- Вычислите производную массива, содержащего функции, используя приведенный ниже код.
for i in range(len(fun)): ans = derivative(fun[i],1) print('Derivative of {} function is'.format(i+1),ans)
Вторая производная массива
В этом разделе мы будем использовать цикл Python с функцией производной для вычисления второй производной массива.
Давайте посмотрим на примере, выполнив следующие шаги:
- Импортируйте необходимые библиотеки, используя приведенный ниже код Python.
from scipy import misc
- Определите функции, используя лямбда-функцию, производную которой нам нужно найти, используя приведенный ниже код.
func1 = lambda x: x**4+2*x**2+2 func2 = lambda x: x**3+2*x**2+2
- Создайте массив вышеуказанных функций, используя параметр метода Derivative(), используя приведенный ниже код.
func=[func1,func2]
- Вычислите вторую производную массива, содержащего функции, используя приведенный ниже код.
for i in range(len(fun)): ans = derivative(fun[i],1,n=2) print('Derivative of {} function is'.format(i+1),ans)
В приведенном выше коде мы передаем параметр n=2 методу Derivative() для вычисления производной второго порядка функций внутри массива.
Производная графика от массива
Теперь мы вычислим производную и построим график этой производной, чтобы увидеть, как она выглядит.
Давайте вычислим и построим производную, выполнив следующие шаги:
- Импортируйте необходимые методы или библиотеки, используя приведенный ниже код Python.
import matplotlib.pyplot as plt import numpy as np from scipy.misc import derivative
- Теперь определите функцию, используя приведенный ниже код.
def fun(x): return 3*x*x*x+x+2
- Вычислите производную вышеуказанной функции, используя приведенный ниже код.
def derivate(x): return derivative(fun, x)
- Определите интервалы по оси X, используя приведенный ниже код.
y_val = np.linspace(-10, 10)
- Постройте вышеуказанную функцию и производную, используя приведенный ниже код.
plt.plot(y_val, fun(y_val), color='blue', label='Function') plt.plot(y_val, derivate(y_val), color='red', label='Derivative') plt.legend(loc='upper left') plt.grid(True)
Пример
В этом разделе, мы возьмем функцию и подробно найдем ее производную, а также математические детали.
Предположим, у нас есть функция f(x)=6×2-9x и мы хотим найти производную этой функции при x=1, тогда сначала мы продифференцируем ее, как показано ниже:
После дифференцирования оно становится f(x)=12x-9, теперь поместите значение x в дифференцированное выражение как f(1) = 12*1-9, и оно станет 3. Таким образом, ответ или производная вышеуказанной функции это 3.
Давайте посмотрим тот же пример с методомderive() модуля scipy.misc Python Scipy, выполнив следующие шаги:
- Импортируйте необходимые библиотеки или методы, используя приведенный ниже код Python.
from scipy.misc import derivative
- Определите функцию, используя приведенный ниже код.
def fun(x): return 6*x**2 -9*x
- Теперь найдите производную при x=1, используя приведенный ниже код.
derivative(fun,1)
Посмотрите на приведенный выше код: мы вычислили производную функции 6×2-9x, которая равна 3,0.