پیش از آغاز نوشته باید یادآوری کنم که می‌نویسیم «نرم‌افزارِ متلب» نه «نرم‌افزارِ مطلب». Matlab یک واژه انگلیسی است و زمانی که یک واژه غیرفارسی را به فارسی برمی‌گردانیم، از حروف اصیل عربی مثل ط، ث،ص، ذ و… استفاده نمی‌کنیم و به جای آن حروف ت، س و ز را به کار می‌بریم. پس به جای «امپراطور» هم می‌نویسیم «امپراتور».

معمولاً برنامه‌نویسان برای این‌که در نوشتن برنامه‌های بزرگ و پیچیده دچار مشکل نشوند، از توابع استفاده می‌کنند. این توابع، خود می‌تواند ساده یا پیچیده باشند. از نرم‌افزار متلب اغلب برای حل معادلات ریاضی پیچیده، بهینه‌سازی توابع خطی و غیر خطی، دستگاه‌های معادلات، پردازش تصویر، استفاده و تحلیل داده‌های آماری، انواع رگرسیون‌ و برازش‌ منحنی، رسم نمودارهای چند بعدی با امکانات بالا، شبکه‌های عصبی، منطق فازی و… استفاده می‌شود. نکته مهم این است که کاربر به کمک نرم‌افزار متلب می‌تواند در کم‌ترین زمان ممکن، بسیاری از توابع آماده در یک برنامه واحد را به کار بگیرد. همین امر سبب شده که نرم‌افزار متلب تبدیل به یک نرم‌افزار مهم و کاربردی در میان دانشجویان مهندسی و علوم پایه شود.

ممکن است بسیاری از افراد بپرسند که بهترین کتاب آموزشی نرم‌افزار متلب چیست. در پاسخ خواهم گفت: هلپ (Help) نرم‌افزار متلب. مشکل بسیاری از کتاب‌های آموزشِ نرم‌افزار متلب این است که علی‌رغم پرحجم‌ و قطور بودن، سنگین و گران بودن، باز هم کامل نیستند و شیوه استفاده از بسیاری از توابع را توضیح نداده‌اند. علاوه بر این، دیده‌ام که در برخی از نسخه‌های متلب، برخی توابع حذف و اضافه می‌شوند و یا شیوه استفاده از آن‌ها در نرم‌افزار تغییر می‌کند. اگر آشنایی اندکی هم با زبان انگلیسی داشته باشید کافی است و کارتان راه می‌افتد. شما می‌توانید با جست‌جوی کلیدواژه‌های مختلف در Help نرم‌افزار، در کمترین زمان به توابع مختلف و شیوه استفاده از آن‌ها، حلقه‌ها و شرط‌های برنامه‌نویسی و… دسترسی داشته باشید و در مواردی مثال‌های مختلفی را در نرم‌افزار بیابید.

همچنین سایت نرم‌افزار متلب نیز منبع بسیار خوبی برای یادگیری و آموزش استفاده از توابع و امکانات نرم‌افزار متلب است که البته متاسفانه برای کاربران با IP ایران در دسترس نیست و کاربران ایرانی برای استفاده از این سایت باید IP خود را تغییر دهند. در سایتِ نرم‌افزارِ متلب، کاربران بدون ثبت‌نام، می‌توانند به مثال‌های نرم‌افزار همراه با توضیحات و کد دسترسی داشته باشند.

اگر فکر می‌کنید نرم‌افزار متلب همیشه به کارتان می‌آید، می‌توانید شیوه استفاده از توابع مختلف را در اِم فایل (M-file)های جداگانه ذخیره کنید تا هنگام نوشتن برنامه‌های بزرگ و پیچیده، سردرگم نشوید و زمان کمتری را صرف حل مسئله کنید. قبلاً تعدادی از کاربردی‌ترین و رایج‌ترین توابع متلب در قالب M-file در آورده‌ بودم و برای راحتیِ کار، در برنامه‌ها از آن‌ها استفاده می‌کردم. اکنون برخی از این برنامه‌ها را برای استفاده شما در زیر آورده‌ام:

  1. برنامه یافتن ریشه معادله غیر خطی (x.^3-2*x+cos(x)-5)
  2.  برنامه مشتق‌گرفتن به صورت عددی (تعدادی عدد داریم. ابتدا یک چند جمله‌ای از مجموعه نقاط عبور می‌دهیم (برازش منحنی) و سپس مشتق منحنی را در نقطه دلخواه بدست می‌آوریم.)
  3.  برازش منحنی (Curve Fitting) چند جمله‌ای به کمک دستور ployfit. با داشتن چندین نقطه (X,Y)، یک منحنی درجه n از این نقاط عبور می‌دهیم. این برنامه با دریافت n، ضرایب چند جمله‌ای را به شما می‌دهد. پیش‌فرض n=3.
  4.  برنامه به دست آوردن ریشه معادله چند جمله‌ای درجه n.
  5.  برنامه به دست آوردن مقدار تابع چندجمله‌ای درجه n در نقطه‌ای خاص.
  6. برنامه محاسبه انتگرال به همراه رسم نمودار. در این برنامه برخی از جزئیات رسم نمودار از جمله، شطرنجی بودن، برچسب (label)های عمودی و افقی. برچسب در دو خط و برچسب متغیر به هنگام خروجی‌های مختلف برنامه آورده شده است.
  7. برنامه درون‌یابی (Interpolation) خطی مجموعه‌ای از نقاط.
  8. برنامه درون‌یابی (Interpolation) دو بعدی مجموعه‌ای از نقاط. (مثلاً در درون‌یابی داده‌های جداول بخار در ترمودینامیک کاربرد دارد.)
  9. یک برنامه شامل شش نقطه که یک منحنی درجه ۵ از آن عبور داده شده و ضرایب این منحنی و همچنین ریشه‌های معادله این منحنی نیز بدست آمده است. مقدار ماکسیمم و مینیمم این منحنی در بازه‌ای مشخص محاسبه شده و نمودار این منحنی همراه با نقاط اولیه (مثل نقاط حاصل از آزمایش) و نقاط اکسترمم به همراه گزینه‌های دیگری ترسیم و نشان داده شده است. خواندن و کار کردن روی این برنامه می‌تواند بسیار کاربردی و مفید باشد. در این برنامه دستورهای plot، legend، polyfit، polyval، fminbnd و num2str به کار رفته است.
  10. برنامه رسم نمودار در متلب به کمک دستور plot و ezplot برای رسم معادله تک متغیر و یا مجموعه‌ای از اعداد.
  11. برنامه به دست آوردن مقدار بیشینه (ماکسیمم) یک تابع تک متغیر به کمک دستور fminbnd.
  12. برنامه به دست آوردن مقدار کمینه (مینیمم) یک تابع تک متغیر به کمک دستور fminbnd.

 دانلود کدهای دوازده مثال کاربردی نرم‌افزار متلب (۴ کیلوبایت)

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

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