آموزش (Matlab 2014) قسمت دوم
نرمافزار MATLAB پردازش اطلاعات را با کمک ماتریسها انجام میدهد. به این جهت درک مفاهیم ماتریس برای یادگیری این نرمافزار اساسی میباشد و باعث میشود بهتر بتوانید با این نرمافزار کار کنید در این فصل به بررسی ماتریسها و آرایهها و روش استفاده از آنها میپردازیم.
میخواهیم با روش وارد کردن یک ماتریس آشنا شویم. ماتریس A بصورت زیر تعریف شده است.
A =
برای واردکردن ماتریس فوق باید عبارت زیر را تایپ کنید.
A= [1 3 5 ; -6 20 10 ; -12 -15 -6]
روش تعریف به این صورت است که در ابتدا علامت "[" را وارد میکنیم سپس اعداد ردیف اول را وارد میکنیم. بین هر دو عدد نیز یک فاصله یا کاراکتر "," باید وارد شود تا محل پایان عدد و شروع عدد بعدی مشخص گردد. برای وارد کردن ردیف بعدی از کاراکتر ";" استفاده میشود. البته از کلید Enter نیز میتوانید استفاده کنید. در انتها نیز کاراکتر "]" را وارد میکنیم.مشاهده میکنید که دستور صفحه قبل را وارد کردهایم. با توجه به مطالبی که بیان کردیم برای وارد کردن ماتریس ذکر شده میتوانید از عبارت زیر نیز استفاده کنید.
A=[1 , 3 , 5
-6,20,10
-12,-5,-6]
دکمه Enter را فشار دهید تا مقدار ماتریس وارد شود.
اکنون ماتریس مورد نظر تعریف شده است. برای مشاهده این ماتریس، روی ماتریس A در پنجره Workspace دابل کلیک کنید.
اکنون پنجره ویرایش این آرایه را مشاهده میکنید برای مشاهده این پنجره میتوانستید روی A راست کلیک کرده و گزینه Open Selection منوی باز شده را انتخاب کنید. در این پنجره میتوانید تغییرات لازم را بر روی ماتریس وارد کنید در قسمت مشخص شده با کادر آبی نیز اعدادی را که وارد کردیم مشاهده میکنید. میتوانید در صورت نیاز این اعداد را تغییر دهید.
تا اینجا با نحوه وارد کردن آرایه و تغییر آن آشنا شدید. در ادامه این بخش به بررسی عملیات بر روی ماتریسها میپردازیم. میخواهیم 3 واحد به تمامی عناصر آرایه A اضافه کنیم و آرایه جدید را در B ذخیره کنیم برای این کار عبارت B=A+3 را در ادامه وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید، تا این دستور اجرا شود.
مشاهده میکنید که به تمامی عناصر آرایه A سه واحد افزوده شده و در آرایه B ذخیره شده است. دو آرایه A و B را میتوانید در قسمت Workspace مشاهده کنید. روی متغیر B در این پنجره دابل کلیک کنید.
در ادامه میخواهیم پنجره Array Editor را طوری تنظیم کنیم که مقادیر هر دو متغیر قابل مشاهده باشد. روی سربرگ View کلیک کنید.
در قسمت مشخص شده یکسری کلید مشاهده میکنید که به کمک آنها میتوانید نحوه نمایش آرایه را تنظیم کنید. با توجه به شکل هر دکمه مدل مورد نظر خود را میتوانید انتخاب کنید . برای مثال برای نمایش اطلاعات دو آرایه در دو پنجره به صورت کنار هم، روی دکمه Right / Left کلیک کنید.
روی دکمه Close این پنجره کلیک کنید.
در ادامه میخواهیم ترانهاده ماتریس A را به دست آوریم. برای اینکار دستور A' را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که جواب دستور وارد شده در یک ماتریس به نام ans ذخیره شده است. در قسمت Workspace نیز مشاهده میکنید که یک ماتریس به نام ans و با سایز 3 x 3 تعریف شده است. در ادامه میخواهیم عناصر قطر اصلی ماتریس A را پیدا کنیم برای این کار دستور diag(A) را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون عناصر اصلی قطر ماتریس A را مشاهده میکنید. جواب این دستور نیز در یک آرایه به نام ans ذخیره شده است. در قسمت Workspace مشخص است که ans یک ماتریس با سایز 3 x 1 است. برای محاسبه مجموع عناصر قطر اصلی ماتریس A از دستور sum(diag(A)) استفاده میکنیم. در ادامه این دستور را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید، تا نتیجه را مشاهده کنید.
در Matlab این قابلیت وجود دارد که با فشار دادن دکمه حرکت مکاننما به سمت بالا دستور قبلی دوباره تایپ شود. دکمه حرکت مکاننما به سمت بالا را فشار دهید.
دکمه Enter صفحه کلید را فشار دهید، تا نتیجه را مشاهده کنید.
مشاهده میکنید که مجموع عناصر قطر اصلی نمایش داده شده است و جواب نیز در ماتریس ans ذخیره شده است. در ادامه میخواهیم عناصر ستون اول آرایه A را با هم جمع کنیم. برای اینکار دستور A(1,1) + A(2,1) + A(3,1) را باید وارد کنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون مجموع عناصر ستون اول ماتریس A را مشاهده میکنید. برای محاسبه مجموع کل عناصر آرایه A از دستور sum(A() استفاده میکنیم. در ادامه این دستور را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که مجموع کلیه عناصر آرایه A محاسبه شده است. عملگر ":" کاربردهای دیگری نیز دارد که در ادامه به بررسی آن میپردازیم. برای بررسی یکی از این کاربردها دستور1:5 را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که خروجی این دستور از اعداد 1 تا 5 با قدم یک میباشد. حال دستور 40:-5:20 را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
خروجی این دستور اعداد 40 تا 20 با قدم 5- میباشد. در ادامه دستور فوق را وارد کرده و یک کاراکتر ";" در انتهای آن وارد میکنیم. برای اینکار کافیست دکمه حرکت مکاننما رو به بالا را فشاردهید تا دستور قبلی ظاهر شود.
کلید ; صفحه کلید را فشار دهید.
دکمه Enter صفحه کلید را فشار دهید.
اگر در انتهای دستور علامت; را تایپ کنید خروجی را مشاهده نمیکنید، ولی جواب در Workspace ذخیره خواهد شد. در جدول زیر دستورات ساخت ماتریسهای مختلف نمایش داده شده است.
برای حذف ستون دوم ماتریس A دستور A(:,2)=[] را وارد میکنیم. در این دستور با استفاده از کاراکتر : تمامی ردیفها را انتخاب کردهایم. سپس بعد از کاما شماره ستون ماتریس را تعیین میکنیم. در انتها قسمت انتخاب شده در ماتریس A را برابر یک ماتریس خالی قرار میدهیم.
دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که ستون دوم ماتریس 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 ذخیره شوند.
مشاهده میکنید که متغیرها در 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 را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که این بار دو ماتریس a و b در هم ضرب میشوند. برای عملیات توان و تقسیم نیز همین روند را باید انجام داد.
در ادامه میخواهیم توابع موجود در نرمافزار MATLAB را بررسی کنیم برای مشاهده توابع اصلی MATLAB دستور help elfun را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون توابع اصلی این نرمافزار را مشاهده میکنید که توضیح مختصری در جلوی هر کدام نوشته شده است.
در جدول زیر توابع مثلثاتی به همراه توضیح آن را مشاهده میکنید.
در این جدول نیز توابع نمایی را به همراه توضیح آنها مشاهده میکنید.
در این جدول نیز توابع مختلط را به همراه توضیح آنها مشاهده میکنید.
توابع Round کردن و محاسبه باقیمانده در جدول زیر مشاهده میکنید.
یکی دیگر از مباحثی که در 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
در ادامه میخواهیم چند جملهای f را با چند جملهای g جمع کنیم. برای این کار باید هر دو چند جملهای دارای درجههای برابر باشند. برای این کار باید در چند جملهای g ضریب x4 را برابر صفر تعریف کنیم. پس در ادامه دستور زیر را وارد میکنیم. این دستور باعث میشود که یک جمله با ضریب صفر در ابتدای چند جملهای اضافه شود.
g = [ 0 , g ];
توسط دستور h = f + g نیز دو چند جملهای را با هم جمع کرده و در متغیر h ذخیره میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون نتیجه را مشاهده میکنید برای ضرب یک عدد در چند جملهای از ضرب یک عدد در ماتریس استفاده میشود. در ادامه دستور زیر را وارد میکنیم :
2*gدکمه Enter صفحه کلید را فشار دهید.
برای ضرب و تقسیم دو چند جملهای از دو دستور conv و deconv استفاده میکنیم. در ادامه دستور زیر را وارد میکنیم :
L= conv (f,g);
دکمه Enter صفحه کلید را فشار دهید.
در ادامه میخواهیم این دو چند جملهای را بر هم تقسیم کنیم برای این کار دستور زیر را وارد میکنیم:
[q ,r] =deconv (f,g)
در این دستور q برابر خارج قسمت تقسیم و r برابر باقیمانده است.دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که چون مقدار g برابر صفر است خطا رخ داده است. در ادامه دستور g=g+5 را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
دکمه حرکت مکاننما رو به بالا را دوبار فشار دهید.
دکمه Enter صفحه کلید را فشار دهید.
اکنون نتیجه را میتوانید مشاهده میکنید که خارج قسمت تقسیم 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 صفحه کلید را فشار دهید.
مشاهده میکنید که چهار عدد به عنوان خروجی ظاهر شدهاند. عدد اول به ازای x=0 محاسبه شده است. عدد دوم به ازای مقدار دوم موجود در x یعنی یک محاسبه شده دو عدد بعدی نیز به ازای x=3 و x=4 محاسبه شدهاند. برای محاسبه ریشههای یک چند جملهای از دستور roots استفاده میکنیم در ادامه دستور زیر را وارد میکنیم.
R= roots(m)دکمه Enter صفحه کلید را فشار دهید.
اکنون ریشههای چند جملهای m(x) را مشاهده میکنید. در این نرمافزار میتوانید از روی ریشهها چند جملهای را به دست آورید. برای این کار دستور poly استفاده میکنیم. در ادامه دستور زیر را تایپ میکنیم :
poly®دکمه Enter صفحه کلید را فشار دهید.
مشاهده میکنید که این تابع بردار ضرایب چند جملهای را برگردانده است در MATLAB دستورات ساده دیگری برای کار با چند جملهایها وجود دارد با تایپ دستور help polyfun میتوانید این توابع را به همراه توضیح مختصری مشاهده کنید. در ادامه این دستور را تایپ میکنیم.
دکمه Enter صفحه کلید را فشار دهید، تا لیست این توابع را مشاهده کنید.
اکنون لیست این توابع نمایش داده شده است. در هر زمان که بخواهید با وارد کردن دستور who میتوانید لیستی از متغیرهایی که در حافظه ذخیره کردهاید را مشاهده کنید در ادامه دستور who را وارد میکنیم.
دکمه Enter صفحه کلید را فشار دهید.
اکنون لیستی از متغیرهایی که استفاده کردهایم را مشاهده میکنید در صورتیکه سایر خصوصیات این متغیرها را بخواهید مشاهده کنید باید دستور whos را واردکنید.
مشاهده میکنید که دستور whos را وارد کردهایم برای اجرای این دستور، دکمه Enter صفحه کلید را فشار دهید.
همانطور که به یاد دارید، با دابل کلیک کردن بر روی متغیر در پنجره Array Editor مقادیر متغیر را میتوانستید مشاهده کنید روش دیگر برای این کار تایپ نام متغیر میباشد. برای مشاهده مقادیر متغیر A حرف A را تایپ کنید.
دکمه Enter را فشار دهید، تا نتیجه را مشاهده کنید.
اکنون مقادیر این متغیر را مشاهده میکنید. کاربر گرامی، شما اکنون در پایان این بخش هستید،