آقای همه فن حریف

آچار فرانسه باشیم نه خلال دندون ...!

آموزش نرم افزار مطلب , مقدماتی تا پیشرفته ویژه دانشجویان رشته برق


فصل اول :
ویژیگی های اصلی MATLAB


 


   آشنایی با محیط متلب
    عملیات ریاضی ساده
    عملگرهای ریاضی متلب
    فضای کاری متلب (Workspace)
    فرمت نمایش اعداد
    انواع متغیرها
    نامگذاری متغیرها
    متغیرهای ویژه
    علائم نقطه گذاری و جملات توضیحی
    اعداد مختلط
    بعضی از توابع ریاضی در متلب
    راهنمای متلب
    فایلهای متنی یا m-فایلها
    مدیریت فایل در متلب

1-1- آشنایی با محیط متلب

    پنجره فرمان : Command window
    پنجره تاريخچه دستورات: Command History
    پنجره دايرکتوري جاري : Current Directory
    پنجره فضاي کاري : Work Space
    دايرکتوري جاري
    منوي Start











1-2-عمليات رياضي ساده
مثال: محاسبه يک عبارت:
    راه اول:
>> 4*25 + 6*22 + 2*99
    ans=
            430

1-2-عمليات رياضي ساده
مثال: محاسبه يک عبارت:
    راه دوم:
 >>a=25;
 >>b=22; c=99;
 >>d=4*a+6*b+2*c
     d=
        430
 >>

1-3-عملگرهاي رياضي متلب:
\ / , * , - , + , ^
مثال:
>>5^2   
 ans=
        25
/ و \ هر دو عملگر تقسيم ميباشند. / تقسيم از چپ و \  تقسيم از راست است. مثلا حاصل 56/8 و 8\56 يکسان است.
    ترتيب حق تقدم: ^ > / \ * > + -

1-4-فضاي کاري متلب Work space

•    متغيرهايي که در محيط متلب ايجاد مي شوند در بخشي از حافظه بنام محيط کاري متلب ذخيره مي گردند. فضاي کاري برنامه هاي اسکريپت متلب با فضاي کاري متلب يکسان است. يعني اگر متغيري در محيط متلب تعريف شده باشد در يک برنامه اسکريپت مي توان از آن استفاده کرد و برعکس. اما برنامه هاي تابعي متلب داراي فضاي کاري مختص به خود هستند و متغيرهاي آنها در فضاي کاري متلب وارد نمي شود.
•    در مورد انواع برنامه هاي متلب در فصلهاي آتي توضيح داده خواهد شد


فضاي کاري متلب Work space
نکاتي در مورد فضاي کاري متلب:
زمان اعتبار متغيرها:
دستور who  و whos
ذخيره و بازيابي متغيرها: دستورات save و load


1-4-1-زمان اعتبار متغيرها
متغيرهايي که در فضاي کاري تعريف مي شوند تنها در دو حالت زير از حافظه پاک خواهند شد:
خروج متلب
استفاده از دستور clear :
>> clear        تمامي متغيرها از حافظه پاک مي شوند
>> clear a b c    تنها متغيرهاي نامبرده شده از حافظه
پاک مي شوند

1-4-2-دستورات who و whos
با استفاده از اين دو دستور مي توان اسامي(و مشخصات) متغيرهاي موجود در فضاي کاري را بدست آورد.
>> who
Your variables are:
    a b c
>> whos
 Name      Size                   Bytes  Class
  a         1x1                        8  double array
  b         1x1                        8  double array
  c         1x1                        8  double array
يادآوري: پنجره workspace  نيز مشخصات متغيرهاي موجود در فضاي کاري را مانند دستور whos  نشان مي دهد.


1-4-3- ذخيره و بازيابي متغيرها: دستورات save و load:
در صورتيکه بخواهيم پس از خروج از محيط متلب همه يا بعضي از متغيرهاي موجود در فضاي کاري براي استفاده هاي بعدي ذخيره گردند از دستور save استفاده مي کنيم. با دستور load مي توان متغيرهاي ذخيره شده را به فضاي کاري بازگرداند.
مثال:
>>a=5; b=4; c=7;
>>save c:\myfile.mat a c;
>>clear  همه متغيرها پاک مي شوند
>>a
??? Undefined function or variable 'a‘
>> load c:\myfile.mat
>>a
    a=
        5
>>b
??? Undefined function or variable 'a‘


1-4-3- ذخيره و بازيابي متغيرها: دستورات save و load:
فرم کلي کاربرد دستورات save و load بصورت زير است:
save [filename] [variables]
Load [filename] [variables]
درصورتيکه اسم فايل نوشته نشود. فايل پيش فرض matlab.mat مورد استفاده قرار خواهد گرفت و درصورتيکه نام متغيرها نوشته نشود تمامي متغيرهاي موجود در فضاي کاري ذخيره و يا تمامي متغيرهاي ذخيره شده در فايل بازيابي ميشوند.


1-5-فرمت نمايش اعداد (دستور Format)
با استفاده از اين دستور مي توان نحوه نمايش اعداد در پنجره فرمان متلب را تغيير داد.
>>Format [option]
Option: short, long, short e, long e, short g, long g, hex, + , …
    دقت کنيد که اين دستور دقت محاسبات را تغيير نمي دهد و تنها بر نحوه نمايش اعداد تاثير خواهد گذاشت.


1-4-3- ذخيره و بازيابي متغيرها: دستورات save و load:
فرم کلي کاربرد دستورات save و load بصورت زير است:
save [filename] [variables]
Load [filename] [variables]
درصورتيکه اسم فايل نوشته نشود. فايل پيش فرض matlab.mat مورد استفاده قرار خواهد گرفت و درصورتيکه نام متغيرها نوشته نشود تمامي متغيرهاي موجود در فضاي کاري ذخيره و يا تمامي متغيرهاي ذخيره شده در فايل بازيابي ميشوند.


1-5-فرمت نمايش اعداد (دستور Format)
با استفاده از اين دستور مي توان نحوه نمايش اعداد در پنجره فرمان متلب را تغيير داد.
>>Format [option]
Option: short, long, short e, long e, short g, long g, hex, + , …
    دقت کنيد که اين دستور دقت محاسبات را تغيير نمي دهد و تنها بر نحوه نمايش اعداد تاثير خواهد گذاشت


1-6- انواع متغيرها
بعضي از مهمترين انواع متغير در متلب:
double  نقطه اعشار با دقت مضاعف (8 بايت):
struct    : نوع تعريف شده توسط کاربر
singleنقطه اعشار (4 بايت) :   
uint8    : عدد صحيح بي علامت 8 بيتي
uint16    :عدد صحيح بي علامت 16 بيتي
uint32  :      عدد صحيحي بي علامت 32 بيتي
uint64     : عدد صحيحي بي علامت 64 بيتي
int8     :  عدد صحيح 8 بيتي
int16     : عدد صحيح 16 بيتي
int32     : عدد صحيح 32 بيتي
int64     : عدد صحيح 64 بيتي
    براي ديدن ليست کامل انواع متلب در پنجره فرمان از دستور help datatypes استفاده کنيد


1-6- انواع متغيرها
بايد دقت کرد که  اگرچه متلب انواع مختلفي از متغيرها را پشتيباني مي کند اما نوع پيش فرض، نوع ”دقت مضاعف“ است. و براي تبديل نوع يک متغير بايد دستور کلي زير را بکار برد:
a=TypeName(a);
>> a=uint8(a); در اينجا نوع متغير به صحيح بي علامت 8 بيتي تغيير مي کند.
>> b = uint32(345); در اینجا یک متغیر از ابتدا از نوع صحیح بی علامت 32 بیتی تعریف شده است
    دقت: در هنگام تبدیل یا ایجاد یک متغیر باید دقت کنید که مقدار انتساب داده شده خارج از دامنه مقادیر آن نوع خاص نباشد. برای انواع صحیح می‌توانید از دستور زیر برای تعیین دامنه استفاده کنید:
>> intmin(‘int16’)
>> intmax(‘int16’)

استثناء: در مورد جعبه ابزار پردازش تصوير نوع پيش فرض نوع uint8 است


1-7- نامگذاري متغيرها
    اختلاف حروف کوچک و بزرگ
    با حرف الفبا بايد شروع شود
    کاراکترهاي مجاز: حروف الفبا، اعداد و _
    حداکثر طول نام: با استفاده از تابع namelengthmax در هر نسخه از MATLAB می‌تواند تعیین شود. در نسخه 2006، حداکثر 63 کاراکتر است.
    مراقب باشید متغیر شما با یک تابع درونی MATLAB یا تابعی که توسط خود شما نوشته شده است همنام نباشد. برای اطمینان از دستور which –all varName استفاده کنید
مثال:
>>This_Is_a_Variable

-8-متغيرهاي ويژه1
متغيرهاي زير در محيط متلب بصورت پيش‌فرض وجود دارند.
ans        NaN        nargin
pi            i        nargout
eps        j

inf   

1-9-علائم نقطه‌گذاري و جملات توضيحي
    براي درج يک متن توضيحي در برنامه‌هاي متلب بايد از کاراکتر % استفاده شود.
>> a=5; %”a” is a variable
    براي نوشتن ادامه يک جمله در سطر بعد بايد از ... استفاده کرد:
>> b=a+a^2+…
        3*a^3;   

1-10- اعداد مختلط
    براي تعريف اعداد مختلط از متغيرهاي ويژه i و j مي‌توان استفاده کرد:
>>c=1-2i;        >>k=(-1)^(1/2);
>>c=1-2j;        >>c=1-2*k;
>>c=1-2*j;
    توابع کار با اعداد مختلط:
abs        angle    real        imag


-11- بعضي از توابع رياضي در متلب1
abs        conj        log10
acos        exp        real
asin        fix        imag
acosh    round    rem(x,y)
asinh    gcd(x,y)    sign
atan        lcm(x,y)    sqrt
atanh    log


1-12-راهنماي متلب
متلب داراي دستورات راهنماي متفاوتي است که هم از طريق منوي start و هم از طريق اعلان متلب قابل دسترسند.
demo
help
lookfor


1-13-فايلهاي متني(Script) يا فايلهاي m
بمنظور اجراي چند دستور بطور همزمان و بدون نياز به تايپ مجدد، از فايلهاي متني استفاده مي‌شود.
اين فايلها بايد داراي پسوند m باشند.


1-13-1- مراحل ايجاد فايلهاي متني
1.    باز کردن يک فايل جديد در ويرايشگر متلب:
 File>New>m-file
1.    تايپ کردن دستورات متلب در فايل مذکور
2.    ذخيره کردن فايل با نامي مشخص:
File>Save As…

1-13-1- مراحل ايجاد فايلهاي متني
1.    باز کردن يک فايل جديد در ويرايشگر متلب:
 File>New>m-file
1.    تايپ کردن دستورات متلب در فايل مذکور
2.    ذخيره کردن فايل با نامي مشخص:
File>Save As…


-13-2-روش اجراي يک فايل متني1
براي اجراي يک فايل متني کافي است نام آنرا در جلوي اعلان متلب تايپ کرده کليد Enter را بزنيم.
نکته: از این پس متن برنامه ها(کد نوشته شده در فایلهای m) با رنگ سبز نشان داده خواهد شد.
مثال:  برنامه sample1.m
% SAMPLE1: A Simple m-file
n=10;a=2;b=4;
c=n*a^3/b + 3*n*a^2/b^2+6*n*a/b^3
----------------------------------------------------------
>> sample1
    c=
        29.3750


-13-3- توابع و دستورات مفيد در فايلهاي m
1.    تابع disp(x): اين تابع مقدار يک متغير يا يک رشته متني را نمايش مي‌دهد.
مثال:
>> n=10;
>>disp(n)
    10
>> disp(‘This is a string’)
    This is a strin

-13-4- توابع و دستورات مفيد در فايلهاي m
2.    تابع x=input(s): براي گرفتن مقدار يک متغير از ورودي.
مثال:
n=input(‘Please tell me “n” value: ‘)
--------------------------------------------------
Please tell me “n” value: 10
n=
    10

1-13-4- توابع و دستورات مفيد در فايلهاي m
3.    دستور pause: توقف موقت در حين اجرا.
    pause
    pause(n)  % n seconds
مثال:
%SAMPLE2: Enhanced Sample1
n=10;
a=input(‘ “a” value=  ‘);
b=input(‘ “b” value=  ‘);
c=n*a^3/b + 3*n*a^2/b^2 + 6*n*a/b^3;
disp(‘Please wait 5 seconds only!’);pause(5);
disp(‘Press any key to see answer.’); pause;
disp(‘ ”C” Value is= ‘); disp(c)


تکلیف 1-1: برنامه‌ای بنویسید که یک عدد را از کاربر بگیرد و آنرا در متغیری به نام x ذخیره کند. با استفاده از آن
، عبارت زیر را محاسبه کند و مقدار y را با پیغام مناسب نمایش دهد.
y=x^3 + 3*x^2 +6*x + 6;
    با تایپ نام برنامه در جلوی اعلان MATLAB، آنرا اجرا کنید.
     با استفاده از ویرایشگر MATLAB، برنامه خود را اجرا و trace کنید.

1-14- مديريت فايل: کار کردن با فايلها و شاخه‌ها
بعضي از دستورات مفيد:
    دستور cd: تغيير و يا نمايش شاخه جاري :
>>cd
    C:\Matlab\Work
>>cd C:\MyDir
>>cd
    C:\MyDir
    دستور dir: نمايش نام فايلها و زيرشاخه‌هاي دايرکتوري جاري
    دستور delete: حذف(پاک کردن) فايل:
>>delete sample1


+ نوشته شده در  ساعت   توسط  Ortega   |