آموزش نوشتن m-file در متلب (matlab)

m-file در متلب

تا اینجا تقریبا اطلاعات کلی در رابطه با مقدمات متلب یاد گرفتید ولی همانطور که دیدید همه­ ی کدها در قسمت command window نوشته می شد و بلافاصله بعد از زدن کلید enter نتیجه در همان قسمت ظاهر می شد و دیگر سطرهای قبلی قابل ویرایش نبودند؛ حال فرض کنید یک کد بسیار طولانی میخواهید تهیه کنید اگر در قسمت command window این کار را انجام دهید خواهید دید، اگر یکبار به اشتباه “;” وارد نکنید کل کدها به هدر میرود و دیگر قابل ویرایش نخواهد بود یا اگر کدتان دارای مشکل بود و متلب error داد باز مشکل قبلی پایدار است. این جاست که نوشتن m-file در متلب به کمک ما می آید. برای تهیه این m-file کافیست  edit را در قسمت command window تایپ کنید به صورت شکل زیر:

matlab-mfile

بعد از زدن enter صفحه ای بصورت زیر نمایان خواهد شد.

اموزش نوشتن mfile در متلب

از این به بعد همه چیز در این قسمت نوشته خواهد شد و نتایج برنامه بعد از ذخیره کردن m-file در قسمت command window مشاهده خواهد شد.

در سمت چپ، بالا بخشی به نام new وجود دارد که با زدن آن mfile دیگری باز خواهد شد. بخش دیگری نیز به نام run وجود دارد که با زدن آن برنامه ی مورد نظر اجرا خواهد شد. البته  قبل از اجرا ، متلب از ما می خواهد این قسمت را ذخیره کنیم. نوشتن m-file در متلب بسیار گسترده می باشد و توضیحات مفصلی را می طلبد که در قسمتهای بعدی مثل حلقه در متلب و ترسیم نمودار در متلب با آن بیش تر توضیح خواهیم داد.

یکی از مثال های قبلی را در این قسمت می خواهیم اجرا کنیم:

مثال: می خواهیم a=2 را در b=5 ضرب کرده و نتایج را در یک ماتریس دیگر با نام c نشان دهیم.

نکته: برای نمایش دادن خروجی در متلب از تابع disp استفاده می شود. روند استفاده از آن به صورت زیر می باشد

([(disp([‘parametre mored nazar=’ num2str(parameter

 تابع num2str  تبدیل کننده به رشته نامیده می شود. بدین صورت که اگر ماتریسی به صورت[ a=[2 5 4 باشد و بخواهید به صورت رشته ببینید، کافیست دستور زیر را وارد نمایید (mat2str(a که شکل زیر این موضوع را نشان می دهد.

نوشتن mfile در متلب

در هنگام disp لازم است که خروجی عددی به رشته تبدیل شود.

جهت پاسخ به مثال بالا نیز شکل زیر را مشاهده نمایید

نوشتن تابع mfile در متلب

وقتی آیکون run را کلیک کرده از شما خواست تا پوشه ی مناسب خود را انتخاب کرده و سپس ذخیره کنید بعد از ذخیره خود برنامه اجرا خواهد شد و نتیجه در command window نمایش داده می شود.

اموزش نوشتن تابع mfile در متلب

من فایل را با نام باقر ذخیره کردم که در بالا نمایش داده شده است.

مثال: می خواهیم ماتریس [a=[2 5 9;3 6 8 را به صورت درایه به درایه با ماتریس b=[5 4 7;3 2 0] ضرب کرده و توسط ماتریس c نمایش دهیم.

نکته: تابع disp که نام را می خواهید بنویسید، اگر چند بعدی باشد error خواهد داد شکل و نتیجه زیر را ببینید:

mfile در متلب

نتیجه:

تابع mfile

برای حل چنین مشکلاتی باید به صورت زیر عمل کنید:

;[a=[2 5 9;3 6 8

;[b=[5 4 7;3 2 0

;c=a.*b

(‘=disp(‘c

;([(disp([num2str(c

یعنی disp را در یک خط دیگر و قبل تر قرار دهید نتیجه به صورت زیر خواهد شد:

 bagher<<

=c

10  ۲۰  ۶۳

 ۹  ۱۲   ۰

<<

تذکر: در هنگام برنامه نویسی در mfile متلب و یا در قسمت command window بهتر است ابتدای هر برنامه، از دستورهای clear و clc استقاده شود. clear باعث پاک شدن اطلاعات حافظه workspace و clc باعث پاک شده همه چیز در command window می شود.

تصویر زیر را ببینید :

ساخت تابع mfile

حال در همین قسمت command window دستور clear و clc را می نویسیم:

mfile function

همان طور که مشاهده می کنید بلافاصله بعد از تغییر سطر clear قسمت workspace خالی گردید. حال بعد از clc نیز شکل زیر این قسمت را نشان می دهد:

ساخت تابع mfile در متلب

میبینید همه چی پاک شد. پس دستور مثال قبلی را در mfile متلب به صورت زیر می نویسیم تا قبل از رسیدن به قسمت اصلی برنامه همه چی که در workspace و command window وجود دارد را پاک کند یعنی به صورت زیر:

;clear

;clc

;[a=[2 5 9;3 6 8

;[b=[5 4 7;3 2 0

;c=a.*b

(‘=disp(‘c

;([(disp([num2str(c

تذکر: اگر در انتهای هر سطر “;” قرار داده نشود نتیجه همان سطر نیز در workspace نمایش داده می شود.

ارسال دیدگاه

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