loading...
وبلاگ آموزشی مهدی
mahdi بازدید : 150 چهارشنبه 18 مرداد 1391 نظرات (0)

آموزش تصویری Matlab - قسمت دوم

 

توجه کنید که در این نرم‌افزار متغیر A با متغیر a فرق دارد. متغیر را به هر شکلی تعریف کرید همانطور در ادامه نیز باید از آن استفاده کنید. وگرنه Error می‌دهد.
View نرم‌افزار در حالت default باشد. بعد از تعیین حالت default پنجره را Maximize کنید.
Desktop -> Desktop layout -> Defualt‌
نرم‌افزار MATLAB پردازش اطلاعات را با کمک ماتریسها انجام می‌دهد. به این جهت درک مفاهیم ماتریس برای یادگیری این نرم‌افزار اساسی می‌باشد و باعث می‌شود بهتر بتوانید با این نرم‌افزار کار کنید در این فصل به بررسی ماتریسها و آرایه‌ها و روش استفاده از آنها می‌پردازیم. 
می‌خواهیم با روش وارد کردن یک ماتریس آشنا شویم. ماتریس A بصورت زیر تعریف شده است.
A = 
[تصویر: 001.gif]
برای واردکردن ماتریس فوق باید عبارت زیر را تایپ کنید.


A= [1 3 5 ; -6 20 10 ; -12 -15 -6]
روش تعریف به این صورت است که در ابتدا علامت "[" را وارد می‌کنیم سپس اعداد ردیف اول را وارد می‌کنیم. بین هر دو عدد نیز یک فاصله یا کاراکتر "," باید وارد شود تا محل پایان عدد و شروع عدد بعدی مشخص گردد. برای وارد کردن ردیف بعدی از کاراکتر ";" استفاده می‌شود. البته از کلید Enter نیز می‌توانید استفاده کنید. در انتها نیز کاراکتر "]" را وارد می‌کنیم.
مشاهده می‌کنید که دستور صفحه قبل را وارد کرده‌ایم. با توجه به مطالبی که بیان کردیم برای وارد کردن ماتریس ذکر شده می‌توانید از عبارت زیر نیز استفاده کنید.

 

A=[1 , 3 , 5 
-6,20,10
-12,-5,-6]
دکمه Enter را فشار دهید تا مقدار ماتریس وارد شود.

[تصویر: 002.gif]
اکنون ماتریس مورد نظر تعریف شده است. برای مشاهده این ماتریس، روی ماتریس A در پنجره WorkSpace دابل کلیک کنید.

[تصویر: 003.gif]

‌اکنون پنجره ویرایش این آرایه را مشاهده می‌کنید برای مشاهده این پنجره می‌توانستید روی A راست‌ کلیک کرده و گزینه Open Selection منوی باز شده را انتخاب کنید. در این پنجره می‌توانید تغییرات لازم را بر روی ماتریس وارد کنید در قسمت مشخص شده با کادر آبی نیز اعدادی را که وارد کردیم مشاهده می‌کنید. می‌توانید در صورت نیاز این اعداد را تغییر دهید.

[تصویر: 004.gif]
تا اینجا با نحوه وارد کردن آرایه و تغییر آن آشنا شدید. در ادامه این بخش به بررسی عملیات بر روی ماتریسها می‌پردازیم. می‌خواهیم 3 واحد به تمامی عناصر آرایه A اضافه کنیم و آرایه جدید را در B ذخیره کنیم برای این‌ کار عبارت B=A+3 را در ادامه وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید، تا این دستور اجرا شود.

[تصویر: 005.gif]
مشاهده می‌کنید که به تمامی عناصر آرایه A سه واحد افزوده شده و در آرایه B ذخیره شده است. دو آرایه A و B را می‌توانید در قسمت Workspace مشاهده کنید. روی متغیر B در این پنجره دابل کلیک کنید.
[تصویر: 006.gif]
در ادامه می‌خواهیم پنجره Array Editor را طوری تنظیم کنیم که مقادیر هر دو متغیر قابل مشاهده باشد. در قسمت مشخص شده یکسری کلید مشاهده می‌کنید که به کمک آنها می‌توانید نحوه نمایش آرایه را تنظیم کنید. برای مثال برای نمایش اطلاعات دو آرایه در دو پنجره به صورت کنار هم، روی لیست بازشونده مشخص شده کلیک کنید.‌

[تصویر: 007.gif]
پس با توجه به شکل گزینه‌‌ها مدل مورد نظر خود را می‌توانیم انتخاب کنیم. روی گزینه مشخص شده کلیک کنید.‌
[تصویر: 008.gif]
روی دکمه Close این پنجره کلیک کنید.

[تصویر: 009.gif]
در ادامه می‌خواهیم ترانهاده ماتریس A را به دست آوریم. برای اینکار دستور A' را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 010.gif]


مشاهده می‌کنید که جواب دستور وارد شده در یک ماتریس به نام ans ذخیره شده است. در قسمت Workspace نیز مشاهده می‌کنید که یک ماتریس به نام ans و با سایز 3 x 3 تعریف شده است. در ادامه می‌خواهیم عناصر قطر اصلی ماتریس A را پیدا کنیم برای این کار دستور diag(A) را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 011.gif]
اکنون عناصر اصلی قطر ماتریس A را مشاهده می‌کنید. جواب این دستور نیز در یک آرایه به نام ans ذخیره شده است. در قسمت Workspace مشخص است که ans یک ماتریس با سایز 3 x 1 است. برای محاسبه مجموع عناصر قطر اصلی ماتریس A از دستور sum(diag(A)) استفاده می‌کنیم. در ادامه این دستور را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید، تا نتیجه را مشاهده کنید.

[تصویر: 012.gif]
در Matlab این قابلیت وجود دارد که با فشار دادن دکمه حرکت مکان نما به سمت بالا دستور قبلی دوباره تایپ شود دکمه حرکت مکان نما به سمت بالا را فشار دهید.‌‌
دکمه Enter صفحه کلید را فشار دهید، تا نتیجه را مشاهده کنید.

[تصویر: 013.gif]
مشاهده می‌کنید که مجموع عناصر قطر اصلی نمایش داده شده است و جواب نیز در ماتریس ans ذخیره شده است. در ادامه می‌خواهیم عناصر ستون اول آرایه A را با هم جمع کنیم برای اینکار دستور A(1,1) + A(2,1) + A(3,1) را باید وارد کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 014.gif]
اکنون مجموع عناصر ستون اول ماتریس A را مشاهده می‌کنید. برای محاسبه مجموع کل عناصر آرایه A از دستور sum(A(Smile) استفاده می‌کنیم. در ادامه این دستور را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 015.gif]
مشاهده می‌کنید که مجموع کلیه عناصر آرایه A محاسبه شده است. عملگر ":" کاربردهای دیگری نیز دارد که در ادامه به بررسی آن می‌پردازیم. برای بررسی یکی از این کاربردها دستور1:5 را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 016.gif]
مشاهده می‌کنید که خروجی این دستور از اعداد 1 تا 5 با قدم یک می‌باشد. حال دستور 
40:-5:20 را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 017.gif]

خروجی این دستور اعداد 40 تا 20 با قدم 5- می‌باشد. در ادامه دستور فوق را وارد کرده و یک کاراکتر ";" در انتهای آن وارد می‌کنیم. برای اینکار کافیست دکمه حرکت مکان‌نما رو به بالا را فشاردهید تا دستور قبلی ظاهر شود.‌
کلید ; صفحه کلید را ‌فشار دهید.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 018.gif]
اگر در انتهای دستور علامت; را تایپ ‌کنید خروجی را مشاهده نمی‌کنید، ولی جواب در Workspace ذخیره خواهد شد. در جدول زیر دستورات ساخت ماتریسهای مختلف نمایش داده شده است.
ماتریس صفر A = zeros ( i,j )
ماتریس یک A = ones ( i,j )
ماتریس همانی A = eye ( i,j )
دترمینان ماتریس B = det ( A )
وارون ماتریس B = inv ( A )
برای حذف ستون دوم ماتریس A دستور A(:,2)=[] را وارد می‌کنیم. در این دستور با استفاده از کاراکتر : تمامی ردیفها را انتخاب کرده‌ایم. سپس بعد از کاما شماره ستون ماتریس را تعیین می‌کنیم. در انتها قسمت انتخاب شده در ماتریس A را برابر یک ماتریس خالی قرار می‌دهیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 019.gif]
مشاهده می‌کنید که ستون دوم ماتریس A حذف شده و چون قبلاً ماتریس A یک ماتریس 3*3 بوده است اکنون به یک ماتریس 3*2 تبدیل شده است. این ماتریس را در پنجره Workspace نیز می‌توانید مشاهده کنید.‌
همانطور که تا اینجا متوجه شدید در MATLAB احتیاج به تعریف متغیر نداریم. دستورات زیر را در ادامه وارد می‌کنیم.
a=3 ; b='M'; c=1.78; d= 'This is a test';
در این دستورات a و b و c یک ماتریس 1*1 و d یک ماتریس 14*1 می‌باشد. دکمه Enter صفحه کلید را فشار دهید تا مقادیر در Workspace ذخیره شوند. 

[تصویر: 020.gif]


مشاهده می‌کنید که متغیرها در Workspace قرار دارند. دو متغیر b و d از نوع آرایه کاراکتری می‌باشند ولی بقیه از نوع ماتریس هستند. تا اینجا متوجه شده‌اید که اعداد در MATLAB به صورت صریح مورد استفاده قرار می‌گیرند. اعداد مختلط در MATLAB با استفاده از i یا j نمایش داده می‌شوند.
در جدول زیر عملگرهای MATLAB را می‌توانید مشاهده می‌کنید.‌

عملگر نماد
جمع +
تفریق -
ضرب *
تقسیم /
توان ^
ترانهاده '
البته به این نکته باید توجه کنیدکه برای ضرب آرایه در آرایه قبل از ضرب، از عملگر نقطه استفاده می‌کنیم در ادامه دستورات زیر که دو ماتریس a و b را تعریف کرده و سپس در هم ضرب می‌کند را وارد می‌کنیم.
a=[1 2 3 4]; b=[5 6 7 8]; a*b‌
دکمه Enter صفحه کلید را فشار دهید.مشاهده می‌کنید که این دستور ایراد دارد در ادامه دستور a.*b را وارد می‌کنیم. 

[تصویر: 021.gif]

دکمه Enter صفحه کلید را فشار دهید.
مشاهده می‌کنید که این بار دو ماتریس a و b در هم ضرب می‌شوند. برای عملیات توان و تقسیم نیز همین روند را باید انجام داد.
[تصویر: 022.gif]
در ادامه می‌خواهیم توابع موجود در نرم‌افزار MATLAB را بررسی کنیم برای مشاهده توابع اصلی MATLAB دستور help elfun را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون توابع اصلی این نرم‌افزار را مشاهده می‌کنید که توضیح مختصری در جلوی هر کدام نوشته شده است.

[تصویر: 023.gif]
ر جدول زیر توابع مثلثاتی به همراه توضیح آن را مشاهده می‌کنید.

تابع عملکرد درMATLAB
Arctan(تانژانت وارون) atan
زاویه یک نقطه در مختصات دکارتی Atan2
معکوس تانژانت هیپربولیک Atanh
سکانت sec
سکانت هیپربولیک sech
معکوس تابع سکانت asec
معکوس سکانت هیپربولیک Asech
کسکانت csc
کسکانت هیپربولیک csch
معکوس کسکانت acsc
معکوس کسکانت هیپربولیک Acsch
کتانژانت cot
کتانژانت هیپربولیک coth
کتانژانت وارون acot
معکوس کتانژانت هیپربولیک acoth

تابع عملکرد درMATLAB
تابع سینوس sin
سینوس هیپربولیک sinh
Arcsin(سینوس وارون) asin
معکوس سینوس هیپربولیک asinh
تابع کسینوس cos
کسینوس هیپربولیک Cosh
Arccos(کسینوس وارون) acos
معکوس کسینوس هیپربولیک acosh
تانژانت tan
تانژانت هیپربولیک tanh
در این جدول نیز توابع نمایی را به همراه توضیح آنها مشاهده می‌کنید.

تابع عملکرد آن درMATLAB
محاسبه exp (x)
محاسبه لگاریتم نپرین (لگاریتم در پایهe) log
محاسبه لگاریتم در پایه 10 log10
محاسبه لگاریتم در پایه 2 log2 
x2 را محاسبه می‌کند. pow2(x)
لگاریتم اعداد حقیقی real log
جذر اعداد نزدیک به صفر real sqrt
را محاسبه می‌کند. Sqrt
برای محاسبه اولین عدد P که 2p>nextpow2(x) nextpow2

در این جدول نیز توابع مختلط را به همراه توضیح آنها مشاهده می‌کنید.

تابع عمکرد در MATLAB
محاسبه قدرمطلق یک عدد abs
محاسبه زاویه یک عدد مختلط angle
ایجاد عدد مختلط x + j y complex(x,y)
محاسبه مزدوج مختلط یک عدد conj
محاسبه قسمت موهومی یک عدد مختلط imaj
محاسبه قسمت حقیقی یک عدد مختلط real
آیا عدد حقیقی است یا نه isreal

توابع Round کردن و محاسبه باقیمانده در جدول زیر مشاهده می‌کنید.

تابع عملکرد در MATLAB
اعداد را به سمت صفر گرد می‌کند. fix
اعداد را به سمت منفی بی‌نهایت گرد می‌کند. florr
اعداد را به سمت مثبت بی‌نهایت گرد می‌کند. ceil
گرد کردن یک عدد به سمت نزدیک‌ترین عدد صحیح round
باقیمانده تقسیم با علامت mod
تقسیم rem
تابع علامت sing

یکی دیگر از مباحثی که در MATLAB به آن احتیاج داریم چند جمله‌ایها می‌باشند در ابتدا باید روش شناسایی چند جمله‌ای را بررسی کنیم در MATLAB چند جمله‌ای براساس بردار ضرایب مشخص می‌شود به عنوان مثال چند جمله‌ای 
f = 4x4 + 3x2 + 5x - 3به صورت زیر در MATLAB نمایش داده می‌شود.
f= [4 , 0 , 3 , 5, -3]
یعنی به ترتیب توانها ضرایب آنها را می‌نویسیم و با استفاده از کاما از یکدیگر جدا می‌کنیم. چند جمله‌ای g = 6x3 - 2x2 + 4x +2 نیز به صورت g = [6,-2,4,2] نمایش داده می‌شود در ادامه این دستورات را وارد می‌کنیم.
وظیفه این دستور تعریف دو چند جمله‌ای f و g می‌باشد. دکمه Enter صفحه کلید را فشار دهید.
f = 4x4 + 3x2 + 5x – 3‌
g = 6x3 - 2x2 + 4x +2‌
[تصویر: 024.gif]

در ادامه می‌خواهیم چند جمله‌ای f را با چند جمله‌ای g جمع کنیم. برای این کار باید هر دو چند جمله‌ای دارای درجه‌های برابر باشند. برای این کار باید در چند جمله‌ای g ضریب x4 را برابر صفر تعریف کنیم. پس در ادامه دستور زیر را وارد می‌کنیم. این دستور باعث می‌شود که یک جمله با ضریب صفر در ابتدای چند جمله‌ای اضافه شود.
g = [ 0 , g ]
توسط دستور h = f + g نیز دو چند جمله‌ای را با هم جمع کرده و در متغیر h ذخیره می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 025.gif]
اکنون نتیجه را مشاهده می‌کنید برای ضرب یک عدد در چند جمله‌ای از ضرب یک عدد در ماتریس استفاده می‌شود. در ادامه دستور زیر را وارد می‌کنیم :
2*g
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 026.gif]
برای ضرب و تقسیم دو چند جمله‌ای از دو دستور conv و deconv استفاده می‌کنیم. در ادامه دستور زیر را وارد می‌کنیم :
L= conv (f,g);‌
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 027.gif]

در ادامه می‌خواهیم این دو چند جمله‌ای را بر هم تقسیم کنیم برای این کار دستور زیر را وارد می‌کنیم :
[q ,r] =deconv (f,g)‌ 
در این دستور q برابر خارج قسمت تقسیم و r برابر باقیمانده است.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 028.gif]
مشاهده می‌کنید که چون مقدار g برابر صفر است خطا رخ داده است. در ادامه دستور g=g+5 را وارد می‌کنیم.‌
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 029.gif]
دکمه حرکت مکان نما رو به بالا را دوبار فشار دهید.
دکمه Enter صفحه کلید را فشار دهید.


[تصویر: 030.gif]
اکنون نتیجه را می‌توانید مشاهده می‌کنید که خارج قسمت تقسیم q و باقی مانده تقسیم r می‌باشد. در ادامه می‌خواهیم تابع
m(x)= x3 + 2x2 + 4x + 3 را به ازای x= 0,...,3 محاسبه کنیم برای این کار دستورات زیر را وارد می‌کنیم.
m=[1,2,4,3]; x=[0:3]; k= polyval (m,x)
توسط خط اول تابع m(x) تعریف می‌شود. با استفاده از خط دوم متغیر x شامل اعداد صفر تا سه می‌شود. توسط خط سوم نیز مقدار تابع m به ازای مقادیر موجود در x محاسبه می‌شود.
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 031.gif]
مشاهده می‌کنید که چهار عدد به عنوان خروجی ظاهر شده‌اند. عدد اول به ازای x=0 محاسبه شده است. عدد دوم به ازای مقدار دوم موجود در x یعنی یک محاسبه شده دو عدد بعدی نیز به ازای x=3 و x=4 محاسبه شده‌اند. برای محاسبه ریشه‌های یک چند جمله‌ای از دستور roots استفاده می‌کنیم در ادامه دستور زیر را وارد می‌کنیم.
R= roots(m)
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 032.gif]
اکنون ریشه‌های چند جمله‌ای m(x) را مشاهده می‌کنید. در این نرم‌افزار می‌توانید از روی ریشه‌ها چند جمله‌ای را به دست آورید. برای این کار دستور poly استفاده می‌کنیم. در ادامه دستور زیر را تایپ می‌کنیم :
poly®
دکمه Enter صفحه کلید را فشار دهید.
[تصویر: 033.gif]
مشاهده می‌کنید که این تابع بردار ضرایب چند جمله‌ای را برگردانده است در MATLAB دستورات ساده دیگری برای کار با چند جمله‌ای‌ها وجود دارد با تایپ دستور help polyfun می‌توانید این توابع را به همراه توضیح مختصری مشاهده کنید. در ادامه این دستور را تایپ می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید، تا لیست این توابع را مشاهده کنید.
[تصویر: 034.gif]

اکنون لیست این توابع نمایش داده شده است. در هر زمان که بخواهید با وارد کردن دستور who می‌توانید لیستی از متغیرهایی که در حافظه ذخیره کرده‌اید را مشاهده کنید در ادامه دستور who را وارد می‌کنیم.
دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 035.gif]
اکنون لیستی از متغیرهایی که استفاده کرده‌ایم را مشاهده می‌کنید در صورتیکه سایر خصوصیات این متغیرها را بخواهید مشاهده کنید باید دستور whos را واردکنید.
مشاهده می‌کنید که دستور whos را وارد کرده‌ایم برای اجرای این دستور دکمه Enter صفحه کلید را فشار دهید.

[تصویر: 036.gif]
همانطور که به یاد دارید، با دابل کلیک کردن بر روی متغیر در پنجره Array Editor مقادیر متغیر را می‌توانستید مشاهده کنید روش دیگر برای این کار تایپ نام متغیر می‌باشد. برای مشاهده مقادیر متغیر A حرف A را تایپ ‌کنید.
دکمه Enter را فشار دهید، تا نتیجه را مشاهده کنید.
[تصویر: 037.gif]
اکنون مقادیر این متغیر را مشاهده می‌کنید.

 منبع

مطالب مرتبط
ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • نظرسنجی
    بیشترین استفاده‌ای که از تلفن همراه‌تان می‌کنید مربوط به چه کاری است؟
    آمار سایت
  • کل مطالب : 1017
  • کل نظرات : 88
  • افراد آنلاین : 6
  • تعداد اعضا : 0
  • آی پی امروز : 96
  • آی پی دیروز : 85
  • بازدید امروز : 1,272
  • باردید دیروز : 1,502
  • گوگل امروز : 1
  • گوگل دیروز : 2
  • بازدید هفته : 3,848
  • بازدید ماه : 7,992
  • بازدید سال : 33,045
  • بازدید کلی : 427,069
  • کدهای اختصاصی