انتگرال گیری یکی از مفاهیم اساسی در ریاضیات است که کاربردهای فراوانی در زمینههای مختلف مانند فیزیک، مهندسی و اقتصاد دارد. روش ذوزنقه یکی از روشهای عددی برای محاسبه انتگرال است که به سادگی قابل پیادهسازی در متلب میباشد.
در این مطلب، ابتدا روش ذوزنقه را توضیح میدهیم و سپس با استفاده از نمونه کد متلب، نحوه محاسبه انتگرال به این روش را به طور کامل شرح میدهیم.
▎روش ذوزنقه
روش ذوزنقه برای تقریب زدن انتگرال یک تابع( f(x) در بازه [a, b] به این صورت عمل میکند:
1. تقسیم بازه: بازه [a, b] را به n قسمت مساوی تقسیم میکنیم، به طوری که هر قسمت دارای عرض h = (b-a)/n باشد.
2. تخمین مساحت: هر قسمت را به شکل یک ذوزنقه تقریب میزنیم. مساحت هر ذوزنقه برابر است با نیمجمع طول دو قاعده ضرب در ارتفاع، یعنی:
A_i = (h/2) * (f(x_i) + f(x_{i+1}))
که در آن( xi و x{i+1} به ترتیب نقطه شروع و نقطه پایان هر ذوزنقه هستند.
3. جمع مساحت ذوزنقهها: مساحت کل زیر منحنی با جمع مساحت تمام ذوزنقهها بدست میآید:
I = (h/2) * [f(x_1) + 2*f(x_2) + 2*f(x_3) + ... + 2*f(x_n) + f(x_{n+1})]
کد متلب زیر یک تابع به نام trapz را پیادهسازی میکند که انتگرال تابع (f(x) را در بازه [a, b] با استفاده از روش ذوزنقه محاسبه میکند.
function I = trapz(f, a, b, n)
% f: تابعی که انتگرال آن محاسبه میشود
% a: نقطه شروع بازه
% b: نقطه پایان بازه
% n: تعداد تقسیمات بازه
h = (b - a) / n; % عرض هر قسمت
x = linspace(a, b, n + 1); % نقاط تقسیم بازه
y = f(x); % مقدار تابع در نقاط تقسیم
I = (h/2) * (y(1) + 2*sum(y(2:end-1)) + y(end)); % محاسبه انتگرال
end
▎مثال کاربردی:
مثال زیر نشان میدهد که چگونه میتوان از تابع trapz برای محاسبه انتگرال تابع f(x) = x^2 در بازه [0, 1] استفاده کرد:
% تعریف تابع
f = @(x) x.^2;
% تنظیم پارامترها
a = 0;
b = 1;
n = 10;
% محاسبه انتگرال
I = trapz(f, a, b, n)
% نمایش نتیجه
disp(['انتگرال تابع f(x) = x^2 در بازه [0, 1] برابر است با: ', num2str(I)])
خروجی:
انتگرال تابع f(x) = x^2 در بازه [0, 1] برابر است با: 0.3350
▎نتیجه:
کد متلب ارائه شده، نحوه محاسبه انتگرال به روش ذوزنقه را به طور کامل نشان میدهد. با تغییر تابع( f(x)، بازه [a, b] و تعداد تقسیمات n، میتوان از این کد برای محاسبه انتگرالهای مختلف استفاده کرد.
▎نکته:
با افزایش تعداد تقسیمات n، دقت روش ذوزنقه افزایش مییابد.
▎عکس
این عکس نمونهای از کد متلب برای محاسبه انتگرال یک تابع به روش ذوزنقه را نشان میدهد. در این کد، تابع trapz با پارامترهای f, a, b و n تعریف شده است.