آموزش جعبه ابزار برازش داده curve fitting در متلب matlab

طبق تجربه ما در دوره های آموزشی متلب که در دانشگاه ها، توسط ایران متلب برگزار شده است ، نشان می دهد که دانشجویان تحصیلات تکمیلی کارشناسی ارشد و دکتری نیاز به ابزاری دارند که برای داده های ورودی و خروجی خود یک رابطه بدست بیاورند.

یکی از توابع پر کاربرد متلب برای برازش داده ، تابع  fit می باشد .

با این تابع شما می توانید توابع زیادی را تقریب بزنید که در زیر خلاصه ای از آنها را می بینید .

چند جمله ای

Polynomial Model Names and Equations

Examples of Polynomial Model Names for Curves           Equations

poly1                                                                                      Y = p1*x+p2

poly2                                                                                      Y = p1*x^2+p2*x+p3

poly3                                                                                      Y = p1*x^3+p2*x^2+…+p4

…etc., up to poly9                                                                 Y = p1*x^9+p2*x^8+…+p10

آموزش تول‌باکس کرو فیتینگ نرم‌‌افزار متلب

کرو فیتینگ (Curve Fitting) چیست؟

کروفیتینگ یا برازش منحنی، به عملی گفته می‌شود که با کمک آن می‌توان معادله‌های خطوط پیچیده را از مجموعه‌ای از نقاط عبور داد. این نقاط می‌توانند همان داده‌های آزمایشگاهی باشند. مثلاً شما تعدادی داده‌ی آزمایشگاهی دارید و می‌خواهید بهترین خط با معادله‌ی y=ax^2+Sin x را از این نقاط عبور دهید. معادله‌ی بدست آمده الزماً از داده‌های شما عبور نمی‌کند؛ این معادله بهترین معادله‌ای خواهد بود که به تمامی داده‌های شما نزدیک است. شما به کمک نرم‌افزار متلب (Matlab) می‌توانید این عمل را انجام دهید. در واقع، نرم‌افزار متلب به شما اجازه‌ی انتخاب هر نوع معادله‌ای را می‌دهد و شما با انتخاب نوع معادله و ورود داده‌ها به نرم‌افزار می‌توانید ضرایب معادله مورد نظر خود را بدست آورید. این معادلات می‌توانند چندپارامتری و یا چندمتغیره باشند. در ادامه‌ی مطلب به صورت تصویری، چگونگی برازش منحنی یا کرو فیتینگ ( Curve Fitting) در نرم‌افزار متلب را توضیح داده‌ام.

ابتدا در پنجره اجرای دستورات مطابق شکل تایپ کنید: cftool

jp1

اکنون پنجره مربوط به جعبه ابزار برازش منحنی (Curve Fitting Toolbox ) طبق عکس زیر، در محیط نرم‌افزار متلب باز می شود:

jp2

حال برای اجرای یک مثال ساده یا خود شما داده هایی را وارد نرم افزار متلب بکنید و یا هم دستور زیر را تایپ نمایید تا داده هایی از دیتا بیس نرم افزار متلب وارد محیط نرم‌افزار شود:

jp3

پس از اجرای دستور فوق در محیط نرم‌افزار با پنجره زیر مواجه خواهید شد:

jp4

ه شامل دو ماتریس می‌باشد.

حال از پنجره‌ی جعبه ابزار که قبلا باز کرده بودیم، روی data کلیک کنید تا مطابق شکل پنجره ای باز شود و گزینه های X , Y  را طبق شکل تنظیم کنید.

jp5

سپس بر روی  Create data set  کلیک کنید تا پنجره زیر ظاهر گردد:

jp6

روی View کلیک کنید.

اکنون روی close کلیک کنید.

حال به پنجره زیر بروید و روی Fitting کلیک کنید.

jp7

وقتی کلیک کردید پنجره زیر ظاهر می گردد:

jp8

وقتی شما چک باکس Immediate apply را علامت زدید و روی New Fit هم کلیک کرده باشید معادلات مختلف و ضرایبشان را مشاهده خواهید کرد و خطوط متناظر با این معادلات از مجموعه نقاط شما عبور خواهد کرد. در قسمت نتایج Result می‌توانید مقدار عددی رگرسیون نیز مشاهده کنید.

jp9

jp10

شما می توانید در یک شکل جند بار New Fit را بزنید و مطابق شکل چندین منحنی همزمان در یک صفحه از مجموعه نقاط شما عبور خواهد کرد.

jp11

jp12

برای اینکه بدانید  کدام یک از نقاط شما از سایر نقاط پرت است و به اصطلاح ممکن است بر اثر خطای آزمایش بوجود آمده باشد کارهای زیر را انجام دهید:

در تصویر بالا از منوی View  گزینه Residuals  و سپس Line Plot  را انتحاب کنید تا شکل زیر به پایین نمودار مطابق شکل اضافه شود:

jp13

این شکل نشان می دهد که نقاطی که نزدیک به ۱۹۴۰ هستند، ممکن است داده های پرت باشند و در صورت حذف این داده و داده سمت راست آن، منحنیِ بهتری و با دقت بیشتری خواهیم داشت که رگرسیون آن نیز به مراتب به واحد نزدیک‌تر خواهد بود.

تول باکس کروفیتینگ متلب امکانات گسترده‌ی دیگری نیز دارد. به عنوان مثال شما غیر از این ۳۵ معادله که می‌توانید داده‌های خود را روی آن‌ها فیت کنید، می‌توانید ترکیبی از این معادلات و یا هر معادله‌ی دل‌خواهی را از داده‌ها عبور دهید. اگر شما بخواهید که از امکانات این جعبه ابزار در وسط برنامه (m-file) استفاده کنید، شما باید از کدهایی که در هلپ نرم‌افزار توضیح داده شده، به کار ببرید. تول باکس کرو فیتینگ متلب قابلیت محاسبه‌ی مشتق عددی و یا انتگرال‌گیری از منحنی‌هایی که از داده‌های شما عبور می‌کند نیز دارد. هم‌چنین به کمک این جعبه‌ابزار می‌توانید معادلات چند متغیره و چند پارامتری را از داده‌هایتان عبور دهید.

4 دیدگاه دربارهٔ «آموزش جعبه ابزار برازش داده curve fitting در متلب matlab»

  1. blank

    سلام ممنون از اطلاعات مفیدی که قرار دادید
    یه سوال دارم. متلب برای برازش منحنی در cftool از چه روشی استفاده میکنه؟ least-square یا ghi-square یا …؟

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *