Символьное дифференцирование.

Символьное дифференцирование в MATLAB выполняет команда

diff(func [, var, n])

где func – символьная запись функции или ее имя; var – переменная дифференцирования (если этот параметр отсутствует, то в качестве переменной дифференцирования будет выбрана первая по алфавиту символьная переменная); n – порядок (номер) производной, которую требуется определить (по умолчанию ищется первая производная).

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

Вычислим, например, производную от по переменной :

>> syms a x

>> f=cos(a*x)

f =

cos(a*x)

>> diff(f)

ans =

-a*sin(a*x)

Вычислим производную от функции по переменной :

>> syms x y n

>> y=x^n

y =

x^n

>> diff(y,x)

ans =

n*x^(n - 1)

Вычислим производную от функции по переменной :

>> syms a b t

>> y=sin(a*t+b)

y =

sin(b + a*t)

>> diff(y,t)

ans =

a*cos(b + a*t)

Вычислим теперь производную от функции по параметру :

>> syms a x

>> f=cos(a*x)

f =

cos(a*x)

>> diff(f,a)

ans =

-x*sin(a*x)

Для вычисления вторых производных по переменной и параметру можно использовать следующие команды:

>> diff(f,2)

ans =

-a^2*cos(a*x)

>> diff(f,a,2)

ans =

-x^2*cos(a*x)

Вычислим производную четвертого порядка от по переменной :

>> diff('tan(x)',x,4)

ans =

16*tan(x)*(tan(x)^2 + 1)^2 + 8*tan(x)^3*(tan(x)^2 + 1)

Рассмотрим теперь примеры отыскания производных функций многих переменных различных порядков.

Вычислим частные производные от функции по переменным и :

>> syms x y

>> diff('y^2/3-x^2/5-1',x)

ans =

-(2*x)/5

>> diff('y^2/3-x^2/5-1',y)

ans =

(2*y)/3

Вычислим частные производные второго порядка от функции по переменным и :

>> diff('sin(x)-ln(y)',x,2)

ans =

-sin(x)

>> diff('sin(x)-ln(y)',y,2)

ans =

1/y^2

Очевидно, что несложным образом можно вычислить и производную от параметрической функции. Так, например, для функции, определяемой уравнениями и , будем иметь:

>> syms t

>> x=sym('3*cos(t)^3')

x =

3*cos(t)^3

>> y=sym('3*sin(t)^3')

y =

3*sin(t)^3

>> diff(y)/diff(x)

ans =

-sin(t)/cos(t)

Вычислим производную от матрицы

.

Имеем:

>> A=[cos(a*x) sin(a*x); -sin(a*x) cos(a*x)]

A =

[ cos(a*x), sin(a*x)]

[ -sin(a*x), cos(a*x)]

>> diff(A)

ans =

[ -a*sin(a*x), a*cos(a*x)]

[ -a*cos(a*x), -a*sin(a*x)]








Дата добавления: 2016-11-28; просмотров: 1352;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.