Правило Симпсона в MATLAB

Опубликовано: 10 Сентября, 2022

Правило 1/3 Симпсона — это численный метод, используемый для вычисления определенных интегралов. MATLAB не предоставляет встроенной функции для численного интегрирования по правилу Симпсона. Однако мы можем найти это, используя приведенную ниже формулу.

Формула для численного интегрирования с использованием правила Симпсона:

where, h = (b-a)/n

В правиле 1/3 Симпсона мы вычисляем определенный интеграл, используя интегрирование по последовательным сегментам кривой. Это помогает нам сделать аппроксимации более точными по сравнению с правилом трапеций, где вместо параболических дуг использовались отрезки прямых линий.

Примечание. Для правила Симпсона 1/3 n должно быть четным.

Пример: Оценить в пределах от 4 до 5,2

Matlab




% MATLAB code for syms function that creates a variable
% dynamically and automatically assigns
% to a MATLAB variable with the same name
syms x
  
% Lower Limit
a = 4;
  
% Upper Limit
b = 5.2;
  
% Number of Segments
n = 6;
  
% Declare the function
f1 = log(x);
  
% inline creates a function of string containing in f1
f = inline(f1);
  
% h is the segment size
h = (b - a)/n;
  
% X stores the summation of first and last segment
X = f(a)+f(b);
  
% variables Odd and Even to store 
% summation of odd and even
% terms respectively
Odd = 0;
Even = 0;
for i = 1:2:n-1
    xi=a+(i*h);
    Odd=Odd+f(xi);
end
for i = 2:2:n-2
    xi=a+(i*h);
    Even=Even+f(xi);
end
  
% Formula to calculate numerical integration 
% using Simpsons 1/3 Rule
I = (h/3)*(X+4*Odd+2*Even);
  
disp("The approximation of above integral is: ");
disp(I);

Выход: