Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Glava_2a70_2014.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
5 Мб
Скачать
☆

2.26.2. Вычисление пределов.

Одной из важных задач математического анализа является вычисление пределов последовательностей и функций [99,103,113,187,190,221]. Для решения этой задачи в системе MATLAB предусмотрена функция:

limit(func [, x, b, options])

где func – символьная запись функции или ее имя; x – имя переменной относительно которой вычисляется предел; b – точка в которой вычисляется предел (возможно вычисление справа и слева от заданной точки).

Рассмотрим использование функции limit на нескольких примерах.

Пусть требуется вычислить предел

.

Имеем:

>> syms x h

>> limit((cos(x+h)-cos(x))/h,h,0)

ans =

-sin(x)

Функция limit(func,x,a) возвращает предел символьного выражения func в точке x, стремящейся к значению a.

Пусть требуется вычислить предел

.

Имеем:

>> syms x n

>> limit((1+x/n)^n,n,inf)

ans =

exp(x)

Функция limit(func,x,inf) возвращает предел символьного выражения func в точке x, стремящейся к бесконечности.

Пусть требуется вычислить предел

.

Имеем:

>> syms x

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

ans =

NaN

Поясним, что значение NaN переменной ans в данном случае означает, что значение рассматриваемого предела не определено.

Пусть требуется вычислить пределы

и .

Имеем:

>> syms x

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

ans =

Inf

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

ans =

-Inf

Функция limit(func,x,a,’right’) возвращает предел символьного выражения func в точке x, стремящейся к значению a справа (т.е. x принимает значения большие, чем a). Функция limit(func,x,a,’left’) возвращает предел символьного выражения func в точке x, стремящейся к значению a слева (т.е. x принимает значения меньшие, чем a).

Пусть требуется вычислить пределы слева и справа:

и .

Имеем:

>> syms x

>> f=2^(1/(x^2-4))

f =

2^(1/(x^2 - 4))

>> limit(f,x,2,'left')

ans =

0

>> limit(f,x,2,'right')

ans =

Inf

2.26.3. Символьное интегрирование.

Для вычисления интегралов в символьном виде в системе MATLAB используется функция int, имеющая следующий синтаксис:

int(f)

int(f[, var])

int(f[, var, a, b])

где f – символьная подынтегральная функция; var – переменная интегрирования (необязательный параметр); a – нижний предел интегрирования (необязательный параметр); b – верхний предел интегрирования (необязательный параметр).

Рассмотрим ниже несколько тематических примеров.

Пусть требуется вычислить неопределенный интеграл

.

Имеем:

>> syms x a b

>> int(1/(a^2+(b*x)^2))

ans =

atan((b*x)/a)/(a*b)

Пусть требуется вычислить определенный интеграл

.

Имеем:

>> syms x a b

>> int(1/(a^2+(b*x)^2),0,a/b)

ans =

pi/(4*a*b)

2.26.3. Вычисление суммы ряда. Разложение функций в ряды.

Для вычисления суммы ряда в системе MATLAB используется функция symsum, синтаксис обращения к которой имеет вид:

symsum(func [, var, a, b])

где func – символьное выражение, обозначающее общий член суммы числового ряда, зависящий от переменной var, которая, в свою очередь, может принимать значения от a до b.

Пусть требуется вычислить суммы ряда

и .

Имеем:

>> syms x k

>> s1=symsum(1/k^4,1,inf)

s1 =

pi^4/90

>> s2=symsum(1/k^4,1,10)

s2 =

43635917056897/40327580160000

Приведем теперь пример расходящегося ряда

,

при попытке вычисления суммы элементов которого будем иметь:

>> syms x k

>> s=symsum(1/k,1,inf)

s =

Inf

Для формирования ряда Маклорена (являющегося частным случаем ряда Тейлора) символьной функции func до n-го члена (если параметр n отсутствует, то по умолчанию до шестого) следует использовать функцию

taylor(func [, n])

Пусть, например, требуется разложить в ряд Маклорена функцию

.

Имеем:

>> syms x

>> f=1/(5+3*sin(x));

>> T=taylor(f)

T =

(631*x^5)/125000 + (6*x^4)/3125 - (29*x^3)/1250 + (9*x^2)/125 - (3*x)/25 + 1/5

Функция taylor(func, var [, a]) возвращает разложение в ряд Тейлора для символьной функции func относительно переменной var окрестности точки a.

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

.

Имеем:

>> syms x a

>> taylor(exp(x),x,a)

ans =

exp(a) + (exp(a)*(a - x)^2)/2 - (exp(a)*(a - x)^3)/6 + (exp(a)*(a - x)^4)/24 - (exp(a)*(a - x)^5)/120 - exp(a)*(a - x)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]