totop

آشنایی با متلب ( نکات کاربردی-آرگومانها)جمعه 10, جولای 2020

آشنایی با محیط Matlab

در ادامه آموزش های سایت همیارپروژه برنامه نویسی متلب ارائه خواهد شد .آموزشها از مقدماتی تا پیشرفته ادامه دارد و ما به شما کدنویسی در نرم افزار متلب را یاد خواهیم داد. با ما همراه باشید.

انجام پروژه متلب

از آنجا که نقش آرگومان ها در تعریف تابع , اختصاص مکانی برای مقادیر عددی است باید هنگام اجرای تابع , در جای خاص خود قرار گیرند, لذا کاربر می تواند هر عبارتی را که لحاظ ساختاری صحیح باشد بعنوان آرگومانهای تابع قرار دهد.

برای واضح تر شدن این مساله برنامه ی زیر را برای تابع از نوع شکل سوم در نرم افزار متلب نوشته شده است را دقت نمایید:

بعنوان آخرین نکته به موردی اشاره می کنیم , موردی که در آن نتایج خروجی تابع به صورت یک بردار می باشد و در برنامه به صورت سطری از ماتریس دوباره تعریف می شود . برای سادگی فرض می کنیم که تنها مقادیر x را میخواهیم و این مقادیر را با کمک حلقه ی تکرار for باز می گردانیم. به دین ترتیب قسمتی از برنامه می تواند به صورت زیر نوشته شود.

مشخص می باشد که این مورد

یک ماتریس ۴*۵ می باشد که به این دلیل است که k= 1,2,3,4 و طول بردار t برابر با ۵ می باشد . به یاد می آوریم که شیوه ی نوشتن p(k,:) به معنی عنصرهای سطر k ام ماتریس  p می باشد که باید عنصرهای ستونهایش را با مقدارهای عددی متناظر عنصرهای ستونهای بردار سطری ناشی از اجرای تابع Compute XY مقدار دهی نماید.

دو حالت خاص

توابع می توانند به گونه ای ساخته شوند که یا فقط نتایج را در پنجره ی فرمان متلب نشان بدهند و یا آنها را در فایل دیگری ذخیره سازند. در این دو صورت , هیچ مقداری به برنامه ای که تابع را فراخوانی کرده است , باز گردانده نمی شود . در این حالت شکل خط نخست تابع به صورت زیر ساده می گردد.

زمانی که از یک تابع تنها جهت ذخیره ی داده ها به شیوه ای خاص استفاده می شود, تابع نیازمند هیچ آرگومانی نخواهد بود. در این صورت خط اول تابع به صورت

و یا

خواهد بود. توابع معمولا زمانی که به آخرین عبارتشان می رسند به برنامه ی اصلی باز می گردند. اگر بخواهیم این بازگشت , سریع تر اتفاق بی افتد می توانیم از دستور زیر استفاده نماییم.

به مثال زیر دقت نمایید که نمایش دهنده یک بخشی از تابع می باشد:

که در آن دستور nargin تعداد متغیرهای ورودی تابع را نمایش می دهد.

ایجاد توابعی که از تابع feval استفاده می کنند ( تابعی از توابع )

تعداد بسیاری از توابع داخلی نرم افزار متلب موجود هستند که کاربر را ملزم به ایجاد نمودن توابع خاص خود که دارای همان فرمت توابع داخلی می باشند , می کنند. همچنین امکان دارد موقعیتی برای کاربر پیش بیاید که کاربر ترجیح دهد از توابع خاص خود استفاده نماید . نرم افزار متلب ابزار مورد نیاز این کار را به وسیله دستور زیر در اختیار کاربر قرار خواهد داد.

و اکنون این برنامه را به تابعی با نام Manyzeros که به صورت فایلی با نام manyzeros.m می باشد تبدیل نماییم . تابع f(x) و نام او کاملا اختیاری می باشد . علاوه بر این فرض می شود که در تابع f(x) تمامی پارامترهای موجود به جز x مقدار دهی شده باشند. علاوه بر این می دانیم که برنامه ریشه یاب به چهار ورودی نیازمند بود. M تعداد کوچکترین ریشه های مورد نظر Xs مقدار اولیه جهت جستجو , t تلرانسمحاسباتی که مبین درجه نزدیکی f(xroot) به صفر می باشد و Δ مقدار افزایش اولیه می باشد. برای این مثال f(x) را به صورت زیر می توانیم تعریف نماییم:

بنابراین ناچاریم تا دو مقدار α  و β را به تابع ایجاد شده توسط کاربر انتقال دهیم . این تابع کاربر را cosbeta می نامیم و آن را به صورت فایلی با نام cosbeta.m ذخیره می کنیم . به جهت کامل نمودن این تابع به یک برنامه نیز نیازمندیم . تابع ها و برنامه ها در شکل زیر نمایش داده شده اند . بر اساس فایل کمکی متلب اولین آرگومان تابع feval اسم تابع و سایر آرگومانها پارامترهای می باشند که باید به تابع انتقال داده شوند . تابع Manyazeros به متغیرهای ورودی زیر نیاز دارد

  • نام تابعی که f(x) را تعریف می نماید که متغیر رشته ای زیر می باشد.

  • شش پارامتر که چهار مورد آن متناظر با m,t,xs,Δ و دوتای دیگر αو β پارامترهایی هستند که باید به تابع cosbeta انتقال داده شوند. با توجه به مقدار m نتیجه c می تواند اسکالر باشد و یا اینکه یک بردار به طول m باشد . جهت دستیابی به تابع cosbeta و بازگرداندن مقادیر عددی آن , از تابع feval استفاده شده است. سپس تابع sign علامت مقدار عددی که توسط تابع feval باز گردانده شده است را معین می نماید. همچنین توجه نمایید که متغیرهایی که به عنوان متغیر های ورودی تابع در برنام تعریف شده اند و متغیر های مربوط به دو فایل تابع دیگر متفاوت اند. اینکار را انجام دادیم تا نشان دهیم تنها موقعیت و توالی استفاده از آرگومانها دارای اهمیت می باشد. زیرا متغیر ها نسبت به توابع نظیرشان محلی هستند.

 

در اینجا آشنایی با محیط متلب بخش شصت و ششم به پایان رسیده است و در آموزش های بعدی به مباحث دیگر آموزش متلب می پردازیم. همچنین از شما مخاطبین عزیز سایت همیارپروژه دعوت می کنم که برای انجام پروژه متلب خود آموزش های ما را دنبال نمایید.

 

نویسنده: زهرا رستمی


دیدگاهتان را بنویسید

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

حق نشر برای همیارپروژه ❤️ مرجع انجام پروژه دورکاری و آنلاین ✔️ سایت انجام پروژه و استخدام فریلنسر در همه حوزه ها ، مهارت ها ، نرم افزارها و پروژه های برنامه نویسی محفوظ است.