MATLAB چیست و چرا برنامه نویسی با آن اهمیت دارد؟
MATLAB یک محیط محاسباتی و زبان برنامهنویسی تخصصی است که برای محاسبات عددی و کار با دادهها طراحی شده است.
یکی از نقاط قوت MATLAB، کار ساده با ماتریسها و آرایههاست. بسیاری از عملیات ریاضی که در زبانهای عمومی نیاز به کدنویسی بیشتری دارند، در MATLAB با چند دستور قابل انجام هستند.
این ویژگی باعث شده MATLAB در رشتههایی مانند مهندسی برق، مکانیک، عمران، کامپیوتر و علوم کاربردی مورد توجه قرار بگیرد.
یادگیری آموزش برنامه نویسی متلب نیز بهتر است از دستورات پایه آغاز شود. پس از آن میتوان سراغ مباحثی مانند توابع، رسم نمودار، ماتریسها و برنامههای پیچیدهتر رفت.
متغیرهای ویژه در MATLAB
MATLAB هنگام اجرای محیط، چند متغیر و مقدار ویژه را در اختیار کاربر قرار میدهد.
این متغیرها در بسیاری از محاسبات کاربرد دارند.
برخی از مهمترین آنها عبارتاند از:
|
متغیر |
کاربرد |
|
ans |
نگهداری نتیجه آخرین عبارت بدون تخصیص متغیر |
|
pi |
مقدار عدد پی |
|
i |
واحد موهومی |
|
j |
واحد موهومی |
|
eps |
دقت نسبی شناور |
|
inf |
نمایش بینهایت |
|
NaN |
مقدار « عدد نیست » |
|
nargin |
تعداد ورودیهای تابع |
|
nargout |
تعداد خروجیهای تابع |
برای مثال:x = pi
مقدار تقریبی عدد پی را در متغیر x قرار میدهد.
همچنین میتوان از i یا j برای ساخت اعداد مختلط استفاده کرد.
متغیر ans در MATLAB چیست؟
اگر یک عبارت را بدون مشخص کردن نام متغیر اجرا کنید، MATLAB نتیجه را در متغیر ans قرار میدهد.
برای مثال: 5 + 3
خروجی:
ans =
8
در این حالت، نتیجه محاسبه در ans ذخیره شده است.
البته در برنامههای واقعی بهتر است نتایج مهم را در متغیرهای نامگذاریشده ذخیره کنید.
برای مثال:
result = 5 + 3;
این روش خوانایی برنامه را افزایش میدهد.
نوشتن توضیحات در برنامه MATLAB
در یک برنامه حرفهای، توضیحات اهمیت زیادی دارند.
برنامهنویس میتواند با استفاده از علامت درصد، توضیحاتی را در کد قرار دهد.
برای مثال:
a = 5; % a is a variable
بخش بعد از % به عنوان توضیح در نظر گرفته میشود.
MATLAB آن بخش را به عنوان دستور اجرایی پردازش نمیکند.
چرا کامنتگذاری در MATLAB مهم است؟
فرض کنید چند ماه بعد دوباره به یک پروژه قدیمی برگردید.
اگر کد شما هیچ توضیحی نداشته باشد، درک منطق آن دشوارتر خواهد شد.
کامنتها میتوانند هدف یک محاسبه یا عملکرد یک بخش از برنامه را مشخص کنند.
برای مثال:
% Calculate the area of the circle
r = 5;
area = pi * r^2;
این توضیح ساده باعث میشود هدف کد سریعتر مشخص شود.
ادامه یک دستور در خط بعدی با ...
گاهی یک عبارت MATLAB طولانی است و بهتر است در چند خط نوشته شود.
در چنین شرایطی میتوان از سه نقطه ... استفاده کرد.
برای مثال:
result = a + a^2 + a^3 + ...
b + b^2 + b^3;
MATLAB متوجه میشود که عبارت در خط بعد ادامه دارد.
استفاده از این قابلیت، خوانایی کدهای طولانی را افزایش میدهد.
البته بهتر است هر خط از برنامه تا حد امکان ساده و قابل فهم باشد.
اعداد مختلط در MATLAB
یکی از قابلیتهای مهم MATLAB، پشتیبانی مستقیم از اعداد مختلط است.
عدد مختلط معمولاً از یک بخش حقیقی و یک بخش موهومی تشکیل میشود.
در MATLAB میتوان از i یا j به عنوان واحد موهومی استفاده کرد.
برای مثال:
c = 1 - 2i;
یا:
c = 1 - 2j;
هر دو عبارت یک عدد مختلط را نشان میدهند.
نمایش بخش حقیقی و موهومی عدد
برای کار با اعداد مختلط، چند تابع کاربردی در MATLAB وجود دارد.
مهمترین آنها عبارتاند از:
• real
• imag
• abs
• angle
برای مثال:
z = 3 + 4i;
real(z)
imag(z)
خروجی به ترتیب بخش حقیقی و موهومی عدد را نشان میدهد.
تابع abs برای اعداد مختلط
تابع abs قدرمطلق یا اندازه یک عدد را محاسبه میکند.
برای یک عدد مختلط، این مقدار همان اندازه عدد در صفحه مختلط است.
برای مثال:
z = 3 + 4i;
magnitude = abs(z)
خروجی:
magnitude =
5
این تابع در بسیاری از محاسبات مهندسی و پردازش سیگنال کاربرد دارد.
تابع angle در MATLAB
تابع angle زاویه یا فاز یک عدد مختلط را بر حسب رادیان محاسبه میکند.
برای مثال:
z = 1 + 1i;
theta = angle(z)
در این حالت زاویه عدد مختلط نسبت به محور حقیقی محاسبه میشود.
ترکیب abs و angle برای تحلیل نمایش قطبی اعداد مختلط بسیار کاربردی است.
توابع ریاضی پرکاربرد در MATLAB
MATLAB مجموعه گستردهای از توابع ریاضی را در اختیار برنامهنویس قرار میدهد.
برخی از توابع پرکاربرد عبارتاند از:
|
تابع |
کاربرد |
|
abs |
قدرمطلق |
|
sqrt |
جذر |
|
exp |
تابع نمایی |
|
log |
لگاریتم طبیعی |
|
log10 |
لگاریتم پایه ۱۰ |
|
sin |
سینوس |
|
cos |
کسینوس |
|
tan |
تانژانت |
|
asin |
آرکسینوس |
|
acos |
آرککسینوس |
|
atan |
آرکتانژانت |
|
round |
گرد کردن |
|
fix |
حذف بخش اعشاری به سمت صفر |
|
rem |
باقیمانده تقسیم |
برای مثال:
x = 16;
y = sqrt(x);
مقدار y برابر با 4 خواهد بود.
محاسبه توان و لگاریتم در MATLAB
برای محاسبه توان میتوان از عملگر ^ استفاده کرد.
مثلاً: ;x = 2^3
خروجی برابر با 8 است.
برای لگاریتم طبیعی نیز میتوان از:
y = log(10);
و برای لگاریتم پایه ۱۰ از:
y = log10(100);
استفاده کرد.
دستورات راهنمای MATLAB
هنگام یادگیریMATLAB، لازم نیست تمام توابع و دستورات را حفظ کنید.
مهمتر از حفظ کردن، توانایی پیدا کردن اطلاعات صحیح درباره هر دستور است.
MATLAB چند ابزار برای دریافت راهنما دارد.
از جمله:
• help
• lookfor
• demo
دستور help در MATLAB
با استفاده از help میتوان توضیحات مربوط به یک دستور یا تابع را مشاهده کرد.
برای مثال: help sqrt
MATLAB اطلاعات مربوط به تابع sqrt را نمایش میدهد.
این دستور یکی از ابزارهای مهم هنگام یادگیری و رفع خطا در MATLAB است.
دستور lookfor در MATLAB
گاهی نام دقیق تابع موردنظر را نمیدانید.
در این حالت lookfor میتواند مفید باشد.
این دستور در توضیحات توابع جستوجو میکند.
برای مثال: lookfor logarithm
میتواند موارد مرتبط با عبارت جستوجوشده را پیدا کند.
این قابلیت زمانی مفید است که مفهوم موردنظر را میدانید اما نام دستور را فراموش کردهاید.
فایلهای Script یا M در MATLAB
یکی از مشکلات کار با Command Window این است که با بسته شدن محیط یا اجرای دستورات زیاد، مدیریت کد دشوار میشود.
برای حل این مشکل میتوان دستورات را داخل فایل ذخیره کرد.
فایلهای کدنویسی MATLAB معمولاً با پسوند .m شناخته میشوند.
یک فایل Script میتواند چندین دستور MATLAB را پشت سر هم اجرا کند.
برای مثال، به جای وارد کردن چند دستور به صورت جداگانه، میتوانید آنها را داخل یک فایل قرار دهید.
چگونه یک فایل M در MATLAB ایجاد کنیم؟
برای ساخت یک Script در MATLAB میتوانید از ویرایشگر کد استفاده کنید.
روند کلی به شکل زیر است:
◄ ایجاد یک Script جدید
◄ نوشتن دستورات MATLAB
◄ ذخیره فایل با پسوند .m
◄ اجرای فایل از محیط MATLAB
برای مثال میتوانید فایلی با نام زیر ایجاد کنید:
sample1.m
سپس دستورات برنامه را داخل آن بنویسید.
نحوه اجرای فایل M در MATLAB
پس از ذخیره فایل، باید مطمئن شوید فایل در پوشه کاری MATLAB قرار دارد یا مسیر آن در محیط MATLAB قابل دسترسی است.
سپس میتوانید نام Script را اجرا کنید.
برای مثال: sample1
MATLAB فایل sample1.m را پیدا کرده و دستورات آن را اجرا میکند.
این روش برای پروژههای آموزشی و برنامههای چندخطی بسیار کاربردی است.
مثال عملی ساخت یک Script در MATLAB
فرض کنید میخواهیم برنامهای ساده برای انجام یک محاسبه ایجاد کنیم.
کد زیر را در فایل sample1.m قرار میدهیم:
% A simple MATLAB script
n = 10;
a = 2;
b = 4;
c = n*a^3/b + 3*n*a^2/b^2 + 6*8*a/b^3;
disp('The result is:');
disp(c);
در این برنامه ابتدا چند متغیر مقداردهی میشوند.
سپس یک عبارت ریاضی محاسبه میشود.
در پایان، نتیجه با استفاده از disp نمایش داده میشود.
این مثال ساده، چند مفهوم مهم را همزمان نشان میدهد:
• تعریف متغیر
• استفاده از عملگرهای ریاضی
• نوشتن کامنت
• ذخیره کد در فایل M
• نمایش خروجی
تفاوت Script و Function در MATLAB
در MATLAB فایلهای .m میتوانند برای Script یا Function استفاده شوند.
یک Script معمولاً مجموعهای از دستورات است که در محیط فعلی اجرا میشود.
اما Function ورودیها و خروجیهای مشخصی دارد و برای ساخت کدهای قابل استفاده مجدد مناسبتر است.
برای مثال:
function y = squareNumber(x)
y = x^2;
end
در این مثال، تابع مقدار x را دریافت میکند و مربع آن را برمیگرداند.
شناخت تفاوت Script و Function، یکی از مراحل مهم در ادامه مسیر یادگیری MATLAB است.
جمعبندی
اگر میخواهید MATLAB را به صورت اصولی یاد بگیرید، بهتر است این مفاهیم را تنها به صورت تئوری مطالعه نکنید. هر مفهوم را با یک تمرین یا پروژه کوچک اجرا کنید.
برای یادگیری کاربردیMATLAB، آموزشهای تخصصی پژواک دانش را دنبال کنید.