Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛБ3 - Вычисление интегралов.doc
Скачиваний:
10
Добавлен:
23.11.2018
Размер:
163.84 Кб
Скачать

2. Функция trapz(y)

Отличие данной функции от функции cumtrapz(y) состоит в том, что осуществляется простое интегрирование без накопления, то есть trapz(y) возвращает не столько интегралов, насколько шагов разбивается область интегрирования, а общее значение интеграла.

Пример 1: вычислить интеграл вида с шагом 0,5.

x=1: 0.5: 10;

y=x.*exp(x) + log(x) + 1;

trapz(y)

ans = 4.0657e+005.

Существует модификация данной функции trapz (х, у). Следует иметь в виду, что при вычислении интеграла с помощью функции trapz (х, у) его значение зависит от шага интегрирования.

Метод парабол (Симпсона)

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

quad('fun', a, b)

quad('fun', a, b, tol)

quad('fun', a, b, tol, trace)

dblquad('fun', a, b, c, d)

dblquad('fun', a, b, c, d, tol)

В этих функциях приняты обозначения:

1) 'fun' - подынтегральная функция, взятая в одинарные кавычки;

2) а, b - пределы интегрирования;

3) tol - относительная погрешность, задаваемая пользователем (по умолчанию tol = 10e -3);

4) с,d - пределы интегрирования по другой переменной (внешней) при вычислении двойного интеграла;

5) trace — число, отличное от нуля, по которому система показывает ход вычислительного процесса.

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

  1. Функция quad('fun', a, b)

Функция вычисляет определенный интеграл с погрешностью, не превышающей 10-3.

Пример 1:

Подынтегральная функция имеет вид: f(x) = е х + х 2 + 2 sin х - 5 .

Необходимо вычислить интеграл

Решение:

>> y='exp(x)+x.^2 + 2*sin(x)-5';

>> quad (y, 1, 5)

ans = 167.5415

Функция может быть представлена одной строкой:

quad (‘ехр(х) + х.^2 + 2*sin(х) – 5’, 1, 5).

2. Функция dblquad('fun',a,b,c,d).

В функции dblquad ('fun', a, b, с, d) приняты следующие обозначения:

'fun' - это функция с двумя переменными;

а, b - пределы по внутренней переменной;

с, d - пределы по внешней переменной.

Пример 1: Пусть функция двух переменных имеет вид: z = x2 + y2 - 2

Необходимо вычислить интеграл

Решение:

>> z='x.^2 + y.^2 - 2';

>> dblquad (z,1,2,0,3)

ans = 10.

Аналитические методы вычисления интеграла

Функция int() вычисления неопределенного и определенного интегралов.

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

1) int(у(х))

2) int(y(x), а, b),

где:

• у(х) — подынтегральная функция;

• а, b — пределы интегрирования.

Эти функции вычисляют:

• неопределенный интеграл;

• неопределенный интеграл с символьными переменными;

• определенный интеграл с символьными значениями пределов интегрирования;

• определенный интеграл от алгебраических функций;

• кратные интегралы;

• несобственные интегралы.

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

1. Определение символьных переменных с помощью функции syms.

2. Ввод подынтегрального выражения с присвоением ему имени y=f(x);

3. Ввод функции int(у), если вычисляется неопределенный интеграл, или функции int(у, а, b), если вычисляется определенный интеграл в пределах [a; b].

4. Получение решения путем нажатия клавиши <Enter>.

Пример 1: Необходимо вычислить интеграл

>> syms x;

>> y = х/(1+х^2);

>> int(y)

ans =1/2*log(1+x^2)

Пример 2 : Вычислить значение определенного интеграла

>> syms x a b;

>> y=x/(1+x^2);

>> int(y, a, b)

ans = 1/2*log(1+b^2)-1/2*log(1+a^2)

Пример 3: Вычислить определенный интеграл

>> syms x;

>> y=x/(1+x^2);

>> int(y, 1, 5)

ans = 1/2*log(13)

Вычисления кратных интегралов.

Наиболее просто кратный интеграл вычислить путем интегрирования ответа, полученного от предыдущего значения интеграла.

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

Решение:

>> syms x;

>> y=x/(1-x^2);

>> int(int(y))

ans = -1/2*log(x-1)*(x-1)+x-1/2*log(x+1)*(x+1)

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