آموزش مقدمات MATLAB سیگنال ها و سیستم ها دانشگاه صنعتی شریف پائیز 86 ارائه دهنده : ریحانه جباروند
نمای کلی ارائه محیط کاری MATLAB متغیرها آرایه ها Loops Flow Control M-Files Plotting
محیط کاری MATLAB Command Window: محل وارد کردن دستورات برای پردازش توسط MATLAB Command History Window: دستوراتی که قبلا در پنجره Command اجرا شده اند را نگهداری می کند. Current Directory: GUI مورد نیاز برای تغئیر دادن پوشه ی جاری و فایل های MATLAB Workspace: متغرهای تعریف شده در طول برنامه را نشان می دهد.
محیط کاری MATLAB دستورات who و whos : مشاهده ی اطلاعات workspace در command window. دستور clear clear clear name clc دستور help help command helpwin Lookfor keyword
متغیرها Case sensitive حداکثر 31 کاراکتر ابتدای نام متغیرها حتما باید حرف باشد. How_about_this_variable_name حروف + اعداد + “_“ کلمات رزرو شده: for، end، if، function، return، case، continue، persistent، global، try، catch
متغیرها انتساب یک مقدار به عبارت: X = 1 X = 1+2+3 Y = X+1 Z = X+Y عدم مشاهده ی نتیجه پردازش در Command Window قرار دادن ; در انتهای عبارت مانع از نمایش نتایج می شود X = 1;
متغرهای ویژه Inf: به جای مقدار بی نهایت (1/0) Nan: Not a Number – جایگزین مقدار غیر عددی (0/0) Nargin: تعداد آرگومان های ورودی تابع Nargout: تعداد آرگومان های خروجی تابع i: برای نشان دادن بخش موهومی اعداد مختلط Pi: عدد π Realmin: کوچکترین عدد مثبت قابل استفاده Realmax: بزرگترین عدد مثبت قابل استفاده
آرایه ها تعریف آرایه: قرار دادن مقادیر بین دو براکت Array = [1 2 3 4]; آرایه های سطری و ستونی Array = [1 2 3 4] Array = 1 2 3 4 Array = [1; 2; 3; 4] 1 2 3 4 نتیجه خروجی نتیجه خروجی
بردار - ماتریس بردار : آرایه ی تک بعدی بردار سطری بردار ستونی ماتریس : آرایه چند بعدی Array=[1 2 3; 4 5 6; 7 8 9; 10 11 12] Array = 1 2 3 4 5 6 7 8 9 10 11 12 آرایه ای با 4 سطر و 3 ستون
اندیس گذاری آرایه ها ذخیره سازی آرایه به صورت ستونی است. برای دسترسی به یک عنصر، اندیس آن را بین ( ) قرار می دهیم. اندیس آرایه از 1 شروع می شود.
مثال Array=[1 2 3; 4 5 6; 7 8 9; 10 11 12] Array = 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 10 11 12 Array[1] = ? 1 Array[3] = ? 7 Array[?] = 2 5
دستیابی بلوکی Array(1:3) 1 4 7 Array(2,:) 4 5 6 Array(:,3) 3 6 9 12 1 2 3 4 5 6 7 8 9 10 11 12
دستورهای مفید آرایه های تک بعدی آرایه های چند بعدی Array = start : end 1 2 3 4 5 6 Array = start : increment : end Array = 1:2:6 1 3 5 Length(Array) 4 Size(Array) 4 3 Linespace(start ,end ,number) Linespace(1,10,5) 1 3.25 5 7.75 10 آرایه های تک بعدی آرایه های چند بعدی
دستورهای مفید - Zeros(n) - Ones(n) Zeros(3) Ones(3) 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 - Zeros(m,n) - Ones(m,n) Zeros(2,3) Ones(2,3) 0 0 0 1 1 1
ترانهاده Array=[1 2 3; 4 5 6; 7 8 9; 10 11 12] Array = 1 2 3 4 5 6 1 2 3 4 5 6 7 8 9 10 11 12 Array’ 1 4 7 10 2 5 8 11 3 6 9 12
عملیات آرایه ای X = [1 2 3; 1 2 3] Y = [4 5 6; 4 5 6] 5 7 9 X+Z Error! X*Z 6 12 Z = [ 1 2;1 2;1 2] دو ماتریس باید ابعاد یکسان داشته باشند
عملیات آرایه ای نظیر به نظیر X = [1 2 3; 1 2 3] Y = [4 5 6; 4 5 6] X.*Y 4 10 18 X.^Y 1 32 729 دو ماتریس باید ابعاد یکسان داشته باشند
Loops For variable = expression Commands end Y=0; for x = 1:10 y=y+1;
loops While expression command end Y=0; X=10; while (x~= 0) x=x-1; y=y+1; Y= 10;
Flow Control If logical expression command elseif logical command else end
Flow Control Switch expression case test expression1 command … otherwise end
M-Files برنامه های بزرگ حجم زیاد دستورات استفاده از M-Files دستورهای تکراری ایجاد یک M-file قرار دادن آن در پوشه ی جاری فراخوانی آن : نوشتن نام M-File به عنوان دستور در Command window. %: به منظور اضافه کردن Comment به برنامه
توابع User Defined Function [ output variables ] = name(input variables); مثال function[y]=test(x); y=0; while(x~=0) x=x-1; y=y+1; end return; نکته: نام تابع باید با نام m-file یکسان باشد. Y = test(10); اجرا در خط فرمان Y = 10; خروجی
Plot X= linspace(0,2*pi,40); Y= sin(X); Plot(X, Y); Z= cos(X); Plot(X,Y,X,Z);
Plot(con’t) Axis([xmin xmax ymin ymax]); X= linspace(0,2*pi,40); Y= sin(X); Plot(X, Y); axis[(0 2*pi -1 1]);
Plot(con’t) دستوراتی جهت تکمیل نمودارها Xlable(‘statement’); Ylable(‘statement’); Title(‘statement’); Text(variables , statements); Legend(‘statement’ , ’statement’,…); Hold on Hold off Figure Close Grid
Plot(con’t) Subplot(a,b,c); مثال X= linspace(0,2*pi,40); Y= sin(X); Z= cos(X); W= 2*sin(X).*cos(X); Subplot(2,2,1); Plot(X,Y); Subplot(2,2,2); Plot(X,Z); Subplot(2,2,3); Plot(X,W);
تمرینات Full Documentation: فایل pdf، شامل توضیحات و figure ها M-file ها در پوشه جداگانه قرار دادن مستندات فوق در پوشه ای با عنوان فرمت زیر: Student number # assignment number Example : 82120406#2 ارسال تمرینات به ce40242@gmail.com
خسته نباشید