Вычисление интегралов
Символьные вычисления неопределенных интегралов в MATLAB осуществляется при помощи функции:int(fun, var),где fun – символьное выражение, представляющее собой подынтегральную функцию, а var – переменная интегрирования.Пример вычисления неопределенного интеграла:
syms x %Определение символьной переменной
f=sym('exp(x) -x'); %Определение символьной функции
int(f,x) %Вычисление неопределенного интеграла
Результатом будет:
ans =
exp(x)-1/2*x^2
Для того чтобы вычислить определенный интеграл, можно использовать функцию:
int(fun, var, a, b),
где fun –подынтегральная функция, а var – переменная интегрирования, a, b – пределы интегрирования.
Пример вычисления определенного интеграла:
I1=int('exp(x)-x','x',-1,0); %Символьное решение
vpa(I1,5)%Численное решение
Результатом будет:
ans =
1.1321
Вычислительный алгоритм метода Симпсона с автоматическим выбором шага реализован функцией quad(name, a, b [,tol, trace]), где
- name – имя М-функции, задающей подынтегральное выражение;
- a, b – пределы интегрирования;
- tol – точность вычисления;
- trace – параметр, позволяющий получить информацию о ходе вычислений в виде таблицы, в столбцах представлены значение количества вычислений, начальная точка текущего промежутка интегрирования, его длина и значение интеграла.
Пример:
В М-файле с именем Simpson.m пишем:
function y=G(x)
y=exp(x)-x;
end
Потом в командном окне вызываем функцию quad:
format long %Формат вывода значений
quad('Simpson',-1,0,1.0e-05)
Результатом будет:
ans =
1.13212056020538
Примеры:
nint.m
integral.m
Simpson.m