آموزش Matlab قسمت دوم

سلام دوستان

با جلسه دوم آموزش matlab در خدمت شما هستم..

همونطور که در جلسه قبل بهش اشاره کردم،آموزش امروز در رابطه با ماتریس ها است..

تعریف ماتریس (Matrix)

ماتریس یک آرایه مستطیلی شکل از اعداد یا عبارات ریاضی است که به صورت سطر و ستون نوشته شده است.

برای مثال

 A=[1 2 3 4 5]

 یک ماتریس  5*1 است..به این ماتریس ،سطری گفته میشود.

مولفه های یک ماتریس در داخل کروشه نوشته میشوند  []

عناصر ماتریس را میتوان با کاما یا space از هم جدا کرد

هر 2 روش زیر نیز برای نمایش این ماتریس درست است

 A=[1,2,3,4,5]
A=[1 2,3 4,5]

ماتریس 3 در 4 در مطلب

ماتریس زیر یک ماتریس 3 در 4 است.

 A=[1 2 3 4;5 6 7 8;-1 0 1 2]

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

 A=[1 2 3 4       ENTER
5 6 7 8              ENTER
-1 0 1 2]

مرحله دوم ماتریس مطلب

 a=A(2,3)

این دستور عنصر سطر دوم و ستون سوم را برای ما نشان میدهد

خروجی :

a=7

 A(1,2)

این دستور عنصر سطر اول و ستون دوم  را برای ما نشان میدهد

خروجی:

2

دقت کنید که  در MATLAB, ایندکس بردار و ماتریس همیشه از 1 شروع میشود

حالا قصد داریم با چند دستور دیگه در مورد ماتریس ها آشنا بشیم

 >>A.*h

برای ضرب نقطه ای از دستور بالا استفاده میکنیم

برای حذف عناصر یک سطر یا یک ستون میتوان به صورت زیر عمل کرد 

 A(5,:)=[]

با این دستور تمامی عناصر سطر 5 ام از ماتریس حذف خواهند شد

 A(:,6)=[]

 با این دستور تمامی عناصر ستون 6 ام از ماتریس حذف خواهد شد

برای مثال فرض کنید ماتریس زیر را داشته باشیم

b=[ 1 2 3;7 8 9;11 55 100]

با اعمال دستورات 

 b(:,1)=[]

ستون 1ام حذف میشود 

 b(2,:)=[]

 سطر 2 ام حذف میشود نتیجه به صورت زیر است 

مرحله سوم ماتریس مطلب

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

معکوس ماتریس a  

 inv(a)

این دستور فقط برای ماتریس های مربع کاربرد دارد .

__________________

محاسبه دترمینان ماتریس

 det(a)

__________________

 ones(3)

این دستور یک ماتریس همانی 3*3 ایجاد میکند.

 ones(3,5) 

این دستور یک ماتریس همانی 5*3 ایجاد میکند.

__________________

 Zeros(3);

یک ماتریس 3*3 تولید میکند  که همه درایه های آن صفر است

برای انتخاب یک سطر یا یک ستون از ماتریس به صورت زیر عمل میکنیم.

 c=a(:,3)
b=a(1:3,3)
r=a(2,:)
e=a(1:2,1:3)

 حالا این دستورات را روی ماتریس زیر امتحان میکنیم تا نتیجه اش را ببینیم :

a=[1 2 3 4;5 6 7 8;9 10 11 12]

نتیجه

مرحله چهارم ماتریس مطلب

مرحله پنجم ماتریس مطلب

 

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

مثلا :

 a=[1 2 3,4 5 6]

 

b=[a,7 8 9]

ماتریسaیک ماتریس سطری است.به وسیله ماتریس b سه عنصر جدید به انتهای ماتریس a اضافه میشود.

جمع و تفریق ماتریس ها:

a=[ 1 2 3]

b=[4 5 6]

a+b

a-b

2a+3b

برای انجام اعمال بالا روی دو ماتریس a و b به صورت زیر عمل میکنیم.

 دقت کنید که برای جمع و تفریق دو ماتریس هر دو باید هم مرتبه باشند

مرحله ششم ماتریس مطلب

ماتریس یکانی را میتوان به صورت زیر تعریف کرد:

 eye();

__________________

 eye(3);

 این دستور یک ماتریس یکانی ایجاد میکند که درایه های روی قطر اصلی آن 1 است .

مرحله هفتم ماتریس مطلب

با استفاده از دستور 

 Size()

میتوان ابعاد ماتریس را مشاهده کرد.برای مثال با اعمال این دستور بر ماتریس

a=[ 1  2 3 4]

دستور زیر مقدار   4   1  را بر میگرداند که نشان دهنده است که ماتریس ما دارای 1 سطر و چهار ستون است

 Size(a)

ماتریس  با عناصر تصادفی

میتوان ماتریس هایی با عناصر تصادفی تولید کرد..

توابع

rand()

randn()

randperm()

برای ایجاد ماتریس های تصادفی به کار میروند .

برای مثال  

 rand(5)

یک ماتریس مربع 5*5ایجاد میکنه که تمامی عناصر آن اعداد تصادفی هستند 

 randperm(5)

یک ماتریس سطری با 5 عنصر ایجاد میکنه که تمامی عناصر آن کوچکتر و یا مساوی 5 هستند

مرحله هشتم ماتریس مطلب

مثال:

ماتریسی تولید کنید که شروع آن ،10 باشد و با گام 0.3 تا 14 پیش برود.

این دستور به صورت زیر نوشته میشود .

 a=10:0.3:14

خروجی به صورت زیر است

مرحله نهم ماتریس مطلب

با نوشتن دستور 

 >>a\'

در ادامه دستور بالا همان اعداد را به صورت ستونی و پشت سر هم مشاهده خواهید کرد .

10.0000

   10.3000

   10.6000

   10.9000

   11.2000

   11.5000

   11.8000

   12.1000

   12.4000

   12.7000

   13.0000

   13.3000

   13.6000

   13.9000

تابع sum

این تابع عناصر ستون مورد نظر را جمع میکند.

برای مثال فرض کنید ماتریس ما به صورت زیر باشد

a=[1 2 3;4 5 6;7 8 9]

با اعمال تابع فوق داریم:

 >> a=[1 2 3;4 5 6;7 8 9];
» s=sum(a)

s =

    12    15    18
>>

فکر کنم برای این جلسه کافی باشه.

در جلسه بعد راجع به رسم  نمودار ،ساختارهای تکرار و تصمیم گیری مث if else for  و غیره 

صحبت خواهیم کرد...

برای درج نظر و یا طرح سوالات خود لطفا در سایت ثبت نام کنید و یا وارد سایت شوید

نظرات کاربران

برای این مطلب تاکنون نظری ارسال نشده است. شما اولین نفر باشید