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

۱۵ مهر ۱۳۹۱ | نوشته‌شده به دست عادل شجاعی در آموزش، دانش و فن‌آوری

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

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

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

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

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

نرم افزار متلب matlab software تول باکس کرو فیتینگ

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

ورود داده به نرم افزار متلب matlab

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

آموزش داده ها در نرم افزار متلب

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

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

داده نرم افزار متلب تول باکس کرو فیتینگ برازش منحنی

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

آموزش تصویری عکس نرم افزار متلب matlab

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

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

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

برازش منحنی نرم افزار متلب

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

آموزش تصویری نرم افزار متلب matlab

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

آموزش حل معادلات غیر خطی در متلب رگرسیون

عبور خط منحنی از مجموعه نقاط در نرم افزار متلب

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

معادلات غیر خطی نرم افزار متلب

رسم نمودار در متلب

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

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

رسم نمودار در متلب

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

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

پس از تحریر: به دلیل فاصله گرفتن از کار با این  نرم‌افزار و مشغله‌های متعدد، فرصت پاسخ‌گویی به سوالات دوستان را ندارم؛ به بزرگواری خود ببخشید.

شما می‌توانید ما را دنبال کنید از خوراک RSS 2.0 و یا پاسخ بگذارید در صورت تمایل، بازتاب بفرستید.

۷۵ پاسخ



پاسخ بگذارید

نشانی ایمیل شما منتشر نخواهد شد.

شما می‌توانید از این دستورات HTML استفاده کنید: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>