متلب

متلب یک محیط نرم‌افزاری برای انجام محاسبات عددی و یک زبان برنامه‌نویسی نسل چهارم است. واژه متلب هم به معنی محیط محاسبات رقمی و هم به معنی خود زبان برنامه‌نویسی مربوطه است که از ترکیب دو واژه MATrix (ماتریس) و LABoratory (آزمایشگاه) ایجاد شده‌است. این نام حاکی از رویکرد ماتریس محور برنامه است، که در آن حتی اعداد منفرد هم به عنوان ماتریس در نظر گرفته می‌شوند.
کار کردن با ماتریسها در متلب بسیار ساده است. در حقیقت تمام داده‌ها در متلب به شکل یک ماتریس ذخیره می‌شوند. برای مثال یک عدد (اسکالر) به شکل یک ماتریس ۱*۱ ذخیره می‌شود. یک رشته مانند «Whale is the biggest animal» به شکل ماتریسی با یک سطر و چندین ستون (که تعداد ستون‌ها به تعداد کاراکترهاست) ذخیره می‌شود. حتی یک تصویر به شکل یک ماتریس سه بعدی ذخیره می‌گردد که بعد اول و دوم آن برای تعیین مختصات نقاط و بعد سوم آن برای تعیین رنگ نقاط استفاده می‌شود. فایل‌های صوتی نیز در متلب به شکل ماتریس‌های تک ستون (بردارهای ستونی) ذخیره می‌شوند؛ بنابراین جای تعجب نیست که متلب مخفف عبارت آزمایشگاه ماتریس باشد.
علاوه بر توابع فراوانی که خود متلب دارد، برنامه‌نویس نیز می‌تواند توابع جدید تعریف کند.
ساخت رابط گرافیکی کاربر مانند دیالوگ‌هایی که در محیط‌های ویژوال مانند بیسیک و C وجود دارند، در متلب امکان‌پذیر است. این قابلیت، ارتباط بهتری را میان برنامه‌های کاربردی نوشته‌شده با متلب و کاربران برقرار می‌کند.
متلب که از محصولات شرکت مت‌ورکس است، برای گروه‌های مختلف مهندسان رشته‌های مختلف از جمله مهندسی برق، مکانیک، رایانه و… کاربرد بسیاری دارد.
تاریخچه
Cleve Moler، رئیس بخش علوم کامپیوتر در دانشگاه نیو مکزیکو، در اواخر دهه ۱۹۷۰ شروع به توسعه MATLAB کرد. او این برنامه را طراحی کرد تا به دانش آموزانش اجازه دسترسی به LINPACK و EISPACK بدون نیاز به یادگیری Fortran را بدهد. این موضوع به زودی به سایر دانشگاه‌ها گسترش یافت و مخاطبان علاقه‌مندی در جامعه ریاضی کاربردی پیدا کرد. مهندس جک لیتل، در طی دیدار با Moler از دانشگاه استنفورد در سال ۱۹۸۳ با متلب آشنا شد. او با تشخیص پتانسیل تجاری متلب، تصمیم به همکاری با Moler گرفت. آن‌ها در سال ۱۹۸۴ MATLAB را منتشر کردند و MathWorks را در سال ۱۹۸۴ تاسیس کردند. در سال ۲۰۰۰، MATLAB بازنویسی شد تا از مجموعه جدیدتر کتابخانه برای دستکاری ماتریس، استفاده شود. متلب برای اولین بار توسط محققان و شاغلان در مهندسی کنترل، تخصص Littles، استفاده می‌شد، اما به سرعت در بسیاری از حوزه‌ها گسترش یافت. هم چنین در آموزش به ویژه آموزش جبر خطی، تحلیل عددی و در پردازش تصویر مورد استفاده قرار می‌گیرد.
شرکت سازنده
شرکت سازنده متلب شرکت مت‌ورکس نام دارد. این شرکت در سال ۱۹۸۴ بنیان نهاده شد و هم‌اکنون دارای بیش از ۲۰۰۰ نفر پرسنل است. دفتر مرکزی این شرکت در شهر Natick در ایالت ماساچوست آمریکا قرار دارد.
قدرت متلب
thumb
هسته متلب برای سرعت و کارایی بالا به زبان سی نوشته شده‌است ولی رابط گرافیکی آن به زبان جاوا پیاده‌سازی گشته‌است.
برنامه‌های متلب اکثرا متن‌باز هستند و در واقع متلب (مانند بیسیک) مفسر (رایانه) است نه کامپایلر. قدرت متلب از انعطاف‌پذیری آن و راحت بودن کار با آن ناشی می‌شود، همچنین شرکت سازنده و گروه‌های مختلف، از جمله دانشگاه‌های سرتاسر جهان و برخی شرکت‌های مهندسی هر ساله جعبه‌ابزارهای خاص-کاربردی به آن می‌افزایند که باعث افزایش کارایی و محبوبیت آن شده‌است. فهرستی از این جعبه‌ابزارها در زیر آمده‌است:
سیمیولینک، ابزاری برای شبیه‌سازی سامانه‌ها به صورت مجرد
جعبه‌ابزار مخابرات متلب، توابع و ابزارهای محاسبات مهندسی مخابرات
جعبه‌ابزار کنترل متلب، توابع و ابزارهای محاسبات مهندسی کنترل
جعبه‌ابزار فازی متلب، توابع و ابزارهای محاسبات فازی
جعبه‌ابزار محاسبات متلب، توابع و ابزارهای محاسبات عددی
جعبه‌ابزار تخمین متلب، توابع و ابزارهای محاسبات بحث تخمین سیستم در مهندسی کنترل
جعبه‌ابزار آمار متلب، توابع و ابزارهای محاسبات آمار
جعبه‌ابزار جمع‌آوری داده متلب، توابع و ابزارهای جمع‌آوری داده
جعبه‌ابزار شبکه عصبی متلب، توابع و ابزارهای محاسبات شبکه عصبی
جعبه‌ابزار پردازش تصویر متلب، توابع و ابزارهای محاسبات پردازش تصویر
جعبه‌ابزار پردازش صوت متلب، توابع و ابزارهای محاسبات پردازش صوت
جعبه‌ابزار احتمالات متلب
جعبه‌ابزار محاسبات سیمبولیک متلب
جعبه‌ابزار کارگاه بی‌درنگ متلب، توابع و ابزارهای محاسبات سامانه‌های بی‌درنگ
اندازه‌گیری دقیق
اندازه‌گیری میکروسکوپی با نرم‌افزار متلب
در نمایش ۳ بعدی سطح پشت سکه ۱ یورویی که توسط میکروسکوپ هم‌کانون نور سفید به ثبت رسیده‌است، تصویر جلوه یکی از ۱۲ ستاره برجسته سکه به وسیله میکروسکوپ به تصویر کشیده شده‌است. همچنین در این نمودار ۳ بعدی، طول، عرض و میزان برجستگی ستاره اندازه‌گیری شده‌است. محدوده مختصات سطحی سنجش میکروسکوپ، ۸۰۰ در ۸۰۰ میکرومتر یا ۰٫۸ در ۰٫۸ میلی‌متر بین دو محور x و y می‌باشد. بلندی محور مختصات نیز ۶۰ میکرومتر معادل ۰٫۰۶ میلی‌متر تعبیه شده‌است. رنگ‌ها و گرافیک موجود در نگاره و تناسب آن با محور رنگی ارتفاع، با هدف درک کمیت برجستگی ستاره و بلندی آن توسط نرم‌افزار متلب ایجاد شده‌است.
انتقادات
مهمترین انتقادات از متلب به خاطر متن بازنبودن و گران بودن آن است که امکان اجرای کدهای نوشته‌شده در متلب را در هر محیطی محدود می‌کند. متلب اساسا برای کار با ماتریس‌ها طراحی شده‌است و استفاده از ساختارهای دیگر داده سرعت اجرای کد را کم می‌کند. برای نصب کردن متلب نیاز به نصب برخی بسته‌های کامپایل شده‌است که در برخی سیستم عامل‌ها ایجاد مشکل می‌کند. همچنین ارتباط دادن کدهای نوشته‌شده در زبان‌های دیگر می‌تواند سخت باشد.
از دیگر انتقاداتی که به این نرم‌افزار می‌شود، عدم توانایی آن در انجام محاسبات در لحظه (Real Time) است. به عنوان مثال این نرم‌افزار توانایی نمایش داده‌های یک شتاب سنج که بوسیله wifi به آن وصل شده را در لحظه ندارد.
مهمترین رقبای متلب
متلب رقیبان زیادی دارد و نرم‌افزارهای مشابه بسیاری می‌توانند کارهای مشابه نرم‌افزار متلب را انجام دهند و از آن جمله می‌توان نرم‌افزارهای زیر را نام برد:
متمتیکا
مت‌کد
میپل
سایلب
مکسیما
همچنین نرم‌افزار متن‌باز گنو آکتیو معادل تحت لینوکس متلب به‌شمار می‌آید.
تفاوت متلب با میپل متمتیکا پایتون
میپل
یکی از نرم‌افزارهای مشهور ریاضی است. نام ان به معنی درخت افرا (درختی شبیه درخت چنار) است که عکس برگ ان بر پرچم کاناداست.
دلیل این نام‌گذاری نوشته شدن ان در دانشگاه واترلو کاناداست. میپل نرم‌افزاری قوی در زمینه ریاضیات است که کار عملی ۱۰۰ دانشجو است.
راهنمای قوی میپل کار با ان را راحت کرده جدیدترین نگارش ان نگارش ۲۰۱۶۰۲ می‌باشد.
حافظه کامپیوتر عبارات جبری و منطق را در خود ذخیره می‌کند و بعد از ان توسط میپل پردازش شده و حل می‌گردد. طراحی الگوریتم‌های ریاضی یعنی برنامه‌نویسی ریاضی از ویژگی‌های میپل است. وقتی میپل اولین بار هنگام اجرا بار می‌شود فقط هسته که پایه و اساس سیستم میپل و شامل دستورات بنیادی و اولیه می‌باشد به حافظه منتقل می‌شود. هسته از کدهایی به زبان C نوشته شده که تقریبا ۱۰ درصد کل سیستم میپل را دربر می‌گیرد. به منظور سرعت و کارایی بیشتر هسته کوچک نگه داشته شده‌است. ۹۰ درصد بقیه به زبان میپل نوشته شده‌است که در کتابخانه‌های میپل قرار دارد.
فرق بین متلب و میپل
متلب یک محیط برنامه‌نویسی در حوزه ریاضیات و مهندسی است که بیشتر مناسب مهندسی می‌باشد چون محاسبات ان با استفاده از تقریب سازی‌ها و تخمین‌های ریاضیست بنابراین در کارهای ریاضی کاربردی که اصل کار همان ساختن تقریب هاست ممکن است زیاد مناسب نباشد به علاوه برای کار با ان باید آموزش دید و برنامه‌نویسی در ان محیط را یادگرفت. میپل یک نرم‌افزار فوق پیشرفته ریاضی است که هم در ریاضیات وهم در مهندسی کاربرد دارد و به راحتی به محیط‌های برنامه‌نویسی دیگر مثل C یا C++ مرتبط می‌شود. برای حل تمرین ویا آموزش ریاضی و محاسبات می‌توان به ان یادداشت و انیمیشن اضافه کرد. محاسبات نمادین و محض مثل حدگیری و مسایل جبر را به راحتی انجام می‌دهد؛ و تمام مراحل حل را به کاربر نشان می‌دهد. نیاز به آموزش خاصی نخواهد داشت.
متمتیکا
یک نرم‌افزار جبریست که توابع مورد نیاز در ریاضی و علوم طبیعی را در اختیار استفاده کنند‌گان قرار می‌دهد. شرکت ولفرم ریسرچ ان را نوشته‌است. مهمترین قابلیت‌های این نرم‌افزار عبارتند از:
یک سامانه رایانه‌ای جبری برای بررسی نمادین معادله‌ها
یک نرم‌افزار عددی برای حل عددی معادله‌ها
یک نرم‌افزار اماری برای حل مسایل اماری
توابع ترسیمی و تجسمی برای رسم نمودارها توسط نرم‌افزار پابلیکون
یک زبان برنامه‌نویسی
رقیبان اصلی متمتیکا:
در جبر: مت کد - میپل - مکسیما - درایو
در تحلیل عددی: متلب-
متمتیکا درموارد زیر قابل استفاده است:
استفاده بهینه‌تر نسبت به ماشین حساب برای انجام محاسبات عددی نمادی و اعلان نتایج
محیطی واقعی برای عملیات روی توابع و رابطه‌ها
زبان سطح بالای برنامه‌نویسی برای نوشتن برنامه‌های کوچک و بزرگ
محیطی مناسب برای پردازش و آنالیز داده‌ها
محیطی مناسب برای ترکیب متن صدا گرافیک انیمیشن
متمتیکا به دو صورت عمومی و تخصصی در دسترس است و نوع تخصصی ان بسته‌هایی دارد که به کمک آن می‌توان روش‌های تخصصی علوم را انجام داد.
تفاوت متمتیکا و میپل
متمتیکا و میپل فرق زیادی با یکدیگر ندارند و با یادگیری یکی یادگیری دیگری آسان است. محیط کاربری یا اینترفیس مهمهترین تفاوت این دو برنامه می‌باشد. متمتیکا فقط یک محیط برای فرمول‌نویسی دارد و برای رسم هر شکلی باید به کدنویسی تسلط داشته باشیم اما در میپل دو محیط کاربری داریم که در محیط اصلی به کدنویسی نیاز نداریم و فرمول‌های ازپیش نوشته شده موجود می‌باشد. میپل علاوه بر این محیط محیطی مانند متمتیکا دارد که در ان به کدنویسی نیاز داریم. به‌طور خلاصه زمان محاسبه در دو نرم‌افزار تقریبا برابر است زمان بارگذاری هر دو نرم‌افزار در محیط کدنویسی یکسان است و حافظه زیادی را اشغال نمی‌کند اما محیط اصلی میپل محیطی که به کدنویسی احتیاج ندارد علاوه بر اینکه زمان بیشتری را می‌طلبد حافظه بیشتری را نیز اشغال می‌کند و از این نظر این محیط از میپل مناسب دستگاه‌های قدیمی نیست.
پایتون
زبان برنامه‌نویسی پایتون قدرتمند و گسترده‌است. یعنی کتابخانه‌های زیادی برای ان نوشته شده و با دانلود این کتابخانه‌ها می‌توان از کد نویسی‌های بیهوده اجتناب کرد.
تفاوت پایتون و متلب
پایتون در مقایسه با متلب یک زبان برنامه‌نویسی اوپن سورس است و برنامه نویسان به کدهای ان دسترسی کامل دارند. همچنین متلب غیر رایگان می‌باشد و نسبت به نرم‌افزارهایی که پولی هستند گران‌قیمت است در صورتی که پایتون رایگان است. نکته دیگر در مقایسه بین متلب و پایتون راهنمای هلپ ارائه شده برای این دو زبان است. راهنمای متلب که خوده شرکت سازنده ان به همراه محیط برنامه‌نویس ان ارائه شده بسیار جامع و قدرتمند می‌باشد اما راهنمای پایتو به دلیل اوپن سورس بودن در سایت‌های مختلف و به زبان توسعه دهنده‌های گوناگون در سطح وب پراکنده شده‌است؛ بنابراین، نرم‌افزار متلب یک انتخاب بسیار مناسب برای مدل کردن جریان سیال تراکم‌پذیر و تراکم‌ناپذیر در هندسه‌های مختلف می‌باشد. در ایران ستاد توسعه هوایی و هوانوردی ریاست جمهوری به مستندسازی و حمایت از پروژه‌های متلب کرده‌است.
سیمیولینک
موپد