انتگرال ذوزنقه

Trapezoidal Integration
انتگرال ذوزنقه با متلب MATLAB
معرفی

روش های نیوتن کاتس (Newton-Cotes) یکی از پرکابردترین روش های انتگرال گیری عددی است. روش انتگرال گیری ذوزنقه (Trapezoidal) اولین روش از روش های نیوتن کاتس است و با فرض خطی بودن تابع چندجمله ای انتگرال گیری میان دو بازه عمل می نماید.

طبق قاعده ی ذوزنقه در بازه ی delim{[}{a,b}{]} انتگرال تابع f(x) به صورت زیر محاسبه می گردد:

int{a}{b}{f(x)dx}=(b-a){{f(a)+f(b)}/2}

تقسیم بازه ی انتگرال گیری delim{[}{a,b}{]} به زیربازه های کوچکتر موجب افزایش دقت حاصل انتگرال عددی می گردد. با فرض اینکه زیر بازه ها دارای طول مساوی h={b-a}/n است، که در آن n تعداد تقسیمات بازه است که می تواند عددی زوج و فرد باشد، مقدار انتگرال تابع با استفاده از رابطه ی زیر قابل محاسبه است:

int{a}{b}{f(x)dx}={h/2}delim{[}{f(a)+f(b)+2sum{j=1}{n-1}{~}f(x_j)}{]}

به این رابطه انتگرال مرکب (Composite) و یا کابرد چندگانه (multiple-application) ذوزنقه ای می گویند.

    برنامه نویسی با MATLAB

    در اینجا با استفاده از نرم افزار متلب (MATLAB) برنامه ای جهت محاسبه انتگرال تابع به روش ذوزنقه ارائه گردیده است. دو کد برای این منظور در یک فایل فشرده ارائه گردیده است:

    1. کد صریح (explicit) که در خروجی روند حل کامل مسئله را نمایش می دهد

    2. کد غیرصریح (معمولی) که تنها پاسخ نهایی را نمایش می دهد

    لازم به ذکر است که برنامه های ارائه شده قادر به حل تمامی مثال های قابل حل با این روش عددی و دریافت هر تعداد تقسیمات انتگرال گیری مورد نظر کاربران گرامی بوده و به صورت کاملا عمومی (general) کدنویسی شده اند.

    ورودی ها و خروجی ها

    ورودی:

    1. تابع (f(x ورودی جهت انتگرال گیری
    2. دامنه ی پایینی انتگرال گیری a
    3. دامنه ی بالایی انتگرال گیری b
    4. تعداد تقسیمات انتگرال n

    خروجی:

    1. حل کامل مسئله به صورت صریح
    2. مقدار نهایی پاسخ انتگرال

    تصاویر اجرای برنامه

    مشاهده ی ورودی و خروجی برنامه در یک مثال نمونه

    مشاهده ی ورودی و خروجی برنامه ی غیر صریح در یک مثال

    این برنامه با نسخه های متلب/MATLAB سال های 2010-2013 تست شده است. در صورت استفاده از نسخه ی سال های دیگر لایبریکا تضمین کننده ی اجرای صحیح برنامه نمی باشد.