Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методички / TROPA V MATLAB_21.doc
Скачиваний:
154
Добавлен:
17.09.2018
Размер:
2.47 Mб
Скачать

7.8 Вычисление пределов – команда limit

Для вычисления пределов функции F(x), заданной в аналитическом (символьном) виде, служит команда limit, которая используется в одном из следующих вариантов:

limit(F,x,a) – возвращает предел символьного выражения F в точке x = a;

limit(F,x,a,'right') или limit(F,x,a,'left') – возвращает предел в точке a справа или слева.

Продемонстрируем приемы вычисления пределов на следующих примерах:

а) ; б) с) ; д) ;

е) ; ж) .

Решения в указанном порядке имеют вид:

>> syms a x

>> limit(sin(a*x)/(a*x),x,0)

ans =

1

>> limit((1+3/x)^(2*x),x,inf)

ans =

exp(6)

>> limit(1/(1-x),x,1)

ans =

NaN

Здесь переменная NaN означает, что предела функции в точке x = 1 не существует.

>> limit(1/(1-x),x,1,'right')

ans =

-inf

Правосторонний предел функции в точке x = 1 существует и равен - ∞.

>> limit(1/(1-x),x,1,'left')

ans =

inf

Левосторонний предел функции в точке x=1 существует и равен +∞.

>> limit(x*(log(a+x)-log(x))/5,x,inf)

ans =

1/5*a

7.9 Вычисление производных – команда diff

Для вычисления в символьном виде производных от выражения S служит команда diff, записываемая в форме diff(S, x, n). Она возвращает символьное значение n-ой производной (производной степени n) от символьного выражения или массива символьных выражений S по переменной x, т. е.

Sn(x) = .

В формате diff(S, x) находится первая производная (n = 1 по умолчанию).

Найти первую и третью производные функцииy = x2sinx.

Решение:

>> syms x

>> y=x^2*sin(x);

>> diff(y,x)

ans =

2*x*sin(x)+x^2*cos(x)

>> diff(y,x,3)

ans =

6*cos(x)-6*x*sin(x)-x^2*cos(x)

Если S массив, то diff возвращает массив, элементами которого являются производные от исходных функций, образующих массив.

Например:

>> syms a x

>> Y=[a*log(x);x^a]

[ a*log(x)]

[ x^a]

>> diff(Y,x)

ans =

[ a/x]

[ x^a*a/x]

Если выражение S зависит от нескольких переменных, например, S=S(x,y), то ее частная производная (или S'x(x,y) ) по аргументу x есть производная этой функции по x при постоянном значении y.

В декартовой системе координат на плоскости xOy градиент функции S(x,y) есть вектор

grad S = .

Частными производными второго порядка функции S=S(x,y) называются частные производные от ее первых производных , , т. е.

= , = , = , = .

Частные производные второго порядка обозначаются также символами

S''xx(x,y), S''xy(x,y), S''yx(x,y), S''yy(x,y). Аналогично определяются и обозначаются частные производные более высоких порядков. Смешанные производные второго порядка, отличающиеся только порядком дифференцирования, равны между собой при условии их непрерывности: S''xy(x,y) = S''yx(x,y).

Рассмотрим пример. Для функции двух переменных

f(x,y) = arcsinxy

найти gradf(x;y) и вычислить его в точке (0;0). Проверить выполнение условия f''xy(x,y) = f''yx(x,y).

Решение:

>> syms x y

>> f=asin(x*y);

>> x1=diff(f,x)

x1 =

y/(1-x^2*y^2)^(1/2)

>> pretty(x1)

y

---------------

2 2 1/2

(1 - x y )

Т. е. = .

>> y1=diff(f,y)

y1 =

x/(1-x^2*y^2)^(1/2)

>> pretty(y1)

x

---------------

2 2 1/2

(1 - x y )

Т. е. = . Тогда grad(arcsinxy) = .

>> subs([x1 y1],[x y],[0 0])

ans =

0 0

Итак, grad(arcsinxy)(0;0) = (0;0).

>> xy=diff(x1,y)

xy =

1/(1-x^2*y^2)^(1/2)+y^2/(1-x^2*y^2)^(3/2)*x^2

>> [m]=simple(xy)

m =

1/(1-x^2*y^2)^(3/2)

>> pretty(m)

1

---------------

2 2 3/2

(1 - x y )

Следовательно, = .

>> yx=diff(y1,x)

yx =

1/(1-x^2*y^2)^(1/2)+y^2/(1-x^2*y^2)^(3/2)*x^2

>> [m]=simple(yx)

m =

1/(1-x^2*y^2)^(3/2)

>> pretty(m)

1

---------------

2 2 3/2

(1 - x y )

Значит, = .

Окончательный результат:

grad(arcsinxy)(0;0) = (0;0) и f''xy(x,y) = f''yx(x,y) = .

Соседние файлы в папке Методички